Bog'liq 11 Kitob Dasturiy taminot qurilmasi va evolyutsiyasi 2022 oxirgi
§ 1.3. Dasturiy ta’minotni konstruktsiyalash bosqichlari
Boshlang’ich bosqichlarda bu jarayonni ko’p jihatdan hamda ishlanma sifati va mehnat sarfini aniqlovchi prinsipial yechimlar qabul qilinishi mumkin:
dasturiy ta’minot arxitekturasini tanlash;
foydalanish interfeysi tipi va hujjatalr bilan ishlash texnologiyasini tanlash;
ishlanmaga yondashuvni (tuzilmani yoki obyektni) tanlash;
dasturlash tili va muhitini tanlash
Bu yechimlar nima loyihalashini qanday xarakteristikalarga ega, qanday vositalar bilan bajarilishini aniqlaydi. Dasturiy ta’minot arxitekturasini tanlash. Dasturiy ta’minot arxitekturasi deb uni tuzishning bazaviy konsepsiyalari jamlanmasiga aytiladi. Dasturiy ta’minot arxitekturasi yechilayotgan masalalar murakkabligi, ishlanayotgan dasturiy ta’minot universallik darajasi va uning birorta nusxasi bilan bir vaqtda ishlanayotgan foydalanuvchilar soni bilan aniqlanadi.
bir foydalanuvchili arxitektura dasturiy ta’minot personal kompyuterda ishlayotgan bitta foydalanuvchiga mo’ljallangan;
ko’p foydalanuvchili arxitektura lokal yoki global tarmoqda ishlashga mo’ljallangan.
Bundan tashqari bir foydalanuvchi arxitektura doirasida:
dasturlar;
dastur paketlari;
dasturiy komplekslar;
dasturiy sistemalar.
Ko’p foydalanuvchili arxitektura «mijoz-server» prinsipi bo’yicha tuzilgan sistemalarni amalga oshiradi. Dastur deb kompyuterga jo’natilgan konkret masalani yechish uchun bajarish zarur bo’lgan amallar ketma-ketligini aniq tavsiflovchi ko’rsatmalar majmuasiga aytiladi.
Tuzilishli yondashuvda qo’yilgan masalani yechish jarayonida bir-birini chaqiruvchi ichki dasturlar iyerarxiyasidan obyektli yondashuvda – bajarish uchun maxsus sinflar ishlab chiqilgan bir-biri bilan xabar almashinuvchi obyektlar jamlanmasi. Dastur bu holda qism dasturlar standart kutubxonalari foydalanadigan alohida kompilisiyalanuvchi dasturiy birlikdan iborat bo’lib, odatda o’zining kutubxonalarini tashkil etmaydi. Bu arxitekturaning unchalik katta bo’lmagan masalalarni yechishda foydalaniladigan eng sodda turi.
Dasturlar paketlari biror amaliy soha masalalarni yechadigan dasturlar jamlanmasi. Masalan, grafik dasturlar paketi, matematik dasturlar paketi. Bunday
paket dasturlar o’zaro ma’lum amaliy sohaga tegishliligi bilan bog’langan. Dasturlar paketlari har biri o’zi zarur ma’lumotlar va natijalarni chiqaradigan alohida dasturlar jamlanmasini amalga oshiradi. Ular – dasturlar kutubxonasi.
Dasturiy komplekslar bitta amaliy soha murakkab masalalarni biror sinfini yechishni birgalikda ta’minlovchi dasturlar jamlanmasidan iborat. Bunday masalalarni yechish uchun kompleksning dasturlarini chaqirib bir nechta qism- masalalarni yechish zarurati paydo bo’ladi. Dasturlar va dasturiy kompleksni tanlash maxsus dastur – murakkab bo’lmagan interfeysini ta’minlovchi va biror ma’lumotli axborotni berishi mumkin bo’lgan dispetcher bajaradi.
Dasturlar paketidan dasturiy komplekslar bilan farq qiladigan bir nechta dastur ketma-ket yoki siklik ravishda bitta masalani yechish uchun chaqirilishi mumkin, demak, bitta foydalanuvchi loyihasi doirasida berilgan ma’lumotlar va chaqiruvlar natijalarini saqlash maqsadga muvofiq. Bu holda dasturlar alohida yoki birgalikda kompilinerlanuvchi dasturiy birliklar kabi amalga oshiriladi, berilgan ma’lumotlar esa operativ xotirada yoki fayllarda saqlanadi.
Dasturiy komplekslardan farqli dasturiy sistemaga kiruvchi dasturlar umumiy ma’lumotlar orqali o’zaro ta’sirda bo’ladi. Dasturiy sistemalar odatda rivojlangan va ichki interfeyslarga ega, bu esa ularni puxta loyihalashni talab etadi. Ko’p foydalanuvchili dasturiy sistemalar odatdagi dasturiy sistemalardan farqli dasturiy ta’minot alohida komponentlar o’zaro ta’sirini tashkil etishi lozim, bu esa uni ishlab chiqishni yanada qiyinlashtiradi. Bunday dasturiy ta’minotni ishlab chiqish uchun maxsus texnologiyalar yoki platformalar, masalan, CORBA, COM, Java va h.k. texnologiyalar ishlatiladi.
Foydalanuvchi interfeys tipini tanlash. To’rtta foydalanish interfeyslar tiplari farqlanadi:
primitiv – ishning yagona ssenariysini, masalan, ma’lumotlarni kiritish – qayta ishlash – natijalarni chiqarishni amalga oshiradi;
menyu – amallari iyerarxik tuzilmalarga shakllangan ishning ssenariylari to’plamini, masalan, «qo’yish», «faylni qo’yish», «simvolni qo’yish» va h.k.larni bajaradi;
erkin novigasiyali – iyerarxiya darajalariga bog’lanmagan va ishning konkret qadamida mumkin bo’lgan amallar to’plamini aniqlashni ko’zda tutadigan ssenariylar to’plamini amalga oshiradi, bu shaklning interfeyslari asosan Windows ilovalardan foydalanadi;
to’g’ridan-to’g’ri manipulasiyalash – obyektlar ustidagi amallarda taqdim etilgan ssenariylar to’plamini bajaradi, asosiy amallar sichqoncha bilan obyektlar piktogrammalarini siljitish bilan amalga oshiriladi, bu shaklli erkin novigasiyali interfeysga muqobil bo’lib Windows operasion tizimi o’zining interfeysida amalga oshirilgan.
Foydalanuvchi interfeys tipi ishlanmaning murakkabligi va mehnat sarfini belgilaydi. Dasturiy ta’minotni ishlab chiqishning obyektli – yo’naltirilgan vizual muhitlari dasturlashga hodisaviy yondashuvdan foydalanadi va erkin novigasiyali interfeyslarni yaratishga mo’ljallangan bo’lib, bunday interfeyslarni ishlab chiqish mehnat sarfini jiddiy kamaytirdi va to’g’ridan-to’g’ri monipulyasiyalash interfeyslarni amalga oshirishni soddalashtirdi.
Interfeys tipini tanlash hujjatlar bilan ishlash texnologiyalarini tanlashni o’z ichiga oladi. Ikkita texnologiya mavjud:
bir hujjatli, u bir hujjat interfeys (SDI – Single Document Interface) ni ko’zda tutadi;
ko’p hujjatli, u ko’p hujjat interfeys (MDI – Multiple Document Interface) ni ko’zda tutadi.
Ko’p hujjatli texnologiya dasturiy ta’minot bir nechta hujjatlar bilan bir vaqtda ishlaganda, masalan, bir nechta matn yoki bir nechta tasvirlar bilan ishlaganda foydalaniladi. Bir hujjatli – agar bir nechta hujjatlar bilan bir vaqtda ishlash zarurati bo’lmasa, hozirgi kutubxonalardan foydalanib ko’p hujjatli interfeyslarni ishlatish mehnat sarfi birinchisiga qaraganda 3...5% yuqori.
Ishlanmaga yondashuvni tanlash. Agar erkin novigasiyali yoki to’g’ridan- to’g’ri manipulyasiyali interfeys tanlangan bo’lsa, u holda hodisaviy dasturlash va obyektli yondashuvdan foydalaniladi, chunki zamonaviy vizual dasturlash muhitlari Visual C++, Delphi, Builder C++ va ularga o’xshashlar kutubxona sinflari
obyektlari ko’rinishida interfeys komponentlarni taqdim etadi. Bunda predmet soha murakkabligiga bog’liq holda dasturiy ta’minot obyektlardan foydalanish orqali yoki sof prosedurali ravishda amalga oshirilishi mumkin, faqat bundan boshqa prinsipda tuzilgan Perl kabi internet-ilovalarni ishlab chiqishni maxsus tillardan foydalanish hollari mustasno. Primitiv interfeys va menyu tipidagi interfeys tuzilmali obyektli yondashuvlar bilan muvofiqlashadi. Shuning uchun yondashuvni tanlash qo’shimcha axborotdan foydalanish bilan amalga oshadi. Obyektli yondashuv juda katta dasturiy sistemalar (universal dasturlash tilida 100000 dan ko’p bo’lgan operatorlar mavjud) ini va predmet soha obyekt tuzilishi aniq ifodalangan hollarda samarali. Shuningdek u dasturiy ta’minot samaradorligiga qattiq cheklashlarda ham foydalaniladi.