Avto salon uchun uml diagramma


Download 72.01 Kb.
Sana17.06.2023
Hajmi72.01 Kb.
#1535304
Bog'liq
Avto salon uchum Uml diagramma




AVTO SALON UCHUN UML DIAGRAMMA


TOPSHIRDI: Abdujalilov J.
QABUL QILDI: Mo’minov K.

Malumot sifatida quyidagi sinf diagrammasini oling. U avtosalondagi ba'zi shovqinlarni modellashtiradi. Avtosalon ixtiyorida sotiladigan bir nechta avtomobil bor, chunki u sotuvchilar va xaridorlarni narx bo'yicha kelishib olgandan keyin bog'laydi. Bir kishi sotuvchi va / yoki xaridor bo'lishi mumkin. Avtomobillar xizmat ko'rsatishga ham borishlari mumkin, demak, agar ular ta'mirlashga muhtoj bo'lsa, ular avtosalonga tegishli avtoulov ustaxonasiga yuboriladi.


UML diagrammasi domenning ba'zi xususiyatlarini modellashtirmaydi. OCL yordamida ularni aniqlashga harakat qiling:


[1] Mashina sotilganda (sot() operatsiyasiga qo'ng'iroq qilish orqali), avtosalondagi ixtiyordagi avtomobillar soni operatsiyani bajarishdan oldin umumiy raqamdan past bo'lishi kerak.


[2] Qonunchilikka yangi qonun kiritildi, unda faqat 1.1.1982 yilgacha tug'ilganlar SPORT rusumli avtomobilga ega bo'lishlari mumkin.
[3] toService() operatsiyasi bajarilgandan so'ng, avtomobil uchun faol xizmat mavjud bo'lishi kerak, shuningdek, xuddi shu xizmat avtomobil ustaxonasi bilan bog'langan bo'lishi kerak.
  1. context Car::sell():void post: self.belongingTo.atDisposal()->size()< self.belongingTo.atDisposal()->size()@pre





  1. context Car inv:

def limitDate:String = “1.1.1982” self.carType::SPORT implies (self.owner.dateOfBirth < limitDate.oclAsType(Date))


Eslatma: OCLda "Sana" klassi yo'q, lekin amalga oshirishga bog'liq


Endi qiyin jihat (ma'ruza davomida ko'rganimizdek, yozuvdan tashqari):




context Person inv:


def limitDate:String = “1.1.1982”

self.dateOfBirth < limitDate.oclAsType(Date) implies self.carType::SPORT


Belgilanishdan (ko'rsatilgan misolda noto'g'ri ... Car::carType::SPORT degan ma'noni anglatadi), bu to'g'ri, lekin bu boshqa cheklov turi. 1.1.1982 yilgacha tug'ilgan shaxs turidagi barcha misollarda SPORT rusumli avtomobil borligini xabar qilamiz! (lekin [2] o'qisangiz, bu yerda gap shundaki, faqat 1.1.1982 yilgacha tug'ilganlar SPORT avtomobiliga ega bo'lishlari mumkin (shuning uchun cheklov turiga bog'liq), agar xohlasalar, boshqa turdagi mashinalarga ham egalik qilishlari mumkin! ( bu cheklov bilan biz bunga ruxsat bermaymiz)


  1. context Car::toService() post: self.activeService <> oclVoid AND self.activeService.servicingWorkshop <> oclVoid




E'tibor bering, UML diagrammasidan biz faol xizmat ko'rsatish va xizmat ko'rsatishWorkshop barcha munosabatlaridagi asosiylik 1-1 ekanligini aniqlashimiz mumkin. Agar siz ularni to'plam deb hisoblasangiz, keyin tekshirasiz
activeService->size()>0 and activeService->select(m | id > 0)-

>servicingWorkshop-> notEmpty()


Download 72.01 Kb.

Do'stlaringiz bilan baham:




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