U M L diagramy v Astah*
Ukázkový příklad objektové analýzy a návrhu v CASE nástroji Astah*
Autorka
Bc. Iveta Králová
Základy práce v nástroji Astah* professional
V následujících podkapitolách jsou popsány základy práce v nástroji Astah* edice professional. Cílem není vyčerpávajícím způsobem popsat funkcionalitu programu, ale spíše vystihnout to hlavní, co skutečně, hlavně začínající, uživatel upotřebí. Pro zpracování této části byly použity zdroje [8] a [24].
Instalace
Postup instalace je popsán na stránkách https://kitscm.vse.cz/ , ale je dostupný jen po přihlášení, proto jej zde uvádím:
  1. Ze stránky Astah* si stáhněte poslední verzi produktu Astah* professional a tu nainstalujte.
  2. Pokud máte možnost přihlášení na https://kitscm.vse.cz/, v levém menu v sekci Informace klikněte na odkaz [Licence astah*]. Ve spodní části stránky naleznete licenční soubor astah_professional_license.xml, který si stáhněte.
  3. Spusťte program Astah* professional. Při spuštění se Vám objeví dotaz na zadání licenčního souboru jako na obrázku 2.2. Zvolte [Set License Key] a vyberte stažený licenční soubor. [23]
Výběr licenčního souboru
Obrázek 2.2 Výběr licenčního souboru, zdroj: prostředí programu Astah* professional dle [23]
První spuštění
Po dokončení instalace se objeví úvodní obrazovka, jejíž ústřední část tvoří černá plocha. Levý panel se složkou Welcome, jako na obrázku 2.3, vyvoláte přes hlavní nabídku [Help] – [Welcome to Astah* professional]. Na panelu Welcome je aktivní záložka Structure, pod níž si můžete prohlédnout tři ukázky motivačních myšlenkových map (Mind Map), vztahujících se k samotnému programu:
  • 02_Elements of Mind Maps [Root Topic] - mapa prvků myšlenkových map,
  • 03_A Guide to Shortcut Keys - mapa klávesových zkratek programu,
  • Welcome to Astah* professional - mapa toho, co nabízí Astah* professional.
Uvítací obrazovka
Obrázek 2.3 Uvítací obrazovka, zdroj: prostředí programu Astah* professional
Nový projekt a popis rozvržení obrazovky
Pro demonstraci pracovního rozvržení obrazovky programu si nejprve založte nový projekt:
  1. V hlavní nabídce vyberte [File] – [New], nebo můžete zvolit ikonu bílého listu [Create new file] vlevo nahoře na nástrojové liště.
  2. Nový projekt je založen s výchozím názvem no_title a s jedním předpřipraveným balíčkem java. Změnit jméno projektu můžete při ukládání.
Pozn.: Pro úplnost, nový projekt je také možné vytvořit ze šablony – v hlavní nabídce vyberete [File] – [New by Template].
Do projektu nyní můžete přidávat jednotlivé diagramy, které ve výsledku budou tvořit model navrhované aplikace. Všechny tyto diagramy mohou být vytvořeny jako součást balíčků. Následuje postup vytvoření balíčku a do něj vložení diagramu tříd:
  1. Pravým tlačítkem myši klikněte na složku projektu (výchozí no_title, nebo Vámi přiřazený název při ukládání), vyberte [Create Model] – [Add Package] a pojmenujte si balíček, např. balicek1.
  2. Dvě alternativy vložení diagramu tříd do balíčku:
    a) Pravým tlačítkem myši klikněte na balicek1 a vyberte [Create Diagram] – [Add Class Diagram].
    b) Označte balíček a v hlavní nabídce vyberte [Diagram] – [Class Diagram].
