• Keine Ergebnisse gefunden

Joins in DiaFlux

Im Dokument Hochschule Wismar (Seite 68-73)

4   ABBILDUNG VON ANOMALIEN DER GRAPHISCHEN MODELLIERUNG AUF DIE

4.4   P ROZESSANOMALIEN

4.4.2   Joins in DiaFlux

Ein Knoten in DiaFlux führt zur weiteren Abarbeitung des Diagrammflusses, wenn eine Eingangskante wahr wird. Knoten mit mehreren Einganskanten können also als OR-Join oder XOR-Join betrachtet werden, wobei im Kontext von DiaFlux die Bezeichnung Support zur Anwendung kommt. Ein wahrer, eingehender Pfad gibt dem Knoten Support. Hat ein Knoten Support, wird er ausgelöst. Sind mehrere eingehende Kanten wahr, verstärkt sich der Support.

Dies ist vor Allem bei der Herleitung von Lösungen und ihren Wahrscheinlichkeiten interessant, resultiert aber nicht in einer erneuten Ausführung einer Aktivität.

Explizite AND- und XOR-Joins können nur mit einem Hilfskonstrukt modelliert werden.

Abbildung 56: Joins in DiaFlux Quelle: eigene Darstellung

Ein Hilfswert „CheckVal“ wird mit Null initialisiert. Anschließend werden zwei Fragen „A“

und „B“ gestellt und deren Antworten ausgewertet. Im Falle der gewünschten Antwort wird der Hilfswert inkrementiert. In einer Zusammenführung (Join) wird der Hilfswert

„CheckVal“ überprüft. Die aus dieser Überprüfung folgende Ausgangsbedingung bestimmt die Kategorie des Joins.

AND-Join: der Wert von „CheckVal“ entspricht der Anzahl der Eingangskanten.

XOR-Join: der Wert von „CheckVal“ ist genau Eins.

OR-Join: der Wert von „CheckVal“ ist Eins oder größer.

Nachdem die Modellierung von Split- und Join-Kontrollstrukturen gezeigt wurde, sollen nun anhand eines komplexen Beispieldiagramms die Prozessanomalien analysiert werden.

Nachfolgend ist ein Beispielflussdiagramm modelliert, welches verschiedene Prozessanomalien beinhaltet. Das Diagramm beschreibt den Umgang mit einem ungnädigen Baby und hilft, die Ursache für sein missmutiges Verhalten zu finden. (Ein korrektes Diagramm dieser Art befindet sich im Anhang 10.1.)

Abbildung 57: DiaFlux Flussdiagramm – Darstellung verschiedener Prozessanomalien Quelle: eigene Darstellung

4.4.3 Knoten ohne eingehende oder ausgehende Kanten

Der Knoten „Bauchweh“ weist keine eingehenden Kanten auf.

Bewertung: Die Anomalie der Knoten ohne eingehende oder ausgehende Kanten kann auf DiaFlux übertragen werden. Eine Modellierung solcher Knoten ist möglich.

4.4.4 Aktivitätsknoten mit mehr als einer Eingangs- oder Ausgangskante

Da Aktivitäts- und Kontrollknoten in DiaFlux nicht explizit unterschieden werden, ist es prinzipiell nicht fehlerhaft, Knoten mit mehreren Eingangs- oder Ausgangskanten zu modellieren. Der Diagnoseknoten „Volle Windel“ kann als Aktivitätsknoten betrachtet werden und hat zwei eingehende Kanten, die korrekt modelliert wurden. Allerdings kann auch das Gegenbeispiel modelliert werden: ein Warteknoten sollte niemals mehrere Eingangs- oder Ausgangskanten aufweisen.

Bewertung: Die Anomalie der Aktivitätsknoten mit mehr als einer Eingangs- oder Ausgangskante kann auf DiaFlux eingeschränkt übertragen werden. Eine Modellierung solcher Knoten ist möglich, aber nicht zwingend ein Fehlersymptom.

4.4.5 Kontrollknoten mit nur einer Eingangs- oder Ausgangskante, Unvollständigkeit der Nachbedingungen

