OOT Objektově orientované technologie

Podobné dokumenty
OOT Objektově orientované technologie

Požadavky Modelování případů užití

OOT Objektově orientované technologie

Objektově orientované technologie Logická struktura systému Objektový diagram. Pavel Děrgel, Daniela Szturcová

Objektově orientované technologie. Daniela Szturcová

Objektově orientované technologie Business proces Diagram aktivit. Daniela Szturcová

7.2 Model použití (jednání) (Use Case)

Objektově orientované technologie. Daniela Szturcová

Objektově orientované technologie Dynamický náhled Sekvenční diagram (Realizace UC) Daniela Szturcová

Jazyk UML - přehled. diagram hierarchie procesů. IS firmy. podpora řízení. evidence zaměstnanců. pokladny. výroba. diagram procesních vláken

Pokročilé typové úlohy a scénáře 2006 UOMO 71

Objektově orientované technologie Diagram komponent Implementační náhled (Diagram rozmístění) Pavel Děrgel, Daniela Szturcová

Systémová analýza a návrh. Zbyněk Ungermann, UNG května 2011

Objektová tvorba SW, Analýza požadavků 2006 UOMO 53

UML úvod. Zdroje: Kanisová Hana, Müller Miroslav: UML srozumitelně, Computer Press 2007

7.2 Model použití (jednání) (Use Case)

Požadavky Pokročilé modelování případů užití

Objektově orientované technologie. Daniela Szturcová

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika

Modelování požadavků

Use case - management skladu

3 druhy UML diagramů

PŘÍLOHA C Požadavky na Dokumentaci

Informační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování.

Objektově orientované technologie Dynamický náhled Stavový diagram. Pavel Děrgel, Daniela Ďuráková

TÉMATICKÝ OKRUH Softwarové inženýrství

Návrh IS - UML. Jaroslav Žáček

Modelování informačních systémů s využitím jazyka UML. Jaroslav Šmarda

Návrh IS - UML. Jaroslav Žáček

Principy UML. Clear View Training 2005 v2.2 1

Metodika analýzy. Příloha č. 1

UML. Unified Modeling Language. Součásti UML

Případy užití (use case) Projektování SW systémů

EXTRAKT z mezinárodní normy

Analýza a modelování dat. Helena Palovská

Procesní přístup k projektům informačních systémů. RNDr. Vladimír Krajčík, Ph.D.

TREND POPIS ODPOVĚDNOSTI PRACOVNÍKA MANAŽER VÝVOJE

Jak správně psát scénáře k případům užití?

Obsah. Zpracoval:

Národní ITS architektura a telematické aplikace

OBSAH 1. ÚVOD STRUKTURA A ÚROVNĚ PROCESNÍHO MODELU KONVENCE PRO MODELOVÁNÍ PROCESŮ KONVENCE PRO MODELOVÁNÍ ORGANIZAČNÍCH STRUK

Roční periodická zpráva projektu

Allegro účetnictví. Schéma účetního modulu. Podstatné vlastnosti. Allegro Business Solution Účetnictví

Internetový obchod Mironet

Inspirace pro seminární práci předmětu Techniky a CASE nástroje vývoje IS

7.6 Další diagramy UML

[XXX-PUB] Návrh uživatelského rozhraní pro ovládací panel v restauracích The PUB

Modelování procesů (2) Procesní řízení 1

7.6 Další diagramy UML

1. Dědičnost a polymorfismus

Ruční návrh Připravíme si odpovědi na základní otázky Co chceme řešit (projektovat) a proč Komu to bude sloužit Jaký užitek z toho bude mít uživatel I

Modelování řízené případy užití

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze

Karta předmětu prezenční studium

DBS Konceptuální modelování

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda

Diagram případu užití. Use Case Diagram

Objekty, třídy, vazby 2006 UOMO 30

Softwarové inženýrství

SYSTÉM PRO DRAŽBU ZNÁMEK

Vývoj IS - strukturované paradigma II

