Axborot tizimlari va raqamli texnologiyalar” kafedrasi “dasturiy ta‘minotni ishlab chiqish texnologiyalari” fanidan


I BOB. DASTURIY TA’MINOTNING O’ZARO MUNOSABAT MODELLLAR


Download 127.2 Kb.
bet2/4
Sana18.06.2023
Hajmi127.2 Kb.
#1560073
1   2   3   4
Bog'liq
Ibodillayev Avazbek (2) — копия

I BOB. DASTURIY TA’MINOTNING O’ZARO MUNOSABAT MODELLLAR

1.1 O’ZARO MUNOSABAT MODELLARI HAQIDA UMUMIY MA’LUMOT


Barcha tizimlar qandaydir o'zaro ta'sirni o'z ichiga oladi. Bu foydalanuvchining kirish va chiqishlarini o'z ichiga olgan foydalanuvchi shovqini bo'lishi mumkin; ishlab chiqilayotgan dasturiy ta'minot va uning muhitidagi boshqa tizimlarning o'zaro ta'siri; yoki dasturiy ta'minot tizimining komponentlari o'rtasidagi o'zaro ta'sir. Foydalanuvchilarning o'zaro ta'sirini modellashtirish muhim ahamiyatga ega, chunki u foydalanuvchi talablarini aniqlashga yordam beradi. Tizimlarning o'zaro ta'sirini modellashtirish yuzaga kelishi mumkin bo'lgan aloqa muammolarini ta'kidlaydi. Komponentlarning o'zaro ta'sirini modellashtirish taklif qilingan tizim strukturasi tizimning kerakli ishlashi va ishonchliligini ta'minlashi mumkinligini tushunishga yordam beradi.


Ushbu bo'limda o'zaro ta'sirni modellashtirishning ikkita bog'liq yondashuvi muhokama qilinadi:


Ko'pincha tizim va tashqi agentlar (inson foydalanuvchilar yoki boshqa tizimlar) o'rtasidagi o'zaro ta'sirlarni modellashtirish uchun ishlatiladigan keys modellashtirishdan foydalaning.


Tizim komponentlari o'rtasidagi o'zaro ta'sirlarni modellashtirish uchun ishlatiladigan ketma-ketlik diagrammalari, garchi tashqi agentlar ham kiritilishi mumkin.


Foydalanish holatlari modellari va ketma-ketlik diagrammalari o'zaro ta'sirlarni turli darajadagi tafsilotlarda taqdim etadi va shuning uchun birgalikda ishlatilishi mumkin. Masalan, yuqori darajadagi foydalanish holatlarida ishtirok etadigan o'zaro ta'sirlarning tafsilotlari ketma-ketlik diagrammasida hujjatlashtirilishi mumkin. UML shuningdek, o'zaro aloqalarni modellashtirish uchun ishlatilishi mumkin bo'lgan aloqa diagrammalarini o'z ichiga oladi. Men ushbu diagramma turini tasvirlamayman, chunki aloqa diagrammalari ketma-ketlik diagrammalarining muqobil ko'rinishidir.


Foydalanish holatlarini modellashtirish


Use case modeling dastlab Ivar Jacobsen tomonidan 1990-yillarda ishlab chiqilgan va foydalanish holatlarini modellashtirishni qo'llab-quvvatlash uchun UML diagramma turi.

UML. Foydalanish holati foydalanuvchi ushbu o'zaro ta'sirda tizimdan nimani kutayotganining oddiy tavsifi sifatida qabul qilinishi mumkin. Men 4- bobda talablarni aniqlash uchun foydalanish holatlarini muhokama qildim. Men foydalanish namunalarini talablarni ishlab chiqishda emas, balki tizimni loyihalashning dastlabki bosqichlarida foydaliroq deb bilaman.


