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



Podobné dokumenty
UML - Unified Modeling Language

UML. Unified Modeling Language. Součásti UML

7 Jazyk UML (Unified Modeling Language)

7 Jazyk UML (Unified Modeling Language)

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

Klasické metodiky softwarového inženýrství 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

Unifikovaný modelovací jazyk UML

Principy UML. Clear View Training 2005 v2.2 1

UML: Unified Modeling Language

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

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

KIV/ASWI 2007/2008 Pokročilé softwarové inženýrství. Cíle předmětu Organizační informace Opakování

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

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

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

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

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

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

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 Sekvenční diagram (Realizace UC) Daniela Szturcová

Unifikovaný modelovací jazyk UML 1

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

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

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

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

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

Modelování podnikových procesů

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

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

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

Komputerizace problémových domén

7.6 Další diagramy UML

7.6 Další diagramy UML

Metody popisu systému, základy UML

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

Y13ANW ÚVOD DO WEBOVÝCH METODIK. Ing. Martin Molhanec, CSc.

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

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

Unifikovaný modelovací jazyk UML 1

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

PV207. Business Process Management

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

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

Mendelova zemědělská a lesnická univerzita v Brně Provozně ekonomická fakulta

Business Process Modeling Notation

7.5 Diagram tříd pokročilé techniky

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

Unifikovaný proces vývoje

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

X36SIN: Softwarové inženýrství. Životní cyklus a plánování

UML NĚKOLIK KRITICKÝCH POZNÁMEK

Modelem řízený vývoj. SWI 1 Jan Kryštof

2 UML-BASED WEB ENGINEERING (UWE)

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

7.3 Diagramy tříd - základy

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

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

Usage of modular scissors in the implementation of FEM

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

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

7.5 Diagram tříd pokročilé techniky

Novinky ve standardu UML 2.0

Tvorba informačních systémů

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

SPECIFICKÁ PRAVIDLA PRO ŽADATELE A PŘÍJEMCE

Specifikace požadavků, UC. Jaroslav Žáček

Vývojové diagramy 1/7

Optimalizace podnikových procesů fakultní nemocnice

Obsah Charakteristiky software Programování ve velkém... 3

SPEM 2.0 úvod, účel. Matoušková Soňa ZS 2013/2014 4IT421 Zlepšování procesů budování IS

Specifikace požadavků, UC. Jaroslav Žáček

Analýza a Návrh. Analýza

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

SOFTWAROVÉ INŽENÝRSTVÍ 1

Programování II. Modularita 2017/18

WebML Objektově orientovaná metodika pro tvorbu webových sídel

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

Mendelova zemědělská a lesnická univerzita v Brně Provozně ekonomická fakulta. Začínáme s BPM. Učební pomůcka. Vypracoval: Ing.

Plug-in pro správu požadavků a sledování postupu vývoje

Teorie síťových modelů a síťové plánování

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

Modelování podnikové architektury a návrh struktury komponent informačního systému v oblasti služeb

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

2 Axiomatic Definition of Object 2. 3 UML Unified Modelling Language Classes in UML Tools for System Design in UML 5

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

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

Analýza a návrh webových aplikací 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

Seminární práce. Použití CASE pro řízení IS/ICT firmy

ÚVOD DO SOFTWAROVÉHO INŽENÝRSTVÍ

Softwarové inženýrství 01. doc. Ing. František Huňka, CSc.

Přednáška. Sběr požadavků na SW s použitím metody C.C a nástroje Craft.CASE. e-fractal, s.r.o.

Budování architektury pomocí IAA

6INF2. RNDr. Jaroslav Žáček, Ph.D.

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

11 Návrh programového vybavení

OBJEKTOVÝ PŘÍSTUP A UML V NÁVRHU INFORMAČNÍHO SYSTÉMU

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

BORM-II a BPMN v provozně ekonomických procesech BORM-II and BPMN in operation economic processes

PŘÍNOSY MODELOVACÍCH TECHNIK PRO ANALÝZU A NÁVRH KNIHOVNÍCH APLIKACÍ

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

Transkript:

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

Co je to UML Evoluce UML Diagram komponent Diagram odbavení Diagram tříd Aktivity diagram Stavový diagram Sekvenční diagram Diagram spolupráce Vyhodnocení Odkazy Osnova přednášky

Co je to UML

Co je to UML UML Unified Modeling Language Univerzální jazyk pro modelování Vznik 1994 léta Autoři: Rumbaugh, Booch a Jacobson Autoři nejvýznamnějších OO metodik 90let Koncentruje nejlepší praktiky předchozích metodik Je určen pro rozsáhlé průmyslové projekty UML není metodika! UML není jen pro programování! Je to hlavně jazyk pro popis systémů.

