8-Ma’ruza. Tezkor(Agile) rejalashtirish


Download 30.54 Kb.
Sana24.12.2022
Hajmi30.54 Kb.
#1062014
Bog'liq
8-mavzu (1)


8-Ma’ruza. Tezkor(Agile) rejalashtirish
Dasturiy ta'minotni ishlab chiqishning tezkor usullari - bu dasturiy ta'minot ishlab chiqiladigan va mijozlarga bosqichma-bosqich etkazib beriladigan iterativ yondashuvlar. Rejaga asoslangan yondashuvlardan farqli o'laroq, bu o'sishlarning funksionalligi oldindan rejalashtirilmaydi, lekin ishlab chiqish jarayonida hal qilinadi. O'sishga nimani kiritish to'g'risidagi qaror taraqqiyotga va mijozning ustuvorligiga bog'liq. Ushbu yondashuvning argumenti shundaki, mijozning ustuvorliklari va talablari o'zgaradi, shuning uchun bu o'zgarishlarga mos keladigan moslashuvchan rejaga ega bo'lish mantiqiydir. 
Scrum (Schwaber, 2004) va ekstremal dasturlash (Beck, 2000) kabi eng ko'p qo'llaniladigan tezkor yondashuvlar rejalashtirishga asoslangan rivojlanish va rivojlanishni rejalashtirishda boshlang'ich bosqichiga mos keladigan ikki bosqichli rejalashtirishga ega:
1. Relizlarni rejalashtirish, u bir necha oy oldinga qaraydi va tizim reliziga kiritilishi kerak bo'lgan xususiyatlarni hal qiladi.
2. Qisqa muddatli istiqbolga ega bo'lgan va rejalashtirishga qaratilgan takroriy rejalashtirish
tizimning keyingi o'sishi. Bu odatda jamoa uchun 2-4 haftalik ish.

