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



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

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

3 druhy UML diagramů

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

OOT Objektově orientované technologie

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

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

OOT Objektově orientované technologie

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

Objektově orientované technologie. Daniela Szturcová

PŘÍLOHA C Požadavky na Dokumentaci

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

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

Rady pro tvorbu USE CASE MODELU, rada první: Jak pracovat s pojmy ve scénářích UC

VYHLEDÁVÁNÍ PRVKŮ ACTOR A PROCESNÍ MODELOVÁNÍ

Unifikovaný modelovací jazyk UML

Test webového prohlížeče v Amazon Kindle Wi-Fi 3G

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

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

Diagram sekvencí (sequence diagram)

Obsah. Zpracoval:

Modelování požadavků

Třetí část odpovědi na mail ohledně zpracování případů užití, aneb jak je to s číslováním pořadí případů užití

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

Základní informace. Modelování. Notace

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

7.6 Další diagramy UML

7.6 Další diagramy UML

Navigace na webových stránkách

Vývojové diagramy 1/7

Čtvrtá část odpovědi aneb jak je to vlastně s interakcí <<include>>

Obecná příručka IS o ISVS

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

Druhá část odpovědi na mail ohledně zpracování případů užití

O JEDNÉ ČASTÉ CHYBĚ PŘI ROZKLADU PROCESŮ PODNIKU ANEB KDY MÁME UKONČIT ROZKLAD PROCESŮ PODNIKU?

Architektura počítačů

Testy do hodin - souhrnný test - 6. ročník

Diagram tříd (class diagram)

Zvyšování kvality výuky technických oborů

ANETE, spol. s r.o. MobilKredit

VÝSTUPNÍ ZPRÁVA Ukázka nové 360 zpětné vazby

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

Stonožka jak se z výsledků dozvědět co nejvíce

Reportní systém MANTIS

Uživatelská příručka pro ředitele škol

Webové služby DPD. Verze

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

Use case - management skladu

Odpověď na dotaz ohledně asociační třídy v modelu měření

Principy OOP při tvorbě aplikací v JEE. Michal Čejchan

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

TESTOVÁNÍ UŽIVATELSKÉHO ROZHRANÍ

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

VÝSTUPNÍ ZPRÁVA Ukázka nové 360 zpětné vazby

TÉMATICKÝ OKRUH Teorie zpracování dat, Databázové a informační systémy a Teorie informačních systémů

IS pro podporu BOZP na FIT ČVUT

Průvodce aplikací FS Karta

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

Tvorba internetových aplikací s využitím framework jquery

MANUÁL VÝPOČTOVÉHO SYSTÉMU W2E (WASTE-TO-ENERGY)

JEDNODUCHÁ A PRAKTICKÁ METODA ODHADU PRACNOSTI PROJEKTU (S UTILITOU KE STAŽENÍ ZDARMA)

Udělá to, proč přišel/najde co hledal? Navštivte nás na adrese

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

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

Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PORTÁL KUDY KAM. Manuál pro editaci ŽS. Verze 1.

Souhrnné výsledky za školu

Jazyk anglický PRŮŘEZOVÁ TÉMATA POZNÁMKY 1A/ 10, 11, 13 1B/ 5, 7 1C/ 1, 3, 4 1D/ 2, 8 1E/ 8

PŘEHLED FUNKCÍ PROGRAMU KROK ZA KROKEM

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

SYLABUS MODUL BUSINESS MODELOVÁNÍ. Doc. RNDr. Vladimír Krajčík, Ph.D.

Elektronické zpracování dotazníků AGEL. Verze

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

Roční periodická zpráva projektu

PALSTAT s.r.o. systémy řízení jakosti PALSTAT CAQ verze Kontakty 08/ Obsah

Projekt laboratorní identifikace Patologie, Cytologie, Biolab

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MS Access propojení relací s formuláři a sestavami Ing.

OSOBA JEDNAJÍCÍ ZA SPRÁVCE ČÍSELNÍKU NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP)

