Unified Modeling Language

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

UML, Unified Modeling Language je v softwarovém inženýrství grafický jazyk pro vizualizaci, specifikaci, navrhování a dokumentaci programových systémů. UML nabízí standardní způsob zápisu jak návrhů systému včetně konceptuálních prvků jako jsou business procesy a systémové funkce, tak konkrétních prvků jako jsou příkazy programovacího jazyka, databázová schémata a znovupoužitelné programové komponenty.

UML podporuje objektově orientovaný přístup k analýze, návrhu a popisu programových systémů. UML neobsahuje způsob, jak se má používat, ani neobsahuje metodiku(y), jak analyzovat, specifikovat či navrhovat programové systémy.

Standard UML definuje standardizační skupina Object Management Group (OMG).

...

Způsoby použití UML

;Kreslení konceptu UML diagramy Při tomto použití je UML podpůrným nástrojem pro komunikaci mezi vývojáři a pro zaznamenání myšlenek a návrhů. +more Do diagramů se kreslí pouze věci podstatné pro grafické vyjádření návrhu, části návrhu před tím, než se začne programovat.

Důležitá je srozumitelnost, rychlost nakreslení a snadnost změny či navržení alternativ řešení.

Kreslení detailních návrhů

Cílem je zaznamenat kompletní návrh či kompletní realizaci. Při kreslení návrhu by měl analytik obsáhnout všechny prvky tak, aby programátor byl schopen vytvořit program bez velkého přemýšlení nad věcnou oblastí (pro programátora by neměla vzniknout potřeba konzultace s uživatelem). +more Při kreslení detailních návrhů se obvykle používají specializované programy (CASE), které jsou schopny sdílet informace mezi jednotlivými modely a kontrolovat konzistenci návrhu. Při dokumentaci programu se často používají nástroje pro generování diagramů z vlastního kódu aplikace.

UML jako programovací jazyk

Při tomto použití vývojář nakreslí UML diagramy, ze kterých se vygeneruje přímo spustitelný kód. Toto vyžaduje specializované nástroje a velmi přesné vyjadřování v UML diagramech. +more V této souvislosti se velmi často používá pojem Model Driven Architecture (MDA), což je další standard skupiny OMG, který se snaží standardizovat použití UML jako programovacího jazyka.

Metamodel

Tento pohled používají autoři UML a autoři CASE nástrojů - nedívají se na UML jako na diagramy, pro ně je základem UML metamodel (diagramy jsou pouze grafickou reprezentací metamodelu). Při tomto přístupu se často používá pojem model místo pojmu diagram, např. +more místo diagramu tříd se používá pojem model tříd. Metamodel se popisuje pomocí Meta-Object-Facility (MOF) - abstraktního jazyka pro specifikaci, vytváření a správu metamodelů (další standard OMG). Pro výměnu metamodelů se používá XMI - na XML založený standard (součást standardu UML).

Součásti UML

Standard ve verzi 2. 0 se skládá ze čtyř částí: * UML 2. +more0 SuperStructure - popis UML z hlediska uživatele (analytik/programátor). Tato část popisuje jednotlivé diagramy. * UML 2. 0 Infrastructure - metamodel stojící v pozadí za UML, specifikovaný pomocí Meta-Object Facility (MOF). * UML 2. 0 Object Constraint Language (OCL) - jazyk pro specifikaci vstupních a výstupních podmínek, invariantů v jednotlivých diagramech. * UML 2. 0 Diagram Interchange - popis XML struktur pro výměnu konkrétních modelů mezi jednotlivými modelovacími nástroji.

Vedle vlastního standardu existují UML profily - přizpůsobení UML pro jednotlivé oblasti: * UML Profile for CORBA® * UML Profile for CORBA Component Model (CCM) * UML Profile for Enterprise Application Integration (EAI) * UML Profile for Enterprise Distributed Object Computing (EDOC) * UML Profile for QoS and Fault Tolerance * UML Profile for Schedulability, Performance, and Time * UML Testing Profile

Z UML též začínají vznikat různé dialekty - modelovací jazyky pro určité oblasti, které přebírají část UML, kterou modifikují a doplní o prvky specifické pro konkrétní oblast. Příkladem může být jazyk Systems Modeling Language (SysML), určený pro specifikaci, analýzu, návrh, verifikaci a validaci různých systémů (technické, programové, informační, procesní, zabezpečovací, …).

Též většina metodik pro analýzu a návrh systémů upřednostňuje části z UML a doplňuje je o další prvky.

Diagramy

diagramu tříd (generalizace)

Diagramy jsou nejznámější a nejpoužívanější částí standardu. Následuje přehled diagramů v UML 2. +more0 včetně jejich rozčlenění do skupin: * strukturní diagramy: ** diagram tříd ** diagram komponent ** composite structure diagram ** diagram nasazení ** diagram balíčků ** diagram objektů, též se nazývá diagram instancí ** diagram profilů * diagramy chování: ** diagram aktivit ** diagram případů užití ** stavový diagram (UML) * diagramy interakce: ** sekvenční diagram ** diagram komunikace ** diagram interakcí ** diagram časování.

Historie UML

Vývoj UML začal v roce 1994, kdy Grady Booch a Jim Rumbaugh začali ve firmě Rational Software (nyní součást firmy IBM) spojovat své metodiky - Booch a OMT (Object Modeling Technique). V září 1996 do firmy Rational Software vstoupil Ivar Jacobson se svojí metodologii OMSE (Object-Managed Software Engineering).

Výsledkem jejich práce byl návrh UML (verze 0. 9) a metodika RUP (Rational Unified Process). +more Standardizační organizace OMG v roce 1997 přijala jako standard UML verze 1. 1 ve které byly začleněny prvky z dalších metodik (označení UML 1. 0 se používá pro návrh, který poslala firma Rational Rose standardizační komisi). Postupně se upřesňovala specifikace a vznikaly další verze 1. 2 (1998), 1. 3 (1999), 1. 4 (2001) a 1. 5 (2002). Větší změny byly začleněny do verze 1. 3.

Od roku 2001 OMG připravovala verzi 2. 0, která přinesla podstatná rozšíření. +more Text první části (SuperStructure) byl schválen na podzim 2004, ale ještě nebyla dokončena formální úprava dokumentu. UML specifikace verze 2. 4. 1 byla formálně vydána v srpnu 2011. UML 2. 5 byla vydána v říjnu 2012 jako „In progress“ verze a byla oficiálně vydána v červnu 2015.

Formalní verze 2. 5. +more1 byla přijata v prosinci 2017, stejně jako OCL verze 2. 4. Mezinárodní organizací pro normalizaci (ISO) tyto dokumenty přijala jako standard ISO/IEC 19505.

Odkazy

Reference

Externí odkazy

[url=http://www.uml.org/]Stránky OMG věnované UML (anglicky)[/url] * [url=https://www.omg.org/spec#all]Katalog norem OMG[/url]

Kategorie:Notace Kategorie:Softwarové inženýrství Kategorie:Standardy ISO/IEC Kategorie:Standardy ISO/IEC podle jména Kategorie:Reprezentace znalostí

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top