Chtěli byste vědět, jak se rodí rozsáhlé webové projekty? Jak dokáží vývojáři zvládnout složité a komplexní problémy? Jednou z cest je UML. Nahlédněte pod pokličku této technologie!
UML v oblasti webových projektů I.
UML je grafický jazyk pro vizualizaci, specifikaci, konstruování a dokumentaci softwarových systémů. UML nabízí standardní postup pro psaní návrhů systémů, včetně konceptuálních součástí, jako jsou obchodní procesy a systémové funkce, stejně jako konkrétních součástí, jako jsou příkazy programovacího jazyka, schémata databází a znovupoužitelné součásti softwaru.
(volně přeložil autor)
"The Unified Modeling Language (UML) is a graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system. The UML offers a standard way to write a system's blueprints, including conceptual
things such as business processes and system functions as well as concrete things such as programming language statements, database schemas, and reusable software components." (The OMG specification states)
Pokud jste si přečetli výše uvedenou definici, nejste si zřejmě příliš jistí tím, co vlastně UML je a k čemu slouží. Pokud jste již s UML seznámeni, pak jste se nedozvěděli nic nového. Začněme tedy úvodem pro ty, kteří o UML slyší poprvé.
UML je zjednodušeně řečeno soubor nejrůznějších typizovaných grafů, které mají zachycovat vztahy, případně postupy, které lze nalézt v komplexních reálných systémech. Od složitých organizačních jednotek až po jednoduché problémy. UML je navrženo natolik rozsáhle, že jím lze modelovat či dokumentovat prakticky jakýkoliv systém. Díky této své rozmanitosti proto po úvodním nadšení často přichází fáze „zahlcení", kdy začátečník v pozici analytika neví „co dřív". Pokud však tuto fázi překoná, dostává do rukou opravdu mocný nástroj.
USE CASE
Při řešení téměř všech systémů, které mají používat lidé (ale i těch ostatních) je prvním krokem vytvoření tzv. USE-CASE modelu, případně, chcete-li, USE-CASE diagramu. Tento poněkud nejasný název (USE - CASE) se někdy překládá také jako „případ užití". To už je poněkud srozumitelnější, ale ještě ne dost. Pojďme se tedy podívat na jednoduchý systém, který by se dal specifikovat následujícími větami:
Jsme malá škola a potřebujeme vytvořit softwarový systém, který by nám pomohl evidovat úspěchy našich žáků mimo školu.
Tento jednoduchý systém bychom mohli začít jistě přímo programovat, ale rozumnější je nejdříve vše zakreslit do USE CASE diagramu, který nám dá jasnou představu, co všechno bude náš systém „umět".
Již na první pohled je jasné, že součástí celého systému bude „něco kolem žáků". Máme tedy první skupinu „případů užití". Co všechno s žáky budeme provádět? Jistě budeme potřebovat zakládat, mazat a editovat jednotlivé žáky. Ale můžeme požadovat i další „případy užití". Jako příklad si můžeme vzít hromadný import dat z textových souborů (například při začátku školního roku). Myslíte, že je to vše? Zdaleka ne. Musíme přeci se záznamy ještě nějak rozumně pracovat. Přibude nám tedy ještě procházení všemi evidovanými žáky, vyhledávání a konečně práce se evidovanými úspěchy. Ovšem evidované úspěchy nám opět tvoří celou skupinu USE - CASE. Nalezneme zde opět založení, smazání a editaci „úspěchu" a opět i vyhledávání a procházení všemi úspěchy. Procházení úspěchy je ovšem poněkud nejasný pojem. Jedná se o všechny úspěchy, nebo jen úspěchy žáka?
V takovém případě by nejspíše bylo vhodné vytvořit dva USE - CASE. Jeden pro procházení všemi úspěchy a jeden pro procházení úspěchy žáka. Nyní tedy máme hrubou představu a můžeme zakreslit USE - CASE diagram, který nám ukáže hlavní funkčnosti našeho nového systému...
Pozn: Pro účely vytvoření tohoto článku byla použita 30-ti denní trial verze programu Enterprise Architect 5.0