TARQATILGAN DASTURIY TA'MINOT TIZIMLARIGA KIRISH
“TARQATILGAN DASTURIY TA'MINOT TIZIMLARIGA KIRISH” Reja: 1. Dasturiy ta’minot jarayonlari 2. Tizim uchun talablarni shakllantirish 3. Dasturiy ta’minotni modellashtirish 4. Dasturiy ta’minotning arxitekturaviy dizayni 5. Dasturiy ta’minotni testlash. Dasturiy ta’minot evolutsiyasi 6. Dasturiy ta’minot ishonchliligi. Dasturiy ta’minot xavfsizligi
1. Dasturiy ta’minot jarayonlari Biz zamonaviy dunyoni dasturiy ta’minotsiz tasavvur qila olmaymiz. Milliy infrastrukturalar va utilitalar kompyuterga asoslangan tizimlar tomonidan nazorat qilinadi va ko’pgina elektrli mahsulotlar o’z ichiga kompyuter va nazorat dasturlarni oladi. Sanoatda ishlab chiqarish va tarqatish to’liq kompyuterlashtirilgan. Musiqa sanoati, kompyuter o’yinlari, film va televizorlarda dasturiy ta’minotdan foydalanishadi. Shu sababli dasturiy injiniring milliy va xalqaro jamiyatlar funksionalligi uchun muhimdir. Dasturiy ta’minot tizimlari mavhum va nomoddiy bo’lib ular materiallarning xususiyatlari yoki fizik qonunlar bilan chegaralanmagan. Dasturiy ta’minotning potensialiga hech qanday tabiiy cheklanuvlar yo’q. Professional dasturiy ta’minotni ishlab chiqish Ko’p odamlar dasturlar yozishadi. Odamlar ishda o’z ishlarini osonlashtirish uchun elektron jadval ko’rinishli dasturlar tuzushadi, tadqiqotchilar va injinerlar ilmiy tajribaga oid ma’lumotlarga ishlov berish uchun dasturlar tuzishadi, yoki qiziqish sabab dasturlar tuzishadi. Professional dasturiy ta’minot bu dasturchidan tashqari boshqa insonlar ham foydalanishi maqsadida ishlab chiqiladi va odatda individual bo’lib emas guruh bo’lib ishlanadi. Dasturiy injiniring professional dasturiy ta’minotni qo’llab quyyatlashga yo’naltirilgan bo’lib u dasturning o’ziga xos xususiyatlari, dizayni va evolutsiyasini ta’minlovchi usullarni o’z ichiga oladi. Ikki xil turdagi dasturiy mahsulotlar mavjud: 1. Umumiy mahsulotlar Bular autonom tizimlardir ya’ni ishlab chiqarish tashkiloti tomonidan ishlab chiqiladi va ochiq bozorda sotib ola biladigan
mijozlarga sotiladi. Bu turdagi dasturiy mahsulotlarga shaxsiy kompyuterlar uchun dasturiy ta’minotlar masalan ma’lumot bazalari, matn tahrirlovchi, rasmlar chizish, loyihalarni boshqarish uskunalari kabi dasturlarni misol qilib olishimiz mumkin. 2. Buyurtma mahsulotlar Bular alohida mijozlar tomonidan buyurtma qilingan tizimlardir. Bu turdagi dasturiy mahsulotlarga elektronik qurilmalar uchun nazorat tizimlari, maxsus ish jarayonlariga yordam berish uchun yozilgan tizimlarni misol qilib olishimiz mumkin. Bu ikki turdagi mahsulotlarning asosiy farqi shundaki, umumiy mahsulotlarda dasturiy ta’minot xususiyatlarini dasturiy ta’minotni ishlab chiqaruvchi tashkilot nazorat qiladi. Buyurtma mahsulotlarda mahsulotni sotib oluvchi tashkilot dasturiy ta’minot xususiyatlarini ishlab chiqadi va nazorat qiladi. Biroq hozirgi kunga kelib bu ikki turdagi mahsulotlar orasidagi farq tobora kamayib boryapti, chunki ko’pgina tizimlar umumiy mahsulot sifatida qurilyapti va mijozlar qaladiga qarab moslashtirilyapti. Enterprise Resource Planning (ERP) tizimlar, masalan SAP tizimi bunga yaqqol misol bo’lishi mumkin. Dasturiy injiniring ba’zida dasturiy ta’minot jarayoni ham deyiladi. Dasturiy ta’minot jarayoni dasturiy mahsulotni ishlab chiqish faoliyatlari ketma-ketligidir. Barcha dasturiy ta’minotlar uchun umumiy bo’lgan to’rtta asosiy faoliyat bor. Bular: 1. Dasturiy ta’minot xususiyati 2. Dasturiy ta’minotni ishlab chiqish 3. Dasturiy ta’minotni tekshirish 4. Dasturiy ta’minot evolutsiyasi Dasturiy ta’minot jarayoni Dasturiy ta’minot bu dasturiy mahsulotni tayyor holatga olib kelish faoliyatilari to’plamidir. Bu faoliyatlar Java yoki C kabi standart dasturlash tillarida dasturlarni ishlab chiqishni o’z ichiga olishi mumkin.
Dasturiy ta’minot jarayoni modeli bu dasturiy ta’minot jarayonining soddalashtirilgan ko’rinishidir. Jarayon modellari: 1. Sharshara modeli 2. Ortib borish modeli 3. Qaytib foydalanishga mo’ljallangan dasturiy injiniringi Sharshara modeli Sharshara modeli birinchi bo’lib e’lon qilingan dasturiy ta’minotni ishlab chiqish jarayoni modelidir (Royce, 1970). Sharshara modeli asosiy bosqichlari bevosita dasturiy ta’minotni rivojlantirish bosqichini aks ettiradi: Requirements analysis and definition Tizim foydalanuvchilari bilan maslahatlashib tizimning servislari, chegaraklari va maqsadlari belgilab olinadi System and software design Tizim dizayni jarayonida tizim arxitekturasini tashkil qilish orqali apparat yoki dasturiy tizimlarga talablar belgilanadi. Dasturiy ta’minot dizayni fundamental dasturiy ta’minot tizimlari mavhumliklari va ularning munosabatlarini identifikatsiyalash va tasvirlashni o’z ichiga oladi.
Implementation and unit testing Bu bosqichda dasturiy ta’minot dizayni dasturlar to’plami yoki dastur bo’limlar ko’rinishda amalga oshiriladi. Bo’lim testlash jarayonida har bir bo’lim alohida testlanadi. Integration and system testing Individual dastur bo’limlari yoki dasturlar birlashtiriladi va to’liq tizim ko’rinishida testlanadi. Testlashdan keyin dasturiy ta’minot tizimi foydalanuvchiga yetkaziladi. Operation and maintenance Bu eng uzun hayot sikli fazasi hisoblanadi. Tizim o’rnatiladi va amaliy foydalanishga qo’yiladi. Maintance o’z ichiga hayot siklining oldingi bosqichlarida tuzaqtilmagan xatoliklarni tuzatish, tizim bo’limlarining amaliy ko’rinishlarini yaxshilash va tizim servislarini yangi talablarga mos ravishda yaxshilashni o’z ichiga oladi. Ortib borish modeli Incremental (ortib borish) ishlab chiqish dastlabki amaliy ko’rinishni ishlab chiqish g’oyasiga asoslangan. Foydalanuvchi izohlariga qarab tizimning keyingi versiyalari ishlab chiqiladi. Qayta foydalanishga mo’ljallangan dasturiy injiniring Ko’pgina dasturiy ta’minot loyihalarida bir nechta qayta foydalaniladigan dasturiy ta’minotlar mavjuv. Qayta foydalanishga mo’ljallangan jarayonlarda foydalanish mumkin bo’lgan uch xil turdagi dasturiy ta’minot komponentalari bor: 1. Veb servislar servis standartlariga ko’ra ishlab chiqilgan 2. .NET yoki J2EE kabi componenta freymvorklarga integratsiya qilinadigan paketlangan obyektlar kolleksiyasi 3. Maxsus muhitlarda foydalanish uchun sozlangan autonom dasturiy ta’minot tizimlari. Sifatli va tezkor dasturiy ta’minot ishlab chiqish