Ilovaning hayot aylanishi. Dasturiy ta'minotning hayot aylanishi tushunchasi

Biz belgilashdan boshlashimiz kerakHayot davrasi dasturiy ta'minot (Dasturiy ta'minotning hayot aylanishi modeli) - dasturiy mahsulot yaratish to'g'risida qaror qabul qilingan paytdan boshlab boshlanib, u xizmatdan butunlay olib tashlangan paytda tugaydigan vaqt davri. Ushbu tsikl dasturiy ta'minotni yaratish va ishlab chiqish jarayonidir.

Dasturiy ta'minotning hayot aylanishi modellari

Hayotiy tsikl modellar shaklida ifodalanishi mumkin. Hozirgi vaqtda eng keng tarqalgan:kaskad, ortib boruvchi (oraliq boshqaruvga ega bosqichli model ) Va spiralhayot tsikli modellari.

Kaskad modeli

Kaskad modeli(inglizcha) sharshara modeli) dasturiy ta'minotni ishlab chiqish jarayoni modeli bo'lib, uning hayotiy tsikli talablarni tahlil qilish va loyihalash bosqichlaridan ketma-ket o'tadigan oqimga o'xshaydi. amalga oshirish, sinovdan o'tkazish, integratsiya va qo'llab-quvvatlash.

Rivojlanish jarayoni mustaqil qadamlarning tartiblangan ketma-ketligi orqali amalga oshiriladi. Model har bir keyingi bosqich oldingi bosqich to'liq bajarilgandan so'ng boshlanishini ta'minlaydi. Modelning barcha bosqichlarida, yordamchi va tashkiliy jarayonlar va loyihalarni boshqarish, sifatni baholash va boshqarish, tekshirish va sertifikatlash, konfiguratsiyani boshqarish, hujjatlarni ishlab chiqish, shu jumladan ish. Bosqichlarning bajarilishi natijasida keyingi bosqichlarda o'zgartirib bo'lmaydigan oraliq mahsulotlar hosil bo'ladi.

Hayotiy tsikl an'anaviy ravishda quyidagi asosiylarga bo'linadibosqichlar:

  1. Talablarni tahlil qilish,
  2. Dizayn,
  3. Kodlash (dasturlash),
  4. Sinov va disk raskadrovka,
  5. Foydalanish va texnik xizmat ko'rsatish.

Modelning afzalliklari:

  • rivojlanishning butun hayoti davomida talablarning barqarorligi;
  • har bir bosqichda to'liqlik va izchillik mezonlariga javob beradigan loyiha hujjatlarining to'liq to'plami yaratiladi;
  • model bosqichlarining aniqligi va ravshanligi va uni qo'llash qulayligi;
  • mantiqiy ketma-ketlikda bajarilgan ish bosqichlari barcha ishlarni yakunlash vaqtini va tegishli resurslarni (pul, moddiy va insoniy) rejalashtirish imkonini beradi.

Modelning kamchiliklari:

  • talablarni aniq shakllantirishning qiyinligi va ularni butun hayot aylanishi davomida dinamik ravishda o'zgartirishning mumkin emasligi;
  • loyihalarni boshqarishda past moslashuvchanlik;
  • rivojlanish jarayonining chiziqli tuzilishining izchilligi, natijada paydo bo'lgan muammolarni hal qilish uchun oldingi bosqichlarga qaytish xarajatlarning oshishiga va ish tartibining buzilishiga olib keladi;
  • oraliq mahsulotning foydalanishga yaroqsizligi;
  • noyob tizimlarni moslashuvchan modellashtirishning mumkin emasligi;
  • Rivojlanish oxirida barcha natijalarning bir vaqtning o'zida integratsiyalashuvi tufayli montaj muammolarini kech aniqlash;
  • tizimni yaratishda foydalanuvchi ishtirokining etarli emasligi - eng boshida (talablarni ishlab chiqishda) va oxirida (qabul qilish sinovlari paytida);
  • foydalanuvchilar butun ishlab chiqish jarayoni tugamaguncha ishlab chiqilayotgan mahsulot sifatiga ishonch hosil qila olmaydi. Ularning sifatini baholash imkoni yo'q, chunki ular ko'ra olmaydi tayyor mahsulot rivojlanish;
  • foydalanuvchi asta-sekin tizimga ko'nikish imkoniyatiga ega emas. O'quv jarayoni hayot tsiklining oxirida, dasturiy ta'minot allaqachon ishga tushirilganda sodir bo'ladi;
  • har bir bosqich keyingi harakatlar uchun zaruriy shart bo'lib, bu usulni o'xshashi bo'lmagan tizimlar uchun xavfli tanlovga aylantiradi, chunki u moslashuvchan modellashtirishga mos kelmaydi.

Oldingi bosqichlarga qaytmasdan va yuzaga keladigan muammolarni bartaraf etish uchun ularning natijalarini o'zgartirmasdan, dasturiy ta'minot tizimini ishlab chiqishning murakkabligi tufayli Cascade hayot tsikli modelini amalga oshirish qiyin.

Kaskad modelining qo'llanish doirasi

Kaskadli modelni qo'llash doirasini cheklash uning kamchiliklari bilan belgilanadi. Uni qo'llash quyidagi hollarda eng samarali hisoblanadi:

  1. aniq, o'zgarmas loyihalarni ishlab chiqishdahayot davrasi talablar, tushunarli amalga oshirish va texnik usullar;
  2. ilgari ishlab chiquvchilar tomonidan ishlab chiqilgan bir xil turdagi tizim yoki mahsulotni yaratishga qaratilgan loyihani ishlab chiqishda;
  3. mavjud mahsulot yoki tizimning yangi versiyasini yaratish va chiqarish bilan bog'liq loyihani ishlab chiqishda;
  4. mavjud mahsulot yoki tizimni yangi platformaga o'tkazish bilan bog'liq loyihani ishlab chiqishda;
  5. bir nechta yirik rivojlanish guruhlarini o'z ichiga olgan yirik loyihalarni amalga oshirishda.

Inkremental model

(oraliq nazorat bilan bosqichma-bosqich model)

Inkremental model(inglizcha) oshirish- oshirish, o'sish) bosqichlarning chiziqli ketma-ketligi bilan dasturiy ta'minotni ishlab chiqishni nazarda tutadi, lekin bir necha bosqichlarda (versiyalarda), ya'ni. Dasturiy ta'minotni ishlab chiqish hayot tsikli tugaguniga qadar butun vaqt davomida rejalashtirilgan mahsulotni yaxshilash bilan.


Dasturiy ta'minotni ishlab chiqish tsikllar bilan takrorlashda amalga oshiriladi fikr-mulohaza bosqichlar orasida. Bosqichlararo tuzatishlar turli bosqichlarda rivojlanish natijalarining haqiqiy o'zaro ta'sirini hisobga olish imkonini beradi, har bir bosqichning ishlash muddati butun rivojlanish davrida uzaytiriladi;

Loyiha ustida ishlashning boshida tizimga qo'yiladigan barcha asosiy talablar aniqlanadi va ular ko'proq va kamroq muhim bo'lganlarga bo'linadi. Keyinchalik tizim bosqichma-bosqich ishlab chiqiladi, shunda ishlab chiquvchi dasturiy ta'minotni ishlab chiqish jarayonida olingan ma'lumotlardan foydalanishi mumkin. Har bir o'sish tizimga ma'lum funksiyalarni qo'shishi kerak. Bunday holda, chiqarish eng yuqori ustuvorlikka ega bo'lgan komponentlardan boshlanadi. Tizimning qismlari aniqlangandan so'ng, birinchi qismni oling va buning uchun eng mos jarayonni qo'llagan holda batafsil tasvirlashni boshlang. Shu bilan birga, ushbu ish uchun joriy talablar to'plamida muzlatilgan boshqa qismlarga qo'yiladigan talablarni aniqlashtirish mumkin. Agar kerak bo'lsa, keyinroq bu qismga qaytishingiz mumkin. Agar qism tayyor bo'lsa, u mijozga topshiriladi, u o'z ishida foydalanishi mumkin. Bu mijozga quyidagi komponentlar uchun talablarni aniqlashtirish imkonini beradi. Keyin ular tizimning keyingi qismini ishlab chiqadilar. Ushbu jarayondagi asosiy qadamlar dasturiy ta'minot talablarining bir qismini amalga oshirish va dasturiy ta'minot to'liq amalga oshirilgunga qadar modelni ketma-ket nashrlar seriyasida takomillashtirishdan iborat.

