Metamodellbasierte und hierarchieorientierte ... - RosDok
Metamodellbasierte und hierarchieorientierte ... - RosDok
Metamodellbasierte und hierarchieorientierte ... - RosDok
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
3.3 Datenintegration 53<br />
Bei UML-Aktivitätsdiagrammen können durch «selection» Klauseln, die an Objektfluss-Kanten annotiert<br />
werden, Kriterien zur Objektauswahl spezifiziert werden (s. Abbildung 3.11(c)). Ist der Objektfluss mit<br />
einem Datastore-Knoten verb<strong>und</strong>en repräsentiert diese Klausel eine Datenbankanfrage. Die Möglichkeit der<br />
Anfragespezifikation ist bei den anderen Modellierungssprachen nicht vorgesehen. Bei DfDs sind Speicher<br />
zwar integraler Bestandteil der Modellierungssprache, bei den ausgehenden Datenflüssen kann man anhand<br />
der Data-Dictionary Spezifikation jedoch nur Datentypen annotieren. Im Fall von Abbildung 3.11(d) ist mit<br />
{A} angegeben, dass eine Menge von Objekten des entsprechenden Typs angefragt wird. Eine Menge von<br />
den entsprechenden Objekten wird bei BPMN mit ||| <strong>und</strong> bei Aktivitätsdiagrammen mit Set of in<br />
den Objektknoten angegeben. Die Spezifikation von einer Menge von Daten ist bei EPKs nicht vorgesehen.<br />
In Aktivitätsdiagrammen können außerdem ankommende Objekte mit AcceptEventActions modelliert werden,<br />
um dann in den zugeordneten Objektknoten gesammelt zu werden. Zudem lassen sich die Objektflüsse<br />
gewichten, so dass nur eine gewisse Anzahl von Objekten an diesen Kanten langlaufen darf. Diese Modellierungselemente<br />
sind in Abbildung 3.11(c) angegeben <strong>und</strong> werden nur für Aktivitätsdiagramme bereitgestellt.<br />
Den anderen hier betrachteten Sprachen fehlen solche Ausdrucksmöglichkeiten.<br />
Nach [UML10, S.411] <strong>und</strong> [Sch01, S.118f] gibt es vier Aktionen, die Aktivitäten auf Daten auslösen können:<br />
• read: Lesen eines/mehrerer Datenelemente<br />
• create: Anlegen eines/mehrerer Datenelemente<br />
• update: Ändern eines/mehrerer Datenelemente<br />
• delete: Löschen eines/mehrerer Datenelemente<br />
Die in Abbildung 3.11 angegebenen Diagramme zeigen, dass die drei ersten oben aufgeführten Aktionen<br />
ausgedrückt werden können. Die im Folgenden aufgeführte Modellierungsweise ist bei allen angegebenen<br />
Modellierungssprachen im Prinzip gleich. Es gibt im Wesentlichen drei Verbindungen von Datenelementen<br />
zu Aktivitäten. Ein gerichteter Pfeil vom Datenobjekt zur Aktivität repräsentiert eine Leseaktion. Ein<br />
Pfeil in die umgekehrte Richtung von der Aktivität zum Datenobjekt kann eine create bzw. write Aktion<br />
ausdrücken. Update-Operationen können in zwei Weisen dargestellt werden. Zum einen zeigt das EPK-<br />
Beispiel von Abbildung 3.11(a), dass ein Pfeil vom Datenobjekt zur Aktivität <strong>und</strong> zurück modelliert werden<br />
kann. Zum anderen ist beim BPMN-Beispiel von Abbildung 3.11(b) eine ungerichtete Assoziation, die<br />
das Datenelement D mit Aktivitäten verknüpft, zu sehen. Die letzte oben aufgeführte Aktion Löschen von<br />
Datenelementen kann visuell in den Diagrammen jedoch nicht ausgedrückt werden.<br />
Alle hier vorgestellten Datenintegrationen in die Workflowmodelle sind darstellbar, aber nicht ausführbar. Die<br />
in [BF08a] <strong>und</strong> oben angesprochenen Probleme bei der Verknüpfung von Objektflüssen mit Flussoperatoren<br />
auf das Objektmodell bleiben offen.<br />
Eine eindeutigere Semantik der Objektintegration beinhaltet der DMWM-Ansatz, der in den folgenden<br />
Abschnitten näher eingeführt wird. DMWM ist auch mit der Verbindung zu den Datenspezifikationen<br />
ausführbar <strong>und</strong> die Effekte der im Metamodell definierten Elemente werden klar definiert.<br />
3.3.2 Metamodell für Datenintegration<br />
Zur Datenmodellierung werden UML-Klassendiagramme genutzt. Das Workflow-Metamodell liegt ebenfalls<br />
als UML-Klassendiagramm vor. Für eine Integration von Workflow- <strong>und</strong> Datenmodellen kann man die UML-<br />
Klassendiagramme vereinigen. Voraussetzung hierfür ist jedoch, dass es keine Namenskonflikte bei den<br />
Klassenbezeichungen zwischen Datenmodell <strong>und</strong> Workflow-Metamodell gibt. Die Workflowmodellierung