Po vytvoření diagramu tříd bude prostředí vypadat tak, jak je znázorněno na obrázku 2.4.
Rozvrzeni obrazovky pri praci
Obrázek 2.4 Rozvržení obrazovky při práci, zdroj: prostředí programu Astah* professional
Následuje stručný popis jednotlivých částí obrazovky, očíslovaných na obrázku 2.4.
  1. Management view se skládá z hlavního menu a nástrojové lišty. Hlavní menu obsahuje funkce vztahující se k celému projektu jako je např. práce se souborem, editace, zobrazení. Na nástrojové liště jsou umístěny nejčastěji využívané funkce.
  2. Project view poskytuje celkový přehled projektu. Můžete zde přepínat mezi záložkami Structure, Inheritance, Map, Diagram, Switch a Alias. V tabulce 2.1 je popsáno, k čemu tyto záložky slouží.
    Záložka Structure Zobrazuje modely pomocí stromovité struktury, kdy je možné některé operace s prvky ve struktuře vyvolat prostřednictvím lokálního menu.
    Záložka Inheritance Zobrazuje modely ve stromovité struktuře na základě vztahu dědičnosti mezi třídami.
    Záložka Map Pohled na diagram, který je právě otevřený v editoru diagramu. Modře vybarvená oblast značí, která část diagramu je právě vidět v editoru. Posunout ji můžete tažením levým tlačítkem myši a změnit její velikost můžete tažením pravým tlačítkem myši, což je velmi užitečné při tvorbě rozsáhlých diagramů.
    Záložka Diagram Seznam všech diagramů v projektu. Výběrem z tohoto seznamu je možné diagram zobrazit v editoru diagramu.
    Záložka Switch Slouží k vyhledávání prvků modelu nebo k nahrazování řetězců v názvech prvků modelu a neplatných odkazech.
    Záložka Alias Pohled, který slouží k nastavení aliasů prvků modelu v projektu.
    Tabulka 2.1 Záložky v Project view, zdroj: autor
  3. Editor diagramu představuje stěžejní část okna, kde se vytváří a upravují jednotlivé diagramy a modely. Můžete mít otevřeno i několik diagramů, mezi nimiž lze přepínat pomocí záložek.
  4. Property view zobrazuje vlastnosti jednotlivých prvků modelu a umožňuje jejich editaci. Jeho podoba je závislá na právě vybraném prvku modelu a pro každý typ prvku modelu je odlišná.
Prvek modelu versus prvek diagramu - mazání, kopírování, vkládání
Pod pojmem prvek v projektu, ať už prvek modelu či diagramu, je možné si představit např. třídu, případ užití, aktéra, atd. Zásadní rozdíl mezi prvkem modelu a prvkem diagramu je, že prvek modelu existuje někde v projektu, v jakémkoli diagramu (či ani v žádném diagramu být nemusí), kdežto prvek diagramu je pouze grafické znázornění, notace daného prvku modelu v nějakém diagramu. Stejný prvek modelu tak může být zastoupen i ve více diagramech jako jejich prvek, přičemž v každém diagramu může vypadat jinak (jiná barva, velikost, styl písma, atd.). Názorně tuto situaci vystihuje obrázek 2.5.
Jeden prvek modelu ve více diagramech
Obrázek 2.5 Jeden prvek modelu ve více diagramech, zdroj: prostředí programu Astah* professional
Pokud chcete vymazat prvek pouze z diagramu:
  1. klikněte na něj v editoru diagramu pravým tlačítkem myši,
  2. zvolte [Delete from Diagram].
Prvek se z diagramu odstraní, ale v modelu zůstane.
Pokud chcete vymazat prvek z modelu a tedy i celého projektu:
  1. klikněte na něj v editoru diagramu pravým tlačítkem myši,
  2. zvolte [Delete from Model].
Při kopírování a následném vkládání prvků se chování prvků liší v závislosti na typu diagramu:
a) u diagramů tříd (Class diagram), diagramů případů užití (UseCase diagram), ER diagramů a diagramů toků dat (Data flow diagram) se kopírují a vkládají pouze prvky diagramu, ale nikoli prvky modelu,
b) u ostatních typů diagramů se kopírují a vkládají zároveň prvky diagramu i prvky modelu.
Možnosti zobrazení
Pro změnu zobrazení editoru diagramu je možno využít buď hlavní nabídku – [View], nebo přímo ikony na panelu nástrojů. Možnosti změny zobrazení jsou popsány v tabulce 2.2:
[Zoom] Obnoví výchozí velikost diagramu (100%) v editoru diagramu.
[Zoom in] Zvětší diagram.
[Zoom out] Zmenší diagram.
[Fit in window] Zobrazí pohled na celý diagram.
[Back to previous editor] Zobrazí předchozí diagram.
[Forward to next editor] Zobrazí následující diagram.
[Show/hide project view] Slouží k zobrazení nebo skrytí položek v project view.
[Look & Feel] Zde je možné nastavit si požadovaný vzhled programu (Metal, Nimbus, CDE/Motif, Windows, Windows Classic).
[Alias] Volba zobrazení jména prvků nebo jejich aliasů.
Tabulka 2.2 Možnosti změny zobrazení, zdroj: autor
Kopírování, vkládání, označování, úprava a přesun prvků diagramu
Kopírovat a vkládat je možné buď celé prvky diagramu, nebo jen jejich styl (barva pozadí, styl čáry, barva písma, font písma, atd.).
Z lokálního menu (obrázek 2.6) prvku diagramu si vyberete podle potřeby:
a) [Copy]/[Paste] nebo [Ctrl + C]/[Ctrl + V] pro kopírování a vkládání celého prvku diagramu,
b) [Copy Style]/[Paste Style] pro kopírování a vkládání pouze stylu prvku diagramu.
Kopírování a vkládání
Obrázek 2.6 Kopírování a vkládání, zdroj: prostředí programu Astah* professional

Označování prvků diagramu se provádí standardně kliknutím levým tlačítkem myši. Pokud chcete označit více prvků najednou, s kliknutím podržte [Shift]/[Ctrl]. Všechny prvky v diagramu se označí pomocí [Ctrl + A].

Úprava textu v prvku diagramu je intuitivní. Stiskněte klávesu [F2], nebo na prvek dvakrát klikněte a můžete text přímo editovat. Pokud chcete změnit pořadí atributů, jednoduše je myší přetáhněte.

Prvky se přesouvají tažením levým tlačítkem myši nebo pomocí šipek. Pro vertikální/horizontální přesun spolu s levou myší podržte [Shift] a pro přesun po mřížce podržte [Ctrl].
Export obrázku
Z diagramů projektu ve formátu asta je možné získat grafický soubor ve formátech JPEG, PNG, SVG nebo EMF:
a) V hlavním menu zvolte [Tool] – [Export Image], kde vyberete, do jakého formátu chcete exportovat a zda jen jeden, nebo více diagramů.
b) V lokálním menu u prvku diagramu vyberte [Copy to Clipboard].

Možnosti exportu obrázku jsou znázorněny na obrázku 2.7.
Export obrázku 1
Export obrázku 2
Obrázek 2.7 Export obrázku, zdroj: prostředí programu Astah* professional

Možnosti tisku
Vše potřebné k tisku projektu a diagramů je umístěno v hlavní nabídce - [File]. Jednotlivé možnosti tisku jsou popsány v tabulce 2.3:
[Print Setup (Project)] Nastavení vlastností pro tisk celého projektu, tedy všech diagramů. Dají se zde nastavit např. vlastnosti stránky (velikost papíru, orientace stránky, okraje), záhlaví a zápatí, vlastnosti pro všechny diagramy a další.
[Print Setup (Diagram)] Nastavení vlastností pro tisk aktuálního diagramu v editoru diagramu. Zde je možné na záložce Page zatrhnout volbu [Print by using the print setting for the project], která znamená, že vlastnosti tisku pro tento diagram budou ty, které byly nastaveny v [Print Setup (Project)] a nebo tuto volbu odškrtnout a nastavit jiné vlastnosti pro tento diagram, než je tomu u ostatních diagramů v projektu.
[Print Preview] Zobrazí náhled tisku na aktuální diagram v editoru diagramu.
[Print] Vytiskne aktuální diagram v editoru digramu.
[Preview multi] Zobrazí náhled tisku na více diagramů. Jsou zde čtyři možnosti podle toho, na jaké typy diagramů chcete nahlédnout:
  • [Print Preview Multi-diagram],
  • [Print Preview Multi-UseCase Description],
  • [Print Preview Multi-CRUD],
  • [Print Preview Multi-Requirement Table].
Podle zvolené možnosti se zobrazí tabulka s diagramy daného typu, kde zatrhnete diagramy k požadovanému náhledu.
[Print multi] Vytiskne více diagramů, které se zvolí obdobně jako v [Preview multi].
Tabulka 2.3 Volby při tisku, zdroj: autor
Editace prvků diagramu – viditelnost, změna velikosti, barva, notace
Nastavení viditelnosti jednotlivých částí prvků diagramu je užitečné zejména pro rozlišení různých úrovní vývoje softwaru. Na konceptuální úrovni model mapuje realitu bez implementačních detailů, a proto je vhodné vypnout viditelnost u některých nadbytečných charakteristik. Oproti tomu model na designové úrovni původní konceptuální model rozšiřuje a je tedy potřeba, aby jeho implementační charakteristiky byly viditelné.
Viditelnost jednotlivých částí prvků diagramu na on/off je možné nastavit následujícími dvěma způsoby:
a) Přímo v místní nabídce určitého prvku, která je závislá na typu prvku. Například místní nabídka třídy zobrazí možnosti nastavení viditelnosti, jako je znázorněno na obrázku 2.8. Je zde možné například:
  • vypnout/zapnout viditelnost atributů – [Attribute Compartment Visibility],
  • vypnout/zapnout viditelnost operací – [Operation Compartment Visibility],
  • vypnout/zapnout viditelnost stereotypů [Stereotype Visibility],
  • rozbalit přes [Extended Visibility] další možnosti viditelnosti, kde je možné vypnout/zapnout viditelnost jednotlivých částí atributů a operací (např. Inicializační hodnotu u atributů, návratovou hodnotu u operací, atd.).