Ushbu modelning hayot aylanishi murakkab va integratsiyalashgan tizimlarni ishlab chiqishda odatiy holdir, buning uchun nima bo'lishi kerakligi haqida aniq tasavvur mavjud (mijozdan ham, ishlab chiquvchidan ham) yakuniy natija. Versiyani ishlab chiqish turli sabablarga ko'ra amalga oshiriladi:

  • mijozning bir vaqtning o'zida butun qimmat loyihani moliyalashtira olmasligi;
  • ishlab chiquvchi qisqa vaqt ichida murakkab loyihani amalga oshirish uchun zarur resurslarga ega emas;
  • talablar bosqichma-bosqich amalga oshirish va mahsulotning oxirgi foydalanuvchilar tomonidan qabul qilinishi. Butun tizimni bir vaqtning o'zida amalga oshirish uning foydalanuvchilari orasida rad etishiga olib kelishi va faqat yangi texnologiyalarga o'tish jarayonini "sekinlashtirishi" mumkin. Majoziy ma'noda, ular shunchaki "katta bo'lakni hazm qilmasliklari mumkin, shuning uchun uni maydalab, qismlarga bo'lish kerak".

Afzalliklar Va kamchiliklarUshbu model (strategiyalar) sharshara (klassik hayot tsikli modeli) bilan bir xil. Ammo klassik strategiyadan farqli o'laroq, mijoz natijalarni ertaroq ko'rishi mumkin. Birinchi versiyani ishlab chiqish va amalga oshirish natijalariga ko'ra, u ishlab chiqish talablarini biroz o'zgartirishi, undan voz kechishi yoki yangi shartnoma tuzish bilan yanada ilg'or mahsulotni ishlab chiqishni taklif qilishi mumkin.

Afzalliklari:

  • foydalanuvchi talablarining o'zgarishi tufayli yuzaga keladigan xarajatlar kamayadi, qayta tahlil qilish va hujjatlashtirish palapartishlik modeliga nisbatan sezilarli darajada kamayadi;
  • Mijozdan bajarilgan ishlar bo'yicha fikr-mulohazalarini olish osonroq - mijozlar tayyor qismlar bo'yicha o'z fikrlarini bildirishlari va allaqachon bajarilgan ishlarni ko'rishlari mumkin. Chunki Tizimning birinchi qismlari butun tizimning prototipi hisoblanadi.
  • mijoz dasturiy ta'minotni tezda olish va o'zlashtirish qobiliyatiga ega - mijozlar tizimdan real foydani palapartishlik modelidan ko'ra tezroq amalga oshirishlari mumkin.

Modelning kamchiliklari:

  • menejerlar jarayonning rivojlanishini doimiy ravishda o'lchashlari kerak. tez rivojlanish bo'lsa, har bir minimal versiya o'zgarishi uchun hujjatlar yaratmaslik kerak;
  • tizim strukturasi yangi komponentlar qo'shilishi bilan yomonlashishga moyil bo'ladi - doimiy o'zgarishlar tizim tuzilishini buzadi. Buning oldini olish uchun sizga kerak Qo'shimcha vaqt va refaktoring uchun pul. Noto'g'ri dizayn dasturiy ta'minotni keyinchalik o'zgartirishni qiyin va qimmat qiladi. Va uzilgan dasturiy ta'minotning hayot aylanishi yanada katta yo'qotishlarga olib keladi.

Sxema paydo bo'ladigan o'zgarishlar va dasturiy ta'minot talablarining aniqliklarini tezda hisobga olishga imkon bermaydi. Rivojlanish natijalarini foydalanuvchilar bilan muvofiqlashtirish faqat ishning har bir bosqichi tugagandan so'ng rejalashtirilgan nuqtalarda amalga oshiriladi va Umumiy talablar dasturiy ta'minotga shaklda qayd etiladi texnik topshiriq butun yaratilgan vaqt uchun. Shunday qilib, foydalanuvchilar ko'pincha haqiqiy ehtiyojlarini qondirmaydigan dasturiy ta'minotni olishadi.

Spiral model

Spiral model:Hayotiy tsikl - spiralning har bir burilishida mahsulotning keyingi versiyasi yaratiladi, loyiha talablari aniqlanadi, uning sifati aniqlanadi va keyingi navbatning ishi rejalashtirilgan. Rivojlanishning dastlabki bosqichlariga - tahlil va dizaynga alohida e'tibor beriladi, bu erda ma'lum bir texnik-iqtisodiy asoslanadi texnik echimlar prototiplash orqali sinovdan o'tgan va tasdiqlangan.


Ushbu model dasturiy ta'minotni ishlab chiqish jarayoni bo'lib, u dizayn va bosqichma-bosqich prototiplashni birlashtirib, hayot tsiklining dastlabki bosqichlarini ta'kidlab, pastdan yuqoriga va yuqoridan pastga tushunchalarning afzalliklarini birlashtiradi: tahlil va dizayn.O'ziga xos xususiyat Ushbu model hayot tsiklini tashkil etishga ta'sir qiluvchi xavflarga alohida e'tibor beradi.

Tahlil va dizayn bosqichlarida prototiplarni yaratish orqali texnik echimlarning maqsadga muvofiqligi va mijozlar ehtiyojlarini qondirish darajasi tekshiriladi. Spiralning har bir burilishi tizimning ishlaydigan qismi yoki versiyasini yaratishga mos keladi. Bu sizga loyihaning talablari, maqsadlari va xususiyatlarini aniqlashtirish, rivojlanish sifatini aniqlash va spiralning keyingi navbati ishini rejalashtirish imkonini beradi. Shunday qilib, loyihaning tafsilotlari chuqurlashtiriladi va izchil aniqlanadi va natijada mijozning haqiqiy talablarini qondiradigan va amalga oshirishga olib keladigan oqilona variant tanlanadi.

Spiralning har bir burilishida hayot aylanishi - dasturiy ta'minotni ishlab chiqish jarayonining turli modellaridan foydalanish mumkin. Oxir oqibat, mahsulot tayyor mahsulotdir. Model prototiplash modelining imkoniyatlarini birlashtiradi vasharshara modeli. Takrorlash bo'yicha rivojlanish tizimni yaratishning ob'ektiv ravishda mavjud bo'lgan spiral aylanishini aks ettiradi. Har bir bosqichda ishning to'liq tugallanmaganligi joriy bosqichdagi ishning to'liq tugashini kutmasdan keyingi bosqichga o'tish imkonini beradi. Asosiy vazifa tizim foydalanuvchilariga ishlashga yaroqli mahsulotni imkon qadar tezroq ko'rsatish va shu bilan talablarni aniqlashtirish va to'ldirish jarayonini faollashtirishdir.

Modelning afzalliklari:

  • tizim foydalanuvchilariga ishlashga yaroqli mahsulotni tezda ko'rsatishga imkon beradi, shu bilan talablarni aniqlashtirish va to'ldirish jarayonini faollashtiradi;
  • dasturiy ta'minotni ishlab chiqish jarayonida talablarni o'zgartirishga imkon beradi, bu ko'pchilik ishlanmalar, shu jumladan standart uchun xosdir;
  • model moslashuvchan dizaynga imkon beradi, chunki u palapartishlik modelining afzalliklarini o'zida mujassamlashtiradi, shu bilan birga bir xil modelning barcha bosqichlarida takrorlash imkonini beradi;
  • yanada ishonchli va barqaror tizimni olish imkonini beradi. Dasturiy ta'minot rivojlanishi bilan har bir iteratsiyada xatolar va kamchiliklar topiladi va tuzatiladi;
  • ushbu model foydalanuvchilarga rejalashtirish, xavflarni tahlil qilish, loyihalash va baholash faoliyatida faol ishtirok etish imkonini beradi;
  • mijozlar xavfi kamayadi. Mijoz o'zi uchun minimal bilan mumkin moliyaviy yo'qotishlar istiqbolsiz loyihani ishlab chiqishni yakunlash;
  • Foydalanuvchilardan ishlab chiquvchilarga fikr-mulohazalar yuqori chastotada va modelning boshida sodir bo'ladi, bu esa istalgan yuqori sifatli mahsulotni yaratishni ta'minlaydi.

Modelning kamchiliklari:

  • agar loyiha past xavf yoki kichik hajmga ega bo'lsa, model qimmat bo'lishi mumkin. Har bir spiraldan keyin xavfni baholash yuqori xarajatlar bilan bog'liq;
  • Modelning hayot aylanishi murakkab tuzilishga ega, shuning uchun uni ishlab chiquvchilar, menejerlar va mijozlar tomonidan qo'llash qiyin bo'lishi mumkin;
  • spiral cheksiz davom etishi mumkin, chunki yaratilgan versiyaga har bir mijozning javobi yangi tsiklni yaratishi mumkin, bu esa loyihaning tugashini kechiktiradi;
  • ko'p sonli oraliq tsikllar qo'shimcha hujjatlarni qayta ishlash zarurligiga olib kelishi mumkin;
  • modeldan foydalanish qimmat va hatto arzon bo'lib chiqishi mumkin, chunki vaqt. rejalashtirish, maqsadlarni qayta belgilash, xavflarni tahlil qilish va prototip yaratish uchun sarflangan vaqt ortiqcha bo'lishi mumkin;
  • Rivojlanish jarayonini keyingi bosqichda davom ettirishga tayyorligini ko'rsatadigan maqsad va bosqichlarni aniqlash qiyin bo'lishi mumkin

