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á
Sekvenční diagram
Sekvenční diagram (Sequence diagram) se řadí do skupiny diagramů interakcí. Zachycuje časově uspořádanou posloupnost zasílání zpráv mezi objekty. [3]
Sekvenční diagram nejčastěji znázorňuje spolupráci několika vzorových objektů v rámci jednoho případu užití.[4]
Prvky sekvenčního diagramu jsou klasifikátory (dle [4] také účastníci), jejich čáry života a zprávy, které si mezi sebou posílají.
Podrobnou charakteristiku sekvenčního diagramu a jeho prvků naleznete např. v [4].
Sekvenční diagram aplikace OB ZAVODY
Na obrázku 3.20 je zachycen sekvenční diagram, který znázorňuje interakci objektů, vycházející ze specifikace případu užití UC5 Přihlásit se na závod.
Následuje popis jednotlivých zpráv mezi objekty v časové posloupnosti:
1: prihlasit()
Sekvence zpráv je zahájena, když uživatel u závodu vybraného ze seznamu závodů zadá volbu přihlásit se na závod. Objekt třídy typu <<uživatelské rozhraní>> SeznamZavodu pošle požadavek na přihlášení objektu třídy typu <<control>> RizeniPrihlaseni.
2: jeRadnyTermin() a 3: jePrihlasen()
Objekt třídy RizeniPrihlaseni kontroluje, zda je přihlášení možné. Nejprve zasílá zprávu jeRadnyTermin() objektu třídy typu <<business>> Závod, čímž prověřuje, jestli již nevypršel termín řádných přihlášek. Potom posílá zprávu jePrihlasen() objektu třídy typu <<business>> Zavodnik a zjišťuje, zdali už závodník není přihlášen.
4: zobrazit()
V případě, že přihlášení je možné, objekt třídy RizeniPrihlaseni odešle objektu třídy typu <<uživatelské rozhraní>> OknoPrihlaseni požadavek na zobrazení okna, ve kterém uživatel vyplní údaje potřebné pro přihlášení na závod.
5: zkontrolovatUdaje()
Po vyplnění údajů pro přihlášení na závod a jejich potvrzení objekt třídy OknoPrihlaseni zkontroluje správnost zadaných údajů.
6: novaPrihlaska()
Pokud jsou zadané údaje v pořádku, objekt třídy OknoPrihlaseni vytvoří nový objekt třídy typu <<business>> Prihlaska.
Sekvenční diagram případu užití Přihlásit se na závod
Obrázek 3.20 Sekvenční diagram případu užití Přihlásit se na závod, zdroj: autor dle [3]
Postup tvorby sekvenčního diagramu v Astah* professional
Sekvenční diagram případu užití UC5 Přihlásit se závod, zachycený na obrázku 3.20, můžete v programu Astah* professional vytvořit v následujících krocích:
  1. V projektu OBzavody, který jste vytvořili pro diagram případů užití (viz kapitola Postup tvorby diagramu případů užití v Astah* professional) založte nový baliček s názvem Sequence Diagram. Postup založení balíčku v projektu je popsán v kapitole Nový projekt a popis rozvržení obrazovky.
  2. Do balíčku Sequence Diagram vložte diagram aktivit (viz kapitola Nový projekt a popis rozvržení obrazovky).
    V editoru diagramu se zobrazí okno Sequence Diagram 0/ Sekvence Diagram [Sequence Diagram] pro návrh sekvenčního diagramu, dále jen sekvenční diagram.
  3. Pro lepší čitelnost diagramu můžete zvětšit písmo. Postup je stejný jako v kapitole Postup tvorby diagramu aktivit v Astah* professional.
  4. 4. Do sekvenčního diagramu vložte a umístěte vedle sebe 6 klasifikátorů (v tomto případě objektů) s jejich čarami života – volba obdélníku s přerušovanou čarou Ikona klasifikátoru.
  5. Existují různé varianty, jak můžete objekt v sekvenčním diagramu označit:
    1. pouze názvem objektu, např. ObjektA,
    2. názvem objektu včetně názvu třídy, např. ObjektA: TridaA,
    3. název objektu uveden není a je určena pouze třída, např. :TridaA
    Objekt se v sekvenčním diagramu pojmenovává, pokud jej např. chcete předat jako parametr zprávy. [3] Většinou ale stačí objekt označit pouze určením třídy (varianta c). Objekty v sekvenčním diagramu proto doporučuji nazvat dle varianty c): :SeznamZavodu, :RizeniPrihlaseni, :Zavod, :Zavodnik, :OknoPrihlaseni a :Prihlaska
    Pozn.: Při zadání názvu objektu tímto způsobem se program zeptá, zda chcete název za dvojtečkou vytvořit jako nový typ, což je v pořádku. Hlášení programu potvrďte.
  6. U sekvenčních diagramů se pro doplnění informace doporučuje klasifikátory obohatit o stereotypy. [3] Následuje postup přidání stereotypu do klasifikátoru (objektu):
    • označte klasifikátor (objekt),
    • v Property View na záložce Base klikněte na tlačítko [Property],
    • zobrazí se dialogové okno s názvem Class jako na obrázku 3.21 nalevo,
    • v okně Class přepněte na záložku Stereotype a klikněte na tlačítko [Add],
    • objeví se rozbalovaní menu, ve kterém si můžete vybrat některý ze stereotypů, ale máte zde možnost zadat i stereotyp vlastní, viz obrázek 3.21 napravo.
    Přidání stereotypu
    Obrázek 3.21 Přidání stereotypu, zdroj: prostředí programu Astah* professional
  7. Objekty mezi sebou propojte synchronními zprávami dle vzoru finálního obrázku 3.20 – volba šipky s písmenem S Ikona koncového uzlu, viz obrázek 3.22.
    Synchronní zpráva
    Obrázek 3.22 Synchronní zpráva, zdroj: prostředí programu Astah* professional
  8. Objekt OknoPrihlaseni propojte s objektem Prihlaska zprávou opatřenou stereotypem <<create>> – volba přerušované šipky s písmenem C Ikona create, která reprezentuje vytvoření objektu Prihlaska.
  9. Hotový sekvenční diagram můžete vyexportovat jako obrázek do formátu JPEG, viz kapitola Export obrázku.