Modul Zásoby IQ sestavy a jejich nastavení Materiál pro samostudium +1170

Projektování informačních systémů - Restaurace

Citace v odborném textu. Jitka Kominácká

Formální úprava závěrečných prací - SOU

Excel tabulkový procesor

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA

UŽIVATELSKÁ PŘÍRUČKA K INTERNETOVÉ VERZI REGISTRU SČÍTACÍCH OBVODŮ A BUDOV (irso 4.x) VERZE 1.0

Zpráva o zhotoveném plnění

TransKlim ver.1.13 Uživatelská příručka pro verzi 1.13

Přehledový manuál aplikace GABVAR (verze )

Písemná práce jak rozumět zadání

UNIVERZITA PARDUBICE

Šumperský efekt rozmnožení případů užití

SOFTWAROVÁ PODPORA TVORBY PROJEKTŮ

Obsah. Úvodem 9. Kapitola 1 Než začneme 11. Kapitola 2 Dynamické zobrazování obsahu 25. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

Excel - pokračování. Př. Porovnání cestovních kanceláří ohraničení tabulky, úprava šířky sloupců, sestrojení grafu

Specializace Návrhář software na základě analýzy vytváří návrh softwarových aplikací ve formě schémat a diagramů.

Vývoj informačních systémů. Přehled témat a úkolů

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

ALGORITMIZACE. Výukový materiál pro tercii osmiletého gymnázia

Česká zemědělská univerzita v Praze. Provozně ekonomická fakulta. Katedra informačních technologií

Transkript:

Univerzita Pardubice Fakulta elektrotechniky a informatiky Případy užití (use case) Projektování SW systémů Matěj Trakal Poslední úprava: 24. ledna 2012, 17:06

INPSW 2011 (Šimerda) OBSAH Obsah 1 Co jsou to případy užití Use case 2 1.1 Specifikace případů užití..................... 2 1.1.1 Modelování hlavních scénářů.............. 2 1.1.2 Hledání alternativních scénářů.............. 2 1.1.3 Modelování vedlejších scénářů............. 3 2 Pohled Jima Arlowa 3 2.1 Případy užití jako doplňková funkce............... 3 3 Pohled Ilji Kravala 3 3.1 Popis, jak psát správně scénáře případů užití......... 4 4 Pojmosloví 5 5 Realizace případů užití 5 5.1 Sekvenční diagramy........................ 6 5.2 Komunikační diagram....................... 6 5.3 Další funkce realizací........................ 6 6 Závěr 6 Matěj Trakal fei.trtkal.net 1

INPSW 2011 (Šimerda) 1 CO JSOU TO PŘÍPADY UŽITÍ USE CASE 1 Co jsou to případy užití Use case Případy užití jsou jeden z druhů jak připravit a dokumentovat požadavky systému. Hlavními cíli případů užití je získání těchto požadavků[6]: Nalezení hranic systému tedy hranic co je ještě náš systém, který tvoříme, vůči okolí a systémům třetích stran, které buďto využívají náš systém, nebo my jejich. Vyhledání aktérů (uživatelů) systému, kteří ovšem nejsou součástí našeho systému a proto se vždy kreslí mimo systém (jsou jeho přímým okolím). Případů užití jsou činnosti, které mohou aktéři se systémem vykonávat. V tomto bodě musíme nalézt hlavní specifikace případů užití a zároveň i vedlejší scénáře. Nalezení slovníku pojmů patří k velice důležitým částem tvorby případů užití, jelikož od něho se dále odvíjí správný postup tvorby modelu. Díky správně použitým slovním spojením dokážeme pomocí tohoto slovníku následně popisovat celé chování systému, aniž bychom používali jakýchkoliv jiných slov. 1.1 Specifikace případů užití Pokud nalezneme požadavky, můžeme se přesunout k tvorbě samotné specifikace případů užití, kde si navrhneme standard znázornění požadavků, který dále používáme po celou dobu práce se systémem. Snažíme se vytvořit jednoduchou, přehlednou a zároveň komplexní specifikaci, která se nám bude dobře používat. 1.1.1 Modelování hlavních scénářů V hlavním scénáři se snažíme popsat celý postup, který systém vykonává. Mezi prvky, které by specifikace měla obsahovat bychom měli zařadit: název, identifikátor, popis případu užití, aktéry, vstupní a výstupní podmínky, samotný scénář (popis kroků) a pokud nalezneme, tak uvést i alternativní scénáře. 1.1.2 Hledání alternativních scénářů Když tvoříme hlavní scénář, mohou nám při jeho vymýšlení vyvstat další otázky a problémy, tím se formují další alternativní (vedlejší) scénáře. Tyto Matěj Trakal fei.trtkal.net 2

