UML-Sequenzdiagramme: Richtlinien

In Visual Studio Ultimate können Sie ein Sequenzdiagramm zeichnen, um eine Interaktion darzustellen. Eine Interaktion ist eine Sequenz von Meldungen zwischen typischen Instanzen von Klassen, Komponenten, Subsystemen oder Akteuren. Es gibt zwei Arten von Sequenzdiagrammen:

In diesem Thema

Verwenden von UML-Sequenzdiagrammen

Grundlegende Schritte zum Zeichnen von Sequenzdiagrammen

Erstellen und Verwenden von einfachen Sequenzdiagrammen

Klassen und Lebenslinien

Erstellen von wiederverwendbaren Interaktionssequenzen

Reduzieren von Lebensliniengruppen

Beschreiben von Steuerungsstrukturen mit Fragmenten

Generieren von Sequenzdiagrammen aus Code

Verwenden von UML-Sequenzdiagrammen

Sie können Sequenzdiagramme für eine Vielzahl von Zwecken bei unterschiedlichen Stufen von Programmdetails verwenden. Nachfolgend sind typische Situationen aufgeführt, in denen Sequenzdiagramme verwendet werden können:

  • Wenn Sie über ein Anwendungsfalldiagramm verfügen, das die Benutzer des Systems und ihre Ziele zusammenfasst, können Sie ein Sequenzdiagramm zeichnen, um zu beschreiben, wie die Hauptkomponenten des Systems zusammenwirken, um die Ziele der einzelnen Anwendungsfälle zu realisieren. Weitere Informationen finden Sie unter UML-Anwendungsfalldiagramme: Richtlinien.

  • Wenn Sie Meldungen identifiziert haben, die bei einer Schnittstelle einer Komponente eingehen, können Sie Sequenzdiagramme zeichnen, um zu beschreiben, wie die internen Teile der Komponente interagieren, um das für die einzelnen eingehenden Meldungen erforderliche Ergebnis zu erzielen. Weitere Informationen finden Sie unter UML-Komponentendiagramme: Richtlinien.

Das Zeichnen von Sequenzdiagrammen hat mehrere Vorteile:

  • Sie können auf einfache Weise erkennen, wie Aufgaben unter den Komponenten verteilt sind.

  • Sie können Interaktionsmuster identifizieren, die eine Aktualisierung der Software erschweren.

Beziehung zu anderen Diagrammen

Sie können UML-Sequenzdiagramme auf verschiedene Weise zusammen mit anderen Diagrammen verwenden.

Lebenslinien und Typen

Die Lebenslinien, die Sie in einem Sequenzdiagramm zeichnen, können typische Instanzen der Komponenten oder Klassen im System darstellen. Sie können Lebenslinien aus Typen und Typen aus Lebenslinien erstellen und die Typen in UML-Klassendiagrammen und UML-Komponentendiagrammen anzeigen. Weitere Informationen finden Sie unter Klassen und Lebenslinien.

Parametertypen

Sie können in UML-Klassendiagrammen auch die Parametertypen und Rückgabewerte beschreiben, die in den Meldungen verwendet wurden, die zwischen den Lebenslinien gesendet wurden.

Anwendungsfalldetails

Ein Anwendungsfall stellt das Ziel eines Benutzers dar, zusammen mit einer Sequenz von Schritten zum Erreichen dieses Ziels. Die Sequenz der Schritte kann auf verschiedene Weise beschrieben werden. Eine Option besteht darin, ein Sequenzdiagramm zu zeichnen, das die Interaktion zwischen den Benutzern und den Hauptkomponenten des Systems darstellt. Weitere Informationen finden Sie unter UML-Anwendungsfalldiagramme: Richtlinien.

Quellcode

Sie können ein Sequenzdiagramm aus dem Quellcode erstellen. Sie können das Diagramm überarbeiten und so mit verschiedenen Entwurfsoptionen experimentieren. Sie können den Inhalt auch in ein Sequenzdiagramm in einem Modellierungsprojekt kopieren. Weitere Informationen finden Sie unter Generieren von Sequenzdiagrammen aus Code.

Grundlegende Schritte zum Zeichnen von Sequenzdiagrammen

Eine vollständige Liste der Elemente in Sequenzdiagrammen finden Sie unter UML-Sequenzdiagramme: Referenz.

Hinweis

