Kommunikationsdiagramm (UML)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
QS-Informatik

Dieser Artikel wurde wegen inhaltlicher Mängel auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen, und beteilige dich an der Diskussion! (+)


Begründung: Die einleitenden Absätze dieses Lexikon-Artikels sind schon fast der wort case, jedenfalls das Schwächste an Pseudoerklärung, was ich seit langem gelesen habe:
  • Am Anfang nur steht eine allgemein Kategorisierung, etwa wie „Ein Fuchs ist eine von n Tierarten, die in deutschen Wäldern vorkommen.“ Zu allgemein, um etwas Konkretes auszusagen, aber gleichwohl der erste, also exponierteste Satz. Es fehlt die sofortige Angabe, der Besonderheit des zu definierenden Gegenstands. Stattdessen:
  • „Ein Kommunikationsdiagramm […] zeigt eine bestimmte Sicht […].“ Tja, das kann man sogar von meinem Nachbarn sagen, auch er „zeigt eine gewisse Sicht“, ebenso wie der Nachrichtenkommentator im Fernsehen und ein Gemälde in der Kunstgalerie. Äh -- Welche Sicht?
  • Schön auch, dass diese vage Begriffsbestimung mir mitteilt, das ein Kommunikationsdiagramm etwas „grafisch darstellt“. Wer hätte das von einem Diagramm erwartet!
Insgesamt viel zu allgemein und geradezu platt dargestellt. Wer soll sich darunter etwas Konkretes vorstellen können, wenn er nicht schon weiß, wovon die Rede ist?! Die bisherige Beschreibung macht nicht deutlich genug, was das besondere an einem Kommunikationsdiagramm sei, die Beschreibung sollte meines Erachtens weniger Allgemeinplätze enthalten und Kommunikationsdiagramme präziser und möglichst konkret beschreiben. --Parzi (Diskussion) 18:40, 6. Sep. 2014 (CEST)
Strukturdiagramme der UML
Klassendiagramm
Komponentendiagramm
Kompositionsstrukturdiagramm
Objektdiagramm
Paketdiagramm
Profildiagramm
Verteilungsdiagramm
Verhaltensdiagramme der UML
Aktivitätsdiagramm
Anwendungsfalldiagramm
Interaktionsübersichtsdiagramm
Kommunikationsdiagramm
Sequenzdiagramm
Zeitverlaufsdiagramm
Zustandsdiagramm

Kommunikationsdiagramm (engl. communication diagram) heißt in der Unified Modeling Language (UML) ein Verhaltensdiagramm, das den Austausch von Nachrichten durch Lebenslinien darstellt.

In älteren UML-Versionen wurden solche Diagramme als Kollaborationsdiagramm (engl. collaboration diagram) bezeichnet.

Notation von Lebenslinien und Nachrichten[Bearbeiten]

Beispiels eines Kommunikationsdiagramms mit zwei Lebenslinien und zwei Nachrichten

Die Abbildung links zeigt ein Beispiel eines Kommunikationsdiagramms mit einem Kopf- und einem Inhaltsbereich. Das optionale Schlüsselwort im Kopfbereich ist bei einem Kommunikationsdiagramm wie bei jedem Interaktionsdiagramm sd oder interaction.

Ähnlich wie in einem Sequenzdiagramm werden in einem Kommunikationsdiagramm Lebenslinien als Rechtecke dargestellt. Dieses Symbol „Lebenslinie“ zu nennen mag etwas seltsam erscheinen, denn im Kommunikationsdiagramm wird im Unterschied zum Sequenzdiagramm die gestrichelte Linie, die für die Zeitachse beim Austausch von Nachrichten steht, nicht angezeigt. Eine Nachricht wird als kurzer Pfeil gezeichnet. Die Richtung des Pfeils zeigt vom Sender zum Empfänger der Nachricht. Der Pfeil ist beschriftet mit einer Sequenznummer und einer Signatur der Nachricht, zum Beispiel der Signatur der Operation, falls es sich bei der Nachricht um einen synchronen Aufruf einer Operation handelt.

Jeder Verbindung im Kommunikationsdiagramm muss eine Assoziation im Klassendiagramm gegenüberstehen.

Zeitliche Ordnung der Nachrichten[Bearbeiten]

Die zeitliche Abfolge von Nachrichten wird in Kommunikationsdiagrammen mit Sequenzausdrücken modelliert. Jeder modellierten Nachricht ist ein Sequenzausdruck zugeordnet, aus dem hervorgeht, was die Vorgängernachrichten sind und welche Nachrichten allenfalls parallel ablaufen.

Ein Sequenzausdruck besteht aus einer Folge von mit einem Punkt (.) getrennten Sequenztermen, gefolgt von einem Doppelpunkt (:). Sequenzterme sind Zahlen, zum Beispiel 1, 10 oder 22, die optional von einem Kleinbuchstaben, zum Beispiel a oder b gefolgt werden. Folgende Zeichenfolgen sind also gültige Sequenzausdrücke: 1, 1.7, 1a.6, 1a.6c.2.

Die Bedeutung von Sequenzausdrücken ist durch drei Regeln gegeben:

Kommunikationsdiagramm

Erstens gibt die Folge der Terme im Sequenzausdruck die Verschachtelungstiefe in einer Meldung an. Eine Nachricht mit dem Sequenzausdruck 1.2b.1 wird also von einer Ausprägung gesendet, nachdem diese eine Nachricht mit dem Sequenzausdruck 1.2b erhalten hat. In der Abbildung rechts folgt die Nachricht mit dem Sequenzausdruck 1.2b.1 auf die Nachricht mit dem Sequenzausdruck 1.2b, diese wiederum auf die Nachricht mit dem Sequenzausdruck 1.

Kommunikationsdiagramm

Zweitens geben rein numerische Terme auf der gleichen Verschachtelungstiefe eine sequentielle Reihenfolge an. Die Abbildung rechts stellt also eine Interaktion dar, in der die Lebenslinie :B die Nachricht mit dem Sequenzausdruck 1.1 vor der Nachricht mit dem Sequenzausdruck 1.2 versendet.

Kommunikationsdiagramm

Drittens bezeichnen Terme mit einem Buchstaben am Schluss Nachrichten, die parallel versendet werden. Im Diagramm rechts erkennt man also, dass die Nachricht mit dem Sequenzausdruck 1.1a und die Nachricht mit dem Sequenzausdruck 1.1b gleichzeitig versendet werden.

Literatur[Bearbeiten]

  • Christoph Kecher: "UML 2.0 - Das umfassende Handbuch" Galileo Computing, 2006, ISBN 3-89842-738-2
  • Heide Balzert: "Lehrbuch der Objektmodellierung - Analyse und Entwurf mit der UML 2" Elsevier Spektrum Akademischer Verlag, 2005, ISBN 3-8274-1162-9