Har bir foydalanish holati tizim bilan tashqi shovqinni o'z ichiga olgan diskret vazifani ifodalaydi. Eng sodda shaklda foydalanish holati ellips shaklida ko'rsatilgan, foydalanish holatida ishtirok etgan aktyorlar esa tayoqchalar shaklida tasvirlangan. 1 -rasmda Mentcare tizimidan ma'lumotlarni umumiyroq bemorlarni hisobga olish tizimiga yuklash vazifasini ifodalovchi Mentcare tizimidan foydalanish misoli ko'rsatilgan. Ushbu umumiy tizim Mentcare tizimida qayd etilgan har bir maslahat haqidagi ma'lumotlardan ko'ra, bemor haqida umumiy ma'lumotlarni saqlaydi.





E'tibor bering, ushbu foydalanish holatida ikkita ishtirokchi bor - ma'lumotlarni uzatuvchi operator va bemorni qayd qilish tizimi. Tayoqchalar belgisi dastlab odamlarning o'zaro ta'sirini qoplash uchun ishlab chiqilgan, ammo u boshqa tashqi tizimlar va apparat vositalarini ifodalash uchun ham qo'llaniladi. Rasmiy ravishda, foydalanish holatlari diagrammalarida strelkalarsiz chiziqlar ishlatilishi kerak, chunki UMLdagi o'qlar xabarlar oqimining yo'nalishini ko'rsatadi.


Shubhasiz, foydalanish holatida xabarlar ikkala yo'nalishda ham o'tadi. Shu bilan birga, 5.3 -rasmdagi o'qlar norasmiy ravishda tibbiy qabulxona xodimi tranzaktsiyani boshlashini va ma'lumotlar bemorni hisobga olish tizimiga o'tkazilishini ko'rsatish uchun ishlatiladi.

Foydalanish holatlari diagrammalari o'zaro ta'sirning oddiy ko'rinishini beradi va o'zaro ta'sirni to'liq tavsiflash uchun batafsilroq ma'lumot qo'shishingiz kerak. Bu tafsilot oddiy matn tavsifi, jadvaldagi tuzilgan tavsif yoki ketma-ketlik diagrammasi bo'lishi mumkin. Siz foydalanish holatiga va modelda talab qilinadigan tafsilotlar darajasiga qarab eng mos formatni tanlaysiz. Men standart jadval formatini eng foydali deb bilaman. 2-rasmda "Ma'lumotlarni uzatish" qo'llanilishining jadvalli tavsifi ko'rsatilgan.




  1. rasm

UML boshqa foydalanish holatlari diagrammalarida foydalanish holatlarining to'liq yoki bir qismini almashish uchun bir qator konstruktsiyalarni o'z ichiga oladi. Ushbu tuzilmalar ba'zan tizim dizaynerlari uchun foydali bo'lishi mumkin bo'lsa-da, mening tajribam shuni ko'rsatadiki, ko'p odamlar, ayniqsa oxirgi foydalanuvchilar, ularni tushunish qiyin. Shu sababli, bu konstruktsiyalar bu erda tasvirlanmagan.
UMLdagi ketma-ketlik diagrammalari, birinchi navbatda, tizimdagi aktyorlar va ob'ektlar o'rtasidagi o'zaro ta'sirlarni va ob'ektlarning o'zlari orasidagi o'zaro ta'sirlarni modellashtirish uchun ishlatiladi. UMLda ketma-ketlik diagrammalari uchun boy sintaksis mavjud bo'lib, u turli xil o'zaro ta'sirlarni modellashtirishga imkon beradi. Kosmos bu erda barcha imkoniyatlarni qamrab olishga imkon bermaganligi sababli, asosiy e'tibor ushbu diagramma turining asoslariga qaratiladi.

Nomidan ko'rinib turibdiki, ketma-ketlik diagrammasi muayyan foydalanish holatlari yoki foydalanish holatlari misolida sodir bo'ladigan o'zaro ta'sirlar ketma-ketligini ko'rsatadi. 3- rasmda yozuvning asoslari tasvirlangan ketma-ketlik diagrammasining namunasi keltirilgan. Ushbu diagrammada tibbiy qabulxona xodimi bemor haqidagi ba'zi ma'lumotlarni ko'rishi mumkin bo'lgan bemor ma'lumotlarini ko'rish misolida ishtirok etadigan o'zaro ta'sirlarni modellashtiradi.


