1 PB007: Špecifikácia požiadaviek, Use Case Diagram Martin Macák 2 Warmup 3 Je potrebné urobiť presne to, čo sa po nás vyžaduje! ̶ Ako to dosiahnuť? PB007 Softwarové inženýrství I - Specifikace požadavků, Use Case Diagram4 Use Case Diagram Diagram prípadov užitia ̶ Diagram prípadov užitia (Use Case Diagram) je spôsob grafického zachytenia funkčných požiadaviek na systém. ̶ Tvoria ho: ̶ Hranice systému (System boundary) ̶ Aktéri (Actors) ̶ Prípady užitia (Use cases) ̶ Vzťahy / Asociácie (Relationships) 5 Use Case Diagram Diagram prípadov užitia - Príklad 6 Diagram prípadov užitia – Aktéri ̶ Rola, ktorú na seba berie entita (osoba, systém, čas, ...), ktorá priamo komunikuje so systémom. ̶ Vždy externá entita vzhľadom k systému. ̶ Priamo komunikujú so systémom. ̶ Nejde o konkrétne osoby alebo objekty ̶ Konkrétna osoba môže byť súčasne viac aktérov naraz ̶ Aktér musí byť zrozumiteľne pomenovaný 7 Ako identifikovať aktéra? Diagram prípadov užitia – Aktéri ̶ Kto / Čo používa systém? ̶ Akú rolu zohrávajú pri interakcii? ̶ Aké ďalšie systémy spolupracujú s tým naším? ̶ Kto / Čo získava / poskytuje informácie z / do systému? ̶ Dochádza k nejakej pravidelnej udalosti alebo udalosti v čase? 8 Diagram prípadov užitia – Prípady užitia ̶ Popisujú chovanie systému pri interakcii s externými entitami. Sú to činnosti, ktoré aktéri vykonávajú v systéme. ̶ Začínajú akciou aktéra (primárny aktér). Interakcie sa môžu následne zúčastniť aj ďalší aktéri (sekundárny aktér). ̶ Sú písané z pohľadu aktérov, ̶ Názvy sú v tvare slovesnej väzby. 9 Ako identifikovať prípad užitia? Diagram prípadov užitia – Prípady užitia ̶ Aké funkcie požaduje konkrétny aktér od systému? ̶ Ukladá alebo získava systém nejaké dáta? Kto to iniciuje? ̶ Čo sa deje pri zmene stavu systému? Sú o tom aktéri informovaní? ̶ Existujú nejaké externé udalosti, ktoré ovplyvňujú systém? Čo upozorní systém na túto udalosť? 10 Ako modelovať? Diagram prípadov užitia ̶ Doporučený je tento postup: ̶ Vymedziť hranice systému ̶ Nájsť aktérov ̶ Nájsť prípady užitia ̶ Určiť vzťahy medzi nimi ̶ Podrobne špecifikovať prípady užitia 11 Úloha na tento týždeň ̶ Vytvorte zoznam funkčných a nefunkčných požiadaviek ako číslovaný zoznam v špecifikácii hlavného Use Case diagramu. ̶ Funkčné požiadavky roztrieďte podľa užívateľských rolí. ̶ Vymyslite si aspoň 3 nefunkčné požiadavky. ̶ Na základe zoznamu funkčných požiadaviek vytvorte prvotný model prípadov užitia, t.j. aktérov, prípady užitia a väzby medzi nimi. ̶ Hľadajte medzery v špecifikácii projektu a pýtajte sa na informácie, ktoré vám chýbajú. ̶ Vložte ich do diagramu v podobe poznámky (Note). DEADLINE: Štvrtok 23:59:59 (odevzdavárna)