Ausführliche Schritte zum Erstellen der Modellierungsdiagramme werden unter Bearbeiten von UML-Modellen und -Diagrammen beschrieben.

So erstellen Sie ein Sequenzdiagramm

  1. Klicken Sie im Menü Architektur auf Neues Diagramm.

  2. Klicken Sie unter Vorlagen auf UML-Sequenzdiagramm.

  3. Benennen Sie das Diagramm.

  4. Wählen Sie unter Zu Modellierungsprojekt hinzufügen ein in der Projektmappe vorhandenes Modellierungsprojekt, oder wählen Sie Neues Modellierungsprojekt erstellen, und klicken Sie dann auf OK.

    Ein neues Sequenzdiagramm wird in der Toolbox Sequenzdiagramm angezeigt. Die Toolbox enthält die erforderlichen Elemente und die Konnektoren.

Teile eines Sequenzdiagramms

So zeichnen Sie ein Sequenzdiagramm

  1. Ziehen Sie Lebenslinien (1) von der Toolbox in das Diagramm, um Instanzen von Klassen, Komponenten, Akteuren oder Geräten darzustellen.

    Hinweis

    Sie können eine Lebenslinie auch erstellen, indem Sie eine vorhandene Klasse, eine Schnittstelle, einen Akteur oder eine Komponente aus dem UML-Modell-Explorer in das Diagramm ziehen.Hierdurch wird eine Lebenslinie erstellt, die eine Instanz des ausgewählten Typs darstellt.

  2. Zeichnen Sie Meldungen, um darzustellen, wie die Lebenslinien zusammenarbeiten, um ein bestimmtes Ziel zu erreichen.

    Klicken Sie zum Erstellen einer Meldung (3, 4, 6, 7) auf ein Meldungstool. Klicken Sie dann an dem Punkt auf die sendende Lebenslinie, an dem die Meldung beginnen soll, und klicken Sie anschließend auf die empfangende Lebenslinie.

    An der empfangenden Lebenslinie wird eine Vorkommnisausführung (5) angezeigt. Die Vorkommnisausführung stellt einen Zeitraum dar, während dessen die Instanz eine Methode ausführt. Sie können andere Meldungen erstellen, die von einer Vorkommnisausführung starten.

  3. Um eine Meldung darzustellen, die aus einer unbekannten Ereignisquelle (9) stammt oder an unbekannte Empfänger (10) sendet, zeichnen Sie eine asynchrone Meldung von oder zu einem Leerraum im Diagramm. Diese Meldungen werden als gefundene Meldungen (9) und verlorene Meldungen(10) bezeichnet.

    Hinweis

    Um eine Gruppe von Lebenslinien zu verschieben, die über verlorene oder gefundene Meldungen verfügen, führen Sie folgende Schritte aus, um die Lebenslinien auszuwählen, bevor Sie sie verschieben: Zeichnen Sie ein Rechteck um die Lebenslinien, oder halten Sie die STRG-TASTE gedrückt, während Sie auf die einzelnen Lebenslinien klicken.Wenn Sie mit Alle auswählen oder STRG+A alle Lebenslinien auswählen und sie dann verschieben, werden verlorene oder gefundene Meldungen, die diesen Lebenslinien zugeordnet sind, nicht verschoben.Wenn diese Situation eintritt, können Sie diese Meldungen separat verschieben.

  4. Zeichnen Sie Sequenzdiagramme für jede Hauptmeldung zu derselben Komponente oder zu demselben System.

So ändern Sie die Meldungsreihenfolge

  • Ziehen Sie eine Meldung in der Lebenslinie nach oben oder unten. Sie können eine Meldung über andere Meldungen oder in bzw. aus einem Ausführungsblock ziehen.

    - oder -

  • Klicken Sie auf die Meldung, und ändern Sie die Position der Meldung mit der NACH-OBEN-TASTE und der NACH-UNTEN-TASTE. Ändern Sie die Reihenfolge der Meldungen mit den Tastenkombinationen UMSCHALT+NACH-OBEN und UMSCHALT+NACH-UNTEN.