Viditelnost v místní nabídce třídy
Obrázek 2.8 Viditelnost v místní nabídce třídy, zdroj: prostředí programu Astah* professional

b) V hlavní nabídce nastavit výchozí viditelnosti, které budou potom platit pro všechny prvky: [Tool] – [System Properties] – [Visibility 1/2/3 (initial)].

Změna velikosti prvků diagramu se provádí:
a) Automaticky – velikost prvku se přizpůsobuje množství textu uvnitř něj.
b) Tažením za roh prvku – velikost prvku je možno upravit podle potřeby, přičemž se ale vypne automatická velikost.
Pozn.: Pokud chcete automatickou velikost potom znovu zapnout, je zde tato možnost v místní nabídce prvku - [Auto Resize].
Co se týče textu uvnitř nějakého prvku a jeho rozmístění do řádků, je zpravidla závislé na šířce prvku. Pokud ovšem z nějakého důvodu potřebujete řádek ukončit, stiskněte [Enter+Shift/Ctrl/Alt].

Pokud nejste spokojeni s výchozí notací prvků vkládaných do diagramu, můžete ji snadno změnit.
Změnu notace u vybraného prvku diagramu, je možné provést buď na nástrojové liště, nebo v lokálním menu prvku. Obrázek 2.9 znázorňuje možnost změny notace na příkladě aktéra.
Možnosti změny notace
Obrázek 2.9 Možnosti změny notace, zdroj: prostředí programu Astah* professional

Nastavení vhodné barvy prvkům diagramu může přispět k přehlednosti diagramu. Je to dobrý způsob, jak některé prvky diagramu odlišit od ostatních, nebo naopak zdůraznit, že patří k sobě. Neměli byste ovšem zapomínat na čitelnost a použitelnost diagramu, proto doporučuji volit barvy v dostatečném kontrastu s textem uvnitř prvku. Barvu právě vybraných prvků diagramu je možné změnit:

a) z nástrojové lišty - [Set Color],
b) z hlavního menu - [Edit] – [Set Color],
c) z místní nabídky prvku diagramu - [Set Color].
Všechny tyto možnosti vyvolají dialogové okno pro výběr barvy jako na obrázku 2.10.
Výběr barvy
Obrázek 2.10 Výběr barvy, zdroj: prostředí programu Astah* professional

Nastavení výchozí barvy pro všechny nově přidané prvky v projektu můžete provést:
a) v hlavním menu zvolte [Tool] – [Project] – [Set Project Properties…] – [New Item Color],
b) v Project view na záložce [Structure] pravým tlačítkem myši rozbalte místní nabídku projektu (viz obrázek 2.11) a zvolte [Set Property (Project)] – [New Item Color].
Obě možnosti vyvolají dialogové okno pro nastavení výchozích barev nově přidaných prvků diagramu v daném projektu – obrázek 2.11, ale u stávajících prvků projektu se toto nastavení nijak neprojeví.
Nastavení barvy nově přidaných prvků diagramu v projektu
Obrázek 2.11 Nastavení barvy nově přidaných prvků diagramu v projektu, zdroj: prostředí programu Astah* professional

Kromě nastavení barev pro prvky přidané do projektu, je možné obdobně nastavit i výchozí barvy prvků v celém programu: V hlavním menu zvolte [Tool] – [System Properties] – [New Item Color].
Vyvolané dialogové okno je stejné jako u projektu. Rozdíl nastavení barev pro projekt a pro program je pouze v tom, že programové nastavení platí obecně, i v projektech, kde žádné barvy nadefinovány nebyly, kdežto projektové nastavení platí pouze pro jeden daný projekt. Pokud barvy prvků v projektu nastaveny jsou a barvy prvků v programu také, má přednost nastavení pro projekt.
Možnost synchronizace nastavení projektu s nastavením programu:
a) v hlavním menu - [Tool] – [Project] – [Synchronize Project Properties…]– [OK],
b) v Project view na záložce [Structure] pravým tlačítkem myši rozbalte místní nabídku projektu a zvolte [Synchronize Property (Project)] – [OK].

Funkcionalita programu je velmi obsáhlá, proto v této části byly popsány jen základy práce v programu. Některé další užitečné funkce jsou zahrnuty v následujících částech, které se zabývají tvorbou UML diagramů v programu. Kompletní a přehledně zpracovaný manuál naleznete v hlavní nabídce programu - [Help] – [astah* Reference Manual].