P6a: Podmienky a ohraničenia v modeloch: OCL (dodatok)

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Dodatok k prednáške o OCL ukazuje, ako sa výrazy zadávajú a hľadajú v nástroji Enterprise Architect, ktorého ovládanie je podľa prednášajúceho zložité a nástroj nekontroluje sémantickú správnosť výrazov, iba syntax. Na modeli objednávok je predvedený invariant pri triede Order (nulová cena implikuje, že objednávka nemôže byť odoslaná), ktorý sa zadáva v dialógu Constraints po dvojkliku na triedu. Po oprave modelu, kde chýbal atribút price, sa cez bodkovú konvenciu pristupuje k agregovaným objektom. Pri operácii dispatch order sa ukazujú predpoklady a dôsledky v paneli Operation properties a dôležité je, že názvy sa viažu na kontext prvku, ku ktorému sa podmienka pripája. V budúcom týždni majú študenti na cvičenie priniesť aspoň jeden vlastný OCL výraz, pričom dôležitá je aktivita a spolupráca, nie známkovanie.

  • - Invarianty sa uvádzajú pri type, najčastejšie pri triede; v Enterprise Architecte sa zadávajú dvojklikom na triedu v dialógu Constraints.
  • - Príklad invariantu: price.value = 0 implies not dispatched, teda objednávka s nulovou cenou nesmie byť odoslaná.
  • - Enterprise Architect kontroluje len syntax OCL výrazov, nie ich zhodu s modelom, preto môže chýbajúci atribút zostať nepovšimnutý.
  • - K agregovaným objektom a atribútom sa v OCL pristupuje bodkovou konvenciou.
  • - Predpoklady a dôsledky operácií sa nachádzajú v paneli Operation properties, v časti Pre-post, kde ich treba rozbaliť.
  • - Názvy vo výraze sa viažu na kontext prvku (napr. parameter operácie), ku ktorému je podmienka pripojená.
  • - Podmienka musí byť vyhodnotiteľná na true alebo false; niektoré výrazy vracajú namiesto toho zoznam prvkov.
  • - Na budúcom cvičení majú študenti predstaviť aspoň jeden vlastný OCL výraz; hodnotí sa aktivita a spolupráca, nie správnosť.

Zhrnutie pripravené s pomocou AI z prepisu videa.