1. Dasturiy ta’minot arxitekturasi va loyihalash tushunasi
Download 25.63 Kb.
|
1. Dasturiy ta’minot arxitekturasi va loyihalash tushunasi (1)
1.Dasturiy ta’minot arxitekturasi va loyihalash tushunasi Dasturiy ta’minotning arxitekturaviy dizayn, tizimning umumiy tuzilishi dizayni va uni qanday tashkillashtirish tushunchalari bilan bog’liqdir. Siz dasturiy ta’minot arxitekturasini ikkita ajralmas bosqichlarda dizaynlashtira olasiz. Bular, kichik arxitektura va katta arxitektura: 1. Kichik arxitekturaga shaxsiy dasturlarning arxitekturalarini o’z ichiga oladi. 2. Katta arxitektura boshqa tizimlarni, dasturlarni va dasturiy komponentalarni qamrab oladigan murakkab korxona tizimlari arxitekturasini o’z ichiga oladi. Dasturiy ta’minot arxitekturasi tizimni ishlab chiqishda muhim o’rin tutadi, sababi u tizimni ishlab chiqilishiga, ishonchliligiga, keng ko’lamda qo’llanilishiga va qayta ishlab chiqilishiga ta’sir qiladi. Shaxsiy komponentalar funksional tizim talablarini bajaradi. Nofunksional talablar tizim arxitekturasidan kelib chiqadi – bu komponentalar tashkil qilinadigan va bir-biriga bog’lanadigan yo’ldir. Ko’plab tizimlarda, nofunksional talablar ham shaxsiy komponentalar tomonidan bajariladi, lekin bu yerda shubxasiz tizim arxitekturasi ustuvor hisoblanadi. Bass va boshqalar(2003) dasturiy ta’minot arxitekturasini ochiq loyihalashtirish va hujjjatlashtirishning uchta afzalliklarini muhokama qilishdi: 1. Manfaatdor aloqalar. Arxitektura tizimning yuqori darajadagi taqdimoti bo’lib, bir qator turli manfaatdor tomonlar tomonidan muhokama qilish uchun bir muammo markazi sifatida foydalaniladi. 2. Tizim tahlili. Tizimni ishlab chiqishning erta bosqichlarida tizim arxitekturasini yaratish bir qancha tahlillarni talab qiladi. Arxitekturaviy loyiha yechimlari tizimning ishlab chiqilish, ishonchlilik, keng ko’lamda qo’llanilish va qayta ishlab chiqilish talablarini qondira olishiga chuqur ta’sir ko’rsatadi. 3. Keng ko’lamli qayta qo’llash. Tizim arxitekturasi modeli tizimning qanday tashkil qilingani va komponentalar qanday o’zaro ta’sir qilishini ixcham, boshqarilga ta’rifidir 2. Arxitekturali loyihalash bosqichlari Dasturiy tizim arxitekturasi alohida arxitekturaviy shablonlar va stillarga asoslangan. Arxitekturaviy shablonlar xuddi klient-server tashkillanishi yoki bosqichlangan arxitektura kabi tizimni tashkillashtirish tushunchasidir. Arxitekturaviy shablonlar turli dasturiy tizimlarda qo’llanilgan arxitekturalar jamlanmasini o’z ichiga oladi. Tizim uchun arxitektura tanlashda ehtiyotkorlik bilan qaror qabul qilishingiz lozim. Nofunksiyaviy talablar va dastur arxitekturasi o’rtasida yaqin bog’liqliklar bo’lganligi sababli, siz tanlayotgan arxitekturaviy stil va tizim, nofunksional tizim talablaridan kelib chiqqan holda tanlanishi lozim: 1. Ishlab chiqish. Ishlab chiqish bu muhim talabi bo'lsa, arxitektura kichik komponentlar soni doirasida muhim operatsiyalarini mahalliylashtirishga mo'ljallangan bo'lishi kerak, bu komponentlar bilan hammasi bitta kompyuterda yozilgan, butun tarmoq bo'ylab tarqalmagan bo’lishi lozim. 2. Xavfsizlik. Agar xavfsizlik muhim talab bo’lsa, arxitektura uchun qatlamli tuzilishi chuqur qatlamlarda himoyalangan eng muhim aktivlardan foydalanish kerak, bu qatlamlar uchun xavfsizlikni tekshirish yuqori darajada qo'llaniladi. 3. Ichonchlilik. Agar ishonchlilik muhim talab bo'lsa, arxitektura shunday mo'ljallangan bo'lishi kerakki, bunda xavfsizlik bilan bog'liq operatsiyalarning barchasi yoki yagona komponentada yoki kichik sonli komponentlarda joylashgan bo’lishi kerak. Bu xavfsizlik tekshirish xarajatlarni va muammolarini kamaytiradi va qobiliyatsiz taqdirda tizimini xavfsiz yopilishiga imkon beradigan tegishli himoya tizimlarini taqdim qiladi. 4. Mavjudlik. Agar mavjudlik muhim talab bo'lsa, arxitektura tizimi to'xtamasdan komponentlarini yangilash va almashtirish imkoniga ega ortiqcha komponentlarini o'z ichiga olgan bo'lishi kerak. 5. Barqarorlik. Agar barqarorlik muhim talab bo’lsa, tizim arxitekturasi tez tez o’zgarib turishi mumkin bo’lgan nozik, o’z-o’zini tarkibidagi komponentalardan foydalangan holda qurilishi lozim. Ma'lumotlar ishlab chiqaruvchilar iste'molchilardan ajratilgan bo'lishi kerak va birgalikda ma'lumotlar tuzilmalari yo'l qo'ymaslik lozim 3.Dasturiy taminot arxitekturasi konteksti? Tizim modelining eng muhim tomoni shundaki unda tizim haqidagi batafsil ma’lumotlar tashlab ketiladi. Model o’rganilayotgan tizimning mavhum ko’rinishidir. Siz tizimni turli xil ko’rinishlarini ko’rsatish uchun turli xil modellarni ishlab chiqishingiz mumkin. Masalan: 1. Tashqi ko’rinish, tizimning konteksti yoki muhitini modellashtirish. 2. O’zaro munosabatlar ko’rinishi, tizim bilan muhit yoki tizim komponentalari o’rtasidagi o’zaro munosabatni modellashtirish. 3. Strukturaviy ko’rinish, tizim tomonidan ishlov berilayotgan ma’lumotlar strukturasi yoki tizim tashkilotini modellashtirish. 4. Xatti harakatlar ko’rinishi, tizimning dinamik xatti harakatlari va hodisalarga qanday javob berishini modellashtirish. Konteks modellar tizimning tezkor kontekstini ko’rsatishda foydalaniladi. Arxitekturaviy modellar tizim va uning boshqa tizimlar bilan munosabatini ko’rsatadi. Tizim chegaralari Tizim chegaralari nima tizim ichida va nima tizim tashqarisidaligini ko’rsatadi. Ular ishlab chiqarilayotgan tizimda foydalanilayotgan yoki bog’liq bo’lgan boshqa tizimlarni ko’rsatadi. Konteks modellar muhitdagi ishlab chiqarilayotgan tizimni emas balki muhitdagi boshqa tizimlarni ko’rsatadi. Jarayon modellar ishlab chiqarilayotgan modellarni ko’rsatadi. UML diagrammalar jarayon modellarda foydalaniladi. 4 MVC MVC "model-view-controller" degan ma'noni anglatadi. Bu turli muammolarni hal qilish uchun mas'ul bo'lgan bloklarni ajratib ko'rsatishni o'z ichiga olgan kodni tashkil qilish usuli. Bitta blok dastur ma'lumotlari uchun javob beradi, ikkinchisi tashqi ko'rinish uchun javob beradi, uchinchisi esa dasturning ishlashini nazorat qiladi. MVC komponentlari: Model - Ushbu komponent ma'lumotlar uchun javob beradi va shuningdek, dastur tuzilishini belgilaydi. Misol uchun, agar siz Vazifa dasturini yaratayotgan bo'lsangiz, model komponent kodi vazifalar ro'yxatini va individual vazifalarni belgilaydi. Ko'rish - Ushbu komponent foydalanuvchining o'zaro ta'siri uchun javobgardir. Ya'ni, ko'rish komponentining kodi ilovaning ko'rinishini va undan qanday foydalanishni belgilaydi. Controller - bu komponent model va ko'rinish o'rtasidagi aloqa uchun javobgardir. Tekshiruvchi komponent kodi sayt foydalanuvchi harakatlariga qanday javob berishini aniqlaydi. Asosan, bu MVC ilovasining miyasi. 5.Incremental model tushunasi Incremental Model - bu dasturiy ta'minotni ishlab chiqish jarayoni bo'lib, unda talablar dasturiy ta'minotni ishlab chiqish tsiklining bir nechta mustaqil modullariga bo'linadi. Ushbu modelda har bir modul talablar, dizayn, amalga oshirish va sinov bosqichlaridan o'tadi. Modulning har bir keyingi versiyasi oldingi versiyaga funksiya qo'shadi. Jarayon to'liq tizimga erishilgunga qadar davom etadi. Incremental modelning turli bosqichlari quyidagilardan iborat: 1. Talablarni tahlil qilish: qo'shimcha modelning birinchi bosqichida mahsulotni tahlil qilish bo'yicha ekspertiza talablarni aniqlaydi. Va tizimning funktsional talablari talablarni tahlil qilish guruhi tomonidan tushuniladi. Incremental model ostida dasturiy ta'minotni ishlab chiqish uchun ushbu bosqich hal qiluvchi rol o'ynaydi. 2. Dizayn va ishlab chiqish: SDLC ning Incremental modelining ushbu bosqichida tizim funksionalligini loyihalash va ishlab chiqish usuli muvaffaqiyatli yakunlandi. Dasturiy ta'minot yangi amaliylikni ishlab chiqqanda, incremental model uslub va rivojlanish bosqichidan foydalanadi. 3. Sinov: Incremental modelda sinov bosqichi har bir mavjud funktsiyaning ishlashini, shuningdek, qo'shimcha funktsiyalarni tekshiradi. Sinov bosqichida har bir topshiriqning xatti-harakatini tekshirish uchun turli usullar qo'llaniladi. 4. Amalga oshirish: Amalga oshirish bosqichi ishlab chiqish tizimining kodlash bosqichiga imkon beradi. Bu loyihalash va ishlab chiqish bosqichida loyihalashning yakuniy kodlashni o'z ichiga oladi va sinov bosqichida funksionallikni sinab ko'radi. Ushbu bosqichni tugatgandan so'ng, ishlaydigan mahsulot soni ko'paytiriladi va yakuniy tizim mahsulotigacha yangilanadi 6.Arxitekturani tasniflash tillari Dasturiy ta'minot arxitekturasi ishlab chiquvchilarning e'tiborini kod satrlaridan qo'pol arxitektura elementlariga va ularning umumiy o'zaro bog'liqlik tuzilishiga o'tkazadi. Arxitekturani tavsiflash tillari (ADL) arxitekturaga asoslangan rivojlanishni qo'llab-quvvatlash uchun modellash belgilari sifatida taklif qilingan. Biroq, tadqiqot hamjamiyatida ADL nima, arxitekturaning qaysi jihatlari ADLda modellashtirilishi kerakligi va bir nechta mumkin bo'lgan ADLlardan qaysi biri ma'lum bir muammoga eng mos kelishi haqida juda kam konsensus mavjud. Bundan tashqari, bir tomondan ADLlar va boshqa tomondan rasmiy spetsifikatsiya, modullarning o'zaro bog'lanishi, simulyatsiya va dasturlash tillari o'rtasida farq kamdan-kam uchraydi. Ushbu maqola ushbu savollarga javob berishga harakat qiladi. U ADL uchun ta'rif va tasniflash tizimini rag'batlantiradi va taqdim etadi. Ta'rifning foydaliligi ADL ni boshqa modellash belgilaridan farqlash uchun foydalanish orqali ko'rsatiladi. Ramka bir nechta mavjud ADLlarni tasniflash va solishtirish uchun ishlatiladi, bu bizga jarayonda ADLlarning asosiy xususiyatlarini aniqlash imkonini beradi. Taqqoslashda mavjud ADLlar keng ko'lamli qo'llab-quvvatlanadigan va ular etishmayotgan sohalarni ta'kidlab, kelajak uchun tadqiqot kun tartibini taklif qiladi. 7.Scrum-master Skrum ustasi - bu loyihani boshqarishning tezkor usullaridan foydalangan holda loyiha orqali jamoani boshqaradigan professional. Skrum ustasi muvaffaqiyatli natijani ta'minlash uchun etakchilik va jamoa o'yinchilari o'rtasidagi barcha aloqa va hamkorlikni osonlashtiradi. Skrum ustasi nima qiladi? Scrum - bu murakkab loyihalarni, ko'pincha dasturiy ta'minotni ishlab chiqish uchun tezkor ramka. Loyihani boshqarishning tezkor metodologiyasi mahsulot yoki xizmatni doimiy ravishda takomillashtirishga olib keladigan sprintlar deb ataladigan qisqa rivojlanish tsikllaridan foydalanadi. Ko'plab tezkor ramkalar mavjud va Scrum tez harakatlanuvchi loyihalar uchun mashhur variantdir. Metodologiya yuqori darajada hamkorlikka asoslangan va samarali jarayonlarni talab qiladi va jarayonning natijalari scrum ustasining tajribasiga bog'liq. Agile metodologiyalari texnologik kompaniyalarda boshlangan bo'lishi mumkin, ammo scrum master ish o'rinlarini barcha sohalarda va butun dunyo bo'ylab barcha turdagi kompaniyalarda topish mumkin. Skrum ustasining roli loyihani, jamoalarni va jamoa a'zolarini himoya qilish uchun tezkor loyiha boshqaruvidan foydalanishdir. Skrum ustalari ko'p sozlamalarda ishlashi mumkinligi sababli, sizning vazifalaringiz va mas'uliyatingiz farq qilishi mumkin. Qayerda ishlayotganingizga qarab, siz o'zingizni yordamchi, murabbiy yoki loyiha menejeri rolini o'z zimmangizga olishingiz mumkin. Sizning vazifalaringiz ko'pincha kundan-kunga o'zgarib turadi, ammo quyidagilarni o'z ichiga olishi mumkin: Kundalik stend-up yig'ilishlari, sharhlar, demolar va boshqa loyiha bilan bog'liq uchrashuvlarni olib borish Jamoa a'zolarini o'z vazifalarida qo'llab-quvvatlash Jamoani scrum tamoyillari va eng yaxshi amaliyotlar bo'yicha o'rgatish Ochiq muhokama va nizolarni hal qilishga yordam berish Muammolarni faol ravishda aniqlang va hal qiling Loyiha boshqaruvini kuzatish vositasida faoliyatni yangilash 8.Qatlamli arxitektura tushunchasi. qatlamli arxitektura - bu uch bosqichli texnologiya. Bunday tarmoqda mijoz va dastur serveridan tashqari qo'shimcha ma'lumotlar bazasi serveri mavjud. Quyidagi uchta daraja: Pastroq. Ushbu havola foydalanuvchi interfeysiga ega mijoz dasturiy ta'minotini va ma'lumotlarni qayta ishlashning keyingi darajasi bilan o'zaro ta'sir tizimini o'z ichiga oladi. O'rta. Mijoz dasturlaridan kelib tushgan so'rovlar dastur serveri tomonidan qayta ishlanadi, bu erda server o'rtasida ma'lumotlarni qayta ishlash va o'tkazish uchun operatsiyalar amalga oshiriladi yuqori daraja va mijoz. Bu sizga ma'lumotlarni saqlashni keraksiz yukdan tushirish va turli foydalanuvchilarning so'rovlarini tarqatish imkonini beradi. Yuqori. Bu barcha ma'lumotlarni saqlaydigan mustaqil ma'lumotlar bazasi serveri. Dastur serveridan tayyorlangan so'rovni qabul qiladi va uni mijoz dasturlari bilan bevosita aloqada bo'lmasdan kerakli ma'lumotlar bilan ta'minlaydi. 1 foydalanish interfeysi 2 foydalanuvchi interfeysi boshqarish autentifikatsiya va avtorizatsiya 3 ISH mantiq/ dastur funktsional tizimi kommunal 4 tizim qo'llab-quvvatlash (OS, ma'lumotlar bazasi va hokazo) Download 25.63 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling