Diagram případu užití Use Case Diagram 1
Případyužití Případy užití se orientují na chování systému z vnějšího pohledu. Případ užití popisuje funkci poskytovanou systémem, která přináší viditelný výsledek pro aktora. Aktorreprezentuje libovolnou entitu, která je se systémem v interakci (uživatel, jiný systém, fyzické okolí systému). 2
Případy užití Případ užití popisuje chování systému tak jak je viděno z pohledu aktora. Aktořiinicializujípřípad užití, aby zpřístupnili funkcionalitu systému. Případ užití může iniciovat jiné případy užití a také získat více informací od aktorů. Když aktořia případy užití si vyměňují informace, říkáme, že komunikují. 3
Řídící systém mimořádných událostí Aktoři terénní pracovník, dispečer. Terénní pracovník zaznamenává událost pomocí počítače (wifi) do databáze. Dispečer vizualizuje aktuální stav události, a aktuální stav policejních a požárních aut a přiděluje zdroje (techniku, lidi). 4
Navigační databáze Hlášení mimořádné události Terénní pracovník Otevření mimořádné události Dispečer Přidělení zdrojů Terénní pracovník vyvolává (spouští) případ užití Hlášení mimořádné události. Tím informuje dispečera o nové mimořádné události. Odpovědí dispečera je vyvolání případu užití Otevření mimořádné události, aby událost zaznamenal a inicioval zpracování události. Dispečer získá předběžné informace o události z hlášení mimořádné události z databáze a přidělí další jednotky k řešení události tj. případ užití Přidělení zdrojů. 5
Textová reprezentace případu užití Atributy případu užití: Jméno - jedinečné Zúčastnění aktoři(jsou v interakci s případem užití) Vstupní podmínky pro inicializaci případu užití 6
Jméno případu užití Zúčastnění aktoři Hlášení mimořádné události Iniciace terénním pracovníkem, komunikace s dispečerem Tok událostí 1. TP aktivuje Hlášení mimořádné události. 2. IS odpoví formulářem k vyplnění. 3. TP vyplní formulář, stupeň důležitosti, typ, lokace,popis situace. Také popis nutných zdrojů. Odeslání formuláře. 4. IS obdrží formulář a informuje dispečera. 5. Dispečer vyhodnotí získané informace a vytvoří nový Incident v databázi pomocí případu užití Otevření mimořádné události. Dispečer vybere odpověď (akci). 6. IS potvrdí dispečerovi vybranou odpovědí. Vstupní podmínky Výstupní podmínky Požadavky kvality TP se přihlásí do IS. TP obdrželpotvrzení své zprávy a vybranou odpověď od dispečera, nebo dostal vysvětlení proč nebyla transakce zpracovaná. Zpráva od TP je potvrzena do 30 sekund. Vybraná reakce přijde do 30 sekund od odeslání dispečerem. 7
Vztahy komunikace Aktořia případy užití komunikují, když jsou mezi nimi vyměňovány informace. Komunikační vztahy jsou vyjádřeny plnými čarami mezi aktory a případy užití. Komunikační vztahy mezi aktorya případy užití se používají k naznačení (symbolizování) přístupu k funkcionalitě. 8
Vztah include Při popisu složitého systému model případu užití je také složitý a obsahuje nadbytečnosti (zbytečné opakování). Ke snížení složitosti modelu identifikujeme společné věci v různých případech užití. např. dispečeru se po stisknutí dané klávesy zobrazí mapa ulice to je možné modelovat případem užití Zobraz mapu, který je začleněn do Otevření mimořádné události. 9
Dva případy užití jsou propojeny vztahem (relací) include, znamená, že používají další případ užití. Vztah include se značí čárkovanou čarou, s popisem include a se šipkou označující která případ užití používá jiný případ užití. 10
Vztah extend Vztah extend představuje alternativní prostředkyke snížení složitosti modelu případu užití. Případ užití může rozšířit jiný případ užití přidáním událostí. Vztah extend naznačuje, že instance rozšířeného případu užití zahrnuje (za daných podmínek) chování specifikované rozšířeným (extended) případem užití. 11
Vztah extend Typickým příkladem pro vztah extend je specifikace výjimečného chování (exceptional behaviour). Např. síťové spojení dispečera a TP může být přerušeno kdykoli. (TP vjede do tunelu). Případ užití ConnectionDown popisuje množinu událostí, které provede systém, když je spojení přerušeno. 12
Případ užití ConnectionDown rozšiřuje případy užití Otevření mimořádné události a Přidělení zdrojů. Oddělením zpracování výjimky nám dovolí psát efektivnější, přehlednější a kratší kód. Čárkovaná čára směřující od výjimečného případu užití ke standardním případům užití. 13
Jméno případu užití Zúčastnění aktoři ConnectionDown Terénní pracovník, dispečer Tok událostí --- Vstupní podmínky Tento případ užití rozšiřuje (extends) případy užití Otevření mimořádné události a Přidělení zdrojů. Je iniciován systémem, když je ztraceno síťové spojení mezi dispečerem a terénním pracovníkem. Výstupní podmínky --- 14
Rozdíl mezi vazbami includea extend Rozdílem je umístění závislosti. Předpoklad, máme další nové případy užití pro dispečera, např. AktualizaceIncitentu, RelokaceZdrojů. Pokud bychom modelovali případ užití ConnectionDownpomocí include, oba nové případy užití musí vědět o include případu užití ConnectionDown. 15
Rozdíl mezi vazbami includea extend Při použití vazby extendpro ConnectionDown, modifikovaný musí být pouze ConnectionDown, aby pokryl dodatečné případy užití. Vyjímečnépřípady jsou většinou modelovány pomocí vazby extend. Případy užití, které popisují všeobecné chovánísdílené množinou případů užití, jsou modelovány s vazbou include. 16
Vztah dědičnosti Vztah dědičnosti je třetím mechanismem pro snížení složitosti modelu. Jeden případ užití může specializovat jiný všeobecnější případ užití. V našem případě, TP je žádán, aby se autentikoval před vstupem do IS. Autentizacese popsána jako všeobecný případ užití, který se může dále specializovat. 17
Autentizace potvrzení pravosti Zjemněníčinnosti zahrnuje autentizaci heslem nebo autentizaci kartou. 18
Jméno případu užití Autentizace s kartou Zúčastnění aktoři Tok událostí Zděděni z případu užití Autentikace 1. TP vloží svoji kartu do rerminálu. 2. Terminál potvrdí kartu a žádá o číslo PINu. 3. TP vloží číslo svého PINu. 4. Terminál zkontroluje PIN s pinem na vložené kartě. Pokud se PINyshodují, je TP autentizován. Jinak terminál odmítne vstup. Vstupní podmínky Zděděné z Autentikace-případu užití Výstupní podmínky Zděděné z Autentikace-případu užití 19
Vazbymezi případy užití Všimněte si, že vazby extend a dědičnosti (inheritance) jsou odlišné. Ve vazbě extend, každý případ užití popisuje odlišný tok událostí k dokončení odlišného úkolu. Ve vazbě dědičnosti, případy užití popisují stejný tok událostí k dokončení společného úkolu. 20
Scénáře Případ užití je abstrakce, která popisuje všechny možné scénáře zahrnující popisovanou funkcionalitu. Scénář je instance případu užití, popisující konkrétní množinu akcí. Scénáře jsou používány jako příklady pro ilustraci společných případů; jejich záměrem je srozumitelnost. 21
Scénáře Scénář standardně popisujeme pouze tři pole: jméno zúčastnění aktoři tok událostí Vstupní a výstupní podmínky se používají v případech užití, které jsou abstrakcemi scénářů. 22
Jméno scénáře Zúčastněné instance aktorů Tok událostí Hoří velkosklad Josef, Alena: terenní pracovníci Jan: Dispečer 1. Josef během řízení zpozoroval kouř přicházející z velkoskladu. Alena aktivovala Hlášení momořádné události. 2. Alenavložila adresu budovy, krátký popis místa a úroveň mimořádné události. Žádala hasičské jednotky. Odeslala zprávu a čeká na potvrzení. 3. Dispečer Jan byl upozorněn na mimořádnou událost akusticky. Obdržel informace od Aleny a potvrdil jejich příjem. Alokoval dvě požární jednotky a zaslal odhadovaný čas jejich příjezdu Aleně. 4. Alena obdržela potvrzení o přijetí její zprávy a předpokládaný čas příjezdu hasičů. 23
Diagram tříd Diagram tříd popisuje strukturu systému v termínech tříd a objektů. Třídyjsou abstrakce, které specifikují atributy a chování množiny objektů. Diagram objektů se liší od diagramu tříd: název objektu je podtržený, datové atributy jsou konkrétní. 24
Diagram tříd-třídy, které se zúčastní v případu užití: Hlášení mimořádné události. Asociace mezi třídami, kardinality a role. 25
Diagram objektů, uvedeny pouze konkrétní vztahy. Linky mezi objekty. 26
Asociace a linky (spojení) Link(spojení) reprezentuje spojení dvou objektů. Asociacejsou relace (vztahy) mezi třídami a tedy reprezentují skupinu linků viz předchozí obrázky. 27
Navigace-směrování Jednosměrná asociace. Navigace směrem od Mnohoúhelníku k Bodu znamená, že pouze Mnohoúhelník zná bodu, ze kterých je složen. Bod neví do kterého Mnohoúhelníku patří. 28
Asociační třída Asociace jsou podobné třídám tím, že mohou mít také k sobě připojené atributy a operace. 29
Asociační třída Asociační třída se také může převést na klasickou třídu s jednoduchými asociacemi. 30
Rolea kardinality(násobnosti) Role na každém konci asociace může být označení role. Kardinality: je uvedeno na koncích asociace one-to-one one-to-many (1..n, 0..n) many-to-many. 31
32
Přidáním kardinalityk asociacím, zvyšujeme množství informací, které získáme z aplikace nebo domény řešení. Specifikace kardinalit asociací se stává kritickou, když určujeme, který případ užití je nutný k manipulaci s aplikačními doménovými objekty. Např. souborový systém je tvořen adresáři a soubory. Adresář může obsahovat jakýkoli počet Prvků Souborového Systému. V případě striktně hierarchického systému, Prvek Souborového Systému je součástí přesně jednoho adresáře, což označíme jako one-to-many. 33
Avšak v případě, že Soubor nebo Adresář může být současně částí více než jednoho adresáře, musíme reprezentovat agregaci PrvkuSouborovehoSystemudo Adresářů jako asocoaci many-to-many. 34
Agregace Asociace se používají pro široký rozsah spojení mezi objekty. Speciálním případem asociace je agregace. Agregace představuje volnou vazbu mezi celkem a jeho částmi. 35
Kvalifikace Kvalifikaceje technika ke snížení kardinalit (násobnosti) pomocí klíčů. Asociace 0..1 nebo 1 je snazší než 0..n, 1..n. Často v případě asociace 1..n, mohou objekty na straně many rozlišeny od jiných přidáním jména. Každý soubor je jednotně identifikován podle jména souboru. 36
Kvalifikace Vztah mezi adresářem a souborem se nazývá kvalifikovaná asociace. bez kvalifikace Adresar 1 * Soubor jmenosouboru s kvalifikací Adresar jmenosouboru 1 0..1 Soubor 37
Dědičnost Vyjádření vztahů nadtříd a podtříd, datové atributy, metody. 38