Client/Server arxitektura
Download 23.32 Kb.
|
dtarchitecture
Mavzu: Markazalashgan ma’lumotlar arxitekturasi.Client/Server arxitektura loyihallash. 10 Asinxronli aloqaning bevosita DT arxitekturasi.Servis-yo’naltirilgan arxitekturasi loyihallash (SOA) 10Reja: Client/Server arxitektura 10 asinxronli aloqaning bevosita DT arxitekturasi Servis-yo’naltirilgan arxitekturasi loyihallash (SOA) 10 Client/Server arxitekturasi, dasturlashda eng ko’p ishlatiladigan ma’lumotlar arxitekturasi modelidir. Ushbu modelda, foydalanuvchi (mijoz) dastur ichidagi xizmatlarni talab qiladi, va serverlar bu talablarga javob beradi. Serverlar umumiy tarmoq orqali bog’liq mijozlar soniga xizmat ko’rsatishadi. Ushbu arxitekturani ishlatish orqali dasturchilar mijozlarga yuzaga keladigan tarmoq bilan bog’liq savdo dasturlarini yaratishlari mumkin. Dasturchilar uchun avvalgi yillarda yaratilgan arxitektura modeli, asinxron aloqalarni boshqarishga yordam beradi. Bu modelda, kelajakda ishlatiluvchi tizimlarda ishlatiladigan aloqa kanallari ko’p narsalarni boshqarishni qiyinlashtirishi mumkin bo’lgan tarmoq aloqalarini avtomatlashtirishga qodir. Bunda, bevosita tarmoq aloqalari asinxron aloqalarga o’xshashligi hisobga olingan va xatoliklar bajarilishiga qarshi olinganlikni oshirishga qaratilgan. Bunday arxitektura modelini ishlatish, aloqalar orasida yangilik yuborish, ma’lumot almashish, qidiruv va boshqa funksiyalarni amalga oshirishda ishlatilishi mumkin. SOA, xizmat-yo’naltirilgan arxitekturani aniqlaydi. Bu modelda, biz xizmatni o’zimiz yaratmaymiz, balki mavjud xizmatlarni (masalan, toifalar va banklar hisob raqamlari) ishlatishimiz mumkin. Biz shu xizmatlarga talab qilamiz va ular bizga xizmat qiladilar. Ushbu model tarmoq aloqalarini boshqarishga mo’ljallangan va ishlab chiqilgan xizmatlarning yig’ilishiga imkon beradi. Bu arxitekturani ishlatish, bir nechta tizim bilan ishlaydi. Bu modelda, kelajakda ishlatiluvchi tizimlarda ishlatiladigan aloqa kanallari ko’p narsalarni boshqarishni qiyinlashtirishi mumkin bo’lgan tarmoq aloqalarini avtomatlashtirishga qodir. Bunda, bevosita tarmoq aloqalari asinxron aloqalarga o’xshashligi hisobga olingan va xatoliklar bajarilishiga qarshi olinganlikni oshirishga qaratilgan. Ushbu modelda, foydalanuvchi (mijoz) dastur ichidagi xizmatlarni talab qiladi, va serverlar bu talablarga javob beradi. Serverlar umumiy tarmoq orqali bog’liq mijozlar soniga xizmat ko’rsatishadi. Ushbu arxitekturani ishlatish orqali dasturchilar mijozlarga yuzaga keladigan tarmoq bilan bog’liq savdo dasturlarini yaratishlari mumkin. Dasturiy ta'minot arxitekturasi arxitektura uslubi va sifat atributlari bilan parchalanish va kompozitsiyadan foydalangan holda dasturiy ta'minot tizimining abstraktsiyasining yuqori darajadagi tuzilishini o'z ichiga oladi. Dasturiy ta'minot arxitekturasi dizayni tizimning asosiy funksionalligi va ishlash talablariga javob berishi, shuningdek, ishonchlilik, miqyoslilik, portativlik va mavjudlik kabi funktsional bo'lmagan talablarga javob berishi kerak. Dasturiy ta'minot arxitekturasi uning tarkibiy qismlari guruhini, ularning ulanishlarini, ular orasidagi o'zaro ta'sirlarni va barcha komponentlarning joylashtirish konfiguratsiyasini tavsiflashi kerak. Dasturiy ta'minot arxitekturasini ko'p jihatdan aniqlash mumkin - UML (Unified Modeling Language) - UML dasturiy ta'minotni modellashtirish va loyihalashda qo'llaniladigan ob'ektga yo'naltirilgan echimlardan biridir. Arxitektura ko'rinishi modeli (4+1 ko'rinish modeli) − Arxitektura ko'rinishi modeli dasturiy ta'minotning funktsional va funktsional bo'lmagan talablarini ifodalaydi. ADL (Architecture Description Language) - ADL dasturiy ta'minot arxitekturasini rasmiy va semantik jihatdan belgilaydi. UML UML birlashtirilgan modellashtirish tilini anglatadi. Bu dastur chizmalarini yaratish uchun ishlatiladigan tasviriy til. UML Object Management Group (OMG) tomonidan yaratilgan. UML 1.0 spetsifikatsiya loyihasi OMGga 1997 yil yanvar oyida taklif qilingan. U dasturiy ta'minotni ishlab chiqish uchun asos bo'lgan dasturiy ta'minot talablarini tahlil qilish va dizayn hujjatlari uchun standart bo'lib xizmat qiladi. UMLni dasturiy ta'minot tizimini vizualizatsiya qilish, belgilash, qurish va hujjatlashtirish uchun umumiy maqsadli vizual modellash tili sifatida ta'riflash mumkin. UML odatda dasturiy ta'minot tizimini modellash uchun qo'llanilsa-da, bu chegara bilan cheklanmaydi. Bundan tashqari, u ishlab chiqarish birligidagi jarayon oqimlari kabi dasturiy ta'minot bo'lmagan tizimlarni modellashtirish uchun ishlatiladi. Elementlar diagramma sifatida tanilgan to'liq UML rasmini yaratish uchun turli yo'llar bilan bog'lanishi mumkin bo'lgan komponentlarga o'xshaydi. Shunday qilib, bilimlarni real hayot tizimlarida amalga oshirish uchun turli diagrammalarni tushunish juda muhimdir. Bizda ikkita keng diagramma toifasi mavjud va ular quyi toifalarga bo'linadi, ya'ni Strukturaviy diagrammalar va xatti-harakatlar sxemalari. Strukturaviy diagrammalar Strukturaviy diagrammalar tizimning statik tomonlarini ifodalaydi. Ushbu statik jihatlar diagrammaning asosiy strukturasini tashkil etuvchi va shuning uchun barqaror bo'lgan qismlarini ifodalaydi. Ushbu statik qismlar sinflar, interfeyslar, ob'ektlar, komponentlar va tugunlar bilan ifodalanadi. Strukturaviy diagrammalar quyidagi tarzda bo'linishi mumkin - Sinf diagrammasi Obyekt diagrammasi Komponent diagrammasi Joylashtirish diagrammasi Paket diagrammasi Kompozit tuzilma Sinf Tizimning ob'ekt yo'nalishini ifodalaydi. Sinflar qanday statik bog'langanligini ko'rsatadi. Ob'ekt Ob'ektlar to'plamini va ularning ish vaqtidagi munosabatlarini ifodalaydi va tizimning statik ko'rinishini ham ifodalaydi. Komponent Tizimning barcha komponentlarini, ularning o'zaro aloqasini, o'zaro ta'sirini va interfeysini tavsiflaydi. Kompozit tuzilma Komponentning ichki tuzilishini, shu jumladan barcha sinflarni, komponent interfeyslarini va boshqalarni tavsiflaydi. Paket Paket tuzilishi va tashkil etilishini tavsiflaydi. Paketdagi sinflarni va boshqa paketdagi paketlarni qamrab oladi. Joylashtirish Joylashtirish sxemalari tugunlar va ularning munosabatlari to'plamidir. Ushbu tugunlar komponentlar joylashtirilgan jismoniy shaxslardir Xulq-atvor sxemalari Xulq-atvor diagrammasi asosan tizimning dinamik tomonini qamrab oladi. Dinamik jihatlar asosan tizimning o'zgaruvchan/harakatlanuvchi qismlaridir. UML quyidagi turdagi xatti-harakatlar diagrammalariga ega: Ish diagrammasidan foydalaning Ketma-ketlik diagrammasi Aloqa diagrammasi Davlat diagrammasi Faoliyat diagrammasi O'zaro ta'sirga umumiy nuqtai Vaqt ketma-ketligi diagrammasi Quyidagi jadvalda ushbu diagrammaning qisqacha tavsifi berilgan - Sr.No. Diagramma va tavsif Foydalanish holati Funktsiyalar va ularning ichki/tashqi boshqaruvchilari o'rtasidagi munosabatlarni tavsiflaydi. Ushbu boshqaruvchilar aktyorlar sifatida tanilgan. Faoliyat Tizimdagi boshqaruv oqimini tavsiflaydi. U faoliyat va havolalardan iborat. Oqim ketma-ket, bir vaqtda yoki tarmoqli bo'lishi mumkin. Shtat mashinasi/davlat diagrammasi Tizimning hodisaga asoslangan holati o'zgarishini ifodalaydi. U asosan sinf, interfeys va h.k.larning holat oʻzgarishini tavsiflaydi. Tizimning ichki/tashqi omillar taʼsirida reaksiyasini tasavvur qilish uchun foydalaniladi. Ketma-ketlik Muayyan funksiyani bajarish uchun tizimdagi qo'ng'iroqlar ketma-ketligini ingl. O'zaro ta'sirga umumiy nuqtai Tizim va biznes-jarayonning boshqaruv oqimining umumiy ko'rinishini ta'minlash uchun faoliyat va ketma-ketlik diagrammalarini birlashtiradi. Aloqa Tartib diagrammasi bilan bir xil, faqat u ob'ektning roliga qaratilgan. Har bir aloqa ketma-ketlik tartibi, raqam va o'tgan xabarlar bilan bog'langan. Vaqt ketma-ketligi Xabarlar bo'yicha holat, holat va hodisalardagi o'zgarishlarni tavsiflaydi. Arxitektura ko'rinishi modeli Model dasturiy ta'minot arxitekturasining to'liq, asosiy va soddalashtirilgan tavsifi bo'lib, u muayyan nuqtai nazardan yoki nuqtai nazardan bir nechta ko'rinishlardan iborat. Ko'rinish - bu bog'liq tashvishlar to'plami nuqtai nazaridan butun tizimning ifodasidir. U oxirgi foydalanuvchilar, ishlab chiquvchilar, loyiha menejerlari va sinovchilar kabi turli manfaatdor tomonlar nuqtai nazaridan tizimni tavsiflash uchun ishlatiladi. 4+1 Modelni ko‘rish 4+1 ko'rinish modeli Filipp Kruchten tomonidan bir nechta va bir vaqtda ko'rinishlardan foydalanishga asoslangan dasturiy ta'minotni talab qiladigan tizim arxitekturasini tavsiflash uchun ishlab chiqilgan. Bu tizimning turli xususiyatlari va tashvishlarini ko'rib chiqadigan bir nechta ko'rinish modeli. U dasturiy ta'minotni loyihalash hujjatlarini standartlashtiradi va dizaynni barcha manfaatdor tomonlar tushunishini osonlashtiradi. Bu dasturiy ta'minot arxitekturasi dizaynini o'rganish va hujjatlashtirish uchun arxitekturani tekshirish usuli bo'lib, barcha manfaatdor tomonlar uchun dasturiy ta'minot arxitekturasining barcha jihatlarini qamrab oladi. U to'rtta muhim ko'rinishni taqdim etadi Mantiqiy ko'rinish yoki kontseptual ko'rinish - dizaynning ob'ekt modelini tavsiflaydi. Jarayon ko'rinishi - u tizimning faoliyatini tavsiflaydi, dizaynning parallellik va sinxronizatsiya jihatlarini qamrab oladi. Jismoniy ko'rinish - U dasturiy ta'minotni apparatga solishtirishni tavsiflaydi va uning taqsimlangan tomonini aks ettiradi. Rivojlanish ko'rinishi - U atrof-muhitni ishlab chiqishda dasturiy ta'minotning statik tashkiloti yoki tuzilishini tavsiflaydi. Ushbu ko'rinish modeli stsenariy ko'rinishi deb ataladigan yana bitta ko'rinishni qo'shish yoki oxirgi foydalanuvchilar yoki dasturiy ta'minot tizimlarining mijozlari uchun foydalanish holatlari ko'rinishini qo'shish orqali kengaytirilishi mumkin. U boshqa to'rtta ko'rinish bilan mos keladi va "ortiqcha bitta" ko'rinish, (4+1) ko'rinish modeli sifatida xizmat qiluvchi arxitekturani tasvirlash uchun ishlatiladi. Quyidagi rasmda bir vaqtning o'zida beshta ko'rinish (4+1) modelidan foydalangan holda dasturiy ta'minot arxitekturasi tasvirlangan. Nima uchun u 5 o'rniga 4+1 deb ataladi? Foydalanish holatlari ko'rinishi alohida ahamiyatga ega, chunki u tizimning yuqori darajadagi talablarini, boshqa ko'rinishlar - bu talablar qanday amalga oshirilishini batafsil ko'rsatadi. Qolgan to'rtta ko'rish tugagach, u ortiqcha bo'ladi. Biroq, busiz boshqa barcha qarashlar mumkin emas edi. Quyidagi rasm va jadvalda 4+1 ko'rinishi batafsil ko'rsatilgan Arxitektura tavsif tillari (ADL) ADL - bu dasturiy ta'minot arxitekturasini aniqlash uchun sintaksis va semantikani ta'minlovchi til. Bu tizimni amalga oshirishdan ajralib turadigan dasturiy ta'minot tizimining kontseptual arxitekturasini modellashtirish uchun xususiyatlarni ta'minlovchi belgi spetsifikatsiyasi. ADL arxitektura tavsifining asosiy bloki bo'lgan arxitektura komponentlarini, ularning ulanishlarini, interfeyslarini va konfiguratsiyalarini qo'llab-quvvatlashi kerak. Bu arxitektura tavsiflarida foydalanish uchun ifoda shakli bo'lib, komponentlarni parchalash, komponentlarni birlashtirish va komponentlarning interfeyslarini aniqlash qobiliyatini ta'minlaydi. Arxitektura tavsifi tili - bu jarayonlar, oqimlar, ma'lumotlar va kichik dasturlar kabi dasturiy ta'minot xususiyatlarini, shuningdek protsessorlar, qurilmalar, avtobuslar va xotira kabi apparat komponentlarini tavsiflovchi rasmiy spetsifikatsiya tili. ADL va dasturlash tilini yoki modellashtirish tilini tasniflash yoki farqlash qiyin. Biroq, tilni ADL - deb tasniflash uchun quyidagi talablar mavjud Arxitekturani barcha manfaatdor tomonlarga etkazish uchun mos bo'lishi kerak. U arxitektura yaratish, takomillashtirish va tasdiqlash vazifalari uchun mos bo'lishi kerak. U keyingi amalga oshirish uchun asos bo'lishi kerak, shuning uchun ADL dan yakuniy tizim spetsifikatsiyasini olish uchun ADL spetsifikatsiyasiga ma'lumot qo'shish imkoniyatiga ega bo'lishi kerak U umumiy me'moriy uslublarning ko'pchiligini ifodalash qobiliyatiga ega bo'lishi kerak. U analitik qobiliyatlarni qo'llab-quvvatlashi yoki tez ishlab chiqarish prototipini amalga oshirishni ta'minlashi kerak. Foydalanilgan adabiyotlar Learning UML 2.0 by Russ Miles and Kim Hamilton May 2, 2006 “Software Engineering”, by Ian Sommerville, 2015 Davis, A. M. (1993). Software Requirements: Objects, Functions and States. Englewood Cliffs, NJ: Prentice Hall. http://fayllar.org Download 23.32 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling