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



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

7 Jazyk UML (Unified Modeling Language)

7 Jazyk UML (Unified Modeling Language)

Univerzita Pardubice Fakulta ekonomicko-správní Ústav systémového inženýrství a informatiky

Modelování webových služeb v UML

6 Objektově-orientovaný vývoj programového vybavení

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

Komputerizace problémových domén

Unifikovaný modelovací jazyk UML

UML - Unified Modeling Language

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

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

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

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

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

EXTRAKT z české technické normy

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

8 Přehled OO metodik (metod, metodologií)

8 Přehled OO metodik (metod, metodologií)

Principy UML. Clear View Training 2005 v2.2 1

UML: Unified Modeling Language

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

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

UML. Unified Modeling Language. Součásti UML

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

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

7.3 Diagramy tříd - základy

7.5 Diagram tříd pokročilé techniky

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

Unifikovaný modelovací jazyk UML 1

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

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í.

7.5 Diagram tříd pokročilé techniky

3 druhy UML diagramů

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

Návrh softwarových systémů - architektura softwarových systémů

Metody popisu systému, základy UML

Třída. Atributy. Operace

7.6 Další diagramy UML

Návrh softwarových systémů - architektura softwarových systémů

7.6 Další diagramy UML

Informační systém pro podporu organizace dětských táborů

Objekty, třídy, vazby 2006 UOMO 30

7.3 Diagramy tříd - základy

METODIKA PŘENOSU INFORMACÍ Z PODNIKOVÉ DO SOFTWAROVÉ ARCHITEKTURY

Metodika. Architecture First. Rudolf Pecinovský

Analýza a Návrh. Analýza

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

Modelování IS Strukturovaný a objektově orientovaný přístup (UML)

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

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

Diagramy tříd - základy

Smysl metodiky IS/IT. Koncentrovaná zkušenost Checklist na nic nezapomeneme

Unifikovaný modelovací jazyk UML 1

EXTRAKT z české technické normy

Návrh programu v Black Box Component Builderu s využitím architektury Model View Controller

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

Globální architektura ROS

Databázové modelování. Analýza Návrh konceptuálního schématu

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

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

Modelování požadavků

Informační systém pro veterinární stanici

Vysoká Škola Ekonomická - Fakulta informatiky a statistiky. 4IT450 CASE Computer aided systems engineering

Téma 5. Ovladače přístrojů Instrument Drivers (ID)

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

SPIRIT Nové funkce. SOFTconsult spol. s r. o., Praha

OBSAH. Předmluva 13 Poděkování Přehled dnešního vývoje webů Design pro minulost, přítomnost i budoucnost 33

7.4 Diagramy interakce (základy)

Object-oriented Analysis & Design. Requirements Analysis

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

Klokotská 693/ Praha 4 Libuš. Tel: Fax: servis@fontana.cz

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

7.4 Diagramy interakce (základy)

Novinky v UML 2.5 a agilní modelování

Metodické postupy tvorby architektury

OOT Objektově orientované technologie

Unifikovaný proces vývoje

Displej pro elektrokola SW-LCD

OOT Objektově orientované technologie

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

Objektově orientované programování 1 XOBO1. Autor: Doc. Ing. František Huňka, CSc.

TE-218 TG-218 TW-218. Electronic Publishers EURO INTERPRETER. Návod k použití

Objektově orientované programování? Co to je?

Úloha 1 Multimetr. 9. Snižte napájecí napětí na 0V (otočením ovládacího knoflíku výstupního napětí zcela doleva).

Parametrizace, harmonogram

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

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

Kurz Postupy návrhu IS pomocí UML a OOP (5 dnů, in-house)

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

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

Objektový návrh IS. Přístup k návrhu. vychází ze strukturovaného přístupu. Přebírá P3A, není tak výrazné odlišení analýzy a designu

Optimalizace podnikových procesů fakultní nemocnice

Google Apps. dokumenty 5. verze 2012

Obsah přednášky. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace UML. Co je diagram tříd. Ing. Ondřej Guth

Databázové systémy trocha teorie

A7B36SI2 Tematický okruh SI08 Revidoval: Martin Kvetko

Základy analýzy. autor. Jan Novotný února 2007

Herní engine. Co je Engine Hotové enginy Jemný úvod do game designu

Transkript:

Modelování řízené případy užití kompletní proces od UC po implementaci, robustnost 2005 Radek Ošlejšek, Jiří Sochor FI MU Brno oslejsek@fi.muni.cz http://www.fi.muni.cz/~oslejsek/pa103 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 1

Hledáme odpovědi na otázky Kdo jsou uživatelé systému (aktéři) a co se pokoušejí dělat? Co jsou objekty skutečného světa (problémové oblasti) a jaké jsou mezi nimi vztahy? Jaké objekty jsou potřebné u každého případu užití? Jak interagují objekty, které spolupracují v případu užití? Jak vyjádříme aspekty řízení v reálném čase? Jak doopravdy postavíme systém na základní úrovni? 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 2

Otázky a odpovědi OOSE OMT Booch UML nástroje / techniky Uživatelé a uživatelské akce Případy užití Objekty reálného světa Diagramy tříd na vysoké úrovni abstrakce Objekty pro každý p.u. Analýza robustnosti Interakce objektů? Diagramy sekvencí a spolupráce Řízení v reálném čase? Stavové diagramy Jak vytvořit? Podrobné diagramy tříd (nízká úroveň) 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 3

ICONIX Unified Object Modeling Nejprve napište uživatelský manuál, potom kód. dynamické modely prototyp GUI př ípady užití diagram robustnosti sekvenční diagram statické modely kód model aplikační domény diagram tříd d 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 4

Modelovací směry Celý postup zahrnuje tři klíčové principy: inside out postup od datových požadavků ven modelování doménové oblasti system a system b outside in postup od uživatelských požadavků dovnitř systému use case modelování system c system system d top down postup od modelů na vysoké úrovni k detailnímu návrhu 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 5

Základní kroky Čtyři základní kroky při řešení pomocí ICONIX Unified Object Modelling. Jednotlivé kroky jsou odděleny milníky. 1. Analýza požadavků 2. Analýza a předběžný návrh 3. Návrh 4. Implementace 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 6

1. Analýza požadavků Identifikujte objekty z domény reálného světa, gen spec a agregace, začněte tvořit diagram tříd. Pokud je to možné, proveďte rychlé prototypování navrhovaného systému, nebo zaznamenejte informace o GUI rekonstruovaného systému. Identifikujte případy užití. Organizujte případy užití do skupin. Tuto organizaci zachyťte v diagramu balení (package diagram). Alokujte funkční požadavky na případy užití a objekty v aplikační doméně. R Milník: Prověření požadavků 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 7

2. Analýza a předběžný návrh Sestavte popisy případů užití základní směry činnosti, které představují hlavní proud a alternativní směry pro méně frekventované cesty a chybové podmínky Proveďte analýzu robustnosti. Pro každý případ užití: identifikujte (odhadněte) skupinu objektů, které realizují popsaný scénář diagram tříd aplikační domény doplňte o nově nalezené objekty a atributy Dokončete úpravy diagramu tříd tak, aby zachytil kompletní poznatky z analýzy Milník: Prověření předběžného návrhu 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 8

3. Návrh Alokujte chování. Pro každý případ užití: identifikujte zprávy, které musí být předány mezi objekty a příslušné vyvolané metody. Nakreslete sekvenční diagram, který v levé části realizuje průběh textového popisu případu užití a v pravé části zahrne návrhová rozhodnutí. Opravujte průběžně diagram tříd, doplňujte nové atributy a operace. Pokud je to potřeba, použijte diagram spolupráce pro znázornění klíčových transakcí mezi objekty. Dokončete statický model připojením detailní návrhové informace (např. viditelnost, vzory) Ověřte společně s týmem, že návrh splňuje všechny identifikované požadavky. Milník: Prověření podrobného návrhu 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 9

4. Implementace Podle potřeby vytvořte diagramy rozmístění a diagramy komponent, které budou využity během implementační fáze. Napište/generujte kód Proveďte testování jednotek a integrační testy Proveďte testy systému a uživatelské validační testy, s použitím případů užití jako black box testů (bez použití strukturálních modelů) Milník: Předání systému 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 10