Spiral tsiklning asosiy muammosi keyingi bosqichga o'tish momentini aniqlashdir. Ushbu muammoni hal qilish uchun har bir bosqich uchun vaqt cheklovlari kiritilgan.hayot davrasi va barcha rejalashtirilgan ishlar bajarilmasa ham, o'tish rejalashtirilgan tarzda davom etadi.Rejalashtirisholdingi loyihalarda olingan statistik ma'lumotlar asosida ishlab chiqarilgan va shaxsiy tajriba ishlab chiquvchilar.

Spiral modelni qo'llash doirasi

Quyidagi hollarda spiral modeldan foydalanish tavsiya etiladi:

  • yangi texnologiyalardan foydalangan holda loyihalarni ishlab chiqishda;
  • rivojlanish davrida yangi seriya mahsulotlar yoki tizimlar;
  • talablarga sezilarli o'zgarishlar yoki qo'shimchalar kiritilishi kutilayotgan loyihalarni ishlab chiqishda;
  • uzoq muddatli loyihalarni amalga oshirish;
  • qisqa vaqt ichida tizim yoki mahsulotning sifati va versiyalarini namoyish qilishni talab qiladigan loyihalarni ishlab chiqishda;
  • loyihalarni ishlab chiqishda. buning uchun xavflarni baholash va hal qilish bilan bog'liq xarajatlarni hisoblash kerak.

Dasturiy ta'minotning hayot aylanishi - bu dasturiy mahsulotni yaratish zarurati to'g'risida qaror qabul qilingan paytdan boshlab boshlanib, u xizmatdan butunlay olib tashlangan paytda tugaydigan vaqt davri.

Dasturiy ta'minotning hayot aylanish jarayonlari:

Asosiy,

yordamchi,

Tashkiliy.


Asosiy:

1. Sotib olish - dasturiy ta'minotni sotib olayotgan mijozning harakatlari va vazifalari;

2. Yetkazib berish – mijozga dasturiy mahsulot yoki xizmatni yetkazib beruvchi yetkazib beruvchining harakatlari va vazifalari;

3. Rivojlanish - ishlab chiquvchi tomonidan amalga oshiriladigan harakatlar va vazifalar: dasturiy ta'minotni yaratish, loyihalash va ekspluatatsion hujjatlarni tayyorlash, test va o'quv materiallari;

4. Operatsion - tizimda ishlaydigan tashkilot operatorining harakatlari va vazifalari;

5. Texnik xizmat ko'rsatish - xatolarni tuzatish, ish unumdorligini oshirish yoki o'zgargan ish sharoitlari yoki talablariga moslashish uchun dasturiy ta'minotga o'zgartirishlar kiritish.

Yordamchi:

1. Hujjatlar - dasturiy ta'minotning hayot aylanish jarayonida yaratilgan ma'lumotlarning rasmiylashtirilgan tavsifi;

2. Konfiguratsiyani boshqarish - dasturiy ta'minot komponentlarining holatini aniqlash va uning modifikatsiyalarini boshqarish uchun dasturiy ta'minotning butun hayoti davomida ma'muriy va texnik protseduralardan foydalanish;

3. Sifatni ta'minlash - dasturiy ta'minot va uning hayot aylanish jarayonlari belgilangan talablarga va tasdiqlangan rejalarga muvofiqligini ta'minlash;

4. Tekshirish - dasturiy mahsulotlar oldingi harakatlar bilan belgilangan talablar yoki shartlarga to'liq javob berishini aniqlash;

5. Sertifikatlash - belgilangan talablar va yaratilgan tizimning aniq funktsional maqsadiga muvofiqligining to'liqligini aniqlash;

6. Birgalikda baholash - loyiha bo'yicha ish holatini baholash: resurslar, xodimlar, uskunalar, asboblarni rejalashtirish va boshqarishni nazorat qilish;

7. Audit – shartnoma talablari, rejalari va shartlariga muvofiqligini aniqlash;

8. Muammoni hal qilish - ishlab chiqish, foydalanish, texnik xizmat ko'rsatish yoki boshqa jarayonlarda aniqlangan muammolarni, ularning kelib chiqishi yoki manbasidan qat'i nazar, tahlil qilish va hal qilish.

Tashkiliy:

1. Nazorat - o'z jarayonlarini boshqaradigan har qanday tomon tomonidan bajarilishi mumkin bo'lgan harakatlar va vazifalar;

2. Infratuzilmani yaratish - texnologiya, standartlar va vositalarni tanlash va ularga xizmat ko'rsatish, dasturiy ta'minotni ishlab chiqish, ishlatish yoki texnik xizmat ko'rsatish uchun foydalaniladigan apparat va dasturiy ta'minotni tanlash va o'rnatish;

3. Takomillashtirish - hayot aylanish jarayonlarini baholash, o'lchash, nazorat qilish va takomillashtirish;

4. Ta'lim - xodimlarni dastlabki tayyorlash va keyinchalik uzluksiz malakasini oshirish.

2002 yilda tizimning hayot aylanish jarayonlari uchun standart nashr etildi (ISO/IEC 15288 Tizimning hayot aylanish jarayonlari). Standartni ishlab chiqishda turli sohalardagi mutaxassislar jalb qilingan: tizim muhandisligi, dasturlash, sifat menejmenti, inson resurslari orqali, xavfsizlik va boshqalar hisobga olindi amaliy tajriba hukumat, tijorat, harbiy va ilmiy tashkilotlarda tizimlarni yaratish. Standart tizimlarning keng sinfiga taalluqlidir, lekin uning asosiy maqsadi kompyuterlashtirilgan tizimlarni yaratishni qo'llab-quvvatlashdir.



ISO/IEC 15288 seriyali standartiga ko'ra, hayot tsikli tarkibiga quyidagi jarayonlar guruhlari kiritilishi kerak:

1. Shartnoma jarayonlari:

Sotib olish (ichki yoki tashqi sotuvchi echimlari);

Yetkazib berish (ichki echimlar yoki tashqi etkazib beruvchi echimlari);

2. Korxona jarayonlari:

Boshqaruv muhit korxonalar;

Investitsiyalarni boshqarish;

ISning hayot aylanishini boshqarish;

Resurslarni boshqarish;

Sifat nazorati;

3. Loyiha jarayonlari:

Loyihani rejalashtirish;

Loyihani baholash;

Loyihani nazorat qilish;

Xatarlarni boshqarish;

Konfiguratsiyani boshqarish;

Boshqaruv axborot oqimlari;

Qarorlar qabul qilish.

4. Texnik jarayonlar:

Talablarni aniqlash;

Talablarni tahlil qilish;

Arxitekturani rivojlantirish;

Amalga oshirish;

Integratsiya;

Tekshirish;

O'tish;

Sertifikatlash;

Ekspluatatsiya;

Eskort;

Yo'q qilish.

5. Maxsus jarayonlar:

Vazifalar va maqsadlarga asoslangan munosabatlarni aniqlash va o'rnatish.


IP dasturiy ta'minoti uchun asosiy hayot aylanish jarayonlarini yaratish (ISO/IEC 15288)

