7.6 Další diagramy UML



Podobné dokumenty
7.6 Další diagramy UML

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

7.4 Diagramy interakce (základy)

7.4 Diagramy interakce (základy)

7 Jazyk UML (Unified Modeling Language)

7.5 Diagram tříd pokročilé techniky

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

7 Jazyk UML (Unified Modeling Language)

7.5 Diagram tříd pokročilé techniky

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

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

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

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

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

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

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

7.3 Diagramy tříd - základy

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

UML. Unified Modeling Language. Součásti UML

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

Unifikovaný modelovací jazyk UML

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

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

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

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

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

Diagramy stavů. Michale Blaha, James Rumbaugh: Object-Oriented Modeling and Design with UML, Second Edition, Pearson Prentice Hall, 2005

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

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

11 Návrh programového vybavení

Principy UML. Clear View Training 2005 v2.2 1

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

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

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

Diagram sekvencí (sequence diagram)

Business Process Modeling Notation

Modelování podnikových procesů

10 Metody a metodologie strukturované analýzy

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

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

PV207. Business Process Management

Metody popisu systému, základy UML

WORKFLOW. Procesní přístup. Základ perspektivního úspěšného podnikového řízení. Funkčnířízení založené na dělbě práce

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

3 druhy UML diagramů

Jazyk UML VST (Velmi stručný tutorial) verze 1.0

PŘÍLOHA C Požadavky na Dokumentaci

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

2. Modelovací jazyk UML 2.1 Struktura UML Diagram tříd Asociace OCL. 3. Smalltalk 3.1 Jazyk Pojmenování

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

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

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

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

Modelování business procesů. UML diagram aktivit

Analýza. Pracovní postup Analýza

Lekce 01 Úvod do algoritmizace

7.3 Diagramy tříd - základy

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

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

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

UML: Unified Modeling Language

Použití standardů. v dokumentu Úvodní studie. Použití standardů

Diagramy tříd - základy

IS pro podporu BOZP na FIT ČVUT

Student s Life. Návrhová dokumentace (Design) Lukáš Barák, Jakub Ječmínek, Jaroslav Brchel, Jiří Zmeškal

WORKFLOW ZAUTOMATIZUJE PRACOVNÍ TOKY DATOVÉHO PŘENOSU PODLE PLÁNU NEBO VYVOLANÉ

ČESKÉ VYSOKÉ UČENÍ TECHNIKÉ Fakulta elektrotechnická. Microsoft Sharepoint 2007 Workflows Průmyslové informační systémy

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

Úvod do softwarového inženýrství a týmového vývoje

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

Algoritmizace prostorových úloh

Architektura softwarových systémů

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

2 Životní cyklus programového díla

Architektury Informačních systémů. Jaroslav Žáček

Algoritmizace, základy programování, VY_32_INOVACE_PRG_ALGO_01

Obsah. Předmluva KAPITOLA 1 Úvod do programu Microsoft Dynamics NAV KAPITOLA 2 Základy ovládání...33

financnasprava.sk Portál Technologie Microsoft zjednodušují komunikaci občanů s Finanční správou SR a činí výběr daní transparentnějším.

Globální strategie, IT strategie, podnikové procesy. Jaroslav Žáček

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

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

EXTRAKT z české technické normy

10 Balíčky, grafické znázornění tříd, základy zapozdření

Úloha 1. Úloha 2. Úloha 3. Text úlohy. Text úlohy. Text úlohy

Architektury Informačních systémů. Jaroslav Žáček

Semináˇr Java X J2EE Semináˇr Java X p.1/23

Komponenta Human Task v Oracle SOA Suite

Vývojové diagramy 1/7

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

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

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost

2. Začlenění HCI do životního cyklu software

Diagram tříd (class diagram)

Návod k aktivaci

TECHNICKÉ POŽADAVKY NA NÁVRH, IMPLEMENTACI, PROVOZ, ÚDRŽBU A ROZVOJ INFORMAČNÍHO SYSTÉMU

Uživatelský manuál.

Návrh softwarových systém. Návrh softwarových systémů

3 Inženýrství systémů založených na počítačích (Computer-based System Engineering)

UDS for ELO. Univerzální datové rozhraní. >> UDS - Universal Data Source

CASE nástroje. Jaroslav Žáček

Transkript:

7.6 Další diagramy UML 7.6.1 Moduly (balíčky - package) a kolaborace (collaboration) Jak rozložit rozsáhlý systém na menší? - seskupování tříd (prvků modelu) do jednotek vyšší úrovně (package v UML). UI objednávky Modul AWT UI adresy zákazníka Aplikace sběru objednávek Závislost Aplikace správy adres zákazníků Objednávky - obsah: - textově, graficky, další diagram Zákazníci J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 1

Modelování závislostí v UML Závislost vztah mezi prvky modelu, kdy specifikace jednoho prvku může ovlivnit jiný prvek, který jej používá. Př) Textový editor Okno +dopředu() +dozadu() - řada různých závislostí s předdefinovanými stereotypy (include, extend, instantiate, instanceof, use, friend, ) - dvě seskupení jsou závislá, existuje-li závislost mezi prvky v nich - obdoba kompilačních závislostí (nejsou ale tranzitivní) - redukce závislostí v systému cíl návrhu J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 2

Př) UI objednávky AWT UI adresy zákazníka <<global>> Aplikace sběru objednávek Doména Aplikace správy adres zákazníků DB rozhraní {abstract} Money Interval Společné Objednávky Zákazníci Rozhraní pro Oracle Rozhraní pro Sybase J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 3

Kolaborace - seskupení spolupracujících tříd Kolaborace jméno přiřazené interakci mezi dvěma a více třídami. prodávající : Klient inzeruj kupec1 : Klient kupec2 : Klient nabídni nabídni odmítni přijmi Nabídka kupující Klient prodávající Inzerát J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 4

- kolaborace může ukazovat implementaci operace nebo realizaci případu použití - parametrizovaná kolaborace (vzor pattern) Prodej Kupující Prodávající kupující, prodávající, inzerát, nabídka Nabídka Inzerát kupující prodávající Klient prodávající, kupující Nabídka nabídka Inzerát inzerát Prodej Kdy použít seskupení a kolaborace - rozsáhlé projekty, vhodná jednotka testování J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 5

7.6.2 Stavové diagramy Stavový diagram popisuje stavy, v nichž se může objekt nacházet, a jak se stav objektu změní jako následek události, která na objekt působí. Kreslí se pro jednu třídu a ukazuje chování objektu třídy v průběhu jeho životního cyklu. Př) Podmínka Akce [ne všechny položky zkontrolovány] /čti další položku /čti první položku Počáteční stav [všechny položky zkontrolovány && některé nejsou na skladě] Kontrola do/ kontroluj položky Událost [všechny položky zkontrolovány && dostupné] Stav Aktivita Přechod Vyřízení do/ zahaj doručení doručeno položka dodána [ne všechny položky dostupné] Čekání položka dodána [všechny položky dostupné] Doručeno J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 6

Stav objektu - situace během života objektu, během níž objekt splňuje nějakou podmínku, provádí nějakou operaci nebo čeká na událost Př) Student: přihlášený, přijatý, zapsaný, student 1.stupně,... - stavu může být přiřazena aktivita a vstupní, výstupní a interní akce (do/, entry/, exit/, událost/ ) - počáteční a koncový stav (pseudostavy) Aktivita proces, který trvá nějakou dobu. Akce proces, který proběhne rychle a je nepřerušitelný. Událost Událost - něco, co se stane v určitém časovém okamžiku, nemá trvání. Syntaxe: jméno_události (seznam parametrů) Př) vysokáteplota (požadovaná teplota) - událost po uplynutí času: after (např. after (30 minut)) - událost po splnění podmínky: when (např. when (tlak >50) kp)) - událost ve stavu: entry, exit. J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 7

Přechod mezi stavy Syntaxe ohodnocení přechodu: Událost [Podmínka]/ Akce Podmínka (guard) booleovský výraz platný podmiňující přechod. - pravidla pro aktivaci přechodu - jen jeden přechod ze stavu může být aktivován není-li událost musí být podmínky výstupních přechodů vzájemně výlučné Př) Přechod pro zrušení objednávky událostí Zrušena [ne všechny položky zkontrolovány] /čti další položku /čti první položku Kontrola do/ kontroluj položky [všechny položky zkontrolovány && dostupné] Vyřízení do/ zahaj doručení [všechny položky zkontrolovány && některé nejsou na skladě] položka dodána [ne všechny položky dostupné] Čekání zrušeno zrušeno položka dodána [všechny položky dostupné] zrušeno Zrušeno doručeno Doručeno J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 8

Aktivní /čti první položku [ne všechny položky zkontrolovány] /čti další položku Kontrola do/ kontroluj položky [všechny položky zkontrolovány && dostupné] Vyřízení do/ zahaj doručení [všechny položky zkontrolovány && některé nejsou na skladě] položka dodána [všechny položky dostupné] doručeno položka dodána [ne všechny položky dostupné] Čekání zrušeno Zrušeno Doručeno Souběžné stavové diagramy - složený stav může obsahovat několik souběžných stavových diagramů - stav je dán kombinací stavů souběžných diagramů J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 9

Autorizace do/ kontroluj [platba není OK] Odmítnuto [platba OK] Autorizováno doručeno Doručeno zrušeno Zrušeno Čekání Kontrola Autorizace Autorizováno Vyřízení Doručeno [platba není OK] Odmítnuto J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 10

Kdy použít stavové diagramy - vhodné pro popis chování jednoho objektu přes několik případů použití, resp. v průběhu celého životního cyklu - pouze pro třídy se zajímavým chováním (objekty uživatelského rozhraní, řídicí objekty, ) J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 11

7.6.3 Diagramy aktivit Zahájení Aktivita Přijmi objednávku Podmínka (guard) Větvení (branch) [spěšná] Vyplň objednávku [else] Rozvětvení (fork) Pošli fakturu Pošli spěšně Pošli normálně Přijmi platbu Sloučení (merge) Spojení (join) Uzavři objednávku Ukončení J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 12

- nemají původ v technikách autorů UML - vývojový diagram ukazující tok řízení z jedné aktivity do druhé - obdoba stavového diagramu, v němž stavy reprezentují vykonávání aktivit a přechody jsou vyvolány ukončením aktivity - popisuje řazení aktivit s podporou jak sekvenčního, tak paralelního chování Prvky diagramu: Stav aktivity (aktivita) stav nějaké činnosti, běžně krok nějakého algoritmu (procedury) nebo toku činnosti (workflow). Větvení jeden vstupní a několik ohodnocených výstupních přechodů, jen jedna podmínka splněna. Sloučení označuje konec větvení. Rozvětvení - jeden vstupní a několik výstupních přechodů, následkem vstupního přechodu jsou provedeny všechny výstupní paralelně (pořadí není relevantní). Spojení výstupní přechod je proveden, až byly ukončeny všechny vstupní aktivity (synchronizace). J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 13

Diagram aktivit ukazuje podstatné řazení aktivit (sekvenční části), u ostatních umožňuje zvolit pořadí (paralelní části). - důležité pro modelování podnikatelských (business) procesů - užitečné pro paralelní programy - aktivitu lze rozložit (podobně jako stav) Doruč objednávku [spěšná] [else] Pošli spěšně Pošli normálně Zóny (swimlanes) - diagram aktivit neříká nic o přiřazení aktivit objektům tříd lze rozdělit aktivity do zón, které reprezentují zodpovědnosti tříd (resp. osob, oddělení při modelování aplikační domény) J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 14

J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 15

Kdy použít diagramy aktivit Výhoda: podpora paralelního chování modelování toku činností (workflow), vícevláknového (multithreaded) programování. Nevýhoda: nejasná vazba mezi aktivitami a objekty. Vhodné situace pro použití: analýza případu použití pochopení toku činností popis komplikovaného sekvenčního algoritmu (vývojový d.) vícevláknové aplikace Nepoužívat: popis spolupráce objektů popis chování jednoho objekt v průběhu jeho života reprezentace složitého větvení 7.6.4 Diagramy fyzické organizace - diagramy nasazení (deployment) a diagramy komponent (viz dále) J. Zendulka: Projektování programových systémů - 7 Jazyk UML (Unified Modeling Language) 16