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.

96 Hierarchieorientierte Workflowmodellierung<br />

In Abbildung 5.2(b) sind dann die CallBehaviourActions mit dem UML-Hierarchiesymbol bei den Aktivitäten<br />

A <strong>und</strong> B angegeben. Hierbei sind mit den drei Hierarchieebenen drei Aktivitätsdiagramme zu sehen, die<br />

jedoch noch keinen Sequenzflusskanten beinhalten. Eine konzeptionelle Darstellung der Hierarchie, die bei<br />

Aktivitätsdiagrammen eher unüblich ist, ist in Abbildung 5.2(c) zu sehen.<br />

An dem Modell von Abbildung 5.2(a) ist ersichtlich, dass durch die Baumdarstellung mehrere Abstraktionsebenen<br />

in einem Modell visualisiert werden. Anhand dessen lassen sich die oben erwähnten Nutzerziele<br />

ausdrücken. Dagegen ist wie in Abblidung 5.2(b) bei flachen Modellierungssprachen wie Aktivitätsdiagrammen<br />

diese Zielmodellierung nur über den Umweg weiterer Modelle ausdrückbar.<br />

5.2.2 Einführung der temporalen CTT-Operatoren<br />

Die Operatoren, die CTT zur Angabe der temporalen Beziehungen von Aufgaben bereitstellt, sind in Tabelle<br />

5.1 aufgelistet.<br />

CTT-Operator Bezeichnung Operationale Semantik<br />

A [] B Choice Entweder A oder B sind auszuführen.<br />

A ||| B Concurrency A <strong>und</strong> B werden unabhängig voneinander abgearbeitet.<br />

A |[]| B Concurrency With Information<br />

Exchange<br />

A <strong>und</strong> B sind unabhängig voneinander auszuführen, tauschen<br />

aber währenddessen Informationen aus.<br />

A [> B Deactivation B kann die Ausführung von A abbrechen. Zudem ist die<br />

Ausführung von B erforderlich, auch wenn A schon beendet<br />

wurde. Diese Eigenschaft unterscheidet den CTT-<br />

Deactivation vom LOTOS-Deactivation-Operator.<br />

A |> B Suspend-resume Solange A läuft kann B die Aktivität unterbrechen. Dieses<br />

kann mehrfach während der Abarbeitung von B geschehen,<br />

so dass B damit mehrmals ausgeführt wird.<br />

A |=| B Order Independence Entweder wird A oder B (jeweils inklusive Unteraufgaben)<br />

komplett abgearbeitet bevor die andere Aufgabe starten<br />

darf.<br />

A » B Enabling A muss vor dem Starten von B abgearbeitet worden sein.<br />

A []» B Enabling with information<br />

passing<br />

A muss vor dem Starten von B abgearbeitet worden sein. A<br />

stellt des Weiteren Information für B bereicht.<br />

A* Iteration A kann beliebig häufig ausgeführt werden, solange die darauffolgende<br />

Aufgabe mit einem Deactivation- oder Choice-<br />

Operator nicht zur Ausführung ausgewählt wurde.<br />

[A] Option A kann optional ausgeführt werden<br />

Tabelle 5.1: Temporale CTT-Operatoren<br />

In diesem Abschnitt sollen die temporalen Operatoren informell eingeführt werden, um sie in den Abschnitten<br />

5.2.3 <strong>und</strong> 5.2.4 zur semiformalen Repräsentation in Aktivitätsdiagrammen zu nutzen. Des Weiteren wird<br />

eine formalere Spezifikation dieser Operatoren in Abschnitt 5.3 folgen, in dem ein präzises Metamodell für<br />

CTT vorgestellt wird. Dort werden zudem Konsistenzprobleme aufgezeigt, die temporale Operatoren in<br />

CTT-Modellen hervorrufen können.<br />

In der linken Spalte der Tabelle 5.1 ist die Syntax der Operatoren angegeben. Daraufhin ist in der mittleren die<br />

Bezeichnung der Operatoren zu sehen <strong>und</strong> in der rechten umgangsprachlich <strong>und</strong> informell die operationale<br />

Semantik beschrieben.<br />

Die temporalen Operatoren aus Tabelle 5.1 haben Prioritäten, die notwendig für die Interpretation der<br />

Abarbeitungsreihenfolge mehrerer Geschwisterknoten im Aufgabenbaum sind. CTT ist ein grafischer

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!