Ishtirok etgan ob'ektlar va aktyorlar diagrammaning yuqori qismida vertikal ravishda chizilgan nuqta chiziq bilan ko'rsatilgan. Izohlangan o'qlar ob'ektlar orasidagi o'zaro ta'sirlarni ko'rsatadi. Nuqtali chiziqlardagi to'rtburchak tegishli ob'ektning hayot chizig'ini (ya'ni, ob'ekt misoli hisoblashda ishtirok etgan vaqtni) ko'rsatadi.


O'zaro ta'sirlar ketma-ketligini yuqoridan pastgacha o'qiysiz. O'qlardagi izohlar ob'ektlarga qo'ng'iroqlarni, ularning parametrlarini va qaytarish qiymatlarini ko'rsatadi. Bu misol, shuningdek, muqobillarni belgilash uchun ishlatiladigan belgini ko'rsatadi. bilan alt nomli quti ishlatiladi

To'liq muqobil matn
shartlar kvadrat qavslar ichida ko'rsatilgan, muqobil o'zaro ta'sir variantlari nuqtali chiziq bilan ajratilgan.
Barcha tizimlar qandaydir o'zaro ta'sirni o'z ichiga oladi. Bu foydalanuvchi kirishlari va chiqishlarini, ishlab chiqilayotgan tizim va boshqa tizimlar o'rtasidagi o'zaro ta'sirni yoki tizim komponentlari o'rtasidagi o'zaro ta'sirni o'z ichiga olgan foydalanuvchi shovqini bo'lishi mumkin. Foydalanuvchilarning o'zaro ta'sirini modellashtirish juda muhim, chunki u foydalanuvchi talablarini aniqlashga yordam beradi. Tizimning o'zaro ta'sirini modellashtirish tizimi yuzaga kelishi mumkin bo'lgan aloqa muammolarini ta'kidlaydi.

Komponentlarning o'zaro ta'sirini modellashtirish taklif qilingan tizim strukturasi tizimning kerakli ishlashi va ishonchliligini ta'minlashi mumkinligini tushunishga yordam beradi.


Sommerville o'zaro ta'sirni modellashtirishga ikkita bog'liq (bir-birini to'ldiruvchi) yondashuvlarni qamrab oladi:


Ko'pincha tizim va tashqi aktyorlar (foydalanuvchilar yoki boshqa tizimlar) o'rtasidagi o'zaro ta'sirlarni modellashtirish uchun ishlatiladigan modellashtirishdan foydalaning.


Tizim komponentlari o'rtasidagi o'zaro ta'sirlarni modellashtirish uchun ishlatiladigan ketma-ketlik diagrammalari, garchi tashqi agentlar ham kiritilishi mumkin.


Foydalanish holatlari modellari va ketma-ketlik diagrammalari o'zaro ta'sirni turli darajadagi tafsilotlarda taqdim etadi va shuning uchun birgalikda ishlatilishi mumkin. Yuqori darajadagi foydalanish holatlarida ishtirok etadigan o'zaro ta'sirlarning tafsilotlari ketma-ketlik diagrammasida hujjatlashtirilishi mumkin.


O'zaro ta'sirni modellashtirish jarayonida qo'shimcha foydalanish holatlari ishlab chiqilishi mumkin (biz talablarni ishlab chiqish bosqichida yaratganimizdan tashqari). Kontekst modeli bizga ilovamiz qanday boshqa tizimlar bilan o'zaro ta'sir qilishi kerakligini aniqlashda yordam beradi. Shunday qilib, bizning tizimimiz mijozlarga to'lovlarni amalga oshirish yoki etkazib berishning haqiqiy holatini tekshirish imkonini beruvchi talablarni o'z ichiga olishi kerak degan xulosaga kelishimiz va tushunishimiz mumkin (hatto bizning tizimimizdan tashqarida etkazib berish amalga oshirilsa ham). Albatta, biz avvalgi foydalanish holatlarida ko'rganimizdek, tuzilgan tabiiy til tavsifidan foydalangan holda yangi topilgan foydalanish holatlarining batafsil tavsifini taqdim etishimiz kerak. Biroq, bu vazifa o'quvchiga mashq sifatida qoldiriladi.





  1. 3. DASTURIY TA’MINOT YARATISHDA O’ZARO MUNOSABAT MODELLARI BILAN ISHLASH

