Jan Smolík UML.

Slides:



Advertisements
Podobné prezentace
Praha, Brno Nové komunikační možnosti systému Kramerius © Qbizm technologies, a.s. René Michálek
Advertisements

Normalizace Řada analytiků se mylně domnívá, že pro každý objekt existuje jedno jediné univerzálně použitelné nejlepší řešení bez ohledu na řešený problém.
Stručný úvod do UML.
Přednáška č. 1 Úvod, Historie zpracování dat, Základní pojmy
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Ing. Monika Šimková. Máme-li data reprezentovat v databázi, jak vybereme jejich strukturu na konceptuální úrovni? Konceptuální modelování analyzuje požadavky.
Metamodelování OpenSoul Metamodeler UML profily v EA Albert Zentner Aquasoft
Historie UML Bc. Lukáš Ščurek. Historie UML 70. léta Vznik prvních objektově orientovaných jazyků První objektově orientové metody anylýzy a návrhu Polovina.
Norma IEC Komunikační sítě a systémy v podřízených stanicích
Metodika vývoje IS Jan Smolík.
C# pro začátečníky Mgr. Jaromír Osčádal
Podniková Informatika Přednáška 1
A4M33NMS Návrh a modelování softwarových systémů
Objektová analýza a návrh
Metody zpracování vybraných témat (projektů)
the Unified Modeling Language
Podniková Informatika Přednáška 2
Jiří Mašek BIVŠ Praha Obecný popis SCA Podporuje modelování aplikací a komponent v rámci celého životního cyklu. Modelování podnikových procesů.
State. State – kontext a problém Kontext  chování objektu má záviset na jeho stavu, který se typicky mění za běhu Neflexibilní řešení  metody obsahují.
Vizuální modelování Vlastnosti “Informace v obrázcích”
X13PMT 2. seminář Ing. Martin Molhanec, CSc. Garant předmětu ČVUT – FEL, K13113.
KONCEPTUÁLNÍ MODELOVÁNÍ
Objektová analýza a projektování IS. Projektování IS Projektování IS je hledání vnitřní (abstraktní) struktury a vnějších vztahů reálného (existujícího.
ONTOLOGIE a KONCEPTUÁLNÍ MODELOVÁNÍ (stručný úvod)
DATOVÉ MODELY (c) Tralvex Yeap. All Rights Reserved.
Databázové systémy přednáška+cvičení
13AMP 9. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled ADA ADA Java Java.
unified modelling language sjednocený modelovací jazyk
Modelovací jazyk UML. Jazyk UML je víceúčelový modelovací jazyk, který byl vyvinut speciálně pro účely softwarového inženýrství. Obsahuje formalizovaný.
Jaroslav Šnajberk, Přemek Brada
Databázové systémy Architektury DBS.
Metainformační systém založený na XML Autor: Josef Mikloš Vedoucí práce: Ing. Jan Růžička, Ph.D. V/2004.
Databázové systémy Přednáška č. 6 Proces návrhu databáze.
Modelování a simulace MAS_02
Možnosti modelování požadavků na informační systém
B. Miniberger, BIVŠ Praha 2009
Dokumentace objektů a zveřejnění funkcí
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ FAKULTA STROJNÍ ÚSTAV PŘÍSTROJOVÉ A ŘÍDICÍ TECHNIKY ODBOR AUTOMATICKÉHO ŘÍZENÍ A INŽENÝRSKÉ INFORMATIKY Aplikace objektově.
Geoinformační technologie Geografické informační systémy (GIS) Výukový materiál pro gymnázia a ostatní střední školy © Gymnázium, Praha 6, Nad Alejí 1952.
Databázové modelování
Metodika objektového přístupu při tvorbě překladačů. Marek Běhálek Informatika a aplikovaná matematika FEI VŠB-TU Ostrava.
Srovnání Petriho sítí a HDA David Ježek. Vícedimensionální automaty Klasické automaty –nemají metodu jak vyjádřit „pravou“ souběžnost událostí A, B 0.
Objektově orientovaný přístup (úvod)
State Transition Diagram a model řízení 5.Cvičení IS/IT.
XML a metainformační systémy (pro geoinformace) Ing. Jan Růžička Institut ekonomiky a systémů řízení, odd.GIS VŠB-TU Ostrava, HGF tř. 17.listopadu
© Doc. Miniberger, BIVŠ UML modelování Webové služby představují sadu standardů umožňující komunikaci aplikací bez ohledu na platformu, na které jsou provozovány.
13DFA Požadavky na semestrální projekt. Co bude projekt obsahovat Odborný článek Analýzu okolí systému Datovou analýzu Funkční analýzu.
Analýza informačního systému. Podrobně zdokumentovaný cílový stav Paramentry spojené s provozem systému – Cena – Přínosy – Náklady a úspory – …
OPERAČNÍ SYSTÉMY.
UML Jan Zachrla.
Databázové systémy Datové modely.
BPMN Business process modeling notation
Petr Šmíd Obsah prezentace Co je to XML ?
David Osička OSI011 UML – přehled, notace VŠB - Technická univerzita Ostrava Fakulta elektrotechniky a Informatiky Katedra Informatiky.
ANALÝZA A PROJEKTOVÁNÍ SYSTÉMŮ Objektová analýza a návrh
Databázové systémy Úvod, Základní pojmy. Úvod S rozvojem lidského poznání roste prudce množství informací. Jsou kladeny vysoké požadavky na ukládání,
Geografické informační systémy pojetí, definice, součásti
PRINCeGON – metodika řízení projektů Ministerstva vnitra
Business Activity Monitoring Jiří Kolář. Pojmy a zkratky ● SOA ● Servis Oriented Architecture ● BPMS ● Business Process Management System ● BAM ● Business.
České vysoké učení technické v Praze Fakulta dopravní Ústav dopravní telematiky Geografické informační systémy Doc. Ing. Pavel Hrubeš, Ph.D.
Vypracování národních norem kódování pro český systém DRG číslo projektu CZ2005/017/ Program Evropské Unie Transition Facility pro Českou.
A jeho praktická aplikace Štěpán Vacek Univerzita Hradec Králové Liberecké informatické fórum 2010.
IS
Operační systémy 9. Spolupráce mezi procesy
Tradiční metodiky vývoje softwaru
Busines Object Relation Modeling
Geografické informační systémy
UML teorie k zápočtovému testu a ke zkoušce IT
Diagramy aktivit Michale Blaha, James Rumbaugh: Object-Oriented Modeling and Design with UML®, Second Edition, Pearson – Prentice Hall, 2005.
Monitor Object 1.
Transkript prezentace:

Jan Smolík UML

UML Communist Party of Nepal (Unified Marxist-Leninist) Unified Modeling Language University of Massachusetts Lowell User-mode Linux Zdroj: Wikipedia

Unified modelling language Neproprietární jazyk pro objektové modelování „pro obecné účely“ Definovaný Object Management Group (OMG) Nejedná se o metodiku ani o metodu, ale o soustavu modelovacích prvků použitelných v různých metodách

Historie Rational Grady Booch (Booch Method) 1994 přišel James Rumbaugh (Object Oriented Analysis) 1995 přišel Ivar Jakobson (Object Oriented Software Engineering) Kompromisní řešení mezi jejich objektovými metodami Jazyk adaptován OMG jako návrh UML Partners (úsilí vedeno touto trojicí)

Čtyřvrstevná hierarchie metamodelů Meta-metamodel (M3) (MOF) Metamodel (M2) (UML) Instance meta-metamodelu Model (M1) (váš model v UML) Instance metamodelu M0 (konkrétní instance tříd ve vašem modelu) Runtimová instance modelu

Abstraktní vs. konkrétní syntaxe Abstraktní syntaxe Definuje metatřídy, jejich vztahy a omezení Konkrétní syntaxe Definuje konkrétní notaci

Definice UML Vytvořena Object Management Group (OMG) Zahrnuje dvě části Infrastruktura Core Superstruktura Vlastní popis UML

Role společného Core

Meta-Object Facility (MOF) Standard pro popis metamodelů (jazyk M3) Založen na UML:Core Je v něm popsáno UML Umožňuje popis abstraktní syntaxe (nikoliv konkrétní)

Common Warehouse Metamodel (CWM) Modeluje metadata v datových skladech Nerelační prostředí Multidimensionální prostředí Kromě popisu dat umožňuje zaznamenat odkud data přišla a jak jsou vytvářena

Profily Umožňují rozšíření UML Nelze odstranit existující omezení, lze jen přidat nová

4 vrstvy metamodelů (př.)

Struktura Core Abstraktní třídy (element) Konkrétní třídy pro znovupoužití (třída, asociace) Hlavně třídy pro MOF

Hierarchie sémantiky UML

Diagramy UML

Struktura – třídy Elementy – uzly Třída Rozhraní Instance Package (balíček) – slouží pro seskupení elementů

Struktura – třídy Elementy – cesty Agregace Kompozice (agregované elementy nedílnou součástí) Asociace Závislost (element potřebuje jiný ke své existenci) Specializace Realizace (od třídy k instanci) Realizace rozhraní

Struktura – třídy Elementy – cesty Užití Merge package Import package

Omezení (constraint) XOR Omezení atributu Možno volným textem nebo pomocí jazyka OCL Omezení jako poznámka

Asociace Binární a ternární asociace

Varianty diagramů struktury tříd Nejsou jasně definované hranice V každé variantě lze užívat všechny elementy Diagram tříd asociace, agregace, třída, kompozice, závislost, generalizace, rozhraní, realizace, realizace rozhraní Diagram objektů Instance, link (= asociace instancí) Diagram pekidžů Pekidž, závislost, import a merge pekidže

Diagram pekidžů – příklad

Diagram instancí – příklad

Diagram komponent – notace Komponenta Komponenta s poskytovaným rozhraním Komponenta vyžadující rozhraní Propojení rozhraní

Diagram komponent Jeden ze strukturních diagramů – možno používat všechny strukturní prvky Obvykle Komponenta, rozhraní, třída, realizace

Diagram komponent – příklad

Diagram kompozitních struktur – notace Part (část) – element obsažený ve spolupráci Colaboration (spolupráce) –znázorňuje strukturu spolupracujících elementů Konektor – spojuje jednotlivé části kolaborace

Diagram kompozitních struktur – příklad

Composite structure

Deployment diagram – notace Artifakt – kus sofware Node – něco na čem software běží Device – fyzické zařízení Zde znázorněno s na něm běžícím prostředím J2EE

Deployment diagram

Souvislost strukturních pekidžů UML

UML – modely chování

Diagramy popisující chování

Souvislosti pekidžů popisujících chování

Use Case diagram Diagram užití Jediný diagram zobazující funkční strukturu Často kritizován jako slabina UML

Use Case Diagram Zdroj: Wikipedia

Use Case Diagram Include – případ užití může zahrnovat i další (například opakující se ve více případech) Extend Realizace generalizace a specializace v use-case modelu Užití Volitelné chování Chování za specifických podmínek či podle volby uživatele Příklad: Správa zákazníků – nový, editace, zrušení

Use case Případy užití jsou detailnějí popsány ve slovních scénářích Možnosti Číslované body Čistě slovní popis Pseudokód Zaměřit na problém ne programování! Základ pro testovací scénáře

Use Case - problémy Spíš menší počet případů užití, jinak nepřehledné Většina informací ve slovním popisu

Stavový diagram – elementy Přechod mezi stavy popsán jako Událost / Činnost (metoda)

Stavový diagram Obecně pro popis přechodu mezi stavy objektu V této metodice k popisu životních cyklů tříd Přechod mezi stavy je vyvolán událostí, která spustí nějakou činnost (metodu třídy) Každá třída má počáteční stav a jeden nebo více koncových

Příklad

Activity partition – příklad

Activity partition -- příklad

Diagramy interakce Sequence diagram Communication diagram Interaction overview diagram Timing diagram Ukazují interakce a komunikaci mezi objekty Všechny tyto diagramy sdílejí metadřídy (stejně jako je tomu u diagramů popisujících strukturu)

Sekvenční diagram Asynchronní zpráva Životní dráha objektu Návratová hodnota Rámeček interakce Název interakce Ztracená zpráva (odeslána, ale není jasné, kdo ji přijme) Nalezená zpráva (odesílatel neznámý, vyšetřování pokračuje) Execution occurance Překrývající se execution occurance

Oddělovač variant Combined Fragment Alt – Alternatives – výběr z několika možností postupů Opt – Option – operace buď provedena nebo ne Par -- Parallel – paralelní zpracování Seq, strict – sekvenčí zpracování Neg – negative – tato cesta není možná Critical -- Critical section – nemůžou běžet dvě instance najednou Loop – cyklus Break Assert -- assertion

Combined fragment – příklad

Interaction Use Představuje instanci interakce Vykonání konkrétní interakce s naplněnými atributy „Sbalený tvar“ interakce

Příklad

Communication diagram Pro jednodušší případy s centrální komunikací Nelze používat strukturovací nástroje jako combined fragment nebo interaction use Výhodou je koncentrovanost Nevýhodou je jistá statičnost popisu Koncepty jsou sdílené s diagramem interakcí

Grafické prvky Interakce – stejná jako v diagramu interakcí Lifeline – nemá čáru, ale jde o stejný koncept Zpráva – včetně pořadového čísla a názvu

Interaction overview Spojuje jednotlivé interakce pomocí prvků aktivity diagramů Dokáže logicky zpřehlednit složité interakce Velmi rychle nabývá na objemu Užívají se prvky aktivity diagramu, interakce a užití interakce

Interaction overview

Interaction overview Některé CASE nástroje interakce ukazují ve sbalené podobě, kterou je možno rozkliknout

Timing diagram

Timing diagram