Diagram ARD i jemu pochodne - podejście pierwsze

Poniżej próba zamodelowania diagramów THP przy pomocy diagramów klas UMLa.

W diagramach zostały użyte 2 rodzaje powiązań:

UML Nazwa powiązania Znaczenie powiązania
:pl:miw:miw08_umlandardxtt:umlandard:ab_agregacja.png Agregacja A posiada (agreguje, przechowuje dane dotyczące) B, w takim przypadku B może istnieć samodzielnie czy być współdzielone przez różne klasy
:pl:miw:miw08_umlandardxtt:umlandard:ab_kompozycja.png Kompozycja B jest częścią A, czas życia B bezpośrednio zależy od A

W tabeli poniżej znajdują się zamodelowane diagramy:

diagram THP model UML
<graphviz file=„hekate:therm-a0.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist1.png
<graphviz file=„hekate:therm-t1.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist2.png
<graphviz file=„hekate:therm-t2.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist3.png
<graphviz file=„hekate:therm-t3.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist4.png
<graphviz file=„hekate:therm-t4.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist5.png
<graphviz file=„hekate:therm-t5.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist6pop.png
<graphviz file=„hekate:therm-t6.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist6.png
<graphviz file=„hekate:therm-t7.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist7.png
<graphviz file=„hekate:therm-t8.dot”></graphviz> :pl:miw:miw08_umlandardxtt:umlandard:ard1_hist9.png

Zagadnienia problematyczne

:!: Naruszenie syntaksy języka UML.
W języku UML poniższe 2 diagramy UML (z lewej) są semantycznie równoważne:

:pl:miw:miw08_umlandardxtt:umlandard:problem_syntaktyka2a.png
:pl:miw:miw08_umlandardxtt:umlandard:problem_syntaktyka2b.png

Natomiast w diagramach THP tak narysowane kompozycje znaczyłyby zupełnie coś innego. Nie jest to jednak tylko prosta zmiana semantyczna (która byłaby dopuszczalna w przypadku przedefiniowania jakiegoś elementu diagramu), ale zostały tu nadane nowe znaczenia w zależności od sposobu narysowania elementu.

:!: Problem z modelowaniem połączonych diagramów THP z ARD.
Problem wynika stąd, że na diagramach ARD może następować przepływ informacji np. ze złożonych obiektów, a na zamodelowanych diagramach UML obiekty złożone są prezentowane w postaci odrębnych obiektów, a ich złożenie ma symbolizować kompozycja. Wobec tego brak możliwości zaczepienia przepływu z obiektu złożonego.