Transitionen

Transitionen verbinden die Aktivitäten. Eine Aktivität kann nur ausgeführt werden, wenn eine Transition zu dieser Aktivität führt und im Prozess beschritten wird.

Vom Ausgangspunkt einer Aktivität können Sie mehrere Transitionen zu anderen Aktivitäten einrichten. Für diese Transitionen können Sie Bedingungen angeben, unter denen sie beschritten werden. Es können zugleich mehrere Transitionen beschritten werden.

Zum Eingangspunkt einer Aktivität können mehrere Transitionen führen.

Transitionen einrichten

Transitionen richten Sie wie die Aktivitäten grafisch auf der Registerkarte Zeichenblatt ein:

  • Klicken Sie auf das Transitionssymbol auf der Symbolleiste des Modelleditors.
  • Klicken Sie auf den unteren Ausgangspunkt einer Aktivität.
  • Klicken Sie auf den oberen Eingangspunkt einer Aktivität.

Die Transition wird eingerichtet und als Pfeil gekennzeichnet.

Klicken Sie auf eine Transition, wird die Transition mit Ziehpunkten gekennzeichnet. Den Anfangspunkt der Transition können Sie auf den Eingangspunkt einer anderen Aktivität ziehen, den Endpunkt auf den Ausgangspunkt einer anderen Aktivität. Über Zwischenpunkte können Sie den Verlauf des Pfeils ändern.

Transitionen, die nicht von einem Ausgangspunkt zu einem Eingangspunkt führen, werden rot gekennzeichnet.

Eine Transition löschen Sie über das Kontextmenü oder die Taste Entf.

Schleifen haben zusätzlich einen Schleifenausgang und einen Schleifeneingang für die Schleifentransitionen. Transitionen vom Schleifenausgang zum Eingang einer Aktivität haben die Eigenschaft 'FROM LOOP', Transitionen vom Ausgang einer Aktivität zum Schleifeneingang die Eigenschaft 'TO LOOP'. Eine Schleife leitet die Daten über die FROM LOOP - Transition weiter und erhält Sie über die TO LOOP - Transition zurück. Erst wenn die Daten der Bedingung für den Austritt entsprechen, leitet die Schleife die Daten über den Ausgangspunkt weiter.

Die Konfigurationsdaten speichern Sie über die Schaltfläche Speichern auf der Symbolleiste des Modelleditors.

Transitionsregeln

Gehen von einer Aktivität mehrere Transitionen aus, gelten folgende Regeln:

  • Jede Transition, für die keine Bedingung angegeben ist, wird beschritten.
  • Jede Transition, für die eine Bedingung angegeben und erfüllt ist, wird beschritten.
  • Können mehrere Transitionen beschritten werden, können Sie durch einen XOR-Split eine Prioritätenliste erstellen. Dann wird nur die Transition mit der höchsten Priorität beschritten.
  • Sind für alle Transitionen Bedingung angegeben und nicht erfüllt, bricht der Prozess ab.

Führen mehrere Transitionen zu einer Aktivität, gelten folgende Regeln:

  • Die Aktivität kann nur ausgeführt werden, wenn mindestens eine Transition beschritten wurde.
  • Die Aktivität kann nur ausgeführt werden, wenn alle Aktivitäten, von denen die Transitionen ausgehen, abgeschlossen sind und die Transitionen auf ihre Gültigkeit geprüft wurden.
  • Wollen Sie eine Aktivität bereits ausführen lassen, sobald eine von mehreren möglichen Aktivitäten abgeschlossen ist und die Transition von dieser Aktivität beschritten werden kann, können Sie durch einen XOR-Join angeben, bei welchen Transitionen das der Fall ist.

Zwischen Aktivitäten, die einer Ad-hoc-Aktivität zugeordnet sind, werden keine Transitionen im Modell festgelegt, sondern erst im Ablauf bestimmt.

Transitionsbedingungen

Eine Transitionsbedingung richten Sie über den Eigenschaftsdialog einer Transition ein. Den Dialog öffnen Sie über das Kontextmenü.

Unter Allgemein sind 'Von', 'Nach' und Typ der Transition angezeigt. Ändern Sie 'Von' oder 'Nach' wird der Transitionspfeil auf dem Zeichenblatt entsprechend geändert. Ändern Sie den Typ, wird die Plausibilität geprüft. Transitionen vom Schleifenausgang zum Eingang einer Aktivität können den Typ 'FROM LOOP' erhalten, Transitionen vom Ausgang einer Aktivität zum Schleifeneingang den Typ 'TO LOOP'. Alle anderen Transitionen sind vom Typ 'NO LOOP'.