Příloha: Dodatečné informace, včetně přesného znění žádosti dodavatele o dodatečné informace

Úvod do principů objektově orientovaného programování

Diagram nebo text? Miroslav Benešovský, BenSoft s.r.o

Využití SysML pro tvorbu modelů v systémovém inženýrství

Úvodní studie (pokraov

MINISTERSTVO FINANCÍ ČESKÉ REPUBLIKY

Infrastruktura UML. Modelování struktury v UML. Superstruktura UML. Notace objektů. Diagramy objektů

OOT Objektově orientované technologie

Od strategie rozvoje školy k plánování ICT služeb ve škole

RUP - Disciplíny. Jaroslav Žáček jaroslav.zacek@osu.cz

Novinky v UML 2.5 a agilní modelování

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19

Diagram tříd (class diagram)

UML - opakování I N G. M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

Databázové patterny. RNDr. Ondřej Zýka

Jiří Mašek BIVŠ V Pra r ha

Communist Party of Nepal (Unified Marxist-Leninist) Unified Modeling Language University of Massachusetts Lowell User-mode Linux.

Databázové patterny. MI-DSP 2013/14 RNDr. Ondřej Zýka,

Dědičnost. Časová náročnost lekce: 3 hodiny Datum ukončení a splnění lekce: 23.března

Model případu užití. Martin Komárek

EXTRAKT z mezinárodní normy

Univerzita Pardubice. Fakulta elektrotechniky a informatiky SEMESTRÁLNÍ PRÁCE Z IWWW

SQL - trigger, Databázové modelování

Unifikovaný modelovací jazyk UML

Akceptace karet v dopravě

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz

ZÁKLADNÍ POPIS INFORMAČNÍHO SYSTÉMU KAJOT EASY-K

SOFTWAROVÉ INŽENÝRSTVÍ 1

PRAVIDLA KREDITNÍHO SYSTÉMU Sdružení JM-Net

Objektové programování

ROZDÍL MEZI VZTAHEM EXTEND A INCLUDE V USE CASE DIAGRAMECH

7.5 Diagram tříd pokročilé techniky

Evidence požadavků uživatelů bytů a nebytových prostor

Modelování procesů s využitím MS Visio.

7.4 Diagramy interakce (základy)

Virtuální metody - polymorfizmus

Transkript:

OOT Objektově orientované technologie Požadavky a případy užití Daniela Szturcová, Pavel Děrgel Institut geoinformatiky, HGF

Osnova Systém Uživatelé Případy užití Vazby (asociace, generalizace, include a extend) Shrnutí

Modelování případů užití Jedná se o způsob zachycení případů, kdy systém používá některý uživatel. Cílem je: Nalezení hranic systému. Nalezení uživatelů. Nalezení případů užití. Výsledkem je specifikace toho co systém umí (bude umět) a seznam uživatelů, kteří tyto funkce využívají.

Co jsou případy užití Mají ukázat, jaké jsou typické interakce mezi uživateli (kdo/co) a systémem. Jedná se o příběhy užití systému.

Co jsou případy užití Ukazují kdo a jak bude systém používat. Jaké funkce by měl nabízet. Jací uživatelé s ním budou pracovat. Zachycuje systém z pohledu zákazníka a jeho požadavků. Lze je aplikovat na nejrůznější typy systémů (nejen softwarové).

Co jsou případy užití - scénář Zákazník přistoupí k nápojovému automatu, zvolí si požadovaný nápoj, vhodí mince do otvoru. Automat zkontroluje obnos. Nápoj vypadne ze zásobníku, zákazník si nápoje odebere. Co když obnos nestačí? Co když došly nápoje? Jaký je cíl zákazníka?

Scénář případu užití UC:PlatitDaňZPřidanéHodnoty ID: UC1 Stručný popis: Na konci fiskálního čtvrtletí zaplatit daň finančnímu úřadu. Hlavní aktéři: Čas Vedlejší aktéři: Finanční úřad Vstupní podmínky: 1. Je konec fiskálního čtvrtletí? Hlavní scénář: 1. UC začíná, je-li konec fiskálního čtvrtletí. 2. Systém zjistí částku, kterou je třeba zaplatit finančnímu úřadu. 3. Systém odesílá elektronickou platbu finančnímu úřadu. Následné podmínky: 1. Finanční úřad přijímá DPH ve správné výši. Alternativní scénáře:

Scénář případu užití Hlavní užitečný scénář. Postupné kroky k dosažení cíle. Diskuze k alternativním případům: Mohla by nastat změna v nějakém kroku? Mohlo by se něco pokazit? Rozšíření, vložení alternativ.

Proč jsou případy užití důležité? Nástroj pro komunikaci s uživateli. Cílem je zapojit budoucí uživatele do analýzy a návrhu systému. Zvyšuje úspěšnost tvorby systému.

Základní pojmy Uživatel (Aktor) člověk nebo jiný systém, který vystupuje v určité roli a interaguje se systémem. Případ užití (UseCase) popisuje činnost (nebo množinu činností), které poskytují uživateli nějakou službu. Vazby popisují vztah mezi uživatelem a případem užití, nebo mezi dvěma uživateli (popř. dvěma případy užití). Hranice systému definuje co je a co není součástí systému.

Hranice systému Definuje co je a co není součástí systému je znázorněna např. jako rámeček s názvem systému účastníci stojí mimo rámeček případy užití stojí uvnitř

Nalezení účastníků Účastník specifikuje roli, kterou určitá externí entita přijímá v okamžiku, kdy začíná daný systém využívat. Jsou to role, které hrají externí subjekty při používání systému: lidé, jiné systémy, čas.

Účastníci (aktéři) Účastníci jsou externí subjekty, ale systém může udržovat určitou interní reprezentaci některých účastníků (identifikace, přístup do systému...). Účastníkem může být i čas (tam, kde některé činnosti probíhají automaticky v určitém čase).

Vyhledání účastníků Zvažujeme: Kdo nebo co daný systém používá? Jaká je role při komunikaci se systémem? Pomohou odpovědi na otázky: Kdo nebo co používá daný systém? Jakou roli v této interakci hraje? Kdo instaluje systém? Kdo spouští a vypíná systém? Jaké další systémy spolupracují se systémem? Děje se něco v určitou dobu?

Vyhledání účastníků Je nezbytné pamatovat na tyto body: účastníci stojí mimo systém nejsou tedy pod naší kontrolou, účastníci komunikují přímo se systémem to napomáhá stanovení hranice systému, účastnící představují role hrané externími subjekty, nejsou to tedy přímo tyto subjekty, jeden externí subjekt může hrát i více rolí.

Vyhledání účastníků Každý účastník musí mít krátký výstižný název, srozumitelný všem. Každý účastník musí mít krátký výstižný popis (jeden až dva řádky), popisující jeho roli při užívání systému.

Účastníci (aktéři) Aktér Zákazník Dispečer Administrátor systému Zaměstnanec Řidič Význam Kdokoli, kdo si rezervuje či zakoupí jízdu taxíkem od fy XY. Zaměstnanec operátor, který je zodpovědný za evidenci údajů o rezervacích, zaměstnancích a vozidlech. Speciální uživatel systému, který spravuje systém TaxiS (práva ostatních uživatelů, zavedení nového uživatele, ap.). Zaměstnanec podílející se na činnostech spojených s taxislužbou a fungováním systému TaxiS. Zaměstnanec - řidič, který se zákazníkem a vozidlem vykoná jízdu.

Co je to UseCase? UseCase je funkce systému, kterou uživatel požaduje (případ užití). UseCase je vždy spuštěn uživatelem: primární uživatel spouští UseCase, 0 nebo více sekundárních uživatelů se mohou účastnit jednoho případu užití. UseCase se vždy zapisují z pohledu uživatele. Objednat ZjistitStav Objednávky

Hledání UseCase Začátek - seznam uživatelů, kteří budou se systémem pracovat. Pomohou další otázky: Jaké funkce jednotliví uživatelé od systému očekávají? Co se stane, když se změní stav systému? Jsou o tom uživatelé informováni? Existují nějaké vnější události, které ovlivňují systém? Komunikuje systémem s jiným systémem? Produkuje systém nějaké výstupy?

Diagramy případů užití

Zobecnění aktérů Potomka můžeme dosadit všude tam, kde lze očekávat jeho předka.

Zobecnění aktérů Potomek přebírá od předka.

Zobecnění aktérů

Zobecnění případů užití Odvozené případy užití mohou: dědit funkce a vlastnosti od svých předků, přidávat nové funkce a vlastnosti, překrývat (měnit definici) zděděných funkcí a vlastností. Odvozený případ užití automaticky dědí všechny funkce a vlastnosti předka.

Zobecnění případů užití

Relace «include» (vložení) Vkládaný prvek je nutný pro existenci vkládajícího. Vkládaný prvek je obvykle opakující se rutina.

Relace «include»

Relace «extend» (rozšíření) Vkládaný prvek je volitelný. Doplňuje (rozšiřuje) chování základního případu užití.

Model jednání Model jednání se skládá: diagram případů užití, slovní scénář pro každý případ užití, podmínky. 1. Otevření aplikace 2. Výběr typu transakce 3. Volba účtu 4. Vložení popisu transakce, částky 5. Potvrzení správnosti 6. Zaúčtování

Model jednání Zabývá se podrobnější specifikací identifikovaných případů užití. Výstupem jsou podrobnější případy užití. Skládá se alespoň z názvu a specifikace případu užití. Může (nepovinně) obsahovat i stručný popis.

Model jednání (formálně)

Scénář případu užití UC: RealizovatJizdu ID: UC4 Stručný popis: Zakaznik nastoupí do vozidla na místě nástupu, v cíli jízdy mu Ridic vypočte cenu za jízdu, Zakaznik zaplatí. Hlavní aktéři: Zakaznik Vedlejší aktéři: Ridic Vstupní podmínky: Ridic s Vozidlem je na místě nástupu. Zakaznik požaduje odvézt z místa nástupu do cíle. Hlavní scénář: 1. Zakaznik na místě nástupu nastoupí do připraveného vozidla. 2. Ridic nastaví sazbu dle nejvhodnějších podmínek pro Zakaznika. 3. Ridic jede po optimální trase do cíle zadaného Zakaznikem. 4. V cíli Ridic vypočte cenu za Jizdu. 5. Zakaznik zaplatí vypočtenou cenu. Následné podmínky: Ridic s Vozidlem je na místě cíle a je uvolněn k další Jizde. Alternativní scénáře:

K čemu je to všechno dobré? Případy užití jsou důležité pro úvodní etapu analýzy problému, návrh uživatelského rozhraní systému, komunikaci se zadavatelem a budoucími uživateli (je to součást zadání), vývojáře, testování výsledného systému, ověření zda výsledný systém odpovídá zadání.

Kdy tvořit případy užití? UseCase je vhodný nástroj pokud: Existuje hodně funkčních požadavků na systém. Systém má mnoho uživatelů. Systém má mnoho rozhraní pro komunikaci. UseCase se nedoporučuje pokud: Systém poskytuje jednu nebo jen malý počet funkcí. Se systémem pracuje jeden uživatel. Systém nabízí málo rozhraní.

Shrnutí Specifikace požadavků vytváří představu o nárocích na systém. Případy užití popisují, jak budou se systémem pracovat jeho budoucí uživatelé a jaké funkce bude systém nabízet. Hranice systému je jasně definována. Případy užití mohou být vkládány do jiných nebo rozšiřovány.

Použité zdroje Tom Pender.: UML Bible. Jim Arlow, Ila Neustadt.: UML2 a unifikovaný proces vývoje aplikací. Materiály Pavla Děrgela.

Děkuji za pozornost