UML je akronym z Unified Modeling Language, čo je v softvérovom inžinierstve grafický jazyk pre vizualizáciu, špecifikáciu, navrhovanie a dokumentáciu programových systémov. UML ponúka štandardný spôsob zápisu ako návrhov systému vrátane konceptuálnych prvkov ako sú business procesy a systémové funkcie, tak konkrétnych prvkov ako sú príkazy programovacieho jazyka, databázové schémy a znovupoužiteľné programové komponenty.
Vytvorenie UML bolo pôvodne motivované túžbou štandardizovať rozdielne notačné systémy a prístupy k navrhovaniu softvéru. Vyvinuli ho Grady Booch, Ivar Jacobson a James Rumbaugh v spoločnosti Rational Software v rokoch 1994 – 1995, s ďalším vývojom, ktorý viedol až do roku 1996. Dnes je UML akceptovaná Object Management Group (OMG) ako štandard pre vývoj softvéru pre modelovanie.
Inými slovami povedané, UML diagram je diagram založený na UML jazyku, ktorého cieľom je vizuálna reprezentácia systému spolu s jeho hlavnými aktérmi, rolami, akciami, artefaktmi alebo triedami, aby sme lepšie porozumeli, zmenili, udržiavali alebo dokumentovali informácie o systéme.
Obrázok stojí za tisíc slov, tento výraz sa úplne hodí k popisu UML.
- Štandard UML definuje Object Management Group (OMG).
- UML zjednodušuje a podporuje proces vývoja softvéru pomocou štandardných vizuálnych modelov.
- UML nepredstavuje metodiku, ako analyzovať a navrhovať informačné systémy a aplikácie.
- Všeobecne štandard UML umožňuje popisovať biznis procesy, funkcie systému, dátové modely a komponenty.
- Jazyk je založený na objektovo orientovanom prístupe k analýze a návrhu a je tiež vhodný pre tvorbu rozsiahlych a komplexných informačných systémov.
Môže byť zaujímavé toto intro do UML …
Design
UML ponúka spôsob vizualizácie architektonických plánov (blueprints) systému prostredníctvom diagramov, vrátane prvkov ako napríklad:
- akékoľvek aktivity (pracovné);
- jednotlivé komponenty systému;
- a ako môžu interagovať s inými softvérovými komponentmi;
- ako bude systém fungovať;
- ako entity interagujú s ostatnými (komponenty a rozhrania);
- externé užívateľské rozhranie.
Hoci bol pôvodne určený pre objektovo orientovanú projektovú dokumentáciu, UML sa rozšíril na väčšiu skupinu projektovej dokumentácie (ako je uvedené vyššie) a zistilo sa, že je užitočné v mnohých kontextoch.
Diagramy
UML 2 má veľa typov diagramov, ktoré sú rozdelené do dvoch kategórií. Niektoré typy predstavujú štrukturálne informácie a ostatné predstavujú všeobecné typy správania, vrátane niekoľkých, ktoré predstavujú rôzne aspekty interakcií. Tieto diagramy je možné kategorizovať hierarchicky, ako je to znázornené na nasledujúcom diagrame triedy:
Rôzne diagramy sa používajú pre rôzne typy modelovania UML. Existujú tri dôležité typy modelovania UML.
Structural Modeling
Štrukturálne modelovanie zachytáva statické vlastnosti systému. Ide o nasledujúce diagramy (použité angl. názvy):
- Classes diagrams
- Objects diagrams
- Deployment diagrams
- Package diagrams
- Composite structure diagram
- Component diagram
Štrukturálny model predstavuje rámec pre systém a tento rámec je miestom, kde existujú všetky ostatné komponenty. Class diagram, component diagram a deployment diagrams sú preto súčasťou štrukturálneho modelovania. Všetky predstavujú prvky a mechanizmus ich zostavenia.
Štrukturálny model nikdy nepopisuje dynamické správanie systému. Class diagram je najčastejšie používaným štrukturálnym diagramom.
Behavioral Modeling
Behaviorálny model popisuje interakciu v systéme. Predstavuje interakciu medzi štrukturálnymi diagramami. Behaviorálne modelovanie ukazuje dynamickú povahu systému. Pozostáva z nasledujúcich digramov:
Všetky vyššie uvedené ukazujú dynamickú postupnosť toku (dynamic sequence of flow) v systéme.
Typy UML diagramov a popis nájdete aj tu.
Architectural Modeling
Architektonický model predstavuje celkový rámec systému. Obsahuje štrukturálne aj behaviorálne prvky systému. Architektonický model možno definovať ako blueprint (plán) celého systému. Package diagram spadá pod architektonické modelovanie.
UML – Základné označenia (notations)
Zápisy UML sú najdôležitejšími prvkami pri modelovaní. Efektívne a vhodné používanie zápisov je veľmi dôležité na vytvorenie úplného a zmysluplného modelu. Model je k ničomu, pokiaľ jeho účel nie je správne znázornený.Preto by sa od samého začiatku mali zdôrazňovať učenie zápisov. Pre veci a vzťahy sú k dispozícii rôzne zápisy. Diagramy UML sa vytvárajú pomocou zápisov vecí a vzťahov. Rozšíriteľnosť je ďalšou dôležitou vlastnosťou, ktorá zvyšuje výkonnosť a flexibilitu UML.