Der Knoten „Zahnt es“ hat nur eine ausgehende Kante für den Wert „weiß nicht“. Als Kontrollknoten muss er in diesem Beispiel mehrere Ausgangskanten aufweisen. Somit ist zugleich die Anomalie der Unvollständigkeit der Nachbedingungen aufgezeigt.

Bewertung: Auch diese Anomalien können auf DiaFlux übertragen werden. Eine Modellierung solcher Knoten ist möglich. Die Unvollständigkeit der Nachbedingungen wird nicht geprüft, so dass einige Pfade möglicherweise nicht betreten werden können und die Ausführung des Flusses zum Stehen kommt.

4.4.6 Sich überschneidende Nachbedingungen

Den ausgehenden Kanten des Knotens „Letztes Nickerchen“ sind die Bereiche „>3“ und „<4“

zugewiesen. Liegt das letzte Nickerchen des Babys 3,5 Stunden zurück, überschneiden sich die Bereiche und der zu betretende Pfad ist nicht eindeutig definiert.

Bewertung: Die Überschneidungsfreiheit der Nachbedingungen ist in DiaFlux nicht gewährleistet, da keine Überprüfung der Bedingungen an ausgehenden Kanten stattfindet. Die Anomalie kann also abgebildet werden.

4.4.7 Fehlender Start- bzw. Endknoten oder auch mehrere Start- bzw. Endknoten

Im dargestellten Diagramm existieren zwei Startknoten (in unverbundenen Pfaden) – es existiert ein zweites, unabhängiges Diagramm im unteren linken Bereich. Außerdem ist der Pfad um den Knoten „Bauchweh?“ nicht mit dem restlichen Diagramm verbunden. Es wäre auch möglich, sämtliche Start- und Endknoten aus dem Diagramm zu entfernen, ohne das ein Modellierungsfehler angezeigt würde.

Bewertung: Fehlende oder mehrere Start- und Endknoten können in DiaFlux modelliert werden. Startknoten sind für den Ablauf eines Flussdiagramms allerdings unabdinglich, da ein Flussdiagramm nur ausgeführt werden kann, wenn ein Eintrittspunkt durch einen Starknoten gegeben ist. Endknoten sind in DiaFlux ebenfalls erforderlich. Ein Flussdiagramm, das ein weiteres Diagramm aufruft, wartet, bis dieses seinen Endknoten erreicht, um mit seiner Ausführung fortzufahren. Fehlt der Endknoten, ist eine Fortsetzung des Flusses nicht möglich. Mehrere Start- und Endknoten ermöglichen den Einstieg in unterschiedliche Pfade des Diagramms oder unterschiedliche Endzustände und sind daher eine gewollte Modellierungseigenschaft. Eine Modellierung mehrerer Flussdiagramme in einem ist technisch möglich, sollte allerdings der Übersichtlichkeit halber vermieden werden.

4.4.8 Fehlgerichtete Kanten bei Start- oder Endknoten

Das Beispiel zeigt mehrere Ausgangskanten und eine Eingangskante im oberen Startknoten.

Außerdem existieren Ausgangskanten an einigen Endknoten.

Bewertung: Fehlgerichtete Kanten bei Start- oder Endknoten können in DiaFlux modelliert werden. Mehrere Ausgangskanten eines Startknotens stellen nicht unbedingt eine Anomalie dar, denn es kann auch die Modellierung paralleler Pfade beabsichtigt sein. Mehrere Eingänge aus unterschiedlichen Diagrammen zu einem Startknoten des aktuellen Diagramms sind ebenfalls erlaubt. Die Rückkehr zum Startknoten im Diagramm selbst ist allerdings eine fehlerhafte Modellierung, auf die bereits durch DiaFlux hingewiesen wird. Auch ausgehende Kanten aus Endknoten sind fehlerhaft und werden markiert. Mehrere Eingangskanten in einen Endknoten sind dagegen gestattet, denn mehrere Pfade können zu einem Endergebnis führen.

4.4.9 Verbindungsloser Knoten