INPSW 2011 (Šimerda) 3 POHLED ILJI KRAVALA scénáře přímo nepopisují chod hlavního scénáře, ale vyvstávají z něho. Může se jednat o chyby ke kterým může dojít, o další větvení nebo přerušení hlavního scénáře a nebo o alternativu hlavního scénáře (podobný ale ne shodný scénář). 1.1.3 Modelování vedlejších scénářů Jim Arlow v knize doporučuje alternativní scénáře dokumentovat odděleně. Alternativní scénáře navíc mají stručnější povahu, neobsahují tolik informací. Musí obsahovat, kdo alternativní scénář spustil (hlavní aktér), nebo po kterém kroku hlavního scénáře se do alternativního odbočilo. Pokud se z vedlejšího scénáře vracíme do hlavního (nebývá moc často) musíme opět uvést na který krok hlavního scénáře se vracíme. 2 Pohled Jima Arlowa 2.1 Případy užití jako doplňková funkce Při prvním pohledu působí Jim Arlow tak, že případy užití považuje za doplňkovou formu, jak vyjádřit a popsat požadavky systému. Mezi základní formy řadí dotazníky a konzultace, kterými filtruje potřebné informace od nechtěného šumu, který s aktuálním systémem nemá nic společného respektive je již jeho okolím a nás pro systém přímo nezajímá. Těmito klasickými formami získává funkční a nefunkční požadavky. Ve finále mám za to, že je považuje za velice důležité, ač to tak z počátku nevypadalo. Věnuje jim hodně prostoru a rozebírá je celkem podrobně, jelikož jsou pro další postup plánování vývoje projektu velice důležité. 3 Pohled Ilji Kravala Ilja Kraval pro změnu ve větších IS systémech klade modelu případu užití nezastupitelnou roli. Považuje ho za jeden z velice užitečných nástrojů pro tvorbu vzorů scénářů 1, a dalších důležitých dokumentů, které by jinak vzni- 1 Vzor scénáře: přesný popis, co má scénář obsahovat, v jakém tvaru a jak půjdou prvky za sebou. Vzor je pak závazný a musí se dodržovat (jednotná forma). Jedná se o soupis požadovaných vlastností, které chceme v systému sledovat. Matěj Trakal fei.trtkal.net 3

