Objektfluss (UML)
aus Wikipedia, der freien Enzyklopädie
Ein Objektfluss (engl. ObjectFlow) ist ein Modellelement in der Unified Modeling Language (UML), einer Sprache für die Modellierung der Strukturen und des Verhaltens von Software- und anderen Systemen.
Ein Objektfluss ist eine spezielle Aktivitätskante in einer Aktivität. Er verbindet Objektknoten und Kontrollknoten. Er kann nie eine Aktion direkt mit einem Objektknoten oder mit einem Kontrollknoten verbinden, sondern immer nur indirekt über Pins, die der Aktion zugeordnet sind.
Ein Modellierer kann die „Leitfähigkeit“ eines Objektfluss auf zwei Arten steuern. Erstens kann er den Objektfluss mit einer so genannten Guard versehen, einem booleschen Ausdruck, der immer dann ausgewertet wird, wenn die produzierende Aktion dem Objektfluss ein Token anbietet. Das Token kann nur fließen, wenn dieser Ausdruck als wahr ausgewertet wird. Zweites kann der Objektfluss mit einem Gewicht (engl. weight) versehen werden. Das Gewicht ist eine positive Zahl. Sie gibt an, wieviele Token im Minimum im Quell-Objektknoten vorliegen müssen, bevor alle bereitstehenden Token gemeinsam über den Objektfluss fließen. Das Gewicht ist also ein Modellierungsparameter, der eine Art „Paketgrösse“ für Objektflüsse festlegt.
Ein Objektfluss repräsentiert mehr als ein nackter Transportkanal zwischen zwei Objektknoten, denn ihm sind zwei eigene Instrumenten zugeordnet, um den Fluss der Token durch eine Aktivität zu beeinflussen:
- Auswahl-Verhalten (engl. selection behavior): Ein Objektfluss kann mit Hilfe eines Auswahl-Verhaltens die Objekte beim Quell-Objektknoten auswählen, die über ihn fließen sollen. Der Quell-Objektknoten bietet also alle bereitstehenden Objekte an, während die Spezifikation des Auswahl-Verhaltens bestimmt, welche Objekte tatsächlich fließen. Ein Auswahl-Verhalten kann in einer der zulässigen Formen für eine Verhaltensspezifikation formuliert sein, zum Beispiel als Aktivität, Interaktion oder als Zustandsautomat.
- Transformations-Verhalten (engl. transformation behavior): Mit einem optinalen Transformations-Verhalten kann ein Objektfluss spezifizieren, wie ein Objekt, das über den Objektfluss fließt, verändert wird.
[Bearbeiten] Notation
[Bearbeiten] Unterschied zur UML 1.x
Objektfluss wurde in der UML2 neu eingeführt.