2-bo‘lim

Ishlab chiqish modellari

Sharshara, V-model, iterativ, spiral va Agile - qaysi model qanday loyihaga mos keladi.

🕑 8 daqiqa o‘qish 📄 1 059 so‘z 👁 6 marta ko‘rilgan
Ushbu bo‘lim mundarijasi
  1. Umumiy bosqichlar
  2. 1. Sharshara modeli
  3. 2. V-model
  4. 3. Iterativ va inkremental model
  5. 4. Spiral model
  6. 5. Agile
  7. Modellarni solishtirish
  8. Qaysi modelni tanlash?
  9. Umumiy xatolar
  10. Xulosa

Loyihani boshlashdan oldin savol tug'iladi: qanday tartibda ishlaymiz? Bu savolga javob beruvchi tayyor sxemalar - ishlab chiqish modellari.

Umumiy bosqichlar #

Har qanday modelda quyidagi ishlar bajariladi:

Talablar nima kerak? Loyihalash qanday qilamiz? Kod yozish amalga oshirish Testlash to'g'ri ishlaydimi? Yetkazish deploy Qo'llab-quvvatlash yashash davri Modellar bu bosqichlarni turlicha tartibga soladi Farq - ular bir marta bajariladimi yoki takrorlanadimi
Bosqichlar bir xil, ularni tashkil qilish usuli farq qiladi

1. Sharshara modeli #

Eng eski va eng sodda model: har bir bosqich to'liq tugagach, keyingisi boshlanadi.

Sharshara (Waterfall) Talablar Loyihalash Kod yozish Testlash Yetkazish Orqaga qaytish juda qimmat
Suv faqat pastga oqadi - orqaga qaytish nazarda tutilmagan
AfzalligiKamchiligi
Sodda va tushunarliO'zgarishga moslashmaydi
Aniq hujjatlarIshlaydigan mahsulot juda kech ko'rinadi
Rejalashtirish osonXato oxirida topiladi - qimmat
Shartnoma tuzish qulayMijoz jarayondan ajralgan
Asosiy muammo

Mijoz mahsulotni birinchi marta oxirida ko'radi. O'shanda "men buni nazarda tutmagan edim" desa - loyiha qaytadan boshlanadi.

Amaliyot shuni ko'rsatadi: mijoz o'zi nima xohlashini ko'pincha ishlaydigan versiyani ko'rgandan keyin aniq tushunadi.

Qachon mos keladi?
  • Talablar aniq va o'zgarmas (masalan, davlat standarti)
  • Texnologiya yaxshi ma'lum
  • Loyiha kichik va qisqa
  • Qat'iy hujjatlashtirish talab qilinadi (aviatsiya, tibbiyot uskunasi)

2. V-model #

Sharsharaning testlashga urg'u bergan varianti.

V-model: har bir loyihalash bosqichiga mos test darajasi Biznes talablari Tizim talablari Arxitektura Modul dizayni Kod Qabul testi Tizim testi Integratsiya testi Modul testi Har bir chap bosqich uchun test rejasi shu bosqichda tuziladi
Testlar oxirida emas, boshidanoq rejalashtiriladi
V-modelning asosiy g'oyasi

Testlash kodni yozgandan keyin boshlanadigan ish emas.

Talablar yozilayotgan paytda ularni qanday tekshirish rejalashtiriladi. "Bu talab qanday sinaladi?" degan savol talabni aniqroq qilishga majbur qiladi.

3. Iterativ va inkremental model #

Mahsulot bo'laklab quriladi, har bir bo'lak to'liq tsiklni bosib o'tadi.

Har bir iteratsiya - ishlaydigan mahsulot 1-iteratsiya Talablar → Dizayn → Kod → Test Kirish va ro'yxat ishlaydigan versiya 2-iteratsiya Talablar → Dizayn → Kod → Test + Savat avvalgisi + yangisi 3-iteratsiya Talablar → Dizayn → Kod → Test + To'lov to'liq oqim Har bir iteratsiyadan keyin mijoz fikr bildiradi Xato erta topiladi, yo'nalishni tuzatish arzon
Bu yondashuv zamonaviy Agile ning asosi
Nima uchun bu yaxshiroq?
SharsharaIterativ
Natija 12 oydan keyinNatija 2 haftadan keyin
Xato oxirida topiladiXato darhol topiladi
Mijoz kutadiMijoz ishtirok etadi
Yo'nalish o'zgarmaydiHar iteratsiyada tuzatiladi

4. Spiral model #

Har bir aylanishda xavflarni baholash bosqichi bo'ladi.

Natija
1. Maqsadlarni aniqlash
2. Xavflarni baholash va kamaytirish
3. Ishlab chiqish va tekshirish
4. Keyingi aylanishni rejalashtirish
Xavf - asosiy e'tibor markazida

Spiral model katta va noaniq loyihalar uchun yaratilgan.

Har bir aylanishda: "eng katta xavf nima?" degan savolga javob beriladi va aynan shu xavfni kamaytirishga kuch sarflanadi.

Masalan: "yangi texnologiya ishlaydimi?" degan xavf bo'lsa - avval kichik prototip qilinadi.

5. Agile #

2001-yilda 17 nafar dasturchi Agile manifestini e'lon qildi.

