Diagram ARD i jego hipotetyczny model w UMLu

Podczas konsultacji 08.02.26 zwróciłem uwagę na podobieństwo diagramu ARD do diagramu aktywności ze złączeniem (na podstawie diagramu z książki Pilone 2007 s. 143). Różnica między nimi jest taka, że diagramy aktywności prezentują nam akcje, czyli kolejne kroki aktywności. Wobec tego stosując diagramy aktywności do modelowania ARD zmienia się ich funkcja semantyczna. Akcje będą bowiem reprezentowały nie kroki aktywności, a konkretne wartości atrybutów.

08.03.04

Poniżej znajduje się przykładowy diagram ARD najniższego poziomu dla termostatu:

Ryc: Przykładowy diagram ARD

Objaśnienie używanych na tej stronie pseudostanów:

Symbol Opis pseudostanu (na podstawie: Graessle 2006, ss. 69-71)
:pl:miw:miw08_umlandardxtt:ico_rozdzielacz.pngZłą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ść.
:pl:miw:miw08_umlandardxtt:ico_romb_end.pngScalenie posiada kilka wejść i jedno wyjście. Zadaniem jego 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.
Porównanie koncepcji diagramów UML dla diagramu ARD
Ryc: Diagram aktywności ze złączeniami.Diagram aktywności ze złączeniami.

Wszystkie gałęzie diagramu aktywności wykonywane są współbieżnie do momentu, gdy wszystkie docierają do węzła złączenia.

Aktywność czeka aż wszystkie gałęzie dotrą do węzła, a następnie wykonywana jest akcja występująca po złączeniu. Jest do zatem zgodne z tym, czego oczekiwalibyśmy po diagramie ARD.


Ryc: Diagram aktywności ze scaleniami.Diagram aktywności ze scaleniami.

Scalenie (ang. merge node) zgodnie ze specyfikacją OMG UML 2.1.2 (s. 401) nie synchronizuje (ani nie łączy) poszczególnych gałęzi, lecz akceptuje jedną spośród kilku alternatywnych.

Zatem u nas: jeśli zostanie ustalona tylko jedna z wartości today albo hour sterowanie zostałoby przekazane do operation. Takie rozwiązanie nie wydaje się jednak zgodne z działaniem termostatu. :!:
pl/miw/miw08_umlandardxtt/umlandard.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0