Metamodellbasierte und hierarchieorientierte ... - RosDok
Metamodellbasierte und hierarchieorientierte ... - RosDok
Metamodellbasierte und hierarchieorientierte ... - RosDok
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
74 <strong>Metamodellbasierte</strong> Workflow-Modellausführung<br />
(a) Ablauf des Designtime-Plugin Dialogs<br />
(b) Das Designtime-Plugin in USE aufgerufen<br />
Abbildung 4.2: DMWM-Designtime-Plugin<br />
Environment dar, die die imperativen Prozeduren zur Ausführung der Workflowmodelle beinhaltet, von<br />
denen Beispiele in Abschnitt 4.2.2 vorgestellt wurden. Falls Fehler in den ASSL-Prozeduren vorhanden sind,<br />
so können diese editiert werden <strong>und</strong> die veränderte ASSL-Datei lässt sich zur Laufzeit austauschen. Die dort<br />
enthaltenen Instanziierungsprozeduren können des Weiteren aufgerufen werden. Mit dieser Funktionalität<br />
lassen sich unterschiedliche Workflowmodelle auch mehrfach instanziieren.<br />
Bei der Erzeugung einer neuen ASSL-Datei (s. Aktivität Create new ASSL file in Abbildung 4.2(a)) fügt<br />
das Designtime-Plugin zusätzlich die Standard-Prozeduren zur Workflowausführung der ASSL-Datei hinzu.<br />
Wenn dagegen in eine bestehende ASSL-Datei die generierte Instanziierungsprozedur geschrieben werden<br />
soll (s. Aktivität add instantiation procedure to ASSL file), ist vom Nutzer darauf zu achten, dass die Prozeduren<br />
zur Ausführung der Workflowmodelle dort vorhanden sind. Die generierte Instanziierungsprozedur<br />
wird der Datei dann hinzugefügt. In Listing 4.3 ist ein Auszug einer Instanziierungsprozedur zu sehen, die<br />
aus dem Workflowmodell von Abbildung 3.9 erzeugt wurde.<br />
Mit dem ASSL-Create Befehl werden Objekte erzeugt. In Zeile 4 wird eine Aktivität erstellt. Daraufhin<br />
wird die Bezeichnung der Aktivität in dem Attribut name auf die Bezeichnung aus dem ursprünglichen<br />
Workflowmodell gesetzt. In Abbildung 3.9 wurden ObjectIDs <strong>und</strong> nicht die name-Attribute zur Bezeichnung<br />
der Modellelemente genutzt. Das Designtime-Plugin kann mit beiden Arten der Bezeichnung von<br />
Modellelementen umgehen. Falls das name-Attribut den Wert Undefined hat, nimmt das Designtime Plugin<br />
die ObjectID aus dem Workflowmodell.<br />
In der ASSL-Prozedur wird nach der Bezeichnung der Aktivität diese auf den Ausgangszustand waiting<br />
gesetzt. In Zeile 10 ist außerdem noch zu sehen, dass eine DeferredChoice-Gruppe erstellt wird <strong>und</strong> die<br />
beiden vorher erzeugten Aktivitäten über die Aggregation group mit dem DeferredChoice verb<strong>und</strong>en werden.