Mijoz kredit karta bilan to'lashni tanlaganida, bizning foydalanish holatlarimizdan biri, To'lov muddati uzaytirilishi mumkin. Barcha to'lovlar uchun Bank talab qilinmaydi: bu qanday to'lov usullariga ruxsat berilganiga bog'liq. Masalan, jarayonda ishtirok etish uchun bank kerak bo'lmagan kuponlar bilan to'lash mumkin bo'lishi mumkin.


Biroq, kredit kartalari bilan to'lovlar har doim kredit karta emitenti bilan o'zaro aloqani talab qiladi. Xaridorlar sotib olingan mahsulotlarning haqiqiy etkazib berish holatini tekshirishlari mumkin, bu tabiiy ravishda Yuk tashish tizimini o'z ichiga oladi, chunki bu erda jo'natish ma'lumotlari saqlanadi.
Mijozlar, shuningdek, etkazib berish uchun afzal ko'rgan vaqt oralig'ini (ular uyda bo'lganda) ko'rsatishi mumkin, bu esa kurerga qachon borishni (yoki qachon bormaslikni) bilish imkonini beradi. Aniq sabablarga ko'ra, biz o'quvchi e'tiborini o'rnatishni afzal ko'rgan vaqt oralig'idan foydalanish holatiga ega bo'lish, bu funksiya onlayn kitob do'koni tizimiga kiritilganligini bildirishiga qaratmoqchimiz.




  1. Rasm Bank va yuk tashish tizimi (tashqi tizimlar) bilan o'zaro aloqalarni tavsiflovchi holatlardan foydalaning.

Bu yuk tashish tizimining funksionalligi emas (ammo u bunday funktsiyani taklif qilishi mumkin) yoki hech bo'lmaganda biz bunday foydali funksiya bor yoki yo'qligini bilmaymiz. Ilovamizni modellashtirish jarayonida biz loyihalashtirilayotgan tizimning funksiyalari haqida qaror qabul qilamiz. Aniq sabablarga ko'ra, biz o'quvchi e'tiborini o'rnatishni afzal ko'rgan vaqt oralig'idan foydalanish holatiga ega bo'lish, bu funksiya onlayn kitob do'koni tizimiga kiritilganligini bildirishiga qaratmoqchimiz.


Bu yuk tashish tizimining funksionalligi emas (ammo u bunday funktsiyani taklif qilishi mumkin) yoki hech bo'lmaganda biz bunday foydali funksiya bor yoki yo'qligini bilmaymiz. Ilovamizni modellashtirish jarayonida biz loyihalashtirilayotgan tizimning funksiyalari haqida qaror qabul qilamiz.
Aniq sabablarga ko'ra, biz o'quvchi e'tiborini o'rnatishni afzal ko'rgan vaqt oralig'idan foydalanish holatiga ega bo'lish, bu funksiya onlayn kitob do'koni tizimiga kiritilganligini bildirishiga qaratmoqchimiz. Bu yuk tashish tizimining funksionalligi emas (ammo u bunday funktsiyani taklif qilishi mumkin) yoki hech bo'lmaganda biz bunday foydali funksiya bor yoki yo'qligini bilmaymiz. Ilovamizni modellashtirish jarayonida biz loyihalashtirilayotgan tizimning funksiyalari haqida qaror qabul qilamiz.
Bu yuk tashish tizimining funksionalligi emas (ammo u bunday funktsiyani taklif qilishi mumkin) yoki hech bo'lmaganda biz bunday foydali funksiya bor yoki yo'qligini bilmaymiz. Ilovamizni modellashtirish jarayonida biz loyihalashtirilayotgan tizimning funksiyalari haqida qaror qabul qilamiz. Bu yuk tashish tizimining funksionalligi emas (ammo u bunday funktsiyani taklif qilishi mumkin) yoki hech bo'lmaganda biz bunday foydali funksiya bor yoki yo'qligini bilmaymiz. Ilovamizni modellashtirish jarayonida biz loyihalashtirilayotgan tizimning funksiyalari haqida qaror qabul qilamiz.

Keling, mijozlar tranzaktsiyalarini Buxgalteriya tizimi bilan qachon almashish kerakligini tavsiflovchi stsenariyni ko'rib chiqaylik. Eng yaxshi yechim bu vazifani avtomatlashtirish bo'ladi. O'ylaymizki, har haftaning birinchi kunida o'tgan hafta davomida amalga oshirilgan barcha operatsiyalar qayta ishlanadi va Buxgalteriya tizimiga yuboriladi. Muvaffaqiyatli yetkazib berilmagan xaridni hisobga olishga ruxsat berilmagani uchun administratorga yuzaga kelishi mumkin bo'lgan muammolarni (da'volar, muvaffaqiyatsiz yetkazib berish va boshqalar) tuzatish uchun foydalanish holati kerak.


Ammo savol tug'iladi: tizim soati yoki taymer tomonidan avtomatik ravishda ishga tushiriladigan foydalanish holatini hisobga olgan holda, qaysi aktyordan foydalanish kerak? Bunday hollarda, asosan, bizda uchta muqobil mavjud.


Asosiy aktyor sifatida tizim taymer.


Rejalashtirilgan vazifa tizim tomonidan ichki bajarilganligi sababli, u qora quti nuqtai nazaridan hech qanday ko'rinadigan natijani bermaydi. Biroq, bu vazifa funksionallikka mos kelganligi sababli, uni tizim doirasidagi deb hisoblash mumkin.


Ushbu parametr yordamida tizim taymeri (yoki rejalashtiruvchisi) tizimdan tashqarida (qora quti nuqtai nazaridan) ichki xususiyat bo‘lib, uni asosiy ishtirokchi sifatida ko‘rsatish orqali quyidagilarga asoslanadi: tizim taymeri ushbu foydalanish holatini ishga tushiradi. davriy (masalan, kunlik, haftalik va boshqalar). Tizim taymerining asosiy ishtirokchi ta'rifini to'liq bajarmasligi haqida bahslashish mumkin, chunki u foydalanish holatidan erishish uchun hech qanday maqsadga ega emas. Biroq, hech qanday tetik belgilanmagan bo'lsa, asosiy ishtirokchining birinchi harakatini tetiklash hodisasi deb hisoblash mumkin.


Bu tizim taymerini asosiy aktyor sifatida modellashtirishni qo'llab-quvvatlaydi, bu UMLda keng tarqalgan amaliyot bo'lib, tizim taymerining asosiy ishtirokchisi bilan bog'liq barcha foydalanish holatlari rejalashtirilgan asosda ishga tushirilishini bir ma'noda ko'rsatish afzalligini ta'minlaydi.


Foydalanish holatlarini tahlil qilishda "tizim taymeri" mos keladi, chunki u ushbu funksiya qanday amalga oshirilishini aniqlamaydi. Dizaynning keyingi bosqichida tizim taymerining rolini bajarish uchun tizim soatini yoki boshqa vositani tanlash mumkin bo'ladi.


Asosiy aktyor erishish uchun maqsadi bo'lishi kerak.


Muqobil variant foydalanish holatini amalga oshirishda maqsadi bo'lgan asosiy ishtirokchini aniqlashni o'z ichiga oladi.


Mijozlarning tranzaksiyalarini qayta ishlash misolida, Administrator yoki Menejer “Mijoz operatsiyalarini qayta ishlash” foydalanish holatini bajarish, ya'ni barcha mijozlar hisoblari bo'yicha qayta ishlangan tranzaksiyalarning dolzarb ro'yxatini olish maqsadi bo'lgan aktyordir.


Ushbu foydalanish diagrammasini ko'p foydalanish holatlaridan farq qiladigan narsa asosiy ishtirokchi va o'rganilayotgan tizim o'rtasidagi o'zaro ta'sirning yo'qligi. Iloji bo'lsa, ikkinchi darajali ishtirokchi, tizim taymeri orqali foydalanish holatini ishga tushirish hodisasini modellashtirish ham mumkin. Ikkilamchi aktyordan foydalanish, foydalanish holatlari diagrammasi orqali bog'langan foydalanish holatlari davriy ravishda ishlaydigan foydalanish holatlari tafsilotlari orqali osongina bog'lanadi.


Agar tizim taymeridan foydalanilmasa, foydalanish holatini ishga tushirish sifatida belgilash tavsiya etiladi, masalan, "tizim taymeri ushbu foydalanish holatini ishga tushiradi".


Foydalanish misolida aktyor yo'q.


Oxirgi variant hech qanday aktyorsiz foydalanish holatini ko'rsatishni o'z ichiga oladi. Bu UML-ga mos keladi, chunki biz tashqi muhit bilan hech qanday aloqasi bo'lmagan foydalanish holatini belgilaymiz.


Biroq, biz foydalanish holatlarining "rejalashtirilgan tabiatini" o'tkazib yubormaymiz, shuning uchun trigger ichki tizim taymeriga havola bilan aniqlanishi mumkin. Agar, aksincha, hech qanday tetik o'rnatilmagan bo'lsa, o'z-o'zidan foydalanish holati ba'zilar uchun tushunish qiyinroq bo'lishi mumkin yoki hatto "bu diagramma to'liqmi?" kabi savollarga olib kelishi mumkin. Tahlilni tugatmagan deb o'yladim."


Xulosa sifatida biz birinchi variantni qo'llashni taklif qilamiz, ya'ni tizim taymerini asosiy ishtirokchi sifatida aniqlash, 3.3-rasmda ko'rsatilganidek, "Buxgalteriya tizimi (tashqi tizimlar) bilan o'zaro ta'sirni tavsiflovchi holatlardan foydalanish". .


Biroq, bizning maqsadimiz aniqlangan variantlarni muhokama qilish va solishtirish edi, bu ikkala variantni yoki mavjud bo'lishi mumkin bo'lgan boshqa variantlarni tanlashdan ta'sirni baholashga yordam beradi. Foydalanish holatlari spetsifikatsiyalari orqali manfaatdor tomonlar va jamoa bilan muloqotga ta'siri va ular qanchalik yaxshi tushunilishi hisobga olinishi kerak bo'lgan muhim element bo'lishi kerak. Shaxsiy qarashlar va har bir kontekst, albatta, yakuniy qarorga ta'sir qiladi.






  1. Rasm Buxgalteriya tizimi (tashqi tizimlar) bilan o'zaro munosabatlarni tavsiflovchi holatlardan foydalaning.

Shuningdek, tizimning tashqi ishtirokchisi talab qiladigan operatsiyalarni ajratib ko'rsatish va tasvirlash maqsadga muvofiqdir, chunki ular tizim xatti-harakatlarini tushunishda hal qiluvchi rol o'ynaydi. UML ketma-ketlik diagrammalaridan ob'ektlar va aktyorlar o'rtasidagi o'zaro ta'sirlarni va ular tomonidan boshlangan operatsiyalarni ko'rsatishi mumkin bo'lgan yozuv sifatida foydalanadi.

Tizim ketma-ketligi diagrammasi (SSD) - bu ma'lum bir foydalanish holatining ma'lum bir stsenariysi uchun tashqi aktyorlar tomonidan yaratilgan hodisalarni (ularning tartibi bilan birga) ko'rsatadigan rasm. Tizimlarga qora qutilar sifatida qaraladi; Ushbu diagrammaning asosiy maqsadi - tizim chegarasini aktyorlardan tizimlarga kesib o'tadigan hodisalarni ko'rsatish.


Foydalanish holatining asosiy muvaffaqiyat stsenariysi (shuningdek, oddiy oqim deb ham ataladi) va tez-tez yoki murakkab alternativ stsenariylar uchun SSD bajarilishi kerak.

UML "tizim" ketma-ketlik diagrammalari uchun alohida diagramma turini belgilamaydi, lekin biz oddiy ketma-ketlik diagrammalaridan maxsus tarzda foydalanamiz: hayot liniyalaridan biri butun tizimga bag'ishlangan (qora quti)





Download 127.2 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling