Diagram aktivit

Základní charakteristika

Diagram aktivit (Activity Diagram) je typem diagramu interakcí, který se používá pro popis procedurální logiky, byznys procesů (viz obrázek 17) či pracovních postupů. Umožňuje také graficky modelovat jednotlivé případy užití jako posloupnost akcí (viz obrázek 15). [Fow2003] [Arl2008]

Diagram aktivit prodělal od svého vzniku mnoho úprav a i s novou verzí UML 2.0 došlo k jeho změnám. Zatímco v UML 1.x byl chápan jako speciální případ stavového diagramu, UML 2.0 už tyto dva diagramy nijak nespojuje. [Fow2003] Diagram získal novou sémantiku založenou na formálním grafickém modelovacím jazyce Petri Nets (Petriho sítě). [Arl2008]

Prvky diagramu

Diagram aktivit modeluje procesy jako aktivity, které se skládají z uzlů (nodes) vzájemně propojených hranami (edges). [ARL2007]

Existují tři typy uzlů – akční uzly, které reprezentují samostatné a v rámci aktivity nedělitelné jednotky, řídící uzly, jejichž úkolem je řídit cestu uvnitř aktivity a uzly objektové, které zastupují objekty. Nejpoužívanějším akčním uzlem je tzv. call action node, který inicializuje aktivitu, chování či operaci. Příkladem řídících uzlů jsou počáteční (initial nodes), konečné uzly (final nodes) nebo uzly rozhodnutí (decision nodes). [Arl2008]

Uzel rozhodnutí (v UML 1.x dříve označovaný branch) má jednu vstupní hran u aněkolik konkurujících si hran výstupních. Daný výstup bude zvolen podle toho, která ze vzájemně se vylučujících kontrolních podmínek bude splněna. K označení hrany, která bude použita, pokud nebude splněna žádná kontrolní podmínka, se používá klíčové slovo jinak (else). [Fow2003]; [Arl2008]

Uzel sloučení (merge) může mít několik vstupních, ale pouze jednu výstupní hranu. Používá se především pro sjednocení větví diagramu aktivit, které byly předtím rozděleny uzlem rozhodnutí. [Arl2008]

Procesy, které diagram popisuje, mohou probíhat paralelně, což je umožněno řídícími uzly rozvětvení (fork) a spojení (join). [Fow2003]

Pro zpřehlednění se může diagram rozdělit například dle rolí (viz obrázek 15) či organizačních jednotek do tzv. zón odpovědnosti či plaveckých drah (swimlanes). [Arl2008] Pro znázornění zón odpovědnosti nabízí UML 2.0 i textovou notaci (viz obrázek 17), která se ale používá pouze v případě, kdy by rozdělení diagramu do zón zhoršilo jeho přehlednost. Obvykle bývá grafický zápis daleko srozumitelnější.

Obrázek 14. Prvky diagramu aktivit

 

Doporučení

Dle [Act2006] platí pro diagramy aktivit následující doporučení:

  • Kontrolní podmínky rozhodovacích uzlů by se měly vždy vylučovat a měly by zahrnovat všechny možnosti, které mohou nastat. Nesprávné podmínky jsou například x <= 9 a x >= 9, které se překrývají a není tedy možné jednoznačně určit, co se stane v případě, že x = 9.
  • Počáteční uzly by měly být umístěny v levém horním rohu diagramu.
  • Diagram aktivit by měl vždy obsahovat konečný uzel, pokud se nejedná o opakující se proces.
  • Každý akční uzel by měl mít jak vstupní, tak výstupní hranu.
  • Diagram by neměl obsahovat více jak pět plaveckých drah.
  • Plavecké dráhy by měly být znázorněny vertikálně. Jejich horizontální orientace je nevhodná především při modelování byznys procesů.
  • Pokud se v diagramu vyskytuje více identických objektových uzlů (objektů), je vhodné je odlišit vyznačením stavů (např. Objednávka [otevřená], Objednávka [zavřená]).

Příkladový diagram aktivit

 Diagram aktivit 

Obrázek 15. Použití plaveckých drah v diagramu aktivit (grafický zápis)

Diagram aktivit 

Obrázek 16. Diagram aktivit

Diagram aktivit 

Obrázek 17. Diagram aktivit popisující hlavní byznys proces aplikace (textová notace plaveckých drah )