Jarayon (jarayon ijrochisi) Harakatlar Kirish Natija
Xarid qilish (mijoz) - Tashabbus - Tender takliflarini tayyorlash - Shartnomani tayyorlash - Yetkazib beruvchining faoliyatini monitoring qilish - IPni qabul qilish - IPni amalga oshirish bo'yicha ishni boshlash to'g'risida qaror - Buyurtmachining xatti-harakatlari bo'yicha so'rov natijalari - IP bozori tahlili / tender natijalari - Yetkazib berish / rivojlantirish rejasi - Kompleks IP testi - ATni amalga oshirish uchun texnik-iqtisodiy asoslash - AT uchun texnik shartlar - Ta'minot/ishlab chiqish shartnomasi - Ish bosqichlari uchun qabul qilish sertifikatlari - Qabul qilish sinovi guvohnomasi
Yetkazib berish (IP ishlab chiqaruvchisi) - Boshlanish - Tender takliflariga javob berish - Shartnoma tayyorlash - Ijroni rejalashtirish - IP ta'minoti - IP uchun texnik topshiriq - ishlab chiqishda ishtirok etish to'g'risidagi boshqaruv qarori - Tender natijalari - IP uchun texnik topshiriq - Loyihani boshqarish rejasi - ishlab chiqilgan IP va hujjatlar - ishlab chiqishda ishtirok etish to'g'risida qaror - Tijorat takliflari/ raqobatbardosh taklif - Ta'minot / ishlab chiqish shartnomasi - Loyihani boshqarish rejasi - Amalga oshirish / sozlash - Qabul qilish testi sertifikati
Rivojlanish (IP ishlab chiqaruvchisi) - Tayyorgarlik - IS talablarini tahlil qilish - IS arxitekturasini loyihalash - Dasturiy ta'minot talablarini ishlab chiqish - Dasturiy ta'minot arxitekturasini loyihalash - Batafsil dasturiy ta'minotni loyihalash - Dasturiy ta'minotni kodlash va sinovdan o'tkazish - Dasturiy ta'minotni integratsiyalash va malakali dasturiy ta'minotni sinovdan o'tkazish - IS integratsiyasi va malakali IS testi - AT uchun texnik spetsifikatsiyalar - AT uchun texnik shartlar, hayot tsikli modeli - IS quyi tizimlari - dasturiy ta'minot komponentlariga qo'yiladigan talablar spetsifikatsiyalari - dasturiy ta'minot arxitekturasi - dasturiy ta'minotni batafsil loyihalash uchun materiallar - dasturiy ta'minotni integratsiya rejasi, testlar - AT arxitekturasi, dasturiy ta'minot, IS hujjatlari, testlar - Qo'llaniladigan hayot tsikli modeli, ishlab chiqish standartlari - Ish rejasi - Quyi tizimlar, apparat komponentlari tarkibi - Texnik shartlar, dasturiy komponentlarga qo'yiladigan talablar - Dasturiy ta'minot komponentlari tarkibi, ma'lumotlar bazasi bilan interfeyslar, dasturiy ta'minotni integratsiyalash rejasi - Ma'lumotlar bazasini loyihalash, dasturiy ta'minot komponentlari orasidagi interfeyslarning spetsifikatsiyasi, test talablari - Modul matnlari Dasturiy ta'minot, avtonom sinov hisobotlari - Dasturiy ta'minot majmuasining texnik shartlar talablariga muvofiqligini baholash - dasturiy ta'minot, ma'lumotlar bazasi, texnik kompleks va hujjatlar to'plamining texnik shartlar talablariga muvofiqligini baholash.

Tizimning rivojlanish bosqichlari (ISO/IEC 15288)


SRS: www.mastertz.ru veb-saytida "Queue" loyihasi uchun texnik shartlarni yarating

Dasturiy ta'minotning hayot aylanish modellari:

1. kaskad,

2. spiral,

3. iterativ.

Kaskad modeli hayot tsikli ("palapartishlik modeli", inglizcha sharshara modeli) 1970 yilda Uinston Roys tomonidan taklif qilingan. U qat'iy belgilangan tartibda loyihaning barcha bosqichlarini ketma-ket amalga oshirishni ta'minlaydi. Keyingi bosqichga o'tish oldingi bosqichdagi ishlarning to'liq bajarilishini anglatadi.

Talablarni shakllantirish bosqichida aniqlangan talablar texnik shartlar shaklida qat'iy hujjatlashtiriladi va loyihaning butun rivojlanishi uchun qayd etiladi.

Har bir bosqich rivojlanishni boshqa ishlab chiqish guruhi tomonidan davom ettirishga imkon beradigan hujjatlarning to'liq to'plamini chiqarish bilan yakunlanadi.

Talablarni ishlab chiqish
Shakllanish

Spiral model(ingliz spiral modeli) 1980-yillarning o'rtalarida Barri Boem tomonidan ishlab chiqilgan. U Uilyams Edvard Demingning klassik PDCA (plan-do-check-act) sikliga asoslangan. Ushbu modeldan foydalanganda, prototiplash usuli yordamida dasturiy ta'minot bir nechta iteratsiyalarda (spiral burilishlar) yaratiladi.

Prototip - bu individual funktsiyalar va tashqi interfeyslarni amalga oshiradigan ishlaydigan dasturiy ta'minot komponenti.

Har bir iteratsiya dasturiy ta'minotning bir qismi yoki versiyasini yaratishga to'g'ri keladi, unda loyihaning maqsadlari va xususiyatlari aniqlanadi, olingan natijalarning sifati baholanadi va keyingi iteratsiya ishi rejalashtirilgan.

Guruch. 21. Dasturiy ta'minotning hayot aylanishining spiral modeli

Har bir iteratsiyada quyidagilar baholanadi:

1. Loyihaning belgilangan muddatlari va xarajatlaridan oshib ketish xavfi;

2. Boshqa takrorlashni amalga oshirish zarurati;

3. Tizim talablarini tushunishning to'liqligi va aniqligi darajasi;

4. Loyihani tugatishning maqsadga muvofiqligi.

Spiral modelni amalga oshirishning bir misoli RAD.

RAD ning asosiy tamoyillari:

1. Asboblar to'plami ishlab chiqish vaqtini minimallashtirishga qaratilgan bo'lishi kerak;

2. Mijozlarning talablarini aniqlashtirish uchun prototip yaratish;

3. Rivojlanish davri: mahsulotning har bir yangi versiyasi mijozning oldingi versiya natijalarini baholashiga asoslanadi;

4. Tayyor modullarni o'tkazish va yangi versiyaga funksional qo'shish orqali versiyani ishlab chiqish vaqtini minimallashtirish;

5. Rivojlanish guruhi yaqindan hamkorlik qilishi kerak, har bir a'zo bir nechta mas'uliyatni bajarishga tayyor bo'lishi kerak;

6. Loyiha boshqaruvi rivojlanish sikli vaqtini minimallashtirishi kerak.

Iterativ model: Kaskad va spiral modellarning tabiiy rivojlanishi ularning yaqinlashishiga va ushbu modellarning oqilona kombinatsiyasini ifodalovchi zamonaviy iterativ yondashuvning paydo bo'lishiga olib keldi.

Guruch. 22. Dasturiy ta'minotning hayot aylanishining iterativ modeli

Dasturiy ta'minotning hayot aylanish standartlari

  • GOST 34.601-90
  • ISO/IEC 12207:1995 (ruscha ekvivalenti - GOST R ISO/IEC 12207-99)

Dasturiy ta'minotni ishlab chiqish metodologiyalari

  • Ratsional birlashtirilgan jarayon (RUP).
  • Microsoft Solutions Framework (MSF). 4 bosqichni o'z ichiga oladi: tahlil, loyihalash, ishlab chiqish, barqarorlashtirish, ob'ektga yo'naltirilgan modellashtirishdan foydalanishni o'z ichiga oladi.
  • Ekstremal dasturlash ( Ekstremal dasturlash, XP). Metodologiya butun IPni rivojlantirish loyihasi davomida mijoz va pudratchi o'rtasidagi jamoaviy ish va samarali muloqotga asoslangan. Rivojlanish ketma-ket takomillashtirilgan prototiplar yordamida amalga oshiriladi.

Standart GOST 34.601-90