INPSW 2011 (Šimerda) 3 POHLED ILJI KRAVALA kaly zdlouhavě pomocí konzultací. Mezi hlavní dokumenty, které díky případům užití nalézá jsou: seznam funkcionalit pro vedoucího projektu (seznam nutný pro řízení projektu), uživatelská příručka, funkční specifikace produktu tj. dodatek obchodní smlouvy, dokumenty pro obchodní nabídku, plány testů. 3.1 Popis, jak psát správně scénáře případů užití Mezi články se objevil i jeden, kde vysvětluje, jak správně napsat scénáře. Hlavní problém vidí v tom, jak tvůrce scénářů donutit oprostit se od technických termínů a využívání slov mimo definovaný slovník pojmů (shoduje se v tomto s Arlowem). Analytik, který vznikl z bývalého programátora se nechce potýkat s tím, aby musel následně programátorovi vysvětlovat, jak popis myslel a tak uvádí příliš technických a zbytečných pojmů. Pro ukázku je použito tohoto případu: Listing 1: Ukázka chybného případu užití[4] 6. Uživatel s p e c i f i k u j e referenci na k l i e n t a 6. 1. Uživatel přesune cursor na pole rodné č í s l o k l i e n t a 6. 2. Uživatel zadá kompletní rodné č í s l o a z a j i s t í opuštění pole 6. 2. 1. Systém nalezne unikátního k l i e n t a 6. 2. 2. Systém zobrazí jméno a příjmení k l i e n t a v následujícím p o l i gridu 6. 2. 3. Systém uchová referenci na k l i e n t a 6. 2. 4. Systém posune cursor na položku obchodního zástupce Upozorňuje, že v tomto případě je porušena míra abstrakce a pravidla pojmosloví. Měli by být použity pouze pojmy ze slovníku, který zajisté nebude obsahovat slova jako cursor, grid a další. V tomto případě nejsou užity vzory scénářů, které si předem nadefinujeme jako opakující se akce (editace polí, výběry, vkládání, apod.). Dále uvádí chybné pojmenovávání a změnu větné skladby, kdy by se nemělo používat spojení Systém udělá, ale mělo by se využívat spojení Udělá se. Ve finále by věta měla obsahovat Kdo přesně udělá, co přesně udělá, kdy a kde, aby byla věta popisující událost kompletní. Věta tedy může znít: Podle zadaného rodného čísla se v seznamu klientů nalezne klient. Matěj Trakal fei.trtkal.net 4

INPSW 2011 (Šimerda) 5 REALIZACE PŘÍPADŮ UŽITÍ 4 Pojmosloví Každý autor může používat jiné pojmosloví, kterým vysvětluje obsah modelování. Pokud by se hodně pojmy lišily, mohlo by to čtenáře mást, jelikož by při čtení jiného autora neměl jistotu, že se baví o stejném prvku modelování. Arlow šablony scénářů zákazník aktér model systém akce, událost aktivita případ užití scénář subjekt interakce identifikátor alternativní scénář rozhraní Kraval vzory scénářů zákazník, klient aktér model systém událost aktivita případ užití scénář subjekt interakce identifikátor vedlejší scénář rozhraní Tabulka 1: Srovnání používaných pojmosloví Jak je vidět z tabulky 1, pojmosloví obou autorů je téměř totožné. 5 Realizace případů užití Realizace případů užití[7] přímo navazuje na modelování případů užití a to tak, že si model ověříme zda-li je funkční i v praktickém použití. Model začneme spojovat pomocí zpráv (šipky) dle toho, jak spolu jednotlivé objekty komunikují a navazují na sebe. Vezmeme postupně analytické třídy, které pomocí scénářů testujeme, zda-li je jejich funkce dle daných požadavků. Po otestování z nim následně dle scénáře tvoříme diagramy interakce (sekvenční a komunikační). Každý případ užití má vždy jednu realizaci. Matěj Trakal fei.trtkal.net 5

