1 PB007: Use Case Diagram II, Textová špecifikácia Martin Macák 2 Dnešný harmonogram 3 Dedičnosť aktérov ̶ Vzťah medzi obecným a špecializovaným aktérom. ̶ Slúži na zjednodušenie diagramu. ̶ Obecný aktér je často abstraktný (nie je to skutočná rola). ̶ Špecializovaný aktér dedí všetky role a väzby rodiča. ̶ Všade, kde sa očakáva rodičovský aktér, dá sa dosadiť potomok. 4 Dedičnosť aktérov – Príklad 5 Dedičnosť prípadov užitia ̶ Vzťah medzi obecným a špecializovaným prípadom užitia. ̶ Špecializovaný prípad užitia môže zdediť vlastnosti, pridať nové alebo preťažiť (zmeniť) zdedené vlastnosti. ̶ Väzby a body rozšírenia sa nedajú preťažiť. ̶ Zmeny by mali byť jasne označené v textovej špecifikácii. ̶ Rodičovský prípad užitia je odporúčané mať abstraktný. ̶ Nebude mať špecifikovaný tok udalostí. 6 Dedičnosť prípadov užitia – Príklad PB007 Softwarové inženýrství I - Use Case Diagram II, Textová specifikace7 Include ̶ Špeciálny prípad vzťahu. ̶ Umožňuje vyčlenit spoločné, opakujúce sa, časti prípadov užitia. ̶ Vyčlenený prípad užitia je neoddeliteľnou súčásťou základného. 8 Include 9 Extend ̶ Špeciálny prípad vzťahu. ̶ Umožňuje vložit nové chovanie do základného prípadu užitia. ̶ Vkladá sa na definovaných bodoch rozšírení (extension points). ̶ Rozširujúce prípady užitia sa viažu na body rozšírení. 10 Extend 11 Textová špecifikácia prípadu užitia ̶ Podrobný popis. ̶ Obsahuje: ̶ názov a ID, ̶ stručný popis, ̶ primárnych a sekundárnych aktérov, ̶ vstupné a výstupné podmienky, ̶ tok udalostí, ̶ alternatívny tok udalostí. 12 Tok udalostí – Hlavný tok ̶ Predstavuje postupnosť krokov interakcie aktérov so systémom v normálnom prípade (bez chýb, prerušení, …) ̶ Zapisujeme: ̶ Začína vždy nejakou akciou primárneho aktéra. ̶ Doporučené je: 1. Prípad užitia začína, keď ̶ Môžete používať kľúčové slová IF, FOR, WHILE 13 Tok udalostí – Príklad 1. Use case starts when Customer opens rental form 2. INCLUDE(Find Available Zeppelins) 3. System displays zeppelins available for rental 4. Customer chooses zeppelin to rent 5. WHILE form is not valid 5.1 Customer fills personal information 6. Customer submits the form EXTENSION POINT(NotifyRental) 7. System saves rental request 14 Tok udalostí – Alternatívny tok ̶ Rovnaké pravidlá ako pre hlavný tok. ̶ S tým rozdielom, že predstavuje odchýlky od hlavného toku. ̶ Reprezentácia chýb, prerušení, „nečekaných“ situácií. 15 Aktivita - ZOO 16 Úloha na tento týždeň ̶ Revidujte diagram prípadov užitia a zvážte začlenenie nových konštruktov. ̶ Aspoň jeden include / extend by sa mohlo podariť nájsť. ̶ Vytvorte stručný popis pre prípady užitia. ̶ Vyberte tri prípady užitia a vytvorte k nim textovú špecifikáciu. ̶ Nejaké zložitejšie (2 lepšie si ale nechajte na budúce cviko). ̶ Farebne ich zvýraznite.