8.1-rasm. XP da rejalashtirish
Men 3-bobda rejalashtirishga Scrum yondashuvini allaqachon muhokama qilganman, shuning uchun men bu erda ekstremal dasturlashda (XP) rejalashtirishga e'tibor qarataman. Bu "rejalashtirish o'yini" deb ataladi va u odatda butun ishlab chiqish guruhini, shu jumladan mijozlar vakillarini o'z ichiga oladi.
8.1-rasmda rejalashtirish o'yinidagi bosqichlar ko'rsatilgan.
XP-dagi tizim spetsifikatsiyasi tizimga kiritilishi kerak bo'lgan xususiyatlarni aks ettiruvchi foydalanuvchi hikoyalariga asoslanadi. Loyihaning boshida jamoa va mijoz yakuniy tizimga kiritiladigan barcha funksiyalarni qamrab oluvchi hikoyalar to‘plamini aniqlashga harakat qiladi. Ba'zi funksiyalar muqarrar ravishda yo'qoladi, ammo bu bosqichda bu muhim emas.
Keyingi bosqich - bu baholash bosqichi. Loyiha jamoasi hikoyalarni o'qiydi va muhokama qiladi va hikoyani amalga oshirish uchun qancha vaqt ketadi deb o'ylagan bo'lsa, ularni tartiblaydi. Bu katta hikoyalarni kichikroq hikoyalarga ajratishni o'z ichiga olishi mumkin. Nisbiy baholash ko'pincha mutlaq baholashdan osonroqdir. Odamlar ko'pincha biror narsa qilish uchun qancha kuch yoki vaqt kerakligini hisoblash qiyin. Biroq, ularga bir nechta bajarilishi kerak bo'lgan narsalar taqdim etilganda , ular qaysi hikoyalar eng uzoq vaqt va ko'p kuch sarflashi haqida xulosa chiqarishlari mumkin. Reyting tugallangandan so'ng, jamoa hikoyalarga taxminiy harakat ballarini ajratadi. Murakkab hikoya 8 ball va oddiy hikoya 2 ball bo'lishi mumkin. Siz buni tartiblangan ro'yxatdagi barcha hikoyalar uchun qilasiz. 
Holatlar baholangandan so'ng, nisbiy harakat "tezlik" tushunchasidan foydalangan holda zarur bo'lgan umumiy kuchning birinchi bahosiga tarjima qilinadi. XP da tezlik - bu jamoa tomonidan kuniga bajariladigan harakatlar soni. Buni oldingi tajribadan yoki qancha vaqt kerakligini ko'rish uchun bir yoki ikkita hikoyani ishlab chiqish orqali taxmin qilish mumkin. Tezlikni baholash taxminiydir, lekin ishlab chiqish jarayonida aniqlangan. Tezlikni taxmin qilganingizdan so'ng, siz tizimni amalga oshirish uchun jami harakatni odam-kunlarda hisoblashingiz mumkin.
Relizlarni rejalashtirish tizimning chiqarilishida amalga oshiriladigan xususiyatlarni va hikoyalarni amalga oshirish tartibini aks ettiruvchi hikoyalarni tanlash va takomillashtirishni o'z ichiga oladi. Bu jarayonda mijoz ishtirok etishi kerak. So'ngra chiqish sanasi tanlanadi va voqealar bahosi shu sanaga mos keladimi-yo'qligini tekshirish uchun tekshiriladi. Aks holda, hikoyalar ro'yxatga qo'shiladi yoki o'chiriladi.
Takrorlashni rejalashtirish iteratsiyani ishlab chiqish jarayonining birinchi bosqichidir. Ushbu iteratsiya uchun amalga oshiriladigan hikoyalar tanlanadi, hikoyalar soni iteratsiyani etkazib berish vaqtini (odatda 2 yoki 3 hafta) va jamoaning tezligini aks ettiradi. Takrorlash yetkazib berish sanasi yetganda, barcha hikoyalar amalga oshirilmagan bo'lsa ham, bu iteratsiya tugallangan hisoblanadi. Jamoa amalga oshirilgan voqealarni ko'rib chiqadi va o'zlarining harakat nuqtalarini qo'shadi. Keyin tezlikni qayta hisoblash mumkin va bu tizimning keyingi versiyasini rejalashtirishda ishlatiladi.
Har bir iteratsiyaning boshida batafsilroq rejalashtirish bosqichi mavjud
Ishlab chiquvchilar hikoyalarni rivojlanish vazifalariga ajratadilar. Rivojlanish vazifasi 4-16 soat davom etishi kerak. Ushbu iteratsiyadagi barcha hikoyalarni amalga oshirish uchun bajarilishi kerak bo'lgan barcha vazifalar sanab o'tilgan. Keyin individual ishlab chiquvchilar o'zlari amalga oshiradigan aniq vazifalar uchun ro'yxatdan o'tadilar. Har bir ishlab chiquvchi o'zining individual tezligini biladi, shuning uchun ular o'z vaqtida amalga oshirishi mumkin bo'lgan ko'proq vazifalarga yozilmasligi kerak.
Vazifalarni taqsimlashda ushbu yondashuvning ikkita muhim foydasi bor:
1. Butun jamoa iteratsiyada bajarilishi kerak bo'lgan vazifalar haqida umumiy ma'lumot oladi. Shuning uchun ular boshqa jamoa a'zolari nima qilayotganini va agar vazifaga bog'liqlik aniqlansa, kim bilan gaplashish kerakligini tushunishadi.
2. Alohida ishlab chiquvchilar amalga oshirish uchun vazifalarni tanlaydilar; ular shunchaki loyiha menejeri tomonidan ajratilgan vazifalar emas. Shuning uchun ular bu vazifalarda egalik tuyg'usiga ega va bu ularni vazifani bajarishga undashi mumkin.
Iteratsiyaning yarmiga qaramay, taraqqiyot ko'rib chiqiladi. Ushbu bosqichda hikoya harakat nuqtalarining yarmi bajarilishi kerak edi. Shunday qilib, agar iteratsiya 24 hikoya nuqtasi va 36 vazifani o'z ichiga olsa, 12 hikoya nuqtasi va 18 vazifa bajarilgan bo'lishi kerak. Agar bunday bo'lmasa, mijoz bilan maslahatlashish va ba'zi hikoyalarni iteratsiyadan olib tashlash kerak.
Rejalashtirishga bunday yondashuvning afzalligi shundaki, dasturiy ta'minot har doim rejalashtirilganidek chiqariladi va jadvalning siljishi yo'q. Agar ishni ruxsat etilgan vaqt ichida yakunlab bo'lmasa, XP falsafasi jadvalni uzaytirishdan ko'ra ish hajmini qisqartirishdir. Biroq, ba'zi hollarda, o'sish foydali bo'lishi uchun etarli bo'lmasligi mumkin. Mijozlar to'liq bo'lmagan tizimdan foydalanishi yoki tizimning bir chiqarilishi va boshqasi o'rtasida ish amaliyotini o'zgartirishi kerak bo'lsa, qo'shimcha ish hajmini qisqartirish mumkin.
Chaqqon rejalashtirishdagi asosiy qiyinchilik shundaki, u mijozlarning ishtiroki va mavjudligiga bog'liq. Amalda, buni tartibga solish qiyin bo'lishi mumkin, chunki mijoz vakili ba'zan boshqa ishlarga ustunlik berishi kerak. Mijozlar an'anaviy loyiha rejalari bilan ko'proq tanish bo'lishi mumkin va tezkor rejalashtirish loyihasida qatnashish qiyin bo'lishi mumkin.
Agile rejalashtirish kichik, barqaror rivojlanish guruhlari bilan yaxshi ishlaydi, ular yig'ilishi va amalga oshirilishi kerak bo'lgan voqealarni muhokama qilishi mumkin. Biroq, jamoalar katta va/yoki geografik jihatdan taqsimlangan bo'lsa yoki jamoa a'zolari tez-tez o'zgarib turadigan bo'lsa, tezkor loyihalarni boshqarish uchun zarur bo'lgan hamkorlikda rejalashtirishda hamma ishtirok etishi deyarli mumkin emas. Binobarin, yirik loyihalar odatda loyihalarni boshqarishning an'anaviy yondashuvlaridan foydalangan holda rejalashtirilgan. 
Download 30.54 Kb.

Do'stlaringiz bilan baham:




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