INPSW 2011 (Šimerda) 6 ZÁVĚR 5.1 Sekvenční diagramy Tento druh diagramu popisuje, v jaké posloupnosti se vykonávají jednotlivé operace s objekty. Máme tedy scénář a ten znázorníme v krocích co se bude dít se kterým objektem. Z každého objektu vystupuje přerušovaná čára života (časová vertikální osa) a na ni se zanáší co se s objektem v čase děje a po jak dlouhou dobu objekt existuje. Pomocí předání zpráv (vodorovné čáry) k jinému objektu a popsání akce vidíme propojení jednotlivých objektů a jejich interakce mezi sebou. Zprávy by se měli používat převážně synchronní (tzn. po ukončení prováděných kroků u jednoho objektu vracíme řízení původnímu objektu, čímž docílíme přehlednosti). Každá zpráva může končit jinou akcí (vytvářecí, mazací, návratová a další typy). Odlišeny jsou zakončovací šipkou, kde dle tvaru se pozná o jaký typ zprávy se jedná a co se s objektem bude dále dít. Sekvenční diagram neobsahuje interakce uživatele, čímž se diagram zjednodušuje. Interakcemi se zabýváme až při samotném návrhu. 5.2 Komunikační diagram Komunikační diagramy jsou překreslené sekvenční diagramy (jsou jejich podmnožinou), které nemají čáry života svislé, ale zobrazují čas pomocí číselného pořadového čísla nad jednotlivými zprávami mezi objekty. Tento diagram je na první pohled méně přehledný, je ovšem přesným zobrazením spolupráce objektů. 5.3 Další funkce realizací V průběhu tvorby realizací případů užití nám vyvstávají další případy užití a nebo jejich doplnění a úpravy. Vznikají tak speciální požadavky, které je třeba zpětně zapracovat do samotné analýzy případů užití a proces opakovat nebo realizaci přepracovat dle potřeby. 6 Závěr Po přečtení potřebné části knihy Jima Arlowa a následném čtení článků Ilji Kravala docházím k závěru, že Arlow podává informace spíše obecněji a snaží se utvořit obecný pohled na věc, díky čemuž vnáší do tématu pro Matěj Trakal fei.trtkal.net 6

INPSW 2011 (Šimerda) 6 ZÁVĚR začátečníka v oboru hodně abstrakce nad tématem, ale zároveň mu utřiďuje myšlenky a dělá pořádek v hlavě. Kraval naopak vezme téma přímo z praxe a na něm vysvětlí proč takto ne, nebo jak příklad změnit, aby odpovídal použití Use Case. Jeho přístup má ovšem jednu velkou nevýhodu, podává informace srozumitelně, ale pouze člověku, který již má nad tématem dostatečný přehled a ví o čem se mluví. Tedy pochopit Kravala bez předchozího přečtení knihy Arlowa je sice možné, ale uživatel nebude mít ucelený přehled, tedy pokud bych měl doporučit přístup k těmto autorům, nejdříve bych si pročetl knihu Arlowa a následně si pro utříbení a objasnění informací pročetl příspěvky Kravala. V každém případě jsem nabyl dojmu, že oba autoři téma vidí velice podobně, ačkoliv mi to tak ze začátku nepřišlo. Pokud jdeme více do hloubky jeví se, že používají a uplatňují shodné postupy, pojmosloví a celé použití případů užití vnímají jako velice užitečné a vlastně nutné pro další tvorbu projektu. Matěj Trakal fei.trtkal.net 7

INPSW 2011 (Šimerda) REFERENCE Reference [1] Kraval, I.: Praktické použíti stereotypů v UML při modelování s ukázkou v nástroji Enterprise Architect 3.5. 1 2003, [Onlline;cit. 2011-12-10]. URL <http://objects.cz/clanky/clanek2/clanek2.html> [2] Kraval, I.: ACTOR versus BPM. Online, 2 2004, [Online; cit. 2011-12-10]. URL <http://objects.cz/clanky/clanek12/clanek12.html> [3] Kraval, I.: Jak provádět změnové řízení v prvcích typu USE CASE. Online, 4 2005, [Online; cit. 2011-12-10]. URL <http://objects.cz/clanky/clanek16/clanek16.html> [4] Kraval, I.: Jak správně psát scénáře k případům užití? Online, 7 2007, [Online; cit. 2011-12-10]. URL <http://objects.cz/clanky/clanek31/clanek31.html> [5] Kraval, I.: Druhá cást odpovedi na mail ohledne zpracování prípadu užití. 1 Druhá cást odpovedi na mail ohledne zpracování prípadu užití, [Online; cit. 2011-12-10]. URL <http://www.objects.cz/clanky/clanek38/clanek38.pdf> [6] NEUSTADT, J. A. I.: UML 2 a unifikovaný proces vývoje aplikací. Computer Press, první vydání, 2007, 567 s. [7] NEUSTADT, J. A. I.: UML 2 a unifikovaný proces vývoje aplikací. Computer Press, první vydání, 2007, 567 s. Matěj Trakal fei.trtkal.net 8