So verschieben oder kopieren Sie Meldungssequenzen im Sequenzdiagramm

  1. Klicken Sie mit der rechten Maustaste auf eine Meldung (3, 4), und klicken Sie dann auf Kopieren.

  2. Klicken Sie mit der rechten Maustaste auf die Vorkommnisausführung (5) oder eine Lebenslinie (1), von der die neue Meldung gesendet werden soll, und klicken Sie dann auf Einfügen. Der neue Absender kann sich auch in einem anderen Diagramm befinden.

    Eine Kopie der Meldung und all ihrer untergeordneten Meldungen wird an das Ende der Vorkommnisausführung oder an das Ende der Lebenslinie angefügt.

    Hinweis

    Die eingefügte Meldung wird immer am Ende der Vorkommnisausführung oder der Lebenslinie angezeigt.Nachdem Sie die Meldung eingefügt haben, können Sie sie an eine höhere Position ziehen.

Um die Signatur anzuzeigen und zu bearbeiten simsen für eine Meldung

  • Die Ziel- lebenslinie gebunden werden muss, oder auf Typen von Signaturen, sodass der Text zugeordneten sichtbar ist. Um diese Aufgabe auszuführen, führen Sie einen der folgenden Schritte aus:

    • Klicken Sie mit der rechten Maustaste auf die Lebenslinie, und wählen Sie dann Klasse erstellenaus.

      - oder -

    • Wählen Sie die Lebenslinie, und klicken Sie dann im F4Drücken Sie Eigenschaften Fenster, legen Sie die Eigenschaft Typ mit einem vorhandenen Typ oder den Namen für einen neuen Typ aus. Klicken Sie mit der rechten Maustaste auf die Nachrichtenbezeichnung, und wählen Sie dann Vorgang erstellenaus.

    Der Text wird von Signaturen unterhalb der Nachrichtenbezeichnung. Sie können jetzt den Signaturschlüssel Text bearbeiten. Weitere Informationen finden Sie unter Classes and Lifelines.

So verbessern Sie das Layout eines Sequenzdiagramms

  • Klicken Sie mit der rechten Maustaste in einen leeren Bereich des Diagramms, und klicken Sie dann auf Layout neu anordnen.

  • Um den Vorgang rückgängig zu machen, klicken Sie auf Bearbeiten und dann auf Rückgängig.

So ändern Sie das Paket, das die Interaktion besitzt

  1. Suchen Sie im UML-Modell-Explorer die Interaktion, die im Sequenzdiagramm angezeigt wird.

    Hinweis

    Die Interaktion wird erst im UML-Modell-Explorer angezeigt, wenn Sie dem Sequenzdiagramm die erste Lebenslinie hinzufügen.

  2. Ziehen Sie die Interaktion in das Paket.

    - oder -

    Klicken Sie mit der rechten Maustaste auf die Interaktion, und klicken Sie dann auf Ausschneiden. Klicken Sie mit der rechten Maustaste auf das Paket, und klicken Sie dann auf Einfügen.

Erstellen und Verwenden von einfachen Sequenzdiagrammen

Die einfachste und am häufigsten verwendete Form des Sequenzdiagramms umfasst nur Lebenslinien und Meldungen. Mit einem Diagramm dieser Art können Sie eine typische Sequenz von Interaktionen zwischen Objekten im Entwurf oder zwischen dem System und den Benutzern klar darstellen. Dies reicht häufig aus, um den Entwurf zu verdeutlichen und zu diskutieren.

Nachfolgend sind einige Punkte aufgeführt, die Sie beim Zeichnen eines einfachen Sequenzdiagramms beachten sollten.

Meldungstypen

Es gibt drei Tools, mit denen Sie Meldungen erstellen können.

  • Verwenden Sie das Tool Synchron, um eine Interaktion zu beschreiben, bei der der Absender wartet, bis der Empfänger eine Antwort (3) zurückgibt.

    Am Ende der Vorkommnisausführung wird ein <<Rückpfeil>> angezeigt. Dieser gibt an, dass der Absender die Steuerung zurückerhält.

  • Verwenden Sie das Tool Asynchron, um eine Interaktion zu beschreiben, in der der Absender sofort fortfahren kann, ohne auf den Empfänger (4) zu warten.

  • Verwenden Sie das Tool Erstellen, um eine Interaktion zu beschreiben, bei der der Absender den Empfänger (8) erstellt.

    Eine Erstellen-Meldung sollte die erste Meldung sein, die der Empfänger erhält.

Kommentieren der Interaktionen

Um die Details der Sequenz näher zu erläutern, können Sie an jeder Stelle im Diagramm einen Kommentar einfügen.

Mit Kommentarlinks können Sie einen Kommentar mit Lebenslinien, Ausführungen, Interaktionsverwendungen und Fragmenten verknüpfen.

Warnung

Wenn Sie einen Kommentar an einem bestimmten Punkt in der Sequenz anfügen möchten, verknüpfen Sie ihn mit einer Vorkommnisausführung, einer Interaktionsverwendung oder einem Fragment.Verknüpfen Sie ihn nicht mit einer Lebenslinie, da er in diesem Fall nicht am richtigen Punkt in der Sequenz angefügt bleibt.

Sie können Kommentare für folgende Zwecke verwenden:

  • Anmerken, was an wichtigen Punkten in der Sequenz erreicht wurde. Auf diese Weise können die Betrachter die Ziele der Interaktionen besser nachvollziehen.

  • Beschreiben des Hauptziels der gesamten Sequenz. Fügen Sie den Kommentar an die ursprüngliche Vorkommnisausführung an, oder lassen Sie den Kommentar unangefügt. Beispiel: "Kunde (Customer) hat Gerichte (Items) aus der Speisekarte (Menu) ausgewählt, und ihm wurde ein Preis genannt."

  • Beschreiben der Verantwortlichkeiten für die einzelnen Lebenslinien. Fügen Sie den Kommentar an die Lebenslinie an. Beispiel: "Bestellmanager (Ordering Manager) sammelt die Speisenauswahl des Kunden."

  • Um Ausnahmen oder Alternativen aufzuführen, die als Alternative zu der angezeigten typischen Sequenz durchgeführt werden können. Beispiel: "Der Kunde (Customer) kann wählen, den Rest dieser Sequenz zu überspringen."

    • Ziehen Sie die Verwendung von Fragmenten als formalere Alternativen zu dieser Art von Anmerkung in Erwägung. Siehe Beschreiben von Steuerungsstrukturen mit Fragmenten

Festlegen des Diagrammumfangs

Es ist wichtig, deutlich hervorzuheben, was das Diagramm darstellen soll.

Auslösendes Ereignis

Jedes Diagramm sollte die Sequenz der Interaktionen anzeigen, die sich aus einem auslösenden Ereignis ergibt. Dies kann sich zum Beispiel wie folgt darstellen:

  • Ein Benutzer löst einen Anwendungsfall aus, indem er zum Beispiel die Webseite zum Bestellen einer Mahlzeit aufruft.

  • Eine Meldung von einer Systemkomponente zu einer anderen, um zum Beispiel die Verfügbarkeit der vom Kunden gewünschten Gerichte zu überprüfen.

  • Ein von einer Änderung des Zustands ausgelöstes Ereignis, wenn z. B. der Bestand an einem bestimmten Gericht unter einen Schwellenwert fällt.

Detailgrad

Sequenzdiagramme können einen unterschiedlichen Grad der Detaillierung aufweisen. Sie können den Detailgrad in zwei separaten Dimensionen fast unabhängig voneinander festlegen:

Lebenslinien können eine Ebene der Detaillierung darstellen:

  • Objekte im Programmcode, die entweder bereits vorhanden sind oder noch entwickelt werden.

  • Komponenten oder ihre Unterkomponenten, wobei normalerweise Fassaden, Proxys und anderen Bindemechanismen ausgelassen werden.

  • Das System und externe Akteure

Meldungen können eine Ebene der Detaillierung darstellen:

  • Softwaremeldungen im Programmcode, an einer API oder einer Webschnittstelle.

  • Transaktionen oder untergeordnete Transaktionen, z. B. zwischen Benutzern und dem System oder zwischen Code und Datenbank.

  • Anwendungsfälle – Hauptinteraktionen zwischen Benutzern und dem System.

Unabhängig davon, ob Sie vorhandenen Code untersuchen oder einen neuen Entwurf beschreiben, ist es häufig nützlicher, weniger detaillierte Ansichten zu zeichnen und zu diskutieren.

Beschreiben von Variationen

Das Diagramm stellt eine einzelne, typische Sequenz von Ereignissen dar. Wenn Sie alternative Möglichkeiten, z. B. Fehlerszenarios, darstellen möchten, können Sie eine der folgenden Optionen verwenden:

  • Zeichnen Sie separate Sequenzdiagramme, um die einzelnen Szenarios zu beschreiben.

  • Stellen Sie mithilfe von Beschreiben von Steuerungsstrukturen mit Fragmenten Schleifen, Alternativen usw. dar.

Bewerten des Entwurfs

Mithilfe des Diagramms können Sie die Verteilung von Aufgaben zwischen den Objekten oder Komponenten bewerten. Ziehen Sie eine Umgestaltung in Erwägung, wenn Sie die folgenden Muster sehen:

  • Eine Lebenslinie scheint alle Aufgaben durchzuführen und Aufrufe an alles andere zu senden, während andere Lebenslinien nur passiv reagieren.

  • Viele Meldungen kreuzen die Lebenslinien. Jede Lebenslinie sollte nur an einige Nachbarn Meldungen senden und nicht mit den Nachbarn seiner Nachbarn kommunizieren. Es sollte in der Regel möglich sein, die Lebenslinien so anzuordnen, dass sich Meldungen nur an wenigen Stellen mit Lebenslinien kreuzen. Wenn sie sich kreuzen, sollte die Ziel-Lebenslinie keine Meldungen austauschen, die über kreuzende Lebenslinien verfügen.

  • Einige Lebenslinien scheinen mehr als eine Art von Aufgabe zu behandeln. Es sollte einfach sein, mit einem kurzen Satz die Verantwortlichkeiten der einzelnen Lebenslinien zu beschreiben und die Arbeit zusammenzufassen, die sie als Antwort auf eine ankommende Meldung durchführen muss.

Klassen und Lebenslinien

Die Lebenslinien in den Sequenzdiagrammen stellen Instanzen von Klassen oder Komponentenschnittstellen dar. Es stehen zwei Möglichkeiten zum Benennen einer Lebenslinie zur Verfügung:

Zweck

Format

Anonyme Instanz eines Typs.

Verwenden Sie diese, wenn nur eine Lebenslinie jedes Typs vorhanden ist.

typeName

Benannte Instanz eines Typs.

Verwenden Sie diese, wenn Sie eine Sequenz darstellen möchten, die mehr als eine Instanz des gleichen Typs einschließt.

Objektname:Typname

Erstellen von Lebenslinien aus Typen

Sie können neue Lebenslinien aus Klassen erstellen, die Sie bereits definiert haben, z. B. in einem Klassendiagramm.

Hinweis

Stellen Sie sicher, dass ein Sequenzdiagramm vorhanden ist, bevor Sie diese Aufgabe ausführen.

So erstellen Sie eine Lebenslinie aus einem vorhandenen Typ

  • Ziehen Sie eine Klasse, Komponente oder Schnittstelle aus dem UML-Modell-Explorer in ein Sequenzdiagramm.

    - oder -

    1. Klicken Sie mit der rechten Maustaste auf die Klasse, Komponente oder Schnittstelle im jeweiligen Diagramm, und klicken Sie dann auf Lebenslinie erstellen.

    2. Wählen Sie im Dialogfeld Lebenslinie erstellen ein Sequenzdiagramm aus, und klicken Sie dann auf OK.

    Eine neue benannte Instanzlebenslinie des Typs, den Sie gezogen haben, wird angezeigt.

    Hinweis

    Sie können diese Aktion so oft wie gewünscht wiederholen.Hierdurch werden Lebenslinien mit anderen Instanznamen erstellt.

So ändern Sie den Typ einer Lebenslinie

  1. Klicken Sie mit der rechten Maustaste auf eine Lebenslinie, und klicken Sie dann auf Eigenschaften.

  2. Legen Sie im Fenster Eigenschaften die Eigenschaft Typ fest. Sie können entweder einen Typ im Dropdownmenü auswählen oder einen neuen Namen eingeben.

Erstellen von Klassen aus Lebenslinien

Wenn Sie ein oder mehrere Sequenzdiagramme erstellt haben, können Sie die Lebenslinien zusammenfassen, indem Sie Klassen oder Schnittstellen daraus erstellen.

So erstellen Sie eine Klasse oder Schnittstelle aus einer Lebenslinie

  1. Klicken Sie mit der rechten Maustaste auf die Lebenslinie, und klicken Sie dann auf Klasse erstellen oder Schnittstelle erstellen.

    Eine neue Klasse oder Schnittstelle wird im UML-Modell-Explorer angezeigt.

  2. Erstellen Sie in der Klasse oder der Schnittstelle Vorgänge für jede Meldung, die die Lebenslinie empfängt:

    1. Wählen Sie alle Meldungen aus, die Sie einschließen möchten.

    2. Klicken Sie mit der rechten Maustaste auf eine der Meldungen, und klicken Sie dann auf Methode erstellen.

      Die neue Klasse oder Schnittstelle verfügt über Vorgänge für jede ausgewählte Meldung.

      Der Vorgangsname wird unter jedem Meldungspfeil sowie in der Eigenschaft Vorgang der Meldung angezeigt.

      Wenn die Meldung Parameter im Format "(Parameter : Typ)" enthält, werden diese in der Parameterliste des neuen Vorgangs angezeigt.

      Hinweis

      Sie müssen diesen Schritt wiederholen, wenn Sie dem Sequenzdiagramm neue Meldungen hinzufügen.

  3. Um die neue Klasse oder Schnittstelle im Detail anzuzeigen, fügen Sie sie einem Klassen- oder Komponentendiagramm hinzu.

    1. Öffnen oder erstellen Sie ein Klassen- oder Komponentendiagramm.

    2. Ziehen Sie die neue Klasse oder Schnittstelle aus dem UML-Modell-Explorer in ein Klassendiagramm.

      Die Klasse oder Schnittstelle wird im Klassendiagramm angezeigt.

      - oder -

    3. Ziehen Sie die neue Schnittstelle aus dem UML-Modell-Explorer auf eine Komponente oder einen Anschluss in einem Komponentendiagramm.

      Die Schnittstelle wird auf der Komponente als Lollipop angezeigt.

Erstellen von Klassen für Parameter

Sie können Parameter in die Meldungen in einem Sequenzdiagramm einschließen. Sie können die Parametertypen mithilfe eines UML-Klassendiagramms beschreiben.

Erstellen von wiederverwendbaren Interaktionssequenzen

Sie können mithilfe eines separaten Diagramms eine Sequenz beschreiben, die Details enthält, die Sie herausstellen möchten oder die mehreren Diagrammen gemeinsam sind.

Sie können ein Interaktionsverwendungsrechteck (12) in einem Diagramm erstellen, das auf die Details in einem anderen Diagramm verweist.

Doppelklicken Sie auf eine Interaktionsverwendung, um das Sequenzdiagramm zu öffnen, mit dem sie verknüpft ist.

So erstellen Sie eine wiederverwendbare Interaktionssequenz aus vorhandenen Lebenslinien

  1. Klicken Sie in der Toolbox auf Interaktionsverwendung.

  2. Halten Sie im Sequenzdiagramm die Maustaste gedrückt, während Sie den Zeiger über die Lebenslinien ziehen, die Sie in die wiederverwendbare Sequenz einschließen möchten. Beginnen Sie an der vertikalen Position, an der Sie die Interaktionsverwendung einfügen möchten.

    Eine Interaktionsverwendung wird über die ausgewählten Lebenslinien im Sequenzdiagramm angezeigt.

  3. Doppelklicken Sie auf den Namen der Interaktionsverwendung, und benennen Sie sie um, um den Effekt der wiederverwendbaren Sequenz in diesem Diagramm zu beschreiben.

    - oder -

    Schreiben Sie den Namen wie einen Funktionsaufruf mit Parametern.

  4. Verknüpfen Sie die Interaktionsverwendung mit einem anderen Sequenzdiagramm. Klicken Sie mit der rechten Maustaste auf die Interaktionsverwendung, und wählen Sie dann eine der folgenden Möglichkeiten:

    Klicken Sie auf Neue Sequenz erstellen, um ein neues Sequenzdiagramm zu erstellen.

    - oder -

    Klicken Sie auf Mit Sequenz verknüpfen, um eine Verknüpfung mit einem vorhandenen Diagramm zu erstellen.

    Visual Studio erstellt einen Link zwischen der Interaktionsverwendung und der neuen Interaktionssequenz.

    Ein neues Sequenzdiagramm wird in der Projektmappe angezeigt. Es enthält die Lebenslinien, mit denen Sie die Interaktionsverwendung erstellt haben.

    Hinweis

    Es werden nur die Lebenslinien eingeschlossen, mit denen Sie die Interaktionsverwendung erstellt haben.Das neue Diagramm schließt keine Lebenslinien ein, die Sie nach der Interaktionsverwendung erstellt haben, auch wenn die Interaktionsverwendung sie jetzt abdeckt.

So erstellen Sie eine wiederverwendbare Sequenz aus vorhandenen Meldungen

  • Klicken Sie mit der rechten Maustaste auf die Meldung, die Sie verschieben möchten, und klicken Sie dann auf In Diagramm verschieben.

    Visual Studio:

    • Ersetzt die ausgewählte Meldung und alle untergeordneten Meldungen durch eine Interaktionsverwendung.

    • Verschiebt die ersetzten Meldungen in ein neues Sequenzdiagramm.

    • Erstellt eine Verknüpfung zwischen der Interaktionsverwendung und dem neuen Sequenzdiagramm.

So navigieren Sie zur Sequenz, auf die eine Interaktionsverwendung verweist

  • Doppelklicken Sie auf die Interaktionsverwendung.

    - oder -

    Klicken Sie mit der rechten Maustaste auf die Interaktionsverwendung, und klicken Sie auf Gehe zu Sequenz.

Erstellen eines Platzhalters mit einer Interaktionsverwendung

Sie können eine Interaktionsverwendung erstellen, ohne sie mit einem anderen Diagramm zu verknüpfen. Sie können dies als einen Platzhalter für einen Teil der Sequenz verwenden, deren Details noch ausgearbeitet werden müssen. Geben Sie mit dem Namen der Interaktionsverwendung einen Hinweis darauf, welches Ergebnis Sie erzielen möchten.

Reduzieren von Lebensliniengruppen

Sie können einen Satz von Lebenslinien so reduzieren, dass die Gruppe als eine Lebenslinie angezeigt wird. Dies ist hilfreich dabei, eine Gruppe von Objekten als eine einzelne Komponente darzustellen. Meldungen und Interaktionsverwendungen zwischen Lebenslinien in einer reduzierten Gruppe werden ausgeblendet. Meldungen und Interaktionssequenzen, die andere Lebenslinien einschließen, werden angezeigt.

So reduzieren Sie eine Gruppe von Lebenslinien

  1. Wählen Sie zwei oder mehr Lebenslinien aus.

  2. Klicken Sie mit der rechten Maustaste auf eine Lebenslinie, und klicken Sie dann auf Reduzieren.

    Die separaten Lebenslinien werden durch eine einzelne Lebenslinie ersetzt.

    Meldungen und Interaktionsverwendungen, die nur Mitglieder der Gruppe betreffen, werden ausgeblendet.

  3. Um die Gruppe umzubenennen, klicken Sie auf den Namen.

    Hinweis

    Der Gruppenname geht verloren, wenn Sie die Gruppe erweitern.

So erweitern Sie eine reduzierte Gruppe

  • Klicken Sie mit der rechten Maustaste auf die reduzierte Lebenslinie, und klicken Sie dann auf Erweitern.

    Hinweis

    Der Name der Gruppe geht verloren, zusammen mit allen Verknüpfungen der Gruppe zu Kommentaren oder Arbeitsaufgaben.

Beschreiben von Steuerungsstrukturen mit Fragmenten

Mit kombinierten Fragmenten (13) können Sie Schleifen, Verzweigungen und die gleichzeitige Ausführung mehrerer Verarbeitungsschritte in einem Sequenzdiagramm definieren. Sie können auch erwägen, stattdessen ein Aktivitätsdiagramm zu verwenden. Das Aktivitätsdiagramm ist nicht so nützlich, um Meldungen zwischen Akteuren darzustellen, in einigen Fällen ist es jedoch besser geeignet, Schleifen, Verzweigungen und Parallelität darzustellen.

Eine vollständige Liste der Fragmenttypen finden Sie unter Beschreiben des Kontrollflusses mit Fragmenten in UML-Sequenzdiagrammen.

So erstellen Sie ein kombiniertes Fragment

  1. Wählen Sie eine Meldung oder eine Sequenz von Meldungen aus, die alle mit der gleichen Vorkommnisausführung oder Lebenslinie beginnen.

    Hinweis

    Wählen Sie die Meldungspfeile aus, nicht die Vorkommnisausführungen, auf die die Meldungen verweisen.

  2. Klicken Sie mit der rechten Maustaste auf eine der Meldungen, zeigen Sie auf Umschließen mit, und klicken Sie dann auf den gewünschten Fragmenttyp.

    Ein neues Fragment wird angezeigt. Es enthält die Meldungen, die Sie ausgewählt haben.

    Wenn der kombinierte Fragmenttyp mehrere Fragmente zulässt, wird außerdem ein leeres Fragment angezeigt.

  3. Um den Wächter eines Fragmentes festzulegen, klicken Sie mit der rechten Maustaste auf den Fragmentrahmen, und klicken Sie dann auf Eigenschaften. Legen Sie die Eigenschaft Wächter fest.

    Der Wächter wird verwendet, um die Bedingung für eine Verzweigung oder eine Schleife zu definieren.

  4. Um ein neues Fragment zu dem Fragmenttyp hinzuzufügen, der mehrere Fragmente zulässt, klicken Sie mit der rechten Maustaste auf die Begrenzung eines Fragments, und zeigen Sie auf Hinzufügen. Klicken Sie entweder auf Interaktionsoperand vorher oder auf Interaktionsoperand nachher.

  5. Um einem Fragment neue Meldungen hinzuzufügen, verwenden Sie die Meldungstools oder die Funktion zum Kopieren und Einfügen.

Generieren von Sequenzdiagrammen aus Code

Sie können ein Sequenzdiagramm aus einer Methodendefinition in einer Visual C#- oder Visual Basic-Codedatei generieren.

Ein generiertes Sequenzdiagramm ist einem Sequenzdiagramm sehr ähnlich, das Sie in einem Modellierungsprojekt erstellt haben. Die Elemente in einem generierten Sequenzdiagramm werden jedoch nicht im UML-Modell-Explorer angezeigt.

So generieren Sie ein Sequenzdiagramm aus Code

  1. Öffnen Sie in Visual Studio die Codedatei, die die Methodendefinition enthält.

  2. Klicken Sie mit der rechten Maustaste an einer beliebigen Stelle in der Methodendefinition, und klicken Sie dann auf Sequenzdiagramm generieren.

    Weitere Informationen finden Sie unter Visualisieren von Code in Sequenzdiagrammen.

    Hinweis

    Nachdem Sie das Diagramm generiert haben, werden Änderungen am Diagramm nicht im Code angezeigt, und Änderungen, die Sie am Code vornehmen, erscheinen nicht im Diagramm.Um diese Änderungen anzuzeigen, müssen Sie ein neues Sequenzdiagramm generieren.Sie können ein neues Sequenzdiagramm so oft aus der gleichen Methode generieren, wie Sie möchten.

Sie können von Lebenslinien und Meldungen aus zu den Codedefinitionen der Klassen und Methoden navigieren, die diese darstellen.

So navigieren Sie von generierten Lebenslinien und Meldungen zum Code

  • Klicken Sie mit der rechten Maustaste auf eine generierte Lebenslinie oder Meldung, und klicken Sie dann auf Gehe zu Definition.

Kopieren von generierten Sequenzen in ein UML-Modell

Sie können Lebenslinien, Meldungen und andere Teile einer generierten Sequenz in ein Sequenzdiagramm in einem Modellierungsprojekt kopieren.

So kopieren Sie ein generiertes Sequenzdiagramm in oder aus einem UML-Modell

  1. Wählen Sie im Sequenzdiagramm die Elemente aus, die Sie kopieren möchten, z. B. Lebenslinien und Meldungen. Wenn Sie alles im Diagramm kopieren möchten, klicken Sie im Menü Bearbeiten auf Alle auswählen.

  2. Klicken Sie im Menü Bearbeiten auf Kopieren.

  3. Erstellen oder öffnen Sie ein Sequenzdiagramm in einem Modellierungsprojekt. Weitere Informationen hierzu finden Sie unter Grundlegende Schritte zum Zeichnen von Sequenzdiagrammen.

  4. Klicken Sie im Menü Bearbeiten auf Einfügen.

    Kopien der ausgewählten Elemente werden im Diagramm angezeigt.

    Hinweis

    Sie müssen die Farbe der eingefügten Elemente möglicherweise anpassen.Markieren Sie die Elemente, und legen Sie die Farbe im Eigenschaftenfenster fest.

Siehe auch

Referenz

UML-Sequenzdiagramme: Referenz

Konzepte

Bearbeiten von UML-Modellen und -Diagrammen

UML-Anwendungsfalldiagramme: Referenz

UML-Klassendiagramme: Referenz

UML-Komponentendiagramme: Referenz

UML-Komponentendiagramme: Referenz

Weitere Ressourcen

Video: Sketching Interactions by using Sequence Diagrams