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.
4.2 Instanziierung <strong>und</strong> Gr<strong>und</strong>lagen zur Ausführung der Modelle 69<br />
sind über OCL-Constraints im Datenmodell spezifiziert, was bereits in Abschnitt 3.3.3 thematisiert wurde.<br />
Im Runtime-Plugin werden die Objekte angezeigt <strong>und</strong> der Nutzer hat die notwendigen Daten einzugeben<br />
(Anwendungsfall enter required data). Während der Ausführung der Aktivitäten werden angefragte Datenobjekte<br />
ebenfalls dargestellt (Anwendungsfall view data read objects). Die Funktionalität des Runtime-Plugins<br />
zur Interaktion mit Datenobjekten wird in Abschnitt 4.3.3 beleuchtet.<br />
Schließlich können die ausgeführten Worklfowinstanzen auf mehrere Weisen analysiert werden. Dazu<br />
gehört das Log-Window im Workflow-Plugin, welches die Aktionen vom Nutzer während der Workflow-<br />
Ausführung inkl. Timestamps protokolliert. USE stellt ein OCL-Anfragefenster bereit, das eine Analyse auf<br />
Basis von OCL Process-Mining-Anfragen ermöglicht. Eine visuelle Variante, den Ablauf der Workflowinstanz<br />
zu erfassen, ist mit dem UML-Sequenzdiagramm in USE gegeben. In diesem Diagramm werden die<br />
Operationsaufrufe bei den Aktivitäten geloggt <strong>und</strong> dargestellt. Die Aufrufe können ausgehend vom Nutzer<br />
über das Workflow-Plugin oder durch Seiteneffekte ausgehend von anderen Aktivitätsausführungen auf<br />
Basis temporaler Beziehungen geschehen. Die Analysemöglichkeiten von ausgeführten Workflows werden<br />
in Abschnitt 4.4 näher erklärt.<br />
4.2 Instanziierung <strong>und</strong> Gr<strong>und</strong>lagen zur Ausführung der Modelle<br />
USE stellt nicht nur die Modellierungsumgebung bereit, sondern auch die Ausführungsumgebung für<br />
die Workflowmodelle. Von USE können zwei Sprachen interpretieren werden, die Teile der UML Action<br />
Semantics umsetzen. Eine dieser Sprachen ist A Snapshot Sequence Language (ASSL) [GBR07] <strong>und</strong> die<br />
andere A Simple OCL-based Imperative Language (SOIL) [Büt11]. ASSL ist schon länger in USE integriert,<br />
wohingegen SOIL recht aktuell parallel zum DMWM-Ansatz entwickelt wurde. Für DMWM war die<br />
Sprache zu neu, so dass ASSL für die imperative Umsetzung Verwendung fand.<br />
4.2.1 ASSL Sprachvorstellung <strong>und</strong> Erweiterung<br />
A Snapshot Sequence Language (ASSL) wurde zur Validierung <strong>und</strong> Zertifizierung von UML-Modellen implementiert<br />
[GBR05]. Anhand von ASSL-Prozeduren lassen sich in USE halbautomatisch Objektdiagramme<br />
aus Klassendiagrammen erzeugen. Dafür implementiert ASSL große Teile der UML-Action Semantics, wie<br />
z.B. Erstellen, Löschen von Objekten oder Links <strong>und</strong> Setzen von Attributwerten von Objekten. In Tabelle 4.1<br />
sind die ASSL Befehle inkl. Erklärung dazu angegeben. Die Befehle werden in ASSL-Prozeduren in einer<br />
Pascal-ähnlichen Syntax geschrieben [GBR07]. Analog zu Pascal können auch Variablen deklariert <strong>und</strong><br />
dann in OCL-Termen genutzt werden, nachdem ihnen Objekte bzw. Werte zugeordnet wurden. Es stehen<br />
zudem for-Schleifen <strong>und</strong> if -Bedingungen zur Verfügung.<br />
Die gr<strong>und</strong>legenden Befehle zur Erzeugung von Objekten, Links <strong>und</strong> Setzen von Attributwerten ist essenziell<br />
für die DMWM-Workflowausführung. Zusätzlich musste ASSL erweitert werden, indem die drei Befehle<br />
ASSLCall, OpEnter <strong>und</strong> OpExit hinzugekommen sind. Diese werden umfangreich genutzt, was in Abschnitt<br />
4.2.2 näher vorgestellt wird. Für die Erweiterungen musste der bereits umfangreiche auf ANTLR [Par07]<br />
basierende Interpretationsmechanismus des ASSL-Interpreters erweitert werden. In [BHW11] wurden die<br />
entsprechenden Erweiterungen vorgestellt.<br />
Eine Auffälligkeit bei ASSL ist das explizite Kennzeichnen von OCL-Termen in den ASSL Kommandos<br />
mit eckigen Klammern. In Tabelle 4.1 ist das zu sehen beim Zuweisen eines Attributwertes. Auch in den<br />
folgenden Listings 4.1 <strong>und</strong> 4.2 ist diese Eigenart auffällig. Bei der Sprache SOIL wurde diese wieder<br />
beseitigt, so dass die OCL dort direkter integriert ist.