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.
4.2 Instanziierung <strong>und</strong> Gr<strong>und</strong>lagen zur Ausführung der Modelle 73<br />
Bei der Datenmodellierung werden die von USE unterstützten UML-Klassendiagramme genutzt. Eine<br />
Metamodellierung ist hierfür nicht notwendig. USE implementiert bereits einen großen Teil des UML-<br />
Metamodells für Klassendiagramme. Dieses wird zur Designtime zur Datenmodellierung für DMWM<br />
eingesetzt. Vor Ausführung der Prozessmodelle zur Runtime können die Datenobjekte erzeugt werden, die<br />
die Datenbasis eines Informationssystems repräsentieren. Die Workflowmodelle können dann beispielsweise<br />
mit DataRead-Objekten die gewünschten Daten anfragen. Während der Ausführung können des Weiteren<br />
Objekte mit DataCreate erzeugt werden, die damit dem Datenbestand des Informationssystems hinzugefügt<br />
werden.<br />
Das Organisations-Metamodell liegt so wie das Workflow-Metamodell im Klassendiagramm vor. Für<br />
DMWM sind im UML-Klassendiagramm damit das Datenmodell zusammen mit dem Workflow- <strong>und</strong><br />
Organisations-Metamodell vorhanden. Anhand des Organisations-Metamodells wird die hierarchische Organisationsmodellierung<br />
zur Designtime im UML-Objektdiagramm durchgeführt, so wie es in Abschnitt<br />
3.4 gezeigt wurde. Hier werden die Verbindungen von Aktivitäten zu zuständigen Rollen <strong>und</strong> Organisationseinheiten<br />
hergestellt. Durch die ASSL-Allokationsprozeduren (s. Listing 4.2) werden die ausführenden<br />
Personen festgelegt. Zur Designtime können unterschiedliche Organisationsmodelle erstellt werden, wovon<br />
ein bestimmtes zur Runtime auszuwählen ist. Damit können Workflowmodelle in unterschiedlichen Kontexten<br />
ausgeführt <strong>und</strong> evtl. Ressourcenengpässe identifiziert werden. Das gewünschte Organisationsmodell<br />
muss dann vor Ausführung der Workflowmodelle in das Objektdiagramm von USE geladen <strong>und</strong> damit für<br />
die Runtime zur Verfügung gestellt werden. Zur Runtime kommt dann für das Organisationsmodell die<br />
Zuordnungsinformation zur ausführenden Person in Form von allocation-Links hinzu.<br />
4.2.4 Workflow Designtime-Plugin <strong>und</strong> Toolchain<br />
Das Designtime-Plugin für USE hat die Aufgabe, aus dem Workflowmodell, welches im USE-Objektdiagramm<br />
erstellt wurde, ASSL-Kommandos zu generieren, die das Workflowmodell für die Runtime<br />
reproduzieren können. Das Plugin realisiert den im Use Case-Diagramm von Abbildung 3.16 mit save in<br />
ASSL file bezeichneten Anwendungsfall. Anhand der ASSL-basierten Speicherung des Workflowmodells<br />
können Instanzen des Workflowmodells zur Runtime erzeugt werden.<br />
Abbildung 4.2(b) zeigt den Anfangsdialog des Designtime-Plugins <strong>und</strong> Listing 4.3 einen Auszug einer<br />
generierte ASSL-Instanziierungsprozedur. Die Funktionsweise des Plugins <strong>und</strong> die benötigten Eingaben des<br />
Nutzers für das Desintime-Plugin werden im Aktivitätsdiagramm von Abbildung 4.2(a) verdeutlicht.<br />
Zunächst wird das Plugin über USE mit einem Icon in der Menüleiste, welches mit 1. in Abbildung 4.2(b))<br />
markiert ist, aufgerufen. Des Weiteren kann auch das Runtime-Plugin über das daneben stehende Icon,<br />
welches mit 2. markiert ist, gestartet werden.<br />
Hat man das Designtime-Plugin aufgerufen, wird das Anfangsdialogfenster geöffnet (s. Abbildung 4.2(b)).<br />
Im Hintergr<strong>und</strong> der Abbildung ist das zu speichernde Workflowmodell im Objektdiagramm zu sehen.<br />
Der weitere Ablauf zur Generierung der ASSL-Instanziierungsprozedur ist im Aktivitätsdiagramm von<br />
Abbildung 4.2(a) angegeben.<br />
Zunächst muss der Nutzer den Prozess bezeichnen, wonach die Instanziierungsprozedur benannt wird.<br />
Beispielsweise ist bei der Generierung der Prozedur von Listing 4.3 die Bezeichnung EmergencyProcess<br />
gewählt worden. Daraufhin muss der Nutzer eine ASSL-Datei wählen, welche entweder schon existiert oder<br />
noch nicht vorhanden ist. Ist die ASSL-Datei schon vorhanden, so wird die neu generierte Prozedur der<br />
bestehenden Datei hinzugefügt. Wenn dagegen die ASSL-Datei noch nicht vorhanden ist, so wird eine neue<br />
Datei inkl. generierter Instanziierungsprozedur erzeugt.<br />
Das Runtime-Plugin kann ASSL-Dateien entgegennehmen. Diese Dateien stellen eine ASSL-Runtime-