3-Tema: Agile (operativ maslasıwshı ) programmalıq támiynat islep shıǵıw Joba


Ta'riflash, loyihalash va amalga oshirish jarayonlari o'zaro bog'liqdir


Download 0.53 Mb.
bet2/3
Sana11.03.2023
Hajmi0.53 Mb.
#1261248
1   2   3
Bog'liq
3 lekciya Agile operativ maslasıwshı programmalıq támiynat islep

1. Ta'riflash, loyihalash va amalga oshirish jarayonlari o'zaro bog'liqdir.
Tizimning batafsil spetsifikatsiyasi yo'q va loyihalash hujjatlari minimallashtiriladi yoki avtomatik ravishda ishlab chiqilgan dasturlash muhiti tomonidan yaratilgan tizimni amalga oshirish. Foydalanuvchi talablari to'g'risidagi hujjat faqat tizimning eng muhim xususiyatlarini belgilaydi.
2. Tizim bir qator versiyalarida ishlab chiqilgan. Har bir versiyani aniqlashtirish va baholashda oxirgi foydalanuvchilar va tizimning boshqa manfaatdor tomonlari ishtirok etadilar. Ular dasturiy ta'minotga o'zgartirishlar kiritish va tizimning keyingi versiyasida amalga oshirilishi kerak bo'lgan yangi talablarni taklif qilishlari mumkin.
3. Tizim foydalanuvchi interfeyslari tez-tez interfeys dizaynini interfeysga chizish va joylashtirish orqali interfeys dizaynini tezda yaratishga imkon beradigan interaktiv ishlab chiqish tizimi yordamida ishlab chiqiladi. Keyin tizim brauzer uchun veb-interfeys yoki Microsoft Windows kabi ma'lum bir platforma uchun interfeys yaratishi mumkin.
Tezkor usullar - bu o'sishlarning kichik usullari va odatda tizimning yangi nashrlari yaratilib, har ikki yoki uch haftada mijozlarga taqdim etiladigan bosqichma-bosqich rivojlanish usullari. Ular o'zgaruvchan talablar to'g'risida tezkor mulohazalarni olish uchun mijozlarni ishlab chiqish jarayoniga jalb qilishadi. Ular yozma hujjatlar bilan rasmiy uchrashuvlardan ko'ra, norasmiy aloqa vositalaridan foydalangan holda hujjatlarni minimallashtirishadi.
3.1 Tezkor usullar
1980-yillarda va 1990-yillarning boshlarida yaxshi dasturiy ta'minotga erishishning eng yaxshi usuli - bu loyihani puxta rejalashtirish, rasmiylashtirilgan sifat kafolati, CASE vositalari tomonidan qo'llab-quvvatlanadigan tahlil va loyihalash usullaridan foydalanish va dasturiy ta'minotni boshqarish va qat'iy ishlab chiqish jarayonlari. Ushbu fikr dasturiy ta'minot muhandisidan kelib chiqqan
Ushbu nuqtai nazar aerokosmik va hukumat tizimlari kabi uzoq, uzoq umr ko'rgan dasturiy ta'minot tizimlarini ishlab chiqish uchun mas'ul bo'lgan dasturiy ta'minot muhandislari jamoatchiligidan kelib chiqdi.
Ushbu dastur turli kompaniyalarda ishlaydigan katta jamoalar tomonidan ishlab chiqilgan. Jamoalar ko'pincha geografik jihatdan tarqalgan va dasturiy ta'minot ustida uzoq vaqt ishlagan. Dasturiy ta'minotning ushbu turiga misol sifatida zamonaviy samolyotni boshqarish tizimlari keltirilgan bo'lib, ular dastlabki spetsifikatsiyadan tortib to joylashtirishgacha 10 yilgacha vaqt ketishi mumkin. Ushbu sodda yondashuvlar tizimni rejalashtirish, loyihalash va hujjatlashtirishda katta xarajatlarni o'z ichiga oladi. Ushbu qo'shimcha xarajatlar bir nechta rivojlanish guruhlarining ishlarini muvofiqlashtirish kerak bo'lganda, tizim juda muhim tizim bo'lganda va boshqacha bo'lsa odamlar butun umri davomida dasturiy ta'minotni saqlashda ishtirok etadilar. Ammo, ushbu og'ir vaznli, rejaga asoslangan rivojlanish yondashuvi kichik va o'rta biznes tizimlariga nisbatan qo'llanilganda, qo'shimcha xarajatlar shunchalik katta bo'ladiki, u dasturiy ta'minotni ishlab chiqish jarayonida ustunlik qiladi. Dasturni ishlab chiqish va sinovdan ko'ra ko'proq tizimni qanday ishlab chiqish kerakligiga ko'proq vaqt sarflanadi. Tizim talablari o'zgarganda, qayta ishlash muhim ahamiyatga ega va printsipial jihatdan hech bo'lmaganda spetsifikatsiya va dizayn dasturga qarab o'zgarishi kerak.
Dastur muhandisligiga ushbu og'ir vaznli yondashuvlardan norozilik 1990-yillarda bir qator dasturiy ta'minot ishlab chiqaruvchilarni yangi "tezkor usullar" ni taklif qilishlariga olib keldi. Ular ishlab chiquvchilar guruhiga dasturiy ta'minotni loyihalashtirishga emas, balki uning o'ziga e'tibor berishga imkon berdi. Tezkor usullar universal ravishda dasturiy ta'minotni spetsifikatsiya qilish, ishlab chiqish va etkazib berishga bosqichma-bosqich yondashishga tayanadi. Ular dasturni ishlab chiqishga eng mos keladi, bu erda tizim talablari odatda rivojlanish jarayonida tez o'zgarib turadi Ular ishlaydigan dasturiy ta'minotni xaridorlarga tezda etkazib berishga mo'ljallangan bo'lib, ular keyinchalik tizimning keyingi takrorlanishlariga qo'shilishi uchun yangi va o'zgartirilgan talablarni taklif qilishlari mumkin.
Ular shubhali uzoq muddatli qiymatga ega bo'lgan ishlardan qochish va hech qachon ishlatilmasligi mumkin bo'lgan hujjatlarni yo'q qilish orqali jarayonlar byurokratiyasini kamaytirishni maqsad qilib qo'ygan.
Tezkor usullarning asosidagi falsafa ushbu usullarning ko'plab etakchi ishlab chiquvchilari tomonidan kelishilgan tezkor manifestda aks etadi. Ushbu manifestda:
Biz dasturiy ta'minotni rivojlantirish va boshqalarga buni amalga oshirishda yordam berish orqali rivojlanishning eng yaxshi usullarini kashf etmoqdamiz. Ushbu ish orqali biz quyidagilarni qadrladik:
Jismoniy shaxslar va jarayonlar va vositalar bo'yicha o'zaro aloqalar To'liq hujjatlar bo'yicha ishlaydigan dasturiy ta'minot Mijozlar bilan shartnoma bo'yicha muzokaralar davomida hamkorlik qilish Rejaga rioya qilgan holda o'zgarishlarga javob berish ya'ni, o'ngdagi narsalarda qiymat mavjud bo'lsa, biz chapdagi narsalarni ko'proq qadrlaymiz.
Ehtimol, eng taniqli tezkor usul ekstremal dasturlashdir (Bek, 1999;Bek, 2000), men uni keyinchalik ushbu bobda tasvirlayman. Boshqa tezkor yondashuvlar kiradi
Scrum (Kon, 2009; Shvaber, 2004; Shvaber va Bidl, 2001), Kristal (Cockburn, 2001; Cockburn, 2004), Adaptiv dasturiy ta'minotni ishlab chiqish (Highsmith,DSDM (Stapleton, 1997; Stapleton, 2003) va Feature Driven Development (Palmer va Felsing, 2002). Ushbu usullarning muvaffaqiyati tizimni modellashtirishga asoslangan an'anaviy rivojlanish uslublari bilan birlashishga olib keldi, natijada tezkor modellashtirish tushunchasi paydo bo'ldi (Ambler va Jeffris, 2002) va tezkor instantatsiyalar ratsional birlashtirilgan jarayon (Larman, 2002).
Ushbu tezkor usullarning barchasi bosqichma-bosqich rivojlanish va etkazib berish tushunchasi atrofida bo'lsa-da, ular bunga erishish uchun turli jarayonlarni taklif qilishadi. Biroq, ular tezkor manifestga asoslangan bir qator printsiplarga ega va shu bilan ko'p umumiy jihatlar mavjud.
Turli xil tezkor usullar ushbu tamoyillarni turli yo'llar bilan asoslaydi va menda barcha tezkor usullarni muhokama qilish uchun joy yo'q. Buning o'rniga men eng ko'p ishlatiladigan ikkita usulga e'tibor qarataman: ekstremal dasturlash va
Scrum.
Tezkor usullar tizimni rivojlantirishning ayrim turlari uchun juda muvaffaqiyatli bo'ldi:
1. Dasturiy ta'minot kompaniyasi sotish uchun kichik yoki o'rta mahsulot ishlab chiqaradigan mahsulotni ishlab chiqish.
2. Mijoz tomonidan ishlab chiqish jarayonida qatnashish majburiyati aniq bo'lgan va dasturiy ta'minotga ta'sir ko'rsatadigan tashqi qoidalar va qoidalar juda kam bo'lgan tashkilot ichidagi maxsus tizimni ishlab chiqish.
Yakuniy qismida muhokama qilganimdek, tezkor usullarning muvaffaqiyati ushbu usullarni dasturiy ta'minotni ishlab chiqishning boshqa turlari uchun ishlatishga katta qiziqish bildirgan. Biroq, ular kichik, chambarchas birlashtirilgan jamoalarga qaratilganligi sababli,ularni katta tizimlarga o'tkazishda muammolar mavjud. Muhim tizim muhandisligi uchun tezkor yondashuvlardan foydalanish bo'yicha tajribalar ham mavjud (Drobna va boshq., 2004). Biroq, muhim tizimlarda xavfsizlik, xavfsizlik va ishonchlilikni tahlil qilish zarurligi sababli, tezkor usullar muntazam ravishda amalga oshirilishidan oldin sezilarli o'zgartirishlarni talab qiladi
Tezkor usullar asosidagi printsiplarni ba'zan amalga oshirish qiyin:
1. Mijozlarni ishlab chiqish jarayoniga jalb qilish g'oyasi jozibador bo'lsa ham, uning muvaffaqiyati rivojlanish guruhi bilan vaqt o'tkazishga tayyor va qodir bo'lgan va tizimning barcha manfaatdor tomonlarini namoyish eta oladigan mijozga ega bo'lishiga bog'liq. Ko'pincha mijozlar vakillari boshqa bosimlarga duchor bo'ladilar va dasturiy ta'minotni ishlab chiqishda to'liq ishtirok eta olmaydilar.
2. Shaxsiy jamoat a'zolari tezkor usullarga xos bo'lgan intensiv ishtirok etish uchun mos shaxslarga ega bo'lmasligi mumkin va shuning uchun boshqa jamoa a'zolari bilan yaxshi munosabatda bo'lmaydi.
3. O'zgarishlarga ustuvor ahamiyat berish juda qiyin bo'lishi mumkin, ayniqsa manfaatdor tomonlar ko'p bo'lgan tizimlarda. Odatda har bir manfaatdor tomon har xil o'zgarishlarga har xil ustuvorliklarni beradi.
4. Oddiylikni saqlash qo'shimcha ishni talab qiladi. Yetkazib berish jadvallarining bosimi ostida jamoa a'zolari kerakli tizim soddalashtirishlarini amalga oshirishga ulgurmasligi mumkin.
tezkor usullarning printsiplari
Printsip tavsifi
Ularning roli yangi tizim talablarini ta'minlash va ustuvorlik berish va tizimning takrorlanishini baholashdan iborat.
Qo'shimcha etkazib berish Dasturiy ta'minot xaridor bilan har bir qo'shimchaga kiritiladigan talablarni ko'rsatib, bosqichma-bosqich ishlab chiqiladi.
Odamlar ishlov bermaydilar rivojlanish guruhining ko'nikmalarini tan olish va ulardan foydalanish kerak. Jamoa a'zolari o'zlarining ishlash usullarini retsept bo'yicha o'tkazmasdan ishlab chiqishlari kerak.
O'zgarishlarni qabul qiling Tizim talablarini o'zgartirishini kuting va shu sababli tizimni ushbu o'zgarishlarga mos ravishda loyihalashtiring.
Oddiylikni saqlang Ishlab chiqilayotgan dasturiy ta'minotda ham, ishlab chiqish jarayonida ham soddaligiga e'tibor bering. Iloji bo'lsa, tizimdagi murakkablikni yo'q qilish uchun faol ish olib boring.
3.1 Tezkor usullar 61
5. Ko'pgina tashkilotlar, ayniqsa yirik kompaniyalar, yillar davomida o'z madaniyatini o'zgartirib, jarayonlar belgilanishi va amal qilinishi uchun sarfladilar. Jarayonlar norasmiy va rivojlanish guruhlari tomonidan belgilanadigan ishlaydigan modelga o'tish ular uchun qiyin.
Boshqa bir texnik bo'lmagan muammo - bu bosqichma-bosqich ishlab chiqish va etkazib berish bilan bog'liq umumiy muammo - tizim mijozi tizimni rivojlantirish uchun tashqi tashkilotdan foydalanganda yuzaga keladi. Dasturiy ta'minotga talablar to'g'risidagi hujjat odatda mijoz va etkazib beruvchi o'rtasida tuzilgan shartnomaning bir qismidir. Qo'shimcha spetsifikatsiya tezkor usullarga xos bo'lganligi sababli, ushbu rivojlanish turi uchun shartnomalar yozish qiyin bo'lishi mumkin.
Binobarin, tezkor usullar mijozlar muayyan talablar to'plamini ishlab chiqishdan ko'ra tizimni rivojlantirish uchun zarur bo'lgan vaqtni to'laydigan shartnomalarga tayanishi kerak. Hammasi yaxshi bo'lsa, bu mijozga ham, ishlab chiquvchiga ham foyda keltiradi. Ammo, agar muammolar paydo bo'lsa, unda qiyin tortishuvlar bo'lishi mumkin
kim aybdor va muammolarni hal qilish uchun zarur bo'lgan qo'shimcha vaqt va mablag 'uchun kim to'lashi kerak.
Tezkor usullar va tezkor usullar bilan tajribalarni tavsiflovchi aksariyat kitoblar va hujjatlarda ushbu usullardan yangi tizimlarni yaratish uchun foydalanish haqida so'z boradi.
Ammo, men 9-bobda tushuntirganimdek, dasturiy ta'minotning katta miqdordagi harakatlari mavjud dasturiy ta'minot tizimlarini saqlash va rivojlantirishga sarflanadi. Dasturiy ta'minot uchun tezkor usullardan foydalanish bo'yicha tajriba hisobotlari ozgina
(Puul va Xyuzman, 2001). Tezkor usullar va texnik xizmatni ko'rib chiqishda ikkita savolga e'tibor berish kerak:
1. Rasmiy hujjatlarni minimallashtirish jarayonini rivojlantirishga e'tibor berilib, tezkor yondashuv yordamida ishlab chiqilgan tizimlarni saqlab qolish mumkinmi?
2. Mijozlarni o'zgartirish talablariga javoban tizimni rivojlantirish uchun tezkor usullardan samarali foydalanish mumkinmi?
Rasmiy hujjatlar tizimni tavsiflashi va shu sababli tizimni o'zgartirayotgan odamlarning tushunishini osonlashtirishi kerak. Ammo amalda rasmiy hujjatlar ko'pincha yangilanib turilmaydi va shuning uchun dastur kodini to'g'ri aks ettirmaydi. Shu sababli, tezkor usul ixlosmandlari buni vaqtni behuda sarflash deb ta'kidlaydilar
ushbu hujjatni yozing va saqlanadigan dasturiy ta'minotning kaliti yuqori sifatli, o'qiladigan kodni ishlab chiqarishdir. Shuning uchun tezkor amaliyotlar yaxshi tuzilgan kodni yozish va sarmoyalarni sarflashning muhimligini ta'kidlaydi
kodni takomillashtirish. Shuning uchun hujjatlarning etishmasligi tezkor yondashuv yordamida ishlab chiqilgan tizimlarni saqlashda muammo bo'lmasligi kerak, ammo tizimni saqlash bo'yicha tajribam shuni ko'rsatadiki, asosiy hujjat dasturiy ta'minot muhandisiga tizim nima ekanligini aytib beradigan tizim talablari hujjati. qilish kerak edi. Bunday bilimga ega bo'lmagan holda, tizimdagi taklif qilinayotgan o'zgarishlarning ta'sirini baholash qiyin. Ko'pgina tezkor usullar talablarni norasmiy va bosqichma-bosqich to'playdi va izchil talablar hujjatini yaratmaydi. Shu nuqtai nazardan, tezkor usullardan foydalanish, keyinchalik tizimni saqlashni qiyinlashtirishi va qimmatlashtirishi mumkin.
Xizmat ko'rsatish jarayonida ishlatiladigan tezkor amaliyotlar, tizimni rivojlantirish uchun tezkor yondashuvdan foydalanilganmi yoki yo'qligidan qat'i nazar, samarali bo'lishi mumkin. Qo'shimcha etkazib berish, o'zgartirish uchun dizayn va soddalikni saqlash dasturiy ta'minot o'zgartirilganda mantiqan to'g'ri keladi. Aslida, siz tezkor rivojlanish jarayonini dasturiy ta'minot evolyutsiyasi jarayoni deb hisoblashingiz mumkin.
Biroq, dasturiy ta'minotni etkazib berishdan keyingi asosiy qiyinchilik mijozlarni jarayonga jalb qilishda davom etishi mumkin. Garchi xaridor tizimni ishlab chiqish paytida vakili to'liq vaqtli ishtirokini oqlashi mumkin bo'lsa-da, bu o'zgarishlarni doimiy ravishda amalga oshiradigan texnik xizmat ko'rsatish vaqtida bu ehtimoldan yiroq. Mijozlar vakillari tizimga qiziqishni yo'qotishi mumkin. Shuning uchun, ehtimol, yangi tizim talablarini yaratish uchun 25-bobda muhokama qilingan alternativ mexanizmlar, masalan, o'zgartirish takliflari talab qilinadi.
Vujudga kelishi mumkin bo'lgan boshqa muammo - rivojlanish guruhining doimiyligini saqlab qolish. Chaqqon usullar hujjatlarga murojaat qilmasdan tizim a'zolarini tizim a'zolarini tushunishiga asoslanadi. Agar tezkor rivojlanish guruhi buzilgan bo'lsa, unda bu yashirin bilim yo'qoladi va yangi guruh a'zolari uchun qiyin bo'ladi
tizim va uning tarkibiy qismlari haqida bir xil tushunchalarni shakllantirish.
Tezkor usullarning tarafdorlari ulardan foydalanishni targ'ib qilishda xushxabarchi bo'lishgan va ularning kamchiliklarini e'tiborsiz qoldirishgan. Bu mening fikrimcha, ushbu yondashuv bilan bog'liq muammolarni bo'rttirib ko'rsatadigan bir xil darajada keskin javob berishga undadi (Stiven va Rozenberg, 2003). DeMarko va Boem (DeMarco va Boehm, 2002) kabi asosli tanqidchilar tezkor usullarning afzalliklari va kamchiliklarini ta'kidlaydilar. Ular gibrid yondashuvni taklif qilishadi, bu erda tezkor usullar rejaga asoslangan rivojlanishning ba'zi texnikalarini o'z ichiga oladi, bu eng yaxshi yo'l bo'lishi mumkin.

Download 0.53 Mb.

Do'stlaringiz bilan baham:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling