Bog'liq 3 mavzu Dasturiy taminotning hayot aylanishining modellari va bosqichlari (3)
Hayotiy tsikl dasturining spiral modeli Spiral model Evolyutsion dizayn strategiyasining klassik namunasidir. Model (B. Boem, 1988 y.) Klassik hayot tsikli va prototipning eng yaxshi xususiyatlariga asoslangan bo'lib, unga yangi element qo'shiladi - bu paradigmalarda bo'lmagan xavf tahlili. Model spiralning to'rtta kvadranti bilan ifodalangan to'rtta harakatni belgilaydi.
Rejalashtirish - maqsadlarni, variantlarni va cheklovlarni aniqlash.
Xatarlarni tahlil qilish - variantlarni tahlil qilish va xatarlarni tan olish / tanlash.
Muhandislik mahsulot ishlab chiqarishning navbatdagi darajasidir.
Baholash - mijozning joriy dizayn natijalarini baholashi.
Birlashtiruvchi jihat spiral model spiralning lamel o'lchamini ko'rib chiqishda aniq. Har bir takrorlash bilan PS ning tobora to'liq versiyalari spiral shaklida quriladi. Spiralning birinchi burilishida dastlabki maqsadlar, imkoniyatlar va cheklovlar aniqlanadi va xavf tan olinadi va tahlil qilinadi. Agar risklarni tahlil qilish talablarning noaniqligini aniqlasa, dizayn kvadrantida ishlatiladigan prototip ishlab chiquvchi va buyurtmachiga yordam beradi.
Modellashtirish muammoli va aniq talablarni yanada aniqlash uchun ishlatilishi mumkin. Buyurtmachi muhandislik (loyihalash) ishini baholaydi va modifikatsiya qilish bo'yicha takliflar kiritadi (mijozning baholash kvadranti). Rejalashtirish va risklarni tahlil qilishning navbatdagi bosqichi mijozlarning takliflariga asoslanadi. Spiraldagi har bir tsikldagi xatarlarni tahlil qilish natijalari "davom eting, davom etmang" shaklida shakllantiriladi. Agar xavf juda katta bo'lsa, loyihani to'xtatish mumkin.
Ko'pgina hollarda, spiral davom etadi, har bir qadam ishlab chiquvchilarni tizimning umumiy modeli tomon yo'naltiradi. Har bir spiral tsikl uchun klassik hayot tsikli yoki prototip yordamida bajarilishi mumkin bo'lgan dizayn (o'ng pastki kvadrant) kerak. E'tibor bering, spiral markazidan harakatlanayotganda rivojlanish faoliyati soni (pastki o'ng kvadrantda paydo bo'ladi).
Ushbu harakatlar raqamlangan va quyidagi tarkibga ega:
- talablarning dastlabki to'plami va loyihani rejalashtirish;
- xuddi shu ish, lekin mijozning tavsiyalari asosida;
- dastlabki talablar asosida tavakkalchilik tahlili;
- mijozning reaktsiyasi asosida xatarlarni tahlil qilish;
- yaxlit tizimga o'tish;
- tizimning dastlabki joylashuvi;
- maketning keyingi darajasi;
- ishlab chiqilgan tizim;
- mijoz tomonidan baholash.
Afzalliklari spiral model:
eng aniq (evolyutsiya shaklida) dasturiy ta'minotning rivojlanishini aks ettiradi;
rivojlanish evolyutsiyasining har bir bosqichida xavfni aniq hisobga olishga imkon beradi;
iterativ rivojlanish tarkibidagi tizimli yondoshish bosqichini o'z ichiga oladi;
dasturiy mahsulotni xavfini kamaytirish va yaxshilash uchun simulyatsiyadan foydalanadi.
kamchiliklar spiral model:
qiyosiy yangilik (model samaradorligi bo'yicha etarli statistika mavjud emas);
mijozga bo'lgan talablarning ortishi;
rivojlanish vaqtini boshqarish va boshqarishdagi qiyinchiliklar.
Spiral rivojlanish jarayonining modeli hozirgi kunda eng keng tarqalgan. Eng mashhur variantlar RUP (Rational Unified Process) dan Rational va MSF (Microsoft Solution Framework). UML (Unified Modeling Language) modellashtirish tili sifatida ishlatiladi. Tizimni yaratish takroriy ravishda, spiralda harakatlanib, xuddi shu bosqichlardan o'tib, har bir tsikldagi kelajak mahsulotining xususiyatlarini yaxshilash uchun amalga oshirilishi kerak. Endi hamma narsa yaxshi bo'lib tuyuladiki: faqat taxmin qilinishi mumkin bo'lgan narsalar rejalashtirilgan, rejalashtirilgan narsalar ishlab chiqilgan va foydalanuvchilar kerakli o'zgartirishlarni kiritish imkoniyatiga ega bo'lib, mahsulot bilan oldindan tanishishni boshlaydilar.
Biroq, bu juda katta mablag 'talab qiladi. Darhaqiqat, agar ilgari kerak bo'lganda mutaxassislar guruhlarini tuzish va tarqatish mumkin bo'lgan bo'lsa, endi ularning barchasi doimiy ravishda loyihada qatnashishi kerak: me'morlar, dasturchilar, sinovchilar, instruktorlar va boshqalar. Bundan tashqari, o'z vaqtida aks ettirish uchun turli guruhlarning sa'y-harakatlari sinxronlashtirilishi kerak. dizayn echimlari va kerakli o'zgarishlarni amalga oshirish.