18.01.2014 Aufrufe

Metamodellbasierte und hierarchieorientierte ... - RosDok

Metamodellbasierte und hierarchieorientierte ... - RosDok

Metamodellbasierte und hierarchieorientierte ... - RosDok

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

4.3 Workflow Runtime-Plugin 81<br />

(a) Cancel-Prozess mit Multiinstanz-Aktivitäten <strong>und</strong> IterationGroup<br />

(b) Darstellung des Workflows im Runtime-Plugin<br />

(c) Starten der Multiinstanz-Aktivität<br />

(d) Darstellung des Workflows in Runtime-Plugin<br />

Abbildung 4.7: Workflow-Modell mit Multiinstanz-Aktivitäten <strong>und</strong> Ausführung im Runtime-Plugin<br />

Interaktion mit Aktivitäten auch ein add-Button zu sehen. Dieser repräsentiert die gleichnamige Operation<br />

der Klasse MIRuntimeWithAdd vom Workflow-Metamodell aus Abbildung 3.2. Es können damit während<br />

die Multiinstanz-Aktivität läuft Ausführungsinstanzen hinzugefügt werden.<br />

In Abbildung 4.7(d) sind daraufhin die zwei Ausführungsinstanzen als Kinder in den Baum hinzugefügt<br />

worden. Diese können unabhängig voneinander ausgeführt werden. Die Multiinstanzaktivität NotifyAffiliated<br />

kann jedoch erst dann beendet werden, wenn alle Ausführungsinstanzen nicht mehr laufen. Möchte man hier<br />

ein unsynchrones Verhalten erlauben, sollte eine Aktivität der Klasse MIWithoutSynch verwendet werden,<br />

die das Workflow Pattern 12 ausdrückt (s. Abschnitt 3.2.4.3).<br />

4.3.2.4 Darstellung <strong>und</strong> Ausführung eines Cancel-Prozesses <strong>und</strong> einer Iterationsgruppe<br />

In Abbildung 4.7(a) ist bereits ein Cancel-Prozess modelliert. Workflowinstanzen davon können jeder<br />

Zeit mit der cancel()-Operation abgebrochen werden. Im Runtime-Plugin ist das Prozessobjekt <strong>und</strong> der<br />

cancel-Button in Abbildung 4.7(b) zu sehen, mit dem der Nutzer die Operation ausführen kann.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!