Use case modelování dynamické modely prototyp GUI př ípady užití diagram robustnosti sekvenční diagram statické modely kód model aplikační domény diagram tříd d 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 11

Use case modelování Postup outside in : od uživatelských požadavků směrem dovnitř systému. Use case model se vytváří spolu s modelem aplikační obasti Modelování dynamiky systému je případy užití nejen odstartováno, ale je jimi řízeno. Případy užití mají velice blízko k uživatelům prostřednictvím GUI, které by mělo být dobře dokumentováno. Proto princip nejprve napište dokumentaci, pak teprve kód Proč rozdělovat do balíků případy užití a ne až třídy?: Balíky s p.u. formují logické hranice pro rozdělení práce v rámci podtýmů 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 12

Desatero pro psaní případů užití 1. Neztrácejte příliš mnoho času přemýšlením, jestli použít vazbu include nebo extend. 2. Zaměřte se na to, co je uvnitř případu užití, nikoli na to, jak se tam dostanete (vstupní podmínky) nebo co se stane potom (výstupní podmínky). 3. Nevynechávejte text alternativních toků událostí (neplatí pro scénáře). 4. Nepopisujte pouze interakce uživatelů, zahrňte i odezvy systému. 5. Pište z pohledu uživatele, nepoužívejte trpný rod (platí zejména pro angličtinu). 6. Jasně pojmenovávejte objekty na rozhraní. 7. Berte v úvahu uživatelská rozhraní. 8. Nepište případy užití příliš stručně. 9. Popisujte použití, ne atributy a metody. 10.Nepopisujte funkční požadavky ale toky událostí. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 13

Modelování doménové oblasti dynamické modely prototyp GUI př ípady užití diagram robustnosti sekvenční diagram statické modely kód model aplikační domény diagram tříd d 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 14

Modelování doménové oblasti Modelování doménové oblasti (též aplikační oblasti, anglicky domain modeling) je proces hledání objektů (tříd) reprezentujících věci a koncepty z reálného světa, které mají vztah k problémům řešeným navrhovaným systémem. Výsledkem je tzv. analytický model tříd. Na základě datových požadavků vytváříme základní statický model (tj. postup inside out ). Používají se vazby generalizace specializace, asociace a agregace. Vazba komzice v této fázi raději ne, až v návrhu. Příliš se nezabýváme ani přesnou kardinalitou asociací 1:N. Je vhodné používat asociační třídy. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 15

Analýza robustonosti dynamické modely prototyp GUI př ípady užití diagram robustnosti sekvenční diagram statické modely kód model aplikační domény diagram tříd d 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 16

Analýza robustnosti Ivar Jacobson: OOSE A Use Case Driven Approach, 1992 prostřední úroveň návrhu, mezi případy užití a úrovní návrhu software Co (analýza) mezera Jak (návrh) 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 17

Vztah k UML? Analýza robustnosti není přímo součástí UML dá se nahradit pomocí stereotypů Ne vždy se používá. Je objahována některými autory: Dough Rosenberg, Iconix, autor knihy doporučuje řešit analýzu robustnosti před sekvenčními diagramy 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 18

Co je cílem analýzy robustonosti? Kontrola rozumnosti (sanity check) Pomáhá ověřit, že popis případů užití je správný a že nebylo definováno nerozumné chování systému vzhledem k objektů, se kterými pracujeme. Kontola úplnosti (completeness check) Pomáhá ověřit, že případy užití pokrývají všechny nezbytné alternativní toky. Celistvost, nalezení objektů (ongoing, discovery of objects) Během modelování doménové oblasti jsme mohli některé objekty opomenout. Předběžný návrh (preliminary design) Formulace předběžného návrhu. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 19

Stereotypy diagramu robustnosti Aktor Objekt Interface Objekt Entita Objekt Řízení objekt na rozhraní systému (také Boundary Object), neplést si s rozhraním v diagramech tříd! reprezentuje uložená data reprezentuje přenos informace 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 20

Objekty Interface a Entita Úlohou objektu Interface je překládat aktérův vstup na události v systému a přeložit události, o které se zajímá aktér, na něco, co může být prezentováno aktérovi Každý aktér by měl mít svůj interface, někteří jich budou potřebovat více. Objekty Entity modelují dlouhodobě udržovanou informaci, např. mezi případy užití. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 21

Objekty řízení Objekty Řízení typicky propojují ostatní objekty do jediného celku, který tvoří jeden případ užití. Jsou typicky pomíjivé (nejméně trvanlivé), často žijí pouze po dobu provádění příslušného případu užití. Pouze několik (dva až pět) objektů řízení na průměrný případ užití. Pokud máme jediný objekt řízení na jeden p.u., tak jsou p.u. příliš malé. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 22

Princip Model Pohled Řízení Objekt Entita reprezentuje uložená data (DB tabulky, soubory) Objekt Interface objekt na rozhraní systému (okna, dialogy, menu) Objekt Řízení reprezentuje přenos informace (aplikační logika) Model Pohled Řízení 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 23

Princip Model Pohled Řízení Průvodní princip: Oddělení zájmů, úkolů Model zachycuje základní charakteristiky dat, ale nezaměřuje se na všechny způsoby použití. Objekty entit vedou k třídám. Může existovat více pohledů na jeden model. Objekty rozhraní vedou ke třídám. Řídící objekty Řídící objekty poskytují způsoby, jak měnit a extrahovat informaci z modelu. Nemusí to být samostatné třídy, při návrhu často vedou k metodám asociovaným s objekty rozhraní a entitními objekty. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 24

Pravidla diagramu robustnosti Povolená propojení ne ANO ne ne ANO ne ANO ne ne ANO ANO ANO ne ne ANO ne Smysl pravidel: Aktéři mohou se systémem komunikovat pouze přes interfacy. Nikdo, kromě řídících objektů, nemůže přímo sahat na entity. Je vhodnější, když entitní třídy, které můžeme zvažovat izolovaně, o sobě vzájemně neví. Místo toho jsou mezi ně vloženy řídící třídy, které znají obě entitní třídy. Vychází se z konceptu Model Pohled Řízení 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 25

Příklad 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 26

Princip nezávislosti Pokud dvě entitní třídy spolu interagují v aplikaci nebo v případu užití, ale obecně o sobě nemusí vědět, pak je vhodnější místo přímého propojení vložit mezi ně řídící třídu. To není dogma, ale doporučení... 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 27

Příklad 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 28

AR: Aktualizace statického modelu dynamické modely prototyp GUI př ípady užití diagram robustnosti sekvenční diagram statické modely kód model aplikační domény diagram tříd d 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 29

AR: Aktualizace statického modelu Před ukončením analýzy robustnosti a přechodem k modelování interakcí je nutné aktualizovat statický model aplikační oblasti. přidání nově nalezených tříd Všechny entitní objekty s diag. robustonosti jsou třídy v diagramu tříd. přidání důleřitých atributů do tříd Na základě sledování toku dat mezi objekty rozhraní a entitními objekty. operace nepřidávat zatím nemáme dostatek informací ke správnému návrhovému rozhodnutí, je lepší počkat na modely interakcí. nemodelovat objekty rozhraní jako třídy Na rozdíl od entit, objekty rozhraní jsou součástí přesnějšího řešení. V modelu tříd ale zatím zachycujeme jen problémovou oblast. Proto je vhodnější očkat až na dynamický model interakcí. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 30

Doug Rosenberg Analýza předmětné oblasti není kompletní, dokud není zkonstruován diagram robustnosti, který zahrnuje třídy aplikační oblasti vystopovány (vysledovány) všechny případy užití na diagramu robustnosti. D.R. však netrvá na tom, aby byly diagramy robustnosti udržovány i po ukončení iniciální analýzy. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 31