Der Knoten „Riecht es?“ ist ein weiteres Mal in das Diagramm geraten, ohne eine Verbindung zu anderen Knoten auszuweisen.

Bewertung: Die Anomalie der verbindungslosen Knoten kann auf DiaFlux übertragen werden. Knoten können ohne Kanten im Diagramm platziert werden.

4.4.10 Mehrere Kanten zwischen zwei Knoten

Zwischen den Knoten „Maulig und ungehalten?“ und „Letzte Fütterung“ existieren zwei Kanten.

Bewertung: Mehrere Kanten zwischen zwei Knoten sind in DiaFlux ohne Weiteres modellierbar. Es handelt sich nur dann um ein Fehlersymptom, wenn beide Kanten in dieselbe Richtung verlaufen.

Die nachfolgenden Anomalien fallen ebenfalls in die Klasse der Prozessanomalien, verstoßen allerdings nicht gegen die vormals diskutierte Definition des Prozessmodells, sondern beschreiben die falsche Nutzung von Kontrollknoten. Zur Illustration dieser Anomalien wurden gesonderte Beispiele gewählt.

4.4.11 Deadlock

Abbildung 58: DiaFlux Flussdiagramm – deterministischer Deadlock Quelle: eigene Darstellung

Die Abbildung zeigt ein Diagramm zur Bestimmung der durchschnittlichen Sauerstoffsättigung (sO2), in dem zuerst gefragt wird, ob ein Blutgas-Analyse-Gerät zur Verfügung steht. Ist das der Fall, wird die Sauerstoffsättigung von diesem Gerät erfragt (SaO2), andernfalls durch ein Pulsoxymeter (SpO2). Nur, wenn beide Werte bekannt sind, wird daraus die durchschnittliche Sauerstoffsättigung errechnet. Da es sich bei der Frage nach dem Vorhandensein eines BGA-Gerätes um einen XOR-Split handelt und somit nur einer der nachfolgenden Pfade betreten werden kann, sind niemals beide Parameter SaO2 und SpO2 bekannt und der folgende Knoten (AND-Join) kann die Berechnung des sO2 nie durchführen.

Es entsteht ein deterministische Deadlock. Eine mögliche Auflösung kann erreicht werden, indem die Frage nach dem BGA-Gerät losgelöst von der Bestimmung des Wertes durch das Pulsoxymeter modelliert wird. Ist eines der Geräte nicht vorhanden, könnte der Fluss ohne die Berechnung der durchschnittlichen Sauerstoffsättigung beendet werden.

Bewertung: Sowohl deterministische als auch nicht-deterministische Deadlocks können mit DiaFlux durch die ungeeignete Platzierung einer One-Choice- Frage und damit fehlende Werte modelliert werden.

4.4.12 Fehlende Synchronisation

Abbildung 59: DiaFlux Flussdiagramm - nicht-deterministische fehlende Synchronisation Quelle: eigene Darstellung

Das Diagramm in der Abbildung erfragt, worauf der Anwender Hunger hat, um anschließend seine konkreteren Vorlieben zu ermitteln und den entsprechenden Anbieter anzurufen, um Essen zu bestellen oder einen Tisch im Restaurant zu reservieren. Der Kontrollknoten mit der Multiple-Choice-Frage „Worauf haben Sie Hunger?“ ist ein OR-Split: ein oder mehrere Antworten sind möglich. Dadurch können die unterschiedlichen, ausgehenden Pfade durchlaufen werden, was dazu führt, dass „Nummer wählen“ mehrfach angestoßen wird.

Diese nicht-deterministische, fehlende Synchronisation kann aufgelöst werden, indem der Knoten „Worauf haben Sie Hunger?“ in eine One-Choice-Frage – also einen XOR-Split – umgewandelt wird.

Bewertung: Der zuerst betretene und somit zuerst eingehende Pfad wird den Knoten

„Nummer wählen“ aktivieren. Die danach eintreffenden Pfade würden nur den Support des Knoten verstärken. Die Anomalie ist also nicht übertragbar, da eine mehrfache Ausführung eines Knotens ausgeschlossen ist.

Im Dokument Hochschule Wismar (Seite 68-73)