Außerdem geben Sie noch die Transitionsbedingung an und optional Skript-Code. Das Skript wird ausgeführt, bevor die Bedingung geprüft wird. Über das Skript können Sie auf die aktuellen Variablenwerte zugreifen und Werte ändern. Änderungen werden aber nur für die Prüfung des Bedingungsausdrucks berücksichtigt und nicht an den Prozess zurückgegeben.

Über den Ausdruck werden die Werte von Variablen geprüft. Ist der Ausdruck wahr, wird die Transition beschritten.

Die Konfigurationsdaten speichern Sie über die Schaltfläche Speichern auf der Symbolleiste des Modelleditors.

Schleifentransitionen

Schleifen haben zusätzlich einen Schleifenausgang und einen Schleifeneingang für die Schleifentransitionen. Transitionen vom Schleifenausgang zum Eingang einer Aktivität haben die Eigenschaft 'FROM LOOP', Transitionen vom Ausgang einer Aktivität zum Schleifeneingang die Eigenschaft 'TO LOOP'. Eine Schleife leitet die Daten über die FROM LOOP - Transition weiter und erhält Sie über die TO LOOP - Transition zurück. Erst wenn die Daten der Bedingung für den Austritt entsprechen, leitet die Schleife die Daten über den Ausgangspunkt weiter.

Schleifentransitionen richten Sie ebenfalls grafisch ein. Der Transitionstyp wird automatisch vergeben. Er wird auf der Registerkarte Allgemein des Eigenschaftsdialogs angezeigt.

Vom Schleifenausgang ist nur eine Transition erlaubt. Wollen Sie vom Schleifenausgang verzweigen, richten Sie eine Aktivität vom Typ 'Route' ein und verzweigen erst nach der Routenaktivität.

Zum Schleifeneingang ist ebenfalls nur eine Transition erlaubt. Wollen Sie zwei Aktivitäten zum Schleifeneingang zusammenführen, richten Sie ebenfalls eine Aktivität vom Typ 'Route' und führen die Aktivitäten dort zusammen.

Schema:

Splits und Joins

Richten Sie mehrere Transitionen vom Ausgangspunkt einer Aktivität ein, die beschritten werden können, weil Bedingungen wahr oder nicht angegeben sind, können Sie durch einen XOR-Split eine Prioritätenliste erstellen. Dann wird nur die Transition mit der höchsten Priorität beschritten.

Ausgehende Transitionen vom Typ XOR-Split sind auf dem Zeichenblatt durch einen roten Pfeil gekennzeichnet.

Richten Sie mehrere Transitionen zum Eingangspunkt einer Aktivität ein, können Sie durch einen XOR-Join festlegen, dass bereits eine abgeschlossene Vorgängeraktivität, deren Transitionsbedingung wahr oder nicht angegeben ist, ausreicht, damit die Aktivität ausgeführt werden kann. Die anderen Vorgängeraktivitäten können zwar weiter ausgeführt werden, haben aber für die Transition keine Bedeutung.

Eingehende Transitionen vom Typ XOR-Join sind auf dem Zeichenblatt durch einen roten Pfeil gekennzeichnet.

Splits

Splits beziehen sich auf alle Transitionen, die vom Ausgangspunkt einer Aktivität ausgehen. Voreingestellt sind alle Splits vom Typ 'AND'.

Der Typ wird über das Kontextmenü einer Aktivität verwaltet.

  • Wählen Sie Transitionen/Ausgehende(Split) aus dem Kontextmenü einer Aktivität.
  • Alle ausgehenden Transitionen sind aufgelistet.

  • Ändern Sie den Typ auf XOR.
  • Legen Sie über die Pfeil-Schaltflächen die Priorität fest.
  • Je höher eine Transition in der Liste steht, desto höher ist die Priorität.

  • Bestätigen Sie mit OK.

Die Konfigurationsdaten speichern Sie über die Schaltfläche Speichern auf der Symbolleiste des Modelleditors.

Joins

Joins beziehen sich auf alle Transitionen, die zum Eingangspunkt einer Aktivität führen. Voreingestellt sind alle Joins vom Typ 'AND'.

Der Typ wird über das Kontextmenü einer Aktivität verwaltet.

  • Wählen Sie Transitionen/Eingehende(Join) aus dem Kontextmenü einer Aktivität.
  • Alle eingehenden Transitionen sind aufgelistet.

  • Ändern Sie den Typ auf XOR.
  • Die Reihenfolge der eingehenden Transitionen in der Liste spielt keine Rolle. Beim XOR-Join wird die erste eingehende Transition beschritten.

  • Bestätigen Sie mit OK.

Die Konfigurationsdaten speichern Sie über die Schaltfläche Speichern auf der Symbolleiste des Modelleditors.