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 metodiky, jak analyzovat, specifikovat či navrhovat programové systémy.
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ů. Dodiagramů se kreslí pouze věci podstatné pro grafické vyjádření návrhu, části návrhu předtí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, abyprogramá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).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. V této souvislosti se velmi často používá pojemModel Driven Architecture (MDA), což je další standard skupinyOMG, 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ř. 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ší standardOMG). Pro výměnu metamodelů se používáXMI – na XML založený standard (součást standardu UML).
UML 2.0 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 jazykSystems 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.
Výsledkem jejich práce byl návrh UML (verze 0.9) a metodika RUP (Rational Unified Process). 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í. 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.1 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.[1]
IVANSKÝ, Dominik.Využití UML při tvorbě informačních systémů. 2023 [cit. 2024-03-20]. Bakalářská práce. Slezská univerzita v Opavě. Vedoucí práce doc. RNDr. Ing. Roman Šperka, Ph.D.Dostupné online.