10 největších přínosů AR 1. Vyplňuje sémantickou mezeru mezi analýzou (případy užití) a návrhem (sekvenční diagramy). 2. Poskytuje přehled o tom, co systém dělá (případy užití) a jak systém pracuje (sekvenční diagramy). 3. Umožňuje kontrolu znovupoužití případů užití. 4. Pomáhá při rozmístění objektů v modelu GUI logika data pro systémy clientserver. 5. Pomáhá při rozdělení objektů v modelu model pohled řízení. 6. Diagramy robustnosti se vytvářejí rychleji a čtou snadněji než sekvenční diagramy. 7. Umožňuje aplikovat syntaktická pravidla na případy užití (např. aktéři komunikují pouze z objekty rozhraní ). 8. Poskytuje kontrolu rozumnosti a úplnosti vašich případů užití. 9. Nutí vás psát případy užití správným jazykem. 10.Nutí vás psát případy užití konzistentním stylem. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 32

Komponentová architektura Zdá se, že stejný princip je v pozadí toho, co se nazývá Component based Software Architecture : komponenta interfejs nebo entita konektor kontroler, řízení 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 33

Modelování interakcí dynamické modely prototyp GUI př ípady užití diagram robustnosti sekvenční diagram statické modely kód model aplikační domény diagram tříd d 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 34

Modelování interakcí Alokuje chování mezi objekty rozhraní, entitami a objekty řízení. Rosenberg: Nesnažte se alokovat chování mezi objekty dříve, než máte dobrou představu o tom, co jednotlivé objekty znamenají. Raději s vraťte k analýze robustonosti. Ukázuje detailní interakce mezi objekty asociovanými s jednotlivými případy užití. Pro každou jednotku chování v případech užití je nutné najít nezbytné zprávy/metody, které fungují jako stimuly objektů provádějicích požadované akce. Interakce mezi aktéry a systémem je dána případy užití, interakce uvnitř systému je dána řídícími objekty v diagramu robustosti. Rozmísťuje operace do objektů a dokončuje rozmístění atributů. Během modelování interakcí se provádí aktualizace modelu tříd. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 35

Modelování interakcí: postup Prostř edky: Sekvenční diagramy (sequence diagrams) pro jednotlivé toky událostí v případech užití. Postup: 1. Zkopírujte text z případu užití na levou stranu. 2. Přidejte entitní objekty z diagramu robustnosti. 3. Přidejte objekty rozhraní a aktéry z diagramu robustnosti. 4. Přetvořte řídící objekty z diagramu robustnosti, jeden po druhém, na konkrétní skupiny metod a zpráv a/nebo na reálné kontrolní objekty/třídy. 5. Aktualizujte statický model Dokončení atributů a metod, přidání pomocných tříd, návrhové vzory... Každý objekt by měl mít pouze jednu osobnost, tj. měl by vykazovat pouze úzký typ chování. Schizofrenní objekty dekomponujte pomocí agregace. Nalezení interagujících objektů (body 1. 3.) je při použití analýzy robustnosti triviální. Nalezení modelu interakcí (bod 4.) je s diagramem robustnosti mnohem snažší. 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 36

Implementace dynamické modely prototyp GUI pří pady užití diagram robustnosti sekvenční diagram statické modely kód model aplikační domény diagram tříd diagram komponent 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 37

Implementace Podle potřeby vytvořte diagramy umístění a diagramy komponent, které budou využity během implementační fáze. Napište/generujte kód Proveďte testování jednotek a integrační testy Proveďte testy systému a uživatelské validační testy, s použitím případů užití jako black box testů (bez použití strukturálních modelů) 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 38

Př: jednoduché a špatné řešení... 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 39

v notaci diagramu robustnosti... 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 40

...realističtější řešení 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 41

Př: jednoduché a špatné řešení... Ridic Tranvaj Dispecer prideltramvaj vytvorjizdu 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 42

...diagram robustnosti... Dispecer FormRozpisuJizd PrideleniTramvaje RozpisJizd VyhledaniVolnych Ridic Tramvaj 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 43

...realističtější řešení Dispecer FormRozpisuJizd Ridic Tramvaj RozpisJizd otevri vypisdvojice vyhledejvolne vyhledejvolne vytvorrozpis pridejjizdy 30. 3. 2005 PA103: OO metody návrhu IS R. Ošlejšek, J.Sochor, FI MU Brno 44