GOST 34.601-90 standarti taqdim etadi keyingi bosqichlar va avtomatlashtirilgan tizimni yaratish bosqichlari:

  1. Spikerlarga talablarni shakllantirish
    1. Ob'ektni tekshirish va atom elektr stantsiyasini yaratish zarurligini asoslash
    2. Dinamiklarga foydalanuvchi talablarini shakllantirish
    3. Ishning tugallanganligi to'g'risida hisobot va AESni ishlab chiqish uchun ariza tayyorlash
  2. AC kontseptsiyasini ishlab chiqish
    1. Ob'ektni o'rganish
    2. Kerakli tadqiqot ishlarini olib borish
    3. AC kontseptsiyasi variantlarini ishlab chiqish va foydalanuvchi talablariga javob beradigan AC kontseptsiyasi variantini tanlash
    4. Bajarilgan ishlar yuzasidan hisobot tuzish
  3. Texnik vazifa
    1. Atom elektr stansiyalarini yaratish uchun texnik shartlarni ishlab chiqish va tasdiqlash
  4. Dastlabki dizayn
    1. Tizim va uning qismlari uchun dastlabki dizayn echimlarini ishlab chiqish
  5. Texnik loyiha
    1. Tizim va uning qismlari uchun dizayn echimlarini ishlab chiqish
    2. Dinamik tizim va uning qismlari uchun hujjatlarni ishlab chiqish
    3. Komponentlarni etkazib berish bo'yicha hujjatlarni ishlab chiqish va rasmiylashtirish
    4. Loyihaning qo'shni qismlarida dizayn vazifalarini ishlab chiqish
  6. Ish hujjatlari
    1. AES va uning qismlari uchun ishchi hujjatlarni ishlab chiqish
    2. Dasturlarni ishlab chiqish va moslashtirish
  7. Ishga tushirish
    1. Avtomatlashtirish ob'ektini tayyorlash
    2. Kadrlar tayyorlash
    3. Taqdim etilgan mahsulotlar (dasturiy ta'minot va texnik vositalar, dasturiy va apparat tizimlari, axborot mahsulotlari)
    4. Qurilish-montaj ishlari
    5. Ishga tushirish ishlari
    6. Dastlabki sinovlarni o'tkazish
    7. Sinov operatsiyasini o'tkazish
    8. Qabul qilish testlarini o'tkazish
  8. AC qo'llab-quvvatlash.
    1. Kafolat majburiyatlariga muvofiq ishlarni bajarish
    2. Kafolatdan keyingi xizmat

Eskiz, texnik loyihalar va ishchi hujjatlar - bu tobora aniqroq dizayn echimlarining izchil qurilishi. "Eskiz loyihalash" bosqichini va barcha bosqichlarda ishning alohida bosqichlarini istisno qilish, "Texnik loyihalash" va "Ishchi hujjatlar" bosqichlarini "Texnik batafsil loyiha" ga birlashtirish va parallel ishlarni bajarishga ruxsat beriladi. turli bosqichlar va ish, qo'shimchalarni o'z ichiga oladi.

Ushbu standart joriy ishlanmalar uchun to'liq mos kelmaydi: ko'plab jarayonlar etarli darajada aks ettirilmagan va ba'zi qoidalar eskirgan.

ISO/IEC 12207/ standarti va uning qo'llanilishi

ISO/IEC 12207:1995 "Axborot texnologiyalari - dasturiy ta'minotning hayot aylanishi jarayonlari" standarti asosiy hisoblanadi. normativ hujjat dasturiy ta'minotning hayot aylanish jarayonlari tarkibini tartibga solish. U dasturiy ta'minotni yaratish jarayonida bajarilishi kerak bo'lgan jarayonlar, harakatlar va vazifalarni o'z ichiga olgan hayot tsiklining tuzilishini belgilaydi.

Har bir jarayon bir qator harakatlarga, har bir harakat bir qator vazifalarga bo'linadi. Har bir jarayon, faoliyat yoki vazifa kerak bo'lganda boshqa jarayon tomonidan boshlanadi va bajariladi va oldindan belgilangan bajarish ketma-ketliklari mavjud emas. Kirish ma'lumotlari orasidagi aloqalar saqlanib qoladi.

Dasturiy ta'minotning hayot aylanish jarayonlari

  • Asosiy:
    • Sotib olish (dasturiy ta'minotni sotib olayotgan mijozning harakatlari va vazifalari)
    • Yetkazib berish (mijozni dasturiy mahsulot yoki xizmat bilan ta'minlovchi yetkazib beruvchining harakatlari va vazifalari)
    • Ishlab chiqish (ishlab chiquvchi tomonidan bajariladigan harakatlar va vazifalar: dasturiy ta'minotni yaratish, loyiha va ekspluatatsion hujjatlarni tayyorlash, test va o'quv materiallarini tayyorlash va boshqalar)
    • Operatsion (operatorning harakatlari va vazifalari - tizimni boshqaradigan tashkilot)
    • Texnik xizmat ko'rsatish (hamrohlik qiluvchi tashkilot tomonidan amalga oshiriladigan harakatlar va vazifalar, ya'ni qo'llab-quvvatlash xizmati). Yordam - xatolarni tuzatish, samaradorlikni oshirish yoki o'zgargan ish sharoitlari yoki talablariga moslashish uchun dasturiy ta'minotga o'zgartirishlar kiritish.
  • Yordamchi
    • Hujjatlar (dasturiy ta'minotning hayot aylanishi davomida yaratilgan ma'lumotlarning rasmiylashtirilgan tavsifi)
    • Konfiguratsiyani boshqarish (dasturiy ta'minot komponentlarining holatini aniqlash va uning modifikatsiyalarini boshqarish uchun dasturiy ta'minotning butun hayoti davomida ma'muriy va texnik protseduralarni qo'llash).
    • Sifat kafolati (axborot tizimi va uning hayot aylanish jarayonlari belgilangan talablar va tasdiqlangan rejalarga muvofiqligini kafolatlash)
    • Tekshirish (ba'zi harakatlar natijasida kelib chiqadigan dasturiy mahsulotlar oldingi harakatlar tomonidan qo'yilgan talablar yoki shartlarga to'liq javob berishini aniqlash)
    • Sertifikatlash (belgilangan talablar va yaratilgan tizimning aniq funktsional maqsadiga muvofiqligini to'liq aniqlash)
    • Birgalikda baholash (loyihadagi ishlarning holatini baholash: resurslarni, xodimlarni, uskunalarni, asboblarni rejalashtirish va boshqarishni nazorat qilish)
    • Audit (talablar, rejalar va shartnoma shartlariga muvofiqligini aniqlash)
    • Muammoni hal qilish (ishlab chiqish, foydalanish, texnik xizmat ko'rsatish yoki boshqa jarayonlarda aniqlangan muammolarni, ularning kelib chiqishi yoki manbasidan qat'i nazar, tahlil qilish va hal qilish)
  • Tashkiliy
    • Nazorat (jarayonlarini boshqaradigan har qanday tomon tomonidan bajarilishi mumkin bo'lgan harakatlar va vazifalar)
    • Infratuzilmani yaratish (texnologiyalar, standartlar va vositalarni tanlash va ularga xizmat ko'rsatish, dasturiy ta'minotni ishlab chiqish, ishlatish yoki texnik xizmat ko'rsatish uchun foydalaniladigan apparat va dasturiy ta'minotni tanlash va o'rnatish)
    • Yaxshilash (hayot tsikli jarayonlarini baholash, o'lchash, nazorat qilish va takomillashtirish)
    • O'qitish (dastlabki o'qitish va keyinchalik xodimlarni doimiy ravishda rivojlantirish)

Har bir jarayon bir qator harakatlarni o'z ichiga oladi. Masalan, sotib olish jarayoni quyidagi tadbirlarni o'z ichiga oladi:

  1. Sotib olishning boshlanishi
  2. Tender takliflarini tayyorlash
  3. Shartnomani tayyorlash va tuzatish
  4. Yetkazib beruvchilar faoliyatini nazorat qilish
  5. Ishni qabul qilish va tugatish

Har bir faoliyat bir qator vazifalarni o'z ichiga oladi. Masalan, tender takliflarini tayyorlash quyidagilarni o'z ichiga olishi kerak:

  1. Tizim talablarini shakllantirish
  2. Dasturiy ta'minot mahsulotlari ro'yxatini yaratish
  3. Shartlar va shartnomalarni belgilash
  4. Texnik cheklovlar tavsifi (tizimning ishlash muhiti va boshqalar)

Dasturiy ta'minotning hayot aylanish bosqichlari, jarayonlar va bosqichlar o'rtasidagi munosabatlar

Dasturiy ta'minotning hayot aylanishi modeli- hayot tsikli davomida amalga oshirish ketma-ketligini va jarayonlar, harakatlar va vazifalar o'rtasidagi munosabatlarni belgilaydigan tuzilma. Hayotiy tsikl modeli loyihaning o'ziga xos xususiyatlariga, ko'lamiga va murakkabligiga hamda tizim yaratilgan va faoliyat yuritadigan o'ziga xos sharoitlarga bog'liq.

GOST R ISO/IEC 12207-99 standarti ma'lum bir hayot aylanishi modelini taklif qilmaydi. Uning qoidalari har qanday hayot tsikli modellari, IP yaratish usullari va texnologiyalari uchun umumiydir. U ushbu jarayonlarga kiritilgan faoliyat va vazifalarni qanday amalga oshirish yoki bajarish kerakligini ko'rsatmasdan, hayot aylanish jarayonlarining tuzilishini tavsiflaydi.

Dasturiy ta'minotning hayot aylanishi modeli quyidagilarni o'z ichiga oladi:

  1. Bosqichlar;
  2. Har bir bosqichda ish natijalari;
  3. Asosiy voqealar - ishni yakunlash va qaror qabul qilish nuqtalari.

Bosqich- dasturiy ta'minotni yaratish jarayonining ma'lum bir vaqt oralig'i bilan cheklangan va ushbu bosqich uchun belgilangan talablar bilan belgilanadigan ma'lum bir mahsulotni (modellar, dasturiy ta'minot komponentlari, hujjatlar) chiqarish bilan yakunlanadigan qismi.

Har bir bosqichda GOST R ISO/IEC 12207-99 standartida belgilangan bir nechta jarayonlar bajarilishi mumkin va aksincha, bir xil jarayon turli bosqichlarda amalga oshirilishi mumkin. Jarayonlar va bosqichlar o'rtasidagi bog'liqlik, shuningdek, ishlatiladigan dasturiy ta'minotning hayot aylanishi modeli bilan belgilanadi.

Dasturiy ta'minotning hayot aylanish modellari

Hayotiy tsikl modeli - hayot tsikli davomida bajariladigan jarayonlar, harakatlar va vazifalarning bajarilishi ketma-ketligini va munosabatlarini belgilaydigan tuzilma. Hayotiy tsikl modeli o'ziga xos xususiyatlarga bog'liq axborot tizimi va ikkinchisi yaratilgan va faoliyat yuritadigan sharoitlarning o'ziga xos xususiyatlari

Bugungi kunga kelib, quyidagi asosiy hayot tsikli modellari eng keng tarqalgan:

  • Muammoli model;
  • kaskad modeli (yoki tizim) (70-85);
  • spiral model (hozirgi).

Muammoli model

Alohida vazifalardan butun tizimga (vazifa modeli) tizimni "pastdan yuqoriga" ishlab chiqishda rivojlanishga yagona yondashuv muqarrar ravishda yo'qoladi va alohida komponentlarning axborot aloqasida muammolar paydo bo'ladi. Qoida tariqasida, vazifalar soni ortib borishi bilan qiyinchiliklar kuchayadi va mavjud dasturlar va ma'lumotlar tuzilmalarini doimiy ravishda o'zgartirish kerak. Tizimning rivojlanish tezligi sekinlashadi, bu esa tashkilotning rivojlanishini sekinlashtiradi. Biroq, ba'zi hollarda ushbu texnologiya tavsiya qilinishi mumkin:

  • Haddan tashqari shoshilinch (muammolarni qandaydir tarzda hal qilish kerak; keyin hamma narsani yana qilish kerak);
  • Tajriba va mijozning moslashuvi (algoritmlar aniq emas, echimlar sinov va xato orqali topiladi).

Umumiy xulosa shuki, bu usulda yetarli darajada katta, samarali axborot tizimini yaratish mumkin emas.

Kaskad modeli

Kaskad modeli hayot aylanishi 1970 yilda Uinston Roys tomonidan taklif qilingan. U qat'iy belgilangan tartibda loyihaning barcha bosqichlarini ketma-ket amalga oshirishni ta'minlaydi. Keyingi bosqichga o'tish oldingi bosqichdagi ishlarning to'liq bajarilishini anglatadi (1-rasm). Talablarni shakllantirish bosqichida aniqlangan talablar texnik shartlar shaklida qat'iy hujjatlashtiriladi va loyihaning butun rivojlanishi uchun qayd etiladi. Har bir bosqich rivojlanishni boshqa ishlab chiqish guruhi tomonidan davom ettirishga imkon beradigan hujjatlarning to'liq to'plamini chiqarish bilan yakunlanadi.

Kaskad yondashuvidan foydalanishning ijobiy tomonlari quyidagilardan iborat:

  • har bir bosqichda to'liqlik va izchillik mezonlariga javob beradigan loyiha hujjatlarining to'liq to'plami yaratiladi;
  • mantiqiy ketma-ketlikda amalga oshirilgan ish bosqichlari barcha ishlarning tugash vaqtini va tegishli xarajatlarni rejalashtirish imkonini beradi.

Sharshara modeli bo'yicha loyiha bosqichlari:

  1. Talablarni shakllantirish;
  2. Dizayn;
  3. Amalga oshirish;
  4. Sinov;
  5. Amalga oshirish;
  6. Foydalanish va texnik xizmat ko'rsatish.

Guruch. 1. Kaskadli rivojlanish sxemasi

Kaskad yondashuvi axborot tizimlarini qurishda o'zini yaxshi isbotladi, ular uchun barcha talablar ishlab chiquvchilarga texnik nuqtai nazardan iloji boricha yaxshiroq amalga oshirish erkinligini berish uchun rivojlanishning boshida juda aniq va to'liq shakllantirilishi mumkin. ko'rinish. Kompleks hisoblash tizimlari, real vaqt tizimlari va boshqa shunga o'xshash vazifalar ushbu toifaga kiradi. Biroq, ushbu yondashuvni qo'llash jarayonida uning bir qator kamchiliklari aniqlandi, bu birinchi navbatda tizimlarni yaratishning haqiqiy jarayoni hech qachon bunday qattiq sxemaga to'liq mos kelmasligi bilan bog'liq. Yaratish jarayonida oldingi bosqichlarga qaytish va avvalroq aniqlashtirish yoki qayta ko'rib chiqish zarurati doimiy ravishda mavjud edi qabul qilingan qarorlar. Natijada, dasturiy ta'minotni yaratish jarayoni quyidagi shaklni oldi (2-rasm):

Guruch. 2. Sharshara sxemasidan foydalangan holda haqiqiy dasturiy ta'minotni ishlab chiqish jarayoni

Kaskadli yondashuvning asosiy kamchiliklari natijalarni olishda sezilarli kechikishdir. Natijalarni foydalanuvchilar bilan muvofiqlashtirish faqat ishning har bir bosqichi tugagandan so'ng rejalashtirilgan punktlarda amalga oshiriladi, axborot tizimlariga qo'yiladigan talablar uni yaratishning butun vaqti uchun texnik shartlar shaklida "muzlatiladi". Shunday qilib, foydalanuvchilar tizimdagi ishlar to'liq tugagandan keyingina o'z sharhlarini bildirishlari mumkin. Agar talablar noto'g'ri ko'rsatilgan bo'lsa yoki ular dasturiy ta'minotni ishlab chiqishning uzoq vaqt davomida o'zgarib ketsa, foydalanuvchilar o'zlarining ehtiyojlarini qondirmaydigan tizimga duch kelishadi. Avtomatlashtirilgan ob'ektning modellari (funktsional va axborot) bir vaqtning o'zida ularni tasdiqlash bilan eskirishi mumkin. Mohiyat tizimli yondashuv AT ning rivojlanishi uning avtomatlashtirilgan funksiyalarga parchalanishida (parchalanishida) yotadi: tizim funktsional quyi tizimlarga bo‘linadi, ular o‘z navbatida kichik funksiyalarga, vazifalarga va hokazolarga bo‘linadi. Bo'lish jarayoni ma'lum protseduralargacha davom etadi. Shu bilan birga, avtomatlashtirilgan tizim barcha komponentlar o'zaro bog'liq bo'lgan yaxlit ko'rinishni saqlaydi. Shunday qilib, bu model Asosiy afzallik - tizimli rivojlanish, asosiy kamchiliklar esa sekin va qimmat.

Spiral model

Ushbu muammolarni bartaraf etish uchun taklif qilingan spiral model 1980-yillarning o'rtalarida Barri Boem tomonidan ishlab chiqilgan hayot aylanishi (3-rasm). U hayot aylanishining dastlabki bosqichlariga asoslanadi: tahlil va loyihalash. Ushbu bosqichlarda prototiplarni yaratish orqali texnik echimlarning maqsadga muvofiqligi tekshiriladi.

Prototip- individual funktsiyalar va tashqi interfeyslarni amalga oshiradigan operatsion dasturiy komponent. Har bir iteratsiya dasturiy ta'minotning bir qismi yoki versiyasini yaratishga to'g'ri keladi, unda loyihaning maqsadlari va xususiyatlari aniqlanadi, olingan natijalarning sifati baholanadi va keyingi iteratsiya ishi rejalashtirilgan.

Har bir iteratsiya toʻliq ishlab chiqish siklini ifodalaydi, natijada mahsulotning ichki yoki tashqi versiyasi (yoki yakuniy mahsulotning bir qismi) chiqariladi, bu iteratsiyadan iteratsiyagacha takomillashtirilib, toʻliq tizimga aylanadi.

Spiralning har bir burilishi dasturiy ta'minotning bir qismi yoki versiyasini yaratishga to'g'ri keladi, bu erda loyihaning maqsadlari va xususiyatlari aniqlashtiriladi, uning sifati aniqlanadi va spiralning keyingi navbati ishi rejalashtirilgan. Shunday qilib, loyihaning tafsilotlari chuqurlashtiriladi va izchil aniqlanadi va natijada amalga oshirishga olib keladigan oqilona variant tanlanadi.

Takrorlash bo'yicha rivojlanish tizimni yaratishning ob'ektiv ravishda mavjud bo'lgan spiral aylanishini aks ettiradi. Har bir bosqichda ishning to'liq tugallanmaganligi joriy bosqichdagi ishning to'liq tugashini kutmasdan keyingi bosqichga o'tish imkonini beradi. Takroriy rivojlanish usuli bilan etishmayotgan ishni keyingi iteratsiyada bajarish mumkin. Asosiy vazifa tizim foydalanuvchilariga ishlashga yaroqli mahsulotni imkon qadar tezroq ko'rsatish va shu bilan talablarni aniqlashtirish va to'ldirish jarayonini faollashtirishdir.

Spiral tsiklning asosiy muammosi keyingi bosqichga o'tish momentini aniqlashdir. Uni hal qilish uchun hayot tsiklining har bir bosqichi uchun vaqt cheklovlarini joriy qilish kerak. Barcha rejalashtirilgan ishlar bajarilmasa ham, o'tish rejalashtirilgan tarzda davom etadi. Reja oldingi loyihalarda olingan statistik ma'lumotlar va ishlab chiquvchilarning shaxsiy tajribasi asosida tuziladi.

Shakl 3. IC hayot aylanishining spiral modeli

Spiral hayot tsikli modeli doirasida dasturiy ta'minotni ishlab chiqishning mumkin bo'lgan yondashuvlaridan biri bu olingan Yaqinda RAD (Rapid Application Development) metodologiyasidan keng foydalanish. Ushbu atama odatda 3 elementni o'z ichiga olgan dasturiy ta'minotni ishlab chiqish jarayoniga ishora qiladi:

  • dasturchilarning kichik jamoasi (2 dan 10 kishigacha);
  • qisqa, ammo puxta ishlab chiqilgan ishlab chiqarish jadvali (2 oydan 6 oygacha);
  • takroriy tsikl bo'lib, unda ishlab chiquvchilar dastur shakllana boshlaganda, mijoz bilan o'zaro aloqada bo'lgan talablarni so'rab, mahsulotga kirita boshlaydilar.

RAD metodologiyasiga ko'ra dasturiy ta'minotning hayot aylanishi to'rt bosqichdan iborat:

  • talablarni aniqlash va tahlil qilish bosqichi;
  • dizayn bosqichi;
  • amalga oshirish bosqichi;
  • amalga oshirish bosqichi.

Har bir iteratsiyada quyidagilar baholanadi:

  • loyihaning belgilangan muddatlari va xarajatlaridan oshib ketish xavfi;
  • boshqa iteratsiyani amalga oshirish zarurati;
  • tizim talablarini tushunishning to'liqligi va aniqligi darajasi;
  • loyihani tugatishning maqsadga muvofiqligi.

Iterativ yondashuvning afzalliklari:

  • Iterativ rivojlanish mijozning talablari o'zgarganda loyihaga o'zgartirish kiritishni sezilarli darajada osonlashtiradi.
  • Spiral modeldan foydalanganda axborot tizimining alohida elementlari asta-sekin bir butunga birlashtiriladi. Iterativ yondashuv bilan integratsiya deyarli uzluksiz sodir bo'ladi. Integratsiya kamroq elementlardan boshlanganligi sababli, uni amalga oshirishda muammolar ancha kam bo'ladi (ba'zi hisob-kitoblarga ko'ra, sharsharani rivojlantirish modelidan foydalanganda, loyiha oxirida integratsiya barcha xarajatlarning 40% gacha bo'ladi).
  • Takroriy rivojlanish loyihani boshqarishda ko'proq moslashuvchanlikni ta'minlaydi, ishlab chiqilayotgan mahsulotga taktik o'zgarishlar kiritish imkonini beradi.
  • Iterativ yondashuv komponentlardan qayta foydalanishni soddalashtiradi (dasturlashda komponentlarga asoslangan yondashuvni amalga oshiradi). Buning sababi, loyihaning eng boshida ularni aniqlashga urinishdan ko'ra, qisman ishlab chiqilgan bo'lsa, loyihaning umumiy qismlarini aniqlash ancha osondir. Bir necha dastlabki iteratsiyalardan so'ng dizaynni tahlil qilish, keyingi iteratsiyalarda yaxshilanadigan umumiy, qayta foydalanish mumkin bo'lgan komponentlarni ochib beradi.
  • Spiral model yanada ishonchli va barqaror tizimga imkon beradi. Buning sababi shundaki, tizim rivojlanib borar ekan, har bir iteratsiyada xatolar va zaifliklar topiladi va tuzatiladi. Shu bilan birga, kritik ishlash parametrlarini sozlash mumkin, bu kaskad modelida faqat tizimni amalga oshirishdan oldin mumkin.
  • Iterativ yondashuv rivojlanish jarayonini yaxshilashga imkon beradi - har bir iteratsiya oxirida olib boriladigan tahlil ishlab chiqish tashkilotida nimani o'zgartirish kerakligini baholashga va keyingi iteratsiyada uni yaxshilashga imkon beradi.

Izoh.

Kirish.

1. Dasturiy ta'minotning hayot aylanishi

Kirish.

Riley dasturlash jarayoni bosqichlari

Kirish.

1.1.1. Muammoni shakllantirish.

1.1.2. Yechim dizayni.

1.1.3. Algoritm kodlash.

1.1.4. Dasturni qo'llab-quvvatlash.

1.1.5. Dasturiy ta'minot hujjatlari.

1.1-band bo'yicha xulosa

1.2. Lemanga ko'ra LCPO ni aniqlash.

Kirish.

1.2.1 Tizim ta'rifi.

1.2.2. Amalga oshirish.

1.2.3. Xizmat.

1.2-band bo'yicha xulosa.

1.3. Boem bo'yicha LCPO ning bosqichlari va ishi

1.3.1. Kaskad modeli.

1.3.2. Kaskad modelining iqtisodiy asoslanishi.

1.3.3. Kaskad modelini takomillashtirish.

1.3.4. Hayotiy tsikl fazalarini aniqlash.

1.3.5. Loyiha ustidagi asosiy ish.

Adabiyot.

Kirish

Kompyuterlarning sanoatda qo'llanilishi va dasturlarga bo'lgan talabning ortib borishi sezilarli darajada oshirish uchun favqulodda muammolarni keltirib chiqardi dasturiy ta'minotni ishlab chiqish samaradorligi, rejalashtirish va dasturlarni loyihalashning sanoat usullarini ishlab chiqish, tashkiliy, texnik, texnik, iqtisodiy va ijtimoiy-psixologik texnika, naqsh va usullarni moddiy ishlab chiqarish sohasidan kompyuterdan foydalanish sohasiga o'tkazish. Kompleks yondashuv U dasturiy ta'minotni ishlab chiqish, ulardan foydalanish va texnik xizmat ko'rsatish jarayonlariga bir qator dolzarb muammolarni qo'ydi, ularning echimi dasturni ishlab chiqishdagi to'siqlarni bartaraf qiladi, ishni yakunlash vaqtini qisqartiradi, mavjud dasturlarni tanlash va moslashtirishni takomillashtirishga yordam beradi. o'rnatilgan kompyuterlar bilan tizimlarning taqdiri.

Katta dasturiy ta'minot loyihalarini ishlab chiqish amaliyotida ko'pincha yo'q yagona yondashuv dasturiy ta'minotni ishlab chiqish samaradorligini oshirishga to'sqinlik qiladigan mehnat xarajatlari, ish muddatlari va moddiy xarajatlarni baholashga va pirovardida, dasturiy ta'minotning hayot aylanishini samarali boshqarishga to'sqinlik qiladi. Har qanday turdagi dastur mahsulotga aylanganligi sababli (ehtimol, o'quv, prototip dasturlari bundan mustasno), uni ishlab chiqarishga yondashuv ko'p jihatdan sanoat mahsulotlarini ishlab chiqarishga bo'lgan yondashuvga o'xshash bo'lishi kerak va dasturni loyihalash masalalari juda muhim bo'ladi. Bu fikr B.V. kitobining markazida joylashgan. Biz buni yozgan Boemning "Dasturiy ta'minot muhandisligi" kurs ishi. Ushbu kitobda dasturiy ta'minot dizayni dasturiy mahsulot uchun dizayn yaratish jarayonini nazarda tutadi.

1 Dasturiy ta'minotning hayot aylanishi

KIRISH

LCPO uzluksiz jarayon bo'lib, u dasturiy ta'minotni yaratish zarurligi to'g'risida qaror qabul qilingan paytdan boshlab boshlanadi va u xizmatdan butunlay olib tashlangan paytda tugaydi.

Dasturiy ta'minotning hayot tsiklining (SLC) bosqichlari va faoliyatini, dasturlash jarayonining bosqichlarini, kaskad va spiral modellarni aniqlashning bir necha yondashuvlari mavjud. Ammo ularning barchasi umumiy fundamental komponentlarni o'z ichiga oladi: muammo bayoni, yechim dizayni, amalga oshirish, texnik xizmat ko'rsatish.

Eng mashhur va to'liq, ehtimol, sakkiz bosqichni o'z ichiga olgan Boemning hayot tsikllari tuzilishi. Kelgusida batafsilroq taqdim etiladi.

Mumkin variantlardan biri Lehmanga ko'ra yuqori darajadagi tavsif bo'lishi mumkin, u uchta asosiy bosqichni o'z ichiga oladi va eng umumiy holatda hayot tsiklining tavsifini ifodalaydi.

Va xilma-xillik uchun biz D. Riley tomonidan "Modul-2 tilidan foydalanish" kitobida taqdim etilgan dasturlash jarayonining bosqichlarini taqdim etamiz. Bu fikr, mening fikrimcha, juda oddiy va tanish, shuning uchun u bilan boshlaylik.

1.1 Riley dasturlash jarayonidagi qadamlar

Kirish

Dasturlash jarayoni to'rt bosqichni o'z ichiga oladi (1-rasm):

muammoning bayoni, ya'ni. dastur qanday vazifani bajarishi kerakligi haqida etarli tushunchaga ega bo'lish;

allaqachon bayon qilingan muammoning yechimini loyihalash (umuman olganda, bunday yechim yakuniy dasturga qaraganda kamroq rasmiy);

dasturni kodlash, ya'ni ishlab chiqilgan yechimni mashinada bajarilishi mumkin bo'lgan dasturga o'tkazish;

dasturni qo'llab-quvvatlash, ya'ni. dasturdagi muammolarni bartaraf etish va yangi xususiyatlarni qo'shishning davom etayotgan jarayoni.

Guruch. 1.To'rtta dasturlash bosqichi.

Dasturlash qachondan boshlanadi foydalanuvchi, ya'ni. muammoni hal qilish uchun dasturga muhtoj bo'lgan kishi muammoni aytadi tizim tahlilchisi. Foydalanuvchi va tizim tahlilchisi birgalikda muammo bayonini aniqlaydilar. Keyin ikkinchisi uzatiladi algoritmchi, yechimni loyihalash uchun kim mas'uldir. Yechim (yoki algoritm) amallar ketma-ketligini ifodalaydi, ularning bajarilishi muammoni hal qilishga olib keladi. Algoritm ko'pincha mashinada bajarish uchun mos emasligi sababli, uni mashina dasturiga tarjima qilish kerak. Ushbu operatsiya kodlovchi tomonidan amalga oshiriladi. Ta'minotchi dasturga keyingi o'zgartirishlar uchun javobgardir. dasturchi. Va tizim tahlilchisi, algoritmist, kodlovchi va unga hamroh bo'lgan dasturchi - bularning barchasi dasturchilar.

Katta dasturiy ta'minot loyihasida foydalanuvchilar, tizim tahlilchilari va algoritmistlar soni sezilarli bo'lishi mumkin. Bundan tashqari, kutilmagan holatlar tufayli oldingi bosqichlarga qaytish kerak bo'lishi mumkin. Bularning barchasi ehtiyotkorlik bilan dasturiy ta'minot dizayni uchun qo'shimcha dalil bo'lib xizmat qiladi: har bir qadamning natijalari to'liq, aniq va tushunarli bo'lishi kerak.

1.1.1 Muammo bayoni

Dasturlashning eng muhim bosqichlaridan biri bu muammoni aniqlashdir. U foydalanuvchi va dasturchi(lar) o'rtasidagi shartnoma vazifasini bajaradi. Qonuniy jihatdan noto'g'ri tuzilgan shartnoma kabi, yomon yozilgan muammo bayonoti foydasiz. Yaxshi muammo bayoni bilan foydalanuvchi ham, dasturchi ham bajarilishi kerak bo'lgan vazifani aniq va aniq ifodalaydi, ya'ni. bunda foydalanuvchining ham, dasturchining ham manfaatlari hisobga olinadi. Foydalanuvchi hali yaratilmagan dasturiy ta'minotdan foydalanishi mumkin bo'lgan bilimlarga asoslanib, foydalanishni rejalashtirishi mumkin. Muammoning yaxshi bayoni uning yechimini shakllantirish uchun asos bo'lib xizmat qiladi.

Muammoni shakllantirish (dastur spetsifikatsiyasi); mohiyatan ma'lum bir dastur bajarilganda sodir bo'ladigan hodisalarning aniq, to'liq va tushunarli tavsifini bildiradi. Foydalanuvchi odatda kompyuterga qora quti sifatida qaraydi: uning uchun kompyuter qanday ishlashi muhim emas, lekin muhimi foydalanuvchini qiziqtiradigan kompyuter nima qila olishi muhim. Bunda asosiy e'tibor insonning mashina bilan o'zaro ta'siriga qaratiladi.

Yaxshi muammo bayonining xususiyatlari:

Aniqlik, ya'ni. har qanday noaniqlikni bartaraf etish. Har qanday kirish uchun dasturning chiqishi qanday bo'lishi haqida hech qanday savol tug'ilmasligi kerak.

To'liqlik, ya'ni. berilgan kirish uchun barcha variantlarni, shu jumladan noto'g'ri yoki ko'zda tutilmagan kiritishni ko'rib chiqish va tegishli chiqishni aniqlash.

Aniqlik, ya'ni. u foydalanuvchi uchun ham, tizim tahlilchisi uchun ham tushunarli bo'lishi kerak, chunki muammo bayoni ular o'rtasidagi yagona shartnomadir.

Ko'pincha aniqlik, to'liqlik va aniqlik talablari ziddiyatli. Shunday qilib, ko'pgina huquqiy hujjatlarni tushunish qiyin, chunki ular rasmiy tilda yozilgan, bu esa ba'zi qoidalarni har qanday kichik tafovutlar bundan mustasno, o'ta aniqlik bilan shakllantirish imkonini beradi. Masalan, imtihon varaqalaridagi ba'zi savollar ba'zan shu qadar aniq tuzilganki, talaba javob berishdan ko'ra savolni tushunishga ko'proq vaqt sarflaydi. Bundan tashqari, talaba ko'p sonli tafsilotlar tufayli savolning asosiy ma'nosini tushuna olmasligi mumkin. Muammoning eng yaxshi shakllantirilishi - bu uchta talabning muvozanatiga erishadigan variant.

Muammo bayonining standart shakli.

Quyidagi muammo bayonotini ko'rib chiqing: "Uchta raqamni kiriting va raqamlarni tartibda chiqaring."

Bunday bayonot yuqoridagi talablarga javob bermaydi: u to'g'ri ham, to'liq ham, tushunarli ham emas. Darhaqiqat, raqamlar har bir satrga bittadan kiritilishi kerakmi yoki barcha raqamlar bitta qatorga kiritilishi kerakmi? “Tartibda” iborasi kattadan kichigiga, kichikdan kattaga tartibni anglatadimi yoki ular kiritilgan tartibda.

Shubhasiz, bunday bayonot ko'p savollarga javob bermaydi. Agar barcha savollarga javoblarni hisobga olsak, muammoning bayoni batafsil va tushunish qiyin bo'ladi. Shuning uchun D. Riley muammoni qo'yish uchun maksimal aniqlik, to'liqlik, ravshanlikni ta'minlaydigan standart shakldan foydalanishni taklif qiladi va quyidagilarni o'z ichiga oladi:

vazifaning nomi (sxematik ta'rifi);

umumiy tavsif (vazifaning qisqacha mazmuni);

xatolar (foydalanuvchilar va dasturchilarga bunday holatlarda mashina qanday harakatlar qilishini ko'rsatish uchun noodatiy kiritish variantlari aniq ko'rsatilgan);

misol ( yaxshi misol muammoning mohiyatini yetkaza oladi, shuningdek, turli holatlarni ko‘rsata oladi).

Misol. Muammoni standart shaklda bayon qilish.

NAME

Uchta butun sonni saralash.

TAVSIF

Kichikdan kattagacha tartiblangan uchta butun sonni kiritish va chiqarish.

Har bir satrda bittadan uchta butun son kiritiladi. Butun son bir yoki bir nechta ketma-ket o'nlik raqamlar bo'lib, undan oldin "+" ortiqcha belgisi yoki "-" minus belgisi bo'lishi mumkin.

Kiritilgan uchta tamsayı chop etiladi, uchtasi ham bir qatorda chop etiladi. Qo'shni raqamlar bo'sh joy bilan ajratiladi. Raqamlar eng kichikdan kattaga, chapdan o'ngga ko'rsatiladi.

1) Agar uchtadan kam raqam kiritilsa, dastur qo'shimcha kiritishni kutadi.

2) Birinchi uchtadan boshqa kirish satrlari e'tiborga olinmaydi.

3) Agar dastlabki uchta satrdan birortasi bittadan ortiq butun sonni o'z ichiga olsa, u holda dastur chiqadi va xabarni ko'rsatadi.