Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
|
pl:miw:miw08_umlandardxtt:umlandard [2008/03/04 11:10] miw |
pl:miw:miw08_umlandardxtt:umlandard [2019/06/27 15:50] (aktualna) |
Podczas konsultacji 08.02.26 zwróciłem uwagę na podobieństwo diagramu [[hekate:hekate_concepts#ard|ARD]] do diagramu aktywności ze złączeniem (na podstawie diagramu z książki [[pl:miw:miw08_umlandardxtt#literatura|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. | Podczas konsultacji 08.02.26 zwróciłem uwagę na podobieństwo diagramu [[hekate:hekate_concepts#ard|ARD]] do diagramu aktywności ze złączeniem (na podstawie diagramu z książki [[pl:miw:miw08_umlandardxtt#literatura|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. |
| |
===== wersja z 08.03.04 ===== | ===== 08.03.04 ===== |
| |
Poniżej znajduje się przykładowy diagram [[hekate:hekate_concepts#ard|ARD]] najniższego poziomu dla termostatu: | Poniżej znajduje się przykładowy diagram [[hekate:hekate_concepts#ard|ARD]] najniższego poziomu dla termostatu: |
| |
{{:hekate:ard-therm-01.png|Ryc: Przykładowy diagram ARD}} | {{:hekate:ard-therm-01.png|Ryc: Przykładowy diagram ARD}} |
| |
Zagadnieniem do rozważenia jest w jaki sposób modelować transformację zakończenia (:?:) (//finalization//), która polega na tym iż własność końcowa jest rezultatem dwu lub więcej własności początkowych np. //operation// jest produktem //today// i //hour//. | |
| |
Objaśnienie używanych na tej stronie pseudostanów: | Objaśnienie używanych na tej stronie pseudostanów: |
^ Porównanie koncepcji diagramów UML dla diagramu ARD ^^ | ^ Porównanie koncepcji diagramów UML dla diagramu ARD ^^ |
|{{:pl:miw:miw08_umlandardxtt:ard_zlaczenie1.png|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. \\ \\ \\ | | |{{:pl:miw:miw08_umlandardxtt:ard_zlaczenie1.png|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. \\ \\ \\ | |
|{{:pl:miw:miw08_umlandardxtt:ard_scalenie1.png|Ryc: Diagram aktywności ze scaleniami.}}|Diagram aktywności ze scaleniami. \\ \\ Scalenie (ang. //merge node//) zgodnie ze [[pl:miw:miw08_umlandardxtt#zrodla_internetowe|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 jedna z wartości //today// albo //hour// sterowanie zostanie przekazane do //operation//. Wobec tego takie rozwiązanie **nie jest zgodne** z transformacją //finalization// diagramów ARD. :!:| | |{{:pl:miw:miw08_umlandardxtt:ard_scalenie1.png|Ryc: Diagram aktywności ze scaleniami.}}|Diagram aktywności ze scaleniami. \\ \\ Scalenie (ang. //merge node//) zgodnie ze [[pl:miw:miw08_umlandardxtt#zrodla_internetowe|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. :!:| |
| |
| |