Artefakt: Protokoll
Dieses Artefakt definiert das Kommunikationsmuster, das für zwei Kapseln verwendet wird. Die Kommunikation zwischen zwei Kapseln erfolgt über Nachrichten, die an den Port der Kapseln gesendet werden. Die Protokollklasse definiert die Nachrichten, die an einen Kapsel-Port gesendet bzw. von diesem empfangen werden können.
Arten von Arbeitsergebnissen: Modellelement
Beziehungen
Containerartefakt
RollenVerantwortlich: Geändert von:
AufgabenEingabe für: Ausgabe von:
Prozessverwendung
Beschreibung
Hauptbeschreibung

In Protokollen können die zu definierenden und wiederzuverwendenden Kapsel-Ports spezifiziert werden. Das Protokoll definiert eine Gruppe eingehender und abgehender Nachrichtentypen (z. B. Operationen, Signale) und optional eine Kollaboration (die sich normalerweise aus mehreren Ablaufdiagrammen zusammensetzt, siehe Richtlinie: Ablaufdiagramm), die die erforderliche Reihenfolge von Nachrichten und eine Zustandsmaschine (beschrieben durch Zustandsdiagramme, siehe Richtlinie: Zustandsdiagramm) definiert, die das abstrakte Verhalten, das von den Teilnehmern an einem Protokoll gefordert wird, spezifiziert.

Ein Protokoll ist eine Spezifikation gewünschten Verhaltens, das über einen Konnektor, eine explizite Spezifikation der Vertragsvereinbarung zwischen den Teilnehmern am Protokoll, stattfinden kann. Es definiert nur Verhalten und keine strukturellen Elemente. Ein Protokoll setzt sich aus mehreren Teilnehmern zusammen, wobei jeder Teilnehmer eine spezielle Rolle im Protokoll innehat.

Jede dieser Protokollrollen wird mit einem eindeutigen Namen und einer Gruppe von Signalen, die von dieser Rolle empfangen werden, sowie mit der Gruppe den Signalen angegeben, die diese Rolle sendet (beide Gruppen können leer sein). Optional kann ein Protokoll auch eine Spezifikation der gültigen Übertragungssequenzen haben. Diese kann von einer Zustandsmaschine angegeben werden. Ein Protokoll kann auch eine Gruppe von prototypischen Interaktionssequenzen haben (die in Form von Ablaufdiagrammen angezeigt werden können). Diese müssen der Protokollzustandsmaschine entsprechen, sofern eine solche definiert ist.

Binäre Protokolle, bei denen es nur zwei Teilnehmer gibt, sind die gebräuchlichsten und die, die am einfachsten anzugeben sind. Ein Vorteil dieser Protokolle ist, dass nur eine Rolle, die so genannte Basisrolle, angegeben werden muss. Die andere Rolle, die so genannte Konjugatrolle, kann von der Basisrolle abgeleitet werden, indem die eingehende und abgehende Signalgruppe einfach umgekehrt werden. Diese Umkehrungsoperation ist auch als Konjugation bekannt.

Komposition der Protokollklasse

Komposition der <<Protokollklasse>>

Wie in der vorherigen Abbildung gezeigt, enthält ein Protokoll in der Regel eine oder mehrere Ablaufdiagramme, die die gültigen Nachrichtenaustauschsequenzen veranschaulichen, die im Protokoll angegeben sind. Das Protokoll enthält auch eine Gruppe eingehender (Anforderungs-) Nachrichten und eine Gruppe abgehender (Antwort-) Nachrichten. Mit einer optionalen Zustandsmaschine kann das Verhalten definiert werden, das die Protokollteilnehmer unterstützen müssen.

Anpassung
DarstellungsoptionenUML-Darstellung: Klasse mit dem Stereotyp <<Protokoll>> (Protocol). Diese Darstellung basiert auf der Notation von UML 1.5. Ein Großteil dieses Konzepts kann in UML 2.0 mit dem Konzept: Strukturierte Klasse dargestellt werden. Lesen Sie auch den Artikel Unterschiede zwischen UML 1.x und UML 2.0.
Weitere Informationen
Prüflisten