Agile manifesti - to'rtta qadriyat Shaxslar va muloqot > jarayonlar va vositalar Ishlaydigan mahsulot > to'liq hujjatlar Mijoz bilan hamkorlik > shartnoma muzokarasi O'zgarishga javob berish > rejaga qat'iy amal qilish O'ng tomondagilar ham qimmatli
"Chapdagilar ko'proq qimmatli" - o'ngdagilar ham kerak
Agile - qoidalar to'plami emas

Ko'p jamoalar "biz Agile ishlaymiz" deydi, lekin aslida faqat yig'ilishlar o'tkazadi.

Agile - bu fikrlash tarzi. Uning asosi:

  • Tez fikr-mulohaza olish
  • O'zgarishdan qo'rqmaslik
  • Ishlaydigan mahsulotga urg'u
  • Jamoaning o'zini-o'zi tashkil qilishi

"Har kuni 30 daqiqalik standup" - bu Agile emas, bu shunchaki yig'ilish.

Modellarni solishtirish #

SharsharaV-modelIterativAgile
Talablar aniqmiHa, boshidanHaQismanYo'q, rivojlanadi
O'zgarish narxiJuda yuqoriYuqoriO'rtachaPast
Birinchi natijaOxiridaOxirida1-2 oy2 hafta
Mijoz ishtirokiBoshi va oxiriBoshi va oxiriHar iteratsiyaDoimiy
HujjatlarJuda ko'pJuda ko'pO'rtachaMinimal
Jamoa hajmiKattaKattaO'rtachaKichik (5-9)
TestlashOxiridaHar darajadaHar iteratsiyadaDoimiy

Qaysi modelni tanlash? #

Talablar aniqmi? Ha, to'liq aniq va o'zgarmaydi Yo'q yoki o'zgaradi Sharshara / V-model Spiral Agile xavf yuqori odatiy holat Amalda ko'p jamoalar aralash yondashuvdan foydalanadi
Universal to'g'ri javob yo'q - loyiha xususiyatiga qarang
Amaliyotda ko'pincha aralash

Ko'plab jamoalar shunday ishlaydi:

  • Arxitektura va asosiy talablar - oldindan, sharsharaga o'xshab
  • Imkoniyatlarni ishlab chiqish - Agile, ikki haftalik sprintlar
  • Reliz - iterativ, oyiga bir marta

Bu "gibrid" yondashuv deb ataladi va aksariyat kompaniyalarda uchraydi.

Umumiy xatolar #

Modelni noto'g'ri tanlash oqibatlari
XatoNatija
O'zgaruvchan talabda sharsharaLoyiha oxirida hech kimga kerak bo'lmagan mahsulot
Qat'iy standartli sohada AgileSertifikatsiyadan o'tolmaydi
Kichik loyihada og'ir jarayonByurokratiya ishdan ko'p vaqt oladi
Katta loyihada jarayonsizlikTartibsizlik va texnik qarz
"Agile" nomi bilan rejasizlikMuddat va byudjet nazoratdan chiqadi
Agile - rejasizlik degani emas

"Bizda Agile, shuning uchun hujjat yozmaymiz va muddat belgilamaymiz" - bu Agile ni noto'g'ri tushunish.

Agile da ham:

  • Reja bor (lekin moslashuvchan)
  • Hujjat bor (lekin zarur miqdorda)
  • Muddat bor (sprint chegaralari)
  • Sifat talablari bor (hatto qattiqroq)
Amaliy topshiriq
  1. Quyidagi loyihalar uchun mos modelni tanlang va sababini yozing:
    • Bank uchun to'lov tizimi
    • Startap uchun mobil ilova
    • Kosmik kemani boshqarish dasturi
    • Ichki hisobot tizimi
    • Yangi ijtimoiy tarmoq
  2. Sharshara va Agile ning kuchli tomonlarini jadval qilib yozing.
  3. Agile manifestining to'rtta qadriyatini o'z so'zlaringiz bilan izohlang.
  4. Siz ishlagan loyihada qanday model ishlatilgan? U mos kelganmi?
  5. "Agile ni noto'g'ri qo'llash" holatiga misol o'ylab toping.
  6. V-modelda testlash nima uchun oldindan rejalashtirilishini tushuntiring.

Xulosa #

  • Barcha modellarda bir xil bosqichlar bor - farq tartibda.
  • Sharshara - ketma-ket, orqaga qaytish qimmat; aniq talablar uchun.
  • V-model - sharshara + har bosqichga mos test darajasi.
  • Iterativ - mahsulot bo'laklab quriladi, har bo'lak ishlaydi.
  • Spiral - har aylanishda xavflar baholanadi.
  • Agile - o'zgarishga moslashuv, doimiy fikr-mulohaza, ishlaydigan mahsulotga urg'u.
  • Agile - fikrlash tarzi, yig'ilishlar to'plami emas.
  • Universal to'g'ri model yo'q - loyihaga qarab tanlanadi.
  • Amaliyotda ko'p jamoalar gibrid yondashuvdan foydalanadi.

Keyingi bo'limda talablarni yig'ishni o'rganamiz.

Xatolik topdingizmi?

Imlo xatosi, ishlamaydigan kod yoki noto‘g‘ri ma‘lumotni ko‘rsangiz - bizga xabar bering. Har bir xabar administrator tomonidan ko‘rib chiqiladi.