2.14. Dasturiy ta’minotni ishlab chiqish jarayoni Key Point. Dasturiy ta’minotni ishlab chiqish jarayonining hayot sikli qo`yilgan talablar, tahlil qilish, loyihalash, amalda qo`llash, testlash, tayyorlash va tuzatishni qamran oluvchi ko`p bosqichli jarayon.
2.2-rasm. Dasturdagi xatoliklarni tuzatish yoki uning vazifalariga o`zgartirishlar kiritish uchun dasturiy ta’minotni ishlab chiqish jarayoni hayot siklining ixtiyoriy bosqichida orqaga – bitta avvalgi bosqichga qaytish imkoniyati mavjud. Qo`yilgan talab bosqichi – dasturning aynan qanday vazifalarni bajarishi lozimligini ko`rsatuvchi hujjatlar asosida o`rganishga harakat qilinuvchi rasmiy jarayon. Bu bosqich ishlab chiqaruvchi va foydalanuchi o`rtasidagi yaqin aloqalar o`rnatilishini talab etadi. Mazkur kursda keltirilgan ko`pgina namunaviy dasturlar sodda bo`lib, ularga qo`yilgan talablar aniq qilib berilgan. Haqiqiy hayotda esa, muammolar har doim ham yaxshi yechim topavermaydi. Dastur ishlab chiquvchilar buyurtmachilari bilan yaqin hamkorlikda ishlashni istashadi. Bu ularga muammoning mohiyatini yaxshi anglab yetish, dasturning aynan qanday vazifalarni bajarishini diqqat bilan aniqab olishga yordam beradi.
Tizimli tahlil ma’lumotlar oqimini tahlil qilishga va tizimning chiqish va kirish ma’lumotlarini aniqlash uchun qo`llaniladi. Tahlillash dastlab nima chiqarilishi kerakligini va undan keyin, chiqarish shakli uchun nimalar kiritilishi zarurligini belgilab olishda yordam beradi.
Tizim dizayni – kiritilishga qarab chiqishni o`zlashtirish jarayoni. Bu soha asosiy boshqaruv komponentalari muammolarini to`xtatib turib, oraliq bajariluvchi komponenta uchun dizayn strategiyasini qo`llovchi ko`p bosqichli abstraksiadan foydalanishni taqozo etadi. Oraliq komponenta deyilganda asosiy tizimning maxsus faunksiyasini bajaruchi tizimosti tizimni tushunish mumkin. Tizimli tahlil va dizaynning mohiyati kiritish (input), jarayon (process) va chiqarish (output) – KJCh (IPO) dan iborat.
Amalda qo`llash deganda, tizim dizaynini dasturga o`girish tushuniladi. Har xil dasturlar ma’lum bir ichki komponenta uchun tuziladi va ular birgalikda ishlashlari uchun birlashtiriladi. Bu soha C++ ga o`xshagan dasturlash tilidan foydalanishni talab qiladi. Amalga oshirish kodlashtirishni, o`zini testlashni va ishga tushirishni (Bunda “bugs” - deb nomlanuvchi xatolilar aniqlanadi) taqozo etadi.
Testlash koddagi talab etilgan qoidalarni ko`rib chiqadi va chiqishdagi xatoliklarni yo`qotadi. Dasturiy ta’minot ishlab chiquvchi alohhida jamoalar odatda, bunday testlashni o`tkazishga urinishmaydi.
Tayyorlash jarayoni dasturni foydalanishga tayyorgarligini ishlab chiqadi. Dasturni turini tayyorlash foydalanuvchi mashinasi yoki internetdagi server tizimga bog`liq bo`ladi.
Tuzatish jarayoni dastur va uning bazasini yangilash va unga o`zgartirishlar kiritish bilan bog`liq. Dasturiy mahsulot doimiy ravishda shakllanib va o`sib borishi zarur. Bunday davriy yangilanish talablari dasturni yangicha muammolar va yangicha imkoniyatlarga yetaklaydi.