Diagramy aktywności mają związek z diagramami przepływu i służą do ilustrowania działań zachodzących w systemie. (…)
W diagramach aktywności można zaprezentować zdarzenia zachodzące równolegle. (Graessle 2006, s. 66)
W tabelach poniżej przedstawiłem próbę zamodelowania dwóch prostych diagramów XTT przy pomocy diagramów aktywności UMLa:
Objaśnienie podstawowych symboli dla diagramów aktywności:
Symbol | Opis pseudostanu (na podstawie: Graessle 2006, ss. 69-71) |
---|---|
Akcja - pojedynczy krok aktywności. (…) Strzałka wpływająca do aktywnosci rozpoczyna jej działanie, po którego zakończeniu przepływ jest kontynuowany przez strzałkę wychodzącą. | |
Węzeł decyzyjny składa się w wejścia i dwóch lub większej liczby wyjść. Każde wyjście z węzła ma zdefiniowany warunek zapisany w nawiasach kwadratowych. Jeśli jest on spełniony, przepływ jest kontynuowany przez związane z nim wyjście. | |
Węzeł łączący posiada kilka wejść i jedno wyjście. Zadaniem węzła łączącego jest łączenie kilku przepływów. Wejścia nie są zsynchronizowane - jeśli jeden przepływ dotrze do węzła, przechodzi do wyjścia niezależnie od tego czy do pozostałych wejść dotarły inne przepływy. | |
Rozgałęzienie pozwala definiować równoległe przepływy w ramach aktywności. Posiada ono jedno wejście i dwa lub większą liczbę wyjść. | |
Złączenie służy do konsolidacji dwóch lub większej liczby równoległych przepływów. W przypadku konsolidacji przepływy są synchronizowane, a więc proces przechodzi do wyjścia dopiero wówczas, gdy dotrą one do wszystkich wejść. | |
Poszczególne elementy diagramu aktywności mogą być podzielone na indywidualne obszary zwane partycjami. | |
Parametry można do aktywności przekazywać lub z niej wysyłać w postaci parametrów czynności. Parametr czynności prezentuje się w postaci prostokąta umieszczanego na granicy aktywności. Nazwa lub opis parametru powinny znajdować się wewnątrz tego prostokąta. (Pilone 2007, s. 137) |
Drugi diagram aktywności mimo stosunkowo niewielkiej liczby reguł, stał się już mało czytelny. Przy większej liczbie reguł i atrybutów diagram stanie się zupełnie nieczytelny oraz rozrośnie się do znacznych rozmiarów. Zagadnienia do rozważenia: Czy da się coś na to poradzić? Jeśli tak, to w jaki sposób to zmienić, co dodać, jakimi jeszcze diagramami się wspomóc…
Diagram ARD jest dekomponowany na kolejne diagramy stopniowo, przez co diagramy XTT utworzone na tej podstawie nie powinny posiadać zbyt wielu atrybutów. Zatem niweluje to częściowo problem rozrastania się diagramu.
Poniżej proponuję algorytm przekształcania diagramów XTT na diagramy aktywności:
Tak zaprojektowanym algorytmem diagramy aktywności dla termostatu będą wyglądały następująco:
Dla przejrzystości, modelując diagram całego termostatu, powyższe aktywności przedstawiamy w postaci zagnieżdżonych (aktywność przedstawiona w postaci zagnieżdżonej odwołuje się do szeregu akcji tej aktywności, których jednak w celach przejrzystości nie przedstawia się bezpośrednio na danym diagramie).
Powyższy diagram powstał przez analogię do diagramu 12.54 ze str. 338 oraz diagramu 12.36 ze str. 323 specyfikacji OMG UML 2.1.2 (por. również 12.64 ze strony 349 i 12.110 ze str. 389).