Co je to UML UML Unified Modeling Language Univerzální jazyk pro modelování Vznik 1994 léta Autoři: Rumbaugh, Booch a Jacobson Autoři nejvýznamnějších OO metodik 90let Koncentruje nejlepší praktiky předchozích metodik Je určen pro rozsáhlé průmyslové projekty Autoři působí ve firmě Rational Software, dnes IBM. Řízení standardu převzala organizace OMG. UML má své nedostatky a kritiky, přesto je standardem.

UML a metodiky Vznikají různé metodiky, které jako jazyk pro popis systémů používají UML. Unified Process Jacobson, Rumbough a Booch Základem OOSE Jacobsona RUP Rational Unified Process Vychází z UP a dále ho doplňuje Jedná se chráněný název firmy IBM po akvizici firmy Rational Software Tato metodika, jako klasická neagilní metodika je podrobena celé řadě kritik

UML úvod 7 Motivace: modelovací jazyk pro průmyslové projekty Cíl: Poskytnout uživatelovi jednoduchý visuální modelovací nástroj tak, aby uživatel mohl snadno vytvářet a vyměňovat si smysluplné modely. Poskytnout mechanizmus pro rozšiřování a specializaci modelu. Být nezávislí na programovacím jazyku a vývojovém procesu. Poskytnout formalismus pro pochopení modelovací jazyka. Podpořit rostoucí trh s objektově orientovanými technologiemi. Podpora vývojových koncepcí vyšší úrovně, jako jsou například collaborations, framewors, patterns a components. Integrovat nejlepší dosavadní zkušenosti. (c) 2004 Molhanec, M. 2.3.2008

Obsah UML UML Summary - dokument obsahující stručný úvod do cílů a zdrojů metodologie. UML Semantics - dokument definující sémantiku UML ze tří pohledů Abstraktní syntaxe Dobře navržených pravidel Sémantiky UML Notation Guide - dokument popisující grafickou notaci UML UML Extensions - dokumenty popisující extense základního modelu, současné době existují dvě následující UML Extension for Objectory Process for Software Engineering UML Extension for Business Modeling Object Constraint Language Specifikation - dokument popisující formální jazyk použitý v UML 8 (c) 2004 Molhanec, M. 2.3.2008

Zdroje UML (vybrané) Use-case diagramy podobné diagramům z OOSE (Jacobson). Diagramy tříd (Class diagrams) jsou spojením diagramů z OMT (grafický vzhled), Booche a dalších. Stavové diagramy jsou čerpány od Davida Harela s menšími modifikacemi Activity diagrams jsou čerpány od fy Oracle a Jima Odella. Sekvenční diagramy jsou inspirovány celou řadou před-oo metodologií. Implementační diagramy jsou od Booche. OCL (Object Constraint Language) je postaven na Syntropy a Catalysis. 9 (c) 2004 Molhanec, M. 2.3.2008

Historie UML 10 1994 Grady Booch a Jim Rumbaugh pracující ve firmě Rational Software počali spojovat své renomované metodiky 1995 verze 0.8 (c) 2004 Molhanec, M. 2.3.2008

Historie UML 11 1994 Grady Booch a Jim Rumbaugh pracující ve firmě rational Software počali spojovat své renomované metodiky 1995 verze 0.8 1995 se připojuje Ivar Jacobson a začíná připojování jeho renomované metodiky 1996 verze 0.9 (c) 2004 Molhanec, M. 2.3.2008

Historie UML 12 1994 Grady Booch a Jim Rumbaugh pracující ve firmě rational Software počali spojovat své renomované metodiky 1995 verze 0.8 1995 se připojuje Ivar Jacobson a začíná připojování jeho renomované metodiky 1996 verze 0.9 1996 strategické spojení s OMG (Object Management Group) a řadou dalších firem, např. IBM, HP, MS a dalších 1997 verze 1.0 a 1.1 (c) 2004 Molhanec, M. 2.3.2008

Historie UML 13 1994 Grady Booch a Jim Rumbaugh pracující ve firmě rational Software počali spojovat své renomované metodiky 1995 verze 0.8 1995 se připojuje Ivar Jacobson a začíná připojování jeho renomované metodiky 1996 verze 0.9 1996 strategické spojení s OMG (Object Management Group) a řadou dalších firem, např. IBM, HP, MS a dalších 1997 verze 1.0 a 1.1 1999 verze 1.3 The UML User Guide, The UML reference Guide 2001 verze 1.4 2003 verze 1.5 proces ISO standardizace! (c) 2004 Molhanec, M. 2.3.2008

Historie UML 14 1994 Grady Booch a Jim Rumbaugh pracující ve firmě rational Software počali spojovat své renomované metodiky 1995 verze 0.8 1995 se připojuje Ivar Jacobson a začíná připojování jeho renomované metodiky 1996 verze 0.9 1996 strategické spojení s OMG (Object Management Group) a řadou dalších firem, např. IBM, HP, MS a dalších 1997 verze 1.0 a 1.1 1999 verze 1.3 The UML User Guide, The UML reference Guide 2001 verze 1.4 2003 verze 1.5 proces ISO standardizace! 2004-2005 verze 2.0 reakce na kritiku, rozšíření, zjemnění, (c) 2004 Molhanec, M. 2.3.2008

Rodokmen UML 15 UML 2.0 (c) 2004 Molhanec, M. 2.3.2008

UML 2.0 Nová generace UML Nová struktura dokumentace Definice metamodelu UML Definice celé řady nových diagramů Definice různých rozšíření pro stávající diagramy Nebudeme v našem předmětu využívat!

UML - diagramy

Hlavní části UML Verze 1.x 18 Syntaxe a sémantika, rozšiřitelnost Model Management Class Diagram Use Case Sequence Collaboration Statechart Activity Component Deployment Diagramy OCL - Object Constraint Language Specification (c) 2004 Molhanec, M. 2.3.2008

UML diagramy Bude podrobněji Diagram Význam Určení Class Diagram Vztahy mezi třídami. Analýza, implementace. Use Case Požadavky uživatele. Požadavky. Sequence Časová souslednost. Návrh Collaboration Spolupráce mezi objekty Implementace Statechart Stavy objektů. Analýza. Activity Návaznost procesů. Analýza, návrh. Component Vztahy mezi moduly. Návrh, implementace. Deployment Způsob instalace. Odbavení. 19

Diagram komponent Účel Diagram komponent vyjadřuje architekturu a strukturu softwarového produktu. Vyjadřuje z jakých částí se produkt skládá a jaké jsou mezi těmito částmi vztahy. Užití V úvodní studii pro první vyjádření plánované struktury systému. Bez implementačních podrobností V implementaci pro dokumentaci uskutečněného řešení Včetně všech podrobností

Diagram komponent

Diagram odbavení Účel Diagram komponent vyjadřuje vztah a umístění realizovaného softwarového produktu k prostředí ve kterém bude pracovat. Vyjadřuje, jak a kde je náš produkt umístěn a v jakém je vztahu k ostatním částem systému ve kterém nebo s nímž bude provozován. Užití V dokumentaci administrátora pro instalaci a konfiguraci systému u jeho provozovatele.

Diagram odbavení

Diagram případů užití Účel Diagram případů užití vyjadřuje jednotlivá užití systému. Užití systému je vědomá činnost uživatele za účelem dosažení nějakého užitečného výsledku. Užití systému může být vícenásobná interakce uživatele se systémem. Diagram případů užití není jenom jinak kreslený dříve používaný kontextový diagram! Jedná se jiné paradigma! Užití V dokumentaci požadavků pro vyjádření business nebo IT funkční specifikace.

Diagram případů užití

Diagram tříd Účel Diagram tříd vyjadřuje z jakých tříd se systém skládá a jaké jsou mezi třídami vztahy. Dále vyjadřuje jaké má vlastnosti konkrétní třída. Základní typy vztahů Dědičnost Skládání Prostý vztah Užití V analýze pro popis se kterými daty aplikace pracuje Nahrazuje dříve používané ER diagramy V implementaci pro popis z kterým programových tříd se náš systém skládá Dokumentace OOP Zde pak pracujeme také s metodami a zprávami

Diagram tříd Účel Diagram tříd vyjadřuje z jakých tříd se systém skládá a jaké jsou mezi třídami vztahy. Dále vyjadřuje jaké má vlastnosti konkrétní třída. Základní typy vztahů Dědičnost jakého typu je daný objekt? Skládání Prostý vztah Užití V analýze pro popis se kterými daty aplikace pracuje Nahrazuje dříve používané ER diagramy V implementaci pro popis z kterým programových tříd se náš systém skládá Dokumentace OOP Zde pak pracujeme také s metodami a zprávami

Diagram tříd Účel Diagram tříd vyjadřuje z jakých tříd se systém skládá a jaké jsou mezi třídami vztahy. Dále vyjadřuje jaké má vlastnosti konkrétní třída. Základní typy vztahů Dědičnost Skládání z jakých částí se daný objekt skládá? Prostý vztah Užití V analýze pro popis se kterými daty aplikace pracuje Nahrazuje dříve používané ER diagramy V implementaci pro popis z kterým programových tříd se náš systém skládá Dokumentace OOP Zde pak pracujeme také s metodami a zprávami

Diagram tříd Účel Diagram tříd vyjadřuje z jakých tříd se systém skládá a jaké jsou mezi třídami vztahy. Dále vyjadřuje jaké má vlastnosti konkrétní třída. Základní typy vztahů Dědičnost Skládání Prostý vztah je nějaká souvislost mezi dvěma objekty? Užití V analýze pro popis se kterými daty aplikace pracuje Nahrazuje dříve používané ER diagramy V implementaci pro popis z kterým programových tříd se náš systém skládá Dokumentace OOP Zde pak pracujeme také s metodami a zprávami

Diagram tříd Účel Diagram tříd vyjadřuje z jakých tříd se systém skládá a jaké jsou mezi třídami vztahy. Dále vyjadřuje jaké má vlastnosti konkrétní třída. Základní typy vztahů Dědičnost Skládání Prostý vztah Užití ONTOLOGIE nám říká co je co! V analýze pro popis se kterými daty aplikace pracuje Nahrazuje dříve používané ER diagramy V implementaci pro popis z kterým programových tříd se náš systém skládá Dokumentace OOP Zde pak pracujeme také s metodami a zprávami

Diagram tříd Účel Diagram tříd vyjadřuje z jakých tříd se systém skládá a jaké jsou mezi třídami vztahy. Dále vyjadřuje jaké má vlastnosti konkrétní třída. Základní typy vztahů Dědičnost Skládání Prostý vztah Užití V analýze pro popis se kterými daty aplikace pracuje Nahrazuje dříve používané ER diagramy V implementaci pro popis z kterým programových tříd se náš systém skládá Dokumentace OOP Zde pak pracujeme také s metodami a zprávami

Diagram tříd Účel Diagram tříd vyjadřuje z jakých tříd se systém skládá a jaké jsou mezi třídami vztahy. Dále vyjadřuje jaké má vlastnosti konkrétní třída. Základní typy vztahů Dědičnost Skládání Prostý vztah Užití V analýze pro popis se kterými daty aplikace pracuje Nahrazuje dříve používané ER diagramy V implementaci pro popis z kterým programových tříd se náš systém skládá Dokumentace OOP Zde pak pracujeme také s metodami a zprávami

Diagram tříd

Diagram aktivity Účel Diagram vyjadřuje posloupnost procesů. Proces je nějaká určitá činnost, která má jeden počátek a jeden konec. Diagram aktivy může dále obsahovat rozhodovací bloky. Diagram aktivit dovoluje znázornit paralelismus procesů, podobně jako například Petri-Nets. Je podobný dříve užívanému tzv. vývojovému diagramu. Užití V oblasti požadavků pro popis business procesů V pro vyjádření činnosti jednotlivých případů užití. V implementaci pro dokumentaci algoritmu.

Diagram aktivity

Stavový diagram Účel Stavový diagram vyjadřuje stav nějakého objektu. Stav objektu lze také vyjádřit stavovými proměnnými. Není vhodné se snažit vyjádřit stav systému jako celku, pokud ho nemůže chápat jako jeden konkrétní objekt. Mezi stavy jsou přechody (aktivity), které jsou aktivovány podmínkami! Užití Nejčastěji v návrhu na podrobnější popis chování objektů.

Stavový diagram

Sekvenční diagram Účel Sekvenční diagram vyjadřuje komunikaci mezi objekty s ohledem na časovou posloupnost. Vhodný na vyjádření protokolů komunikaci, například login, výběr z bankomatu. Užití Nejčastěji v oblasti návrhu.

Sekvenční diagram

Diagram spolupráce Účel Diagram spolupráce vyjadřuje vztahy mezi třídami a objekty z hlediska zasílání zpráv mezi nimi. Užití Nejčastěji pro popis implementace objektově orientované aplikace.

Diagram spolupráce

Závěr

Závěr UML obsahuje velké množství metod (diagramů), které je možné využít pro popis softwarového systému ve všech fázích softwarového procesu, tj. v oblasti požadavků, analýzy, návrhu, implementace i odbavení. Důležité je rozumět co mají jednotlivé diagramy v různých fázích softwarového procesu vyjadřovat. Přesto si ukážeme, že ani takové velké množství metod (diagramů) není dostatečné pro tvorbu webových systémů. Webové metodiky přidávají další metody (diagramy). Navigační a prezentační. Přesto je možné stále UML používat díky jeho vlastní rozšiřitelnosti profily a stereotypy.

Odkazy

Odkazy UML na Wikipedii http://cs.wikipedia.org/wiki/uml http://en.wikipedia.org/wiki/unified_modeling_language