5-mavzu
Ma‟ruzachi: Xidirova Charos Murodilloyevna
5-Mavzu
TIZIMNI MODELLASHTIRISH
Reja:
5.1. Kontekst modellari
5.2. О„zaro ta‟sir modellari
5.3. Strukturaviy modellar
5.4. Xulq-atvor modellari
5.5. Modelga asoslangan arxitektura
Tizimni modellashtirish - bu tizimning mavhum modellarini ishlab chiqish
jarayoni bo'lib, unda har bir model o'zgacha nuqtai nazar yoki nuqtai nazarni
taqdim etadi. Tizimni modellashtirish odatda Birlashgan Modellashtirish Tilida
(UML) diagramma turlariga asoslangan biron bir grafik modeldan foydalangan
holda tizimni ifodalashni anglatadi. Shu bilan birga, odatda tizimning batafsil
spetsifikatsiyasi sifatida tizimning rasmiy (matematik) modellarini ishlab chiqish
mumkin. Bu yerda UML-dan foydalanib grafik modellashtirishni yoritiladi va
grafik modellashtirish qisqacha 10-mavzuda muhokama qilinadi.
Modellar talablarga javob beradigan muhandislik (injiniring) jarayonida,
tizim uchun batafsil talablarni olishga yordam berish uchun, tizimni ishlab
chiqaruvchi muhandislarga tizimni tavsiflash uchun, va tizimni tuzilishi va
ishlashini hujjatlashtirish uchun loyihalash jarayonida qo'llaniladi. Siz mavjud
tizimlar va ishlab chiqiladigan tizimlarning modellarini ishlab chiqishingiz
mumkin:
1. Mavjud tizimning modellari talablar injiniringi (dasturiy ta‟minot
talablarini ishlab chiqish) vaqtida qo'llaniladi. Ular mavjud tizim nima qilishini
aniqlashtirishga yordam beradi va ulardan kuchli va zaif tomonlarini muhokama
qilish uchun foydalanish mumkin.
2. Yangi tizimning modellari talablarni loyihalash jarayonida boshqa
tizimning tomonlariga taklif etilayotgan talablarni tushuntirishga yordam berish
uchun ishlatiladi. Muhandislar ushbu modellardan loyiha takliflarini muhokama
qilish va tizimni joriy qilish uchun hujjatlashtirish uchun foydalanadilar. Agar siz
modelga asoslangan muhandislik jarayonidan foydalansangiz (Brambilla, Cabot va
Wimmer 2012), tizim modellaridan to'liq yoki qisman tizimni yaratishingiz
mumkin.
Tizim modeli ishlab chiqilayotgan tizimning to'liq ifodalab beraolmasligini
tushunish muhimdir. Tushunishni osonlashtirish maqsadida unda tafsilotlar
qoldiriladi. Model bu tizimning muqobil namoyishi emas, balki o'rganilayotgan
tizimning alternative ifodasidir. Tizimning vakili taqdim etilayotgan mantiqiy
ob'ekt to'g'risidagi barcha ma'lumotlarni o'z ichiga olishi kerak. Abstraktsiya
ataylab tizim loyihasini soddalashtiradi va eng muhim xususiyatlarni tanlaydi.
Masalan, ushbu kitob bilan birga kelgan PowerPoint slaydlari kitobning asosiy
fikrlarining abstrakt ifodalanishidir. Ammo, agar kitob tarjima qilingan bo'lsa
ingliz tilidan boshqa tiliga o'tganda, bu alternativ vakillik bo'lishi mumkin.
5-mavzu
Ma‟ruzachi: Xidirova Charos Murodilloyevna
Tarjimon barcha ma'lumotlarni ingliz tilida taqdim etilganidek saqlab turishni niyat
qilgan.
Tizimni boshqasidan ifodalash uchun siz turli kurinishdagi turli xil
modellarni ishlab chiqishingiz mumkin. Masalan:
1. Tashqi ifodasi, unda siz tizimning kontekstini yoki atrofini
modellashtirasiz.
2. Tizim va uning muhiti, yoki tizim va uning tarkibiy qismlari o'rtasidagi
o'zaro munosabatlarni modellashtiradigan o'zaro ta'sir ifodasi.
3. Tizimning tashkil etilishini yoki tizim tomonidan ishlov berilgan
ma'lumotlarning tuzilishini modellashtiradigan tarkibiy ifodasi.
4. Xulq-atvor ifodalanishi, unda tizimning dinamik xatti-harakatlarini va
voqealarga qanday munosabatda bo'lishi modellashtiriladi.
Tizim modellarini ishlab chiqishda siz ko'pincha grafik notatsiyasini
ishlatishda moslashuvchan bo'lishingiz mumkin. Siz har doim notatsiyaning
tafsilotlariga qat'iy rioya qilishingiz shart emas. Modelning tafsilotlari va qat'iyligi
siz uni qanday ishlatmoqchi ekanligingizga bog'liq. Grafik modellardan keng
foydalaniladigan uchta usul mavjud:
1. Mavjud yoki taklif qilinayotgan tizim haqida qiziqishni oshirish va
diqqatni jalb qilish usuli sifatida. Modelning maqsadi – tizimni ishlab chiqishda
ishtirok etadigan dastur muhandislari o'rtasida qiziqishni oshirish va diqqat
markazida bo'lishdir. Modellar to'liq bo'lmasligi mumkin (agar ular munozaraning
asosiy jihatlarini qamrab olsalar) va ular modellashtirishga oid notatsiyalardan
norasmiy foydalanishlari mumkin. Shunday qilib, odatda modellarni tezkor
o‟zgaruvchan (agile) modellashtirishda foydalaniladi (Ambler va Jeffrie, 2002).
2. Mavjud tizimni hujjatlashtirish usuli sifatida. Modellar hujjat sifatida
ishlatilganda, ular to'liq bo'lishi shart emas, chunki siz tizimning ba'zi qismlarini
hujjatlashtirish uchun faqat modellardan foydalanishingiz kerak bo'lishi mumkin.
Biroq, ushbu modellar to'g'ri bo'lishi kerak - ular notatsiyalardan to'g'ri
foydalanishi va tizimning aniq tavsifini ifodalashi kerak.
3.
Tizim amalga oshirishni generatsiyalash uchun ishlatilishi mumkin
bo'lgan tizimning batafsil tavsifi sifatida. Agar modellashtirish modelga asoslangan
ishlab chiqish jarayonining bir qismi sifatida foydalanilsa, tizim modellari to'liq va
to'g'ri bo'lishi lozim. Ular tizimning dastlabki kodini yaratish uchun asos sifatida
ishlatiladi va shuning uchun siz turli xil ma'nolarga ega bo'lgan strelka va
blokirovka strelkalari kabi o'xshash belgilarni chalkashtirib yubormaslik uchun
juda ehtiyot bo'lishingiz kerak.
Ushbu mavzuda Unifikatsiyalashgan (birlashgan) modellashtirish tilida
(UML - Unified Modeling Language) aniqlangan diagrammalardan foydalanilgan
(Rumbaugh, Jacobson va Booch 2004; Booch, Rumbaugh va Jacobson 2005), bu
ob'ektga yo'naltirilgan modellashtirish uchun standart tilga aylandi. UML 13 ta
diagramma turiga ega va shuning uchun har xil turdagi tizim modellarini yaratishni
qo'llab-quvvatlaydi. Ammo, o‟tkazilgan so‟rov natijalariga ko‟ra (Erickson va
Siau, 2007) UML foydalanuvchilarining aksariyati beshta diagramma turi
tizimning zaruriy ma'lumotlarini ifodalashi mumkinligini ta‟kidlashgan. Shunga
ko‟ra UML diagrammalarining ushbu beshta turini ko‟rib chiqamiz:
5-mavzu
Ma‟ruzachi: Xidirova Charos Murodilloyevna
1.
Faoliyat diagrammalari (activity diagrams), jarayonlarda yoki
ma'lumotlarni qayta ishlashda ishtirok etadigan faoliyatlarni ifodalaydi.
2. Ishchi diagrammalar (use case diagrams), tizim va uning tashkil
etuvchilari o‟rtasidagi o'zaro ta'sirini ifodalaydi.
3. Ketma-ketlik diagrammalari (sequence diagrams), tizimga ta‟sir etuvchi
sub‟yekt va tizim o'rtasidagi o'zaro aloqani va tizim tarkibiy qismlari o'rtasidagi
o'zaro aloqani ko'rsatadi.
4. Sinf diagrammalar (class diagrams), tizimdagi ob'ekt sinflarini va ushbu
sinflar o'rtasidagi bog'liqlikni ko'rsatadi.
5. Holat diagrammalari (state diagrams), tizimning ichki va tashqi
hodisalarga qanday munosabatda bo'lishini ko'rsatadi.