UML – Ein umfassender Leitfaden
Was ist UML?
UML ist eine Standardnotation für objektorientierte Methoden, die durch die Vereinigung von Objektmodellierungstechniken entstanden ist. Sie wird für die Analyse, das Design und die Bereitstellung von Systemen verwendet. DieUnified Modeling Language wurde entwickelt, um den Bedürfnissen von Unternehmen gerecht zu werden, die Produktion von Software zu automatisieren, die Qualität zu verbessern und Kosten sowie Time-to-Market zu reduzieren. Sie bietet außerdem eine formale Grundlage für das Verständnis der Modellierungssprache.

Warum UML?
Große Unternehmensanwendungen müssen so strukturiert sein, dass Skalierbarkeit, Sicherheit und robuste Ausführung unter stressigen Bedingungen gewährleistet sind. Eine gut gestaltete Architektur ermöglicht die Wiederverwendung von Code und ermöglicht Wartungsprogrammierern, Fehler zu finden und zu beheben, die lange nachdem die ursprünglichen Autoren zu anderen Projekten gewechselt sind, auftreten. Modellierung ist für große Softwareprojekte unerlässlich und hilft auch mittleren und kleinen Projekten. Ein Modell stellt sicher, dass die Geschäftslogik vollständig und korrekt ist, die Bedürfnisse der Endbenutzer erfüllt werden und das Programm-Design die Anforderungen an Skalierbarkeit, Robustheit, Sicherheit, Erweiterbarkeit und andere Eigenschaften unterstützt.
- Modelle helfen uns, auf einer höheren Abstraktionsebene zu arbeiten, indem sie Details verbergen oder maskieren, das große Ganze hervorheben oder sich auf verschiedene Aspekte des Prototyps konzentrieren.
- UML ermöglicht es Ihnen, jede Art von Anwendung zu modellieren, die auf jeder Art von Hardware, Betriebssystem, Programmiersprache und Netzwerk läuft, und es kann auch für die Modellierung von nicht-objektorientierten Anwendungen verwendet werden.
- Einige Tools analysieren bestehenden Quellcode (oder, so behaupten einige, Objektcode!) und reverse-engineern ihn in eine Reihe vonUML-Diagrammen, während andere UML-Modelle ausführen, wobei typischerweise Programmiersprachen-Code generiert wird, der schnell ausgeführt wird, wenn der Codegenerator bewährte skalierbare Muster integriert.
- Der Prozess der Erfassung und Analyse der Anforderungen einer Anwendung und deren Einbeziehung in ein Programmdesign ist komplex. UML ist eine Sprache, die es Ihnen ermöglicht, die Ergebnisse Ihrer Analyse und des Designs auszudrücken.
Woher kommt es?
UML hat seine Wurzeln in den objektorientierten Programmiermethoden, die in den späten 1980er und frühen 1990er Jahren entwickelt wurden. Jim Rumbaugh, Grady Booch und Ivar Jacobson vereinigten ihre Ideen zu der Unified Method, die später als Unified Modelling Language (UML) bezeichnet wurde. Der erste von der Object Management Group (OMG) herausgegebene Request for Proposal (RFP) war der Auslöser dafür, dass mehrere Organisationen zusammenarbeiteten, um eine gemeinsame RFP-Antwort zu erstellen. Die RFP-Antwort, UML 1.0, war gut definiert, ausdrucksstark, leistungsfähig und allgemein anwendbar und wurde von 1.1 bis 1.5 verbessert und später auf UML 2.1 von 01 bis 06 aktualisiert (die aktuelle UML-Version ist derzeit 2.5)

Vorteile von UML
Der größte Vorteil der Verwendung von UML ist, dass die Codes der Diagramme von jedem Programmierer leicht lesbar sind, der selbst nur einen kleinen Teil des Programms versteht.
- UML ist ein Standard, der verwendet wird, um ein Programm visuell zu beschreiben. Er wird weithin verwendet und als Sprache zur Darstellung von Programmen akzeptiert.
- Ein UML-Diagramm zeigt die Beziehungen zwischen Klassen und Entitäten in einem Computerprogramm. Es ist einfach, die Beziehungen eines Programms zu verstehen, indem man das Diagramm betrachtet.
- Ein UML-Diagramm hilft, Beziehungen in einem Programm auf einfache Weise zu erklären, und ermöglicht es einem Programmierer, Teile von Code zu wiederverwenden, die bereits existieren, anstatt diese Funktionen neu zu schreiben.
- UML ist der aktuelle Standard für die Programmierung in objektorientierten Programmiersprachen. Es hilft dabei, ein Programm vor der Programmierung zu planen, undgeneriert Code basierend auf den in dem Modell definierten Klassen.
UML-Diagramme und Modell – Struktur im Vergleich zu Verhalten
Ein UML-Diagramm zeigt, wie die Komponenten eines Systems mit anderen Komponenten interagieren und wie es ausgeführt wird. Ein UML-Modell ist eine vollständige grafische Darstellung des Systems, während ein Diagramm eine partielle Darstellung ist.

Statischer vs. dynamischer Blickwinkel
Die statische Modellierung zeigt die Struktur des Systems mithilfe von Objekten, Attributen, Operationen und Beziehungen, während die dynamische Modellierung das Verhalten des Systems mithilfe von Zusammenarbeiten zwischen Objekten und Veränderungen an den internen Zuständen der Objekte zeigt.
- Strukturdiagrammestellen die statischen Aspekte eines Softwaresystems dar. Sie werden verwendet, um die Softwarearchitektur von Softwaresystemen zu dokumentieren.
- Verhaltensdiagramme beschreiben den dynamischen Aspekt eines Systems. Sie werden verwendet, um die Funktionalität von Softwaresystemen zu beschreiben.
14 Arten von UML-Diagrammen
UML 2.2 verfügt über 14 Arten von Diagrammen, wovon 7 strukturelle Informationen und 7 allgemeine Aspekte von Interaktionen darstellen.

Strukturdiagramme
Da Strukturdiagramme die Struktur darstellen, werden sie ausgiebig zur Dokumentation der Softwarearchitektur von Softwaresystemen verwendet. Strukturdiagramme zeigen die statische Struktur der Elemente in Ihrem System. Die sieben UML-Strukturdiagramme sind grob nach den Hauptgruppen von Dingen organisiert, die Sie beim Modellieren eines Systems finden werden.
Zum Beispiel beschreibt das Komponentendiagramm, wie ein Softwaresystem in Komponenten aufgeteilt ist, und zeigt die Abhängigkeiten zwischen diesen Komponenten.
| Strukturell Diagramm | Kurze Beschreibung |
| Kompositstrukturdiagramm | Es zeigt die interne Struktur eines Klassifizierers, die Interaktionen des Klassifizierers mit der Umgebung über Ports oder das Verhalten einer Zusammenarbeit. |
| Bereitstellungsdigramm | Es zeigt eine Menge von Knoten und deren Beziehungen, die die statische Bereitstellungssicht einer Architektur veranschaulicht. |
| Paketdiagramm | Es gruppiert verwandte UML-Elemente in einer Sammlung logisch verwandter UML-Strukturen. |
| Profil-Diagramm | |
| Klassendiagramm | Es zeigt eine Menge von Klassen, Schnittstellen und Zusammenarbeiten sowie ihre Beziehungen, die typischerweise bei der Modellierung objektorientierter Systeme auftreten. |
| Objektdiagramm | Es zeigt eine Menge von Objekten und ihren Beziehungen, die die statischen Schnappschüsse von Instanzen der Dinge darstellen, die in Klassendiagrammen gefunden werden. |
| Komponentendiagramm | Es zeigt eine Menge von Komponenten und deren Beziehungen, die die statische Implementierungssicht eines Systems veranschaulicht. |
Verhaltensdiagramme
Die fünf verhaltensbasierten UML-Diagramme werden verwendet, um das Verhalten eines Systems zu modellieren. Sie zeigen, wie Daten durch das System fließen, wie Objekte miteinander kommunizieren, wie die Zeit den Systemzustand beeinflusst und welche Ereignisse dazu führen, dass das System interne Zustände ändert.
| Verhaltens Diagramm | Kurze Beschreibung |
| Aktivitätsdiagramm | Es ist eine grafische Darstellung von Abläufen schrittweiser Aktivitäten und Aktionen mit Unterstützung für Auswahl, Iteration und Konkurrenz |
| Use-Case-Diagramm | Es beschreibt die funktionalen Anforderungen eines Systems anhand von Anwendungsfällen, die es Ihnen ermöglichen, das, was Sie von einem System benötigen, mit der Art und Weise zu verbinden, wie das System diese Anforderungen erfüllt. |
| Zustandsmaschinen-Diagramm | Es zeigt das diskrete Verhalten eines Teils eines entworfenen Systems durch endliche Zustandsübergänge. |
| Sequenzdiagramm | Es zeigt die Reihenfolge der Nachrichten, die zwischen den Objekten ausgetauscht werden, die zur Durchführung der Funktionalität der Szenario benötigt werden. |
| Kommunikationsdiagramm | Es zeigt Interaktionen zwischen Objekten und/oder Teilen (dargestellt als Lebenslinien) unter Verwendung geordneter Nachrichten in einer frei angeordneten Form. |
| Interaktionsübersichtsdiagramm | Es zeigt einen Steuerfluss mit Knoten, die andereInteraktionsdiagramme. |
| Zeitdiagramm | Es zeigt Interaktionen, wenn der primäre Zweck des Diagramms darin besteht, über Zeit zu reflektieren, indem auf Bedingungen fokussiert wird, die sich innerhalb und zwischen Lebenslinien entlang einer linearen Zeitachse verändern. |
1. Klassendiagramm
Ein Klassendiagrammzeigt eine statische Ansicht einer Anwendung und hilft bei der Erstellung ausführbaren Software-Code. Es zeigt die Attribute, Klassen, Funktionen und Beziehungen, um einen Überblick über das Software-System zu geben. Sie werden verwendet, um eine statische Ansicht einer Anwendung zu erstellen. Ein Objektmodell-Diagramm kann die Wartungszeit reduzieren, indem es eine allgemeine Schematisierung einer Anwendung vor der Codierung bereitstellt.
Abhängig von der Komplexität eines Systems können Sie ein einzelnes Klassendiagramm verwenden, um ein gesamtes System zu modellieren, oder mehrere Klassendiagramme verwenden, um die Komponenten eines Systems zu modellieren. Klassendiagramme sind grundlegend für den objektorientierten Modellierungsprozess und modellieren die statische Struktur eines Systems. In der Analysephase kann ein Klassendiagramm Ihnen helfen, die Anforderungen Ihres Problemfelds zu verstehen und dessen Komponenten zu identifizieren.
Das Klassendiagrammist der Hauptbaustein der objektorientierten Modellierung. Es zeigt die Struktur eines objektorientierten Systems, indem es Klassen, ihre Attribute, Operationen und Beziehungen zwischen Objekten darstellt. Das obere Feld enthält den Namen der Klasse, das mittlere Feld enthält ihre Attribute und das untere Feld enthält ihre Operationen.
Beziehungen werden in der Mitte der Assoziationslinie geschrieben. Sie haben oft einen kleinen Pfeilspitze, um die Richtung zum Lesen der Beziehung anzuzeigen. Die Vielzahl von Objekten in einer Beziehung kann als: Genau eine, null, eine, viele, eine oder mehrere angegeben werden.

Bearbeiten Sie dieses Klassendiagramm
- Eine Klasse ist eine Bauplan für ein Objekt, und der Punkt des objektorientierten Designs geht nicht um Objekte, sondern um Klassen, weil wir Klassen verwenden, um Objekte zu erstellen.
- Die Wahl der Perspektive hängt davon ab, wie weit Sie im Entwicklungsprozess sind. Analysemodelle zeichnen sich durch eine Mischung aus konzeptueller und spezifikationsorientierter Perspektive aus.
- UML-Klassenzusammenhänge werden verwendet, um zu vermitteln, wie Code aus Diagrammen implementiert werden soll. Wenn sie genau interpretiert werden, spiegelt der implementierte Code genau die Absicht des Designers wider.
- Eine Assoziation wird durch eine Linie dargestellt, die zwei Klassen verbindet. An jedem Ende können wir die Eigentümerschaft, die Rolle, die die Elemente dieses Endes spielen, und die Vielzahl der Instanzen angeben.
- Eine Generalisierung ist eine Beziehung zwischen zwei Klassen. Jede Instanz der spezifischen Klasse ist auch eine indirekte Instanz der allgemeinen Klasse.
- Eine Aggregation ist eine Art von Assoziation, die eine Ganze-Teil- oder Teil-von-Beziehung darstellt. Sie kann grafisch durch eine hohle Raute auf der enthaltenden Klasse mit einer einzelnen Linie dargestellt werden, die sie mit der enthaltenen Klasse verbindet.
- Eine Abhängigkeitsbeziehung besteht, wenn ein Objekt einer Klasse ein Objekt einer anderen Klasse verwendet.
- Die abstrakte Klasse wird verwendet, um Funktionalitäten über Klassen hinweg zu finden, und ihr Name wird kursiv geschrieben.
2. Objektdiagramm
Ein Objekt ist eine Instanz einer Klasse zu einem bestimmten Zeitpunkt während der Ausführung, und ein Objektdiagramm zeigt den detaillierten Zustand eines Systems zu einem bestimmten Zeitpunkt. Sie werden verwendet, um Beispiele für Datenstrukturen zu zeigen, und Klassendiagramme werden verwendet, um die Richtigkeit und Vollständigkeit vonObjektdiagrammen.

(Erstellt mit Visual Paradigm (Desktop)’sObjektdiagramm-Tool)
- Ein Objektdiagramm zeigt die Beziehung zwischen Objekten in einem System und kann verwendet werden, um komplexe System-Klassendiagramme zu erklären.
- In UML zeigen Objektdiagramme die Instanzen der Klassifizierer in Modellen und ihre Beziehungen. Sie können Objektdiagramme erstellen, indem sie die Modell-Elemente in Klassendiagrammen, Bereitstellungsdigrammen, Komponentendiagrammen und Use-Case-Diagrammen instanziieren.
- Um ein Objektdiagramm zu erstellen, müssen Sie die Mechanismen identifizieren, aus denen das System besteht, und dann die Klassen, Schnittstellen und anderen Elemente identifizieren, die an diesen Mechanismus beteiligt sind, sowie die Beziehungen zwischen diesen Dingen identifizieren.
- Ein Objektdiagramm kann verwendet werden, um den Zustand von Objekten zu einem bestimmten Zeitpunkt darzustellen.
3. Komponentendiagramm
Ein Komponentendiagrammwird verwendet, um ein großes objektorientiertes System in kleinere Komponenten zu zerlegen. Es visualisiert die Beziehungen sowie die Organisation zwischen den in dem System vorhandenen Komponenten. Ein Komponentendiagramm ist eine Darstellung der logischen Komponenten eines Software-Systems und ihrer Beziehungen, die eine statische Implementierungsansicht eines Systems darstellt. Es wird typischerweise verwendet, um die Komponenten zu visualisieren, ausführbare Dateien zu erstellen und die Organisation sowie die Beziehungen der Komponenten zu beschreiben.


Bearbeiten Sie dieses UML-Komponentendiagramm
- Das Komponentendiagrammzeigt die bereitgestellten und erforderlichen Schnittstellen einer Komponente an.
- Eine Komponente ist ein modulares Teil eines Systems. Sie wird als Rechteck mit optionalen, vertikal gestapelten Fachbereichen dargestellt.
- Ein Lollipop oder eine Buchse wird verwendet, um eine Abhängigkeit von einer Komponente zu einer Schnittstelle darzustellen, und ein Halbkreis wird verwendet, um eine Abhängigkeit von einer Komponente zu einer erforderlichen Schnittstelle darzustellen.
4. Bereitstellungsdigramm
Ein Bereitstellungsdigramm zeigt die Struktur des Laufzeit-Systems und die Kommunikationspfade zwischen verschiedenen Hardwarekomponenten, auf die die Software bereitgestellt wird. Ein Bereitstellungsdigramm ist eine Sammlung von Knoten und Bögen, die die Beziehungen zwischen Knoten in einem System darstellen. Es ist für Systemingenieure nützlich, um Leistung, Skalierbarkeit, Wartbarkeit und Portabilität zu steuern.

Bearbeiten Sie dieses Bereitstellungsdigramm online
Bereitstellungsdigramme zeigen die Architektur eines Systems als Bereitstellung von Software-Artikeln auf Bereitstellungsziele. Sie können entweder auf Spezifikationsebene (auch Typenebene genannt) oder auf Instanzebene (ähnlich wie Klassendiagramme und Objektdiagramme) sein.
Bereitstellungsdigramm im Vergleich zu Komponentendiagramm
- Bereitstellungsdigramme werden verwendet, um die Hardwarekomponenten zu beschreiben, die zur Bereitstellung von Softwarekomponenten in einem System verwendet werden.
- Komponentendiagramme werden verwendet, um die Software-Artikel eines Systems zu beschreiben, und Bereitstellungsdigramme werden verwendet, um die Hardware-Topologie eines Systems zu beschreiben.
5. Paket-Diagramm
Pakete werden verwendet, um semantisch verwandte Elemente zu gruppieren, um die hochwertigen Systemelemente komplexer Systeme zu organisieren. Ein Paket-Diagramm ist ein Muster zum Gruppieren von Elementen und zur Definition ihrer Wechselwirkungen. Sie trennen Modell-Elemente und Komponenten in konsistente Einheiten oder Systeme. Diese Diagramme vereinfachen die Systemzugriffssteuerung, die Modellnavigation, die Konfigurationsverwaltung und andere semantische Überlegungen.

Bearbeiten Sie dieses Paket-Diagramm
- Pakete werden mit einem Ordnersymbol dargestellt, und Modelle werden mit einem Dreieck in der oberen rechten Ecke angezeigt.
- Ein Paket-Diagramm folgt der hierarchischen Struktur verschachtelter Pakete, beispielsweise kann ein Paket-Diagramm auch Anwendungsfälle in logisch verwandte Unter-Systeme gruppieren.
- Eine Abhängigkeit besteht zwischen zwei Paketen, wenn eine Klasse im Paket A auf eine Klasse im Paket B angewiesen ist oder wenn zwischen zwei Klassen eine Client-Server-Beziehung besteht.
- Paket-Diagramme ermöglichen uns, Abhängigkeiten zwischen Paketen anzugeben. Eine Abhängigkeit wird durch einen gestrichelten Pfeil dargestellt.
- Eine Paket-Import-Beziehung wird als das Importieren von Elementen aus dem Ziel-Paket in das Quell-Paket interpretiert.
- Ein Paket-Merge ist eine gerichtete Beziehung zwischen zwei Paketen. Er fügt die Eigenschaften des Ziel-Pakets den Eigenschaften des Quell-Pakets hinzu.
- Ein Paket ist ein Container für andere Modell-Elemente. Ein Paket kann hierarchisch verschachtelt sein, und der Container kann gelöscht oder kopiert werden, ohne die enthaltenen Elemente zu löschen.
6. Zusammengesetzte Struktur-Diagramm
In UML-Modellen ist einZusammengesetzte Struktur-Diagramm zeigt die interne Struktur strukturierter Klassifizierer durch die Verwendung von Teilen, Ports und Verbindungen

(Erstellt mit dem Tool Zusammengesetzte Struktur-Diagramm-Tool)
-
Teile: ein Diagrammelement, das eine Menge von einem oder mehreren Instanzen darstellt, die ein enthaltendes strukturiertes Klassifizierer besitzt
- Ein Verbindungselement verbindet Ports miteinander, eine Zusammenarbeit verbindet Instanzen miteinander, ein strukturierter Klassifizierer stellt eine Klasse dar, die durch Interaktionen zwischen Teilen beschrieben werden kann, und ein eingeschlossener Klassifizierer enthält Ports.
-
Ports: definieren den Interaktionspunkt zwischen einer Klassifizierer-Instanz und ihrer Umgebung oder zwischen dem Verhalten des Klassifizierers und seinen internen Teilen
- Schnittstelle: Sie kann als Klasse modelliert werden, wird aber nicht instanziert. Eine konkrete Klasse muss die Schnittstelle implementieren, und externe Entitäten können die Schnittstelle nutzen, ohne sich um die interne Implementierung kümmern zu müssen.
-
Zusammenarbeit: Verwenden Sie eine Zusammenarbeit, um nur die Rollen und Verbindungen zu definieren, die erforderlich sind, um ein bestimmtes Ziel der Zusammenarbeit zu erreichen
Klasse vs Objekt vs Zusammengesetzte Struktur-Diagramm
- Klassendiagramme zeigen die Beziehungen zwischen Klassen, die eine komplexe Struktur bilden, während Objektdiagramme spezifische Instanzen dieser Struktur zeigen.
- Zusammengesetzte Struktur-Diagramme zeigen, wie die Komponenten miteinander interagieren.
7. Profil-Diagramm
UML ist eine allgemeine Modellierungssprache. In einigen Fällen ist jedoch eine Sprache, die für den jeweiligen Bereich optimiert ist, vorteilhaft.Profildiagramme ermöglichen die Anpassung von UML-Modellen für bestimmte Domänen und Plattformen. Diese Diagramme werden mithilfe von Stereotypen, Tagged-Value-Definitionen und Beschränkungen definiert.


Bearbeiten Sie dieses Profildiagramm
A UML-Profil kann auf drei Arten erstellt werden: durch Erstellung eines neuen Metamodells, Erweiterung des bestehenden Metamodells oder durch Verwendung sprachinterner Mechanismen.
- Stereotypen ermöglichen es Ihnen, das Vokabular von UML zu erweitern, indem Sie neue Bausteine erstellen, die primitiv wirken und die Sprache Ihrer Domäne sprechen.
- Tagged Werte werden verwendet, um Informationen zu einem UML-Modell-Element hinzuzufügen. Sie können für die Codeerzeugung, Versionskontrolle, Konfigurationsmanagement, Urheberschaft usw. verwendet werden.
- Beschränkungen ermöglichen es Ihnen, die Semantik von UML-Bausteinen durch Hinzufügen neuer Protokolle zu erweitern. Sie werden als Zeichenketten in Klammern dargestellt, die in der Nähe des zugehörigen Elements platziert sind.
Verhaltensdiagramm
UML-Verhaltensdiagramme visualisieren, spezifizieren, konstruieren und dokumentieren die dynamischen Aspekte eines Systems. Verhaltensdiagramme werden wie folgt kategorisiert: Use-Case-Diagramme, Interaktionsdiagramme, Zustandsdiagramme und Aktivitätsdiagramme.
1. Use-Case-Diagramm
Ein Use-Case-Diagramm ist eine visuelle Darstellung des Verhaltens einer Softwareanwendung. Es hilft Designern, das Verhalten eines Systems gegenüber dem Benutzer zu kommunizieren, indem es extern sichtbares Systemverhalten spezifiziert. Use Cases stellen nur die funktionalen Anforderungen eines Systems dar. Geschäftsregeln, Anforderungen an die Dienstqualität und Implementierungsbeschränkungen müssen separat dargestellt werden. Use-Case-Diagramme werden verwendet, um die Rollen von Personen in einem System zu beschreiben. Sie können verwendet werden, um Anforderungen zu planen, eine Hardware-Design-Validierung durchzuführen, ein Softwareprodukt zu testen oder eine Online-Hilfe-Referenz zu erstellen.
Das Use-Case-Modellieren wurde 1986 von Ivar Jacobson eingeführt. 1992 half sein Buch „Object-Oriented Software Engineering“ dabei, die Technik populär zu machen. Ein Use-Case-Diagramm ist eine abstraktere Sicht auf ein System. Es ist vorteilhaft, Use Cases auf einer gröberen Granularität mit weniger Detail zu schreiben, wenn dies nicht erforderlich ist. Use-Case-Diagramme werden typischerweise in der frühen Phase der Entwicklung erstellt, um Anforderungen zu erfassen, die Architektur zu validieren und die Implementierung voranzutreiben.

Bearbeiten Sie dieses Use-Case-Diagramm
- Use-Case-Diagramme sollten aus der Perspektive der Akteure strukturiert werden und sich auf das „Was“ und nicht auf das „Wie“ konzentrieren.
- Die Erweiterungsbeziehung wird verwendet, um optionales Verhalten aus einem erweiternden Use Case in einen erweiterten Use Case einzuschließen.
- Eine Generalisierungsbeziehung verbindet zwei Use Cases. Das Kind kann das Verhalten des Elternteils hinzufügen oder überschreiben.
- Die Akteure Ihres Systems sind die Personen, die das System nutzen, installieren, starten, warten, herunterfahren und Informationen aus dem System beziehen oder bereitstellen.
2. Aktivitätsdiagramm
Aktivitätsdiagramme werden verwendet, um den Steuerfluss in einem System darzustellen und die Schritte bei der Ausführung eines Use Cases zu beschreiben. Aktivitätsdiagramme sind grafische Darstellungen von Workflows, die Auswahl, Iteration und Konkurrenz unterstützen. Sie können auch Elemente enthalten, die den Datenfluss zwischen Aktivitäten zeigen. Sie sind vergleichbar mit Flussdiagrammen und werden verwendet, um die dynamischen Aspekte eines Systems darzustellen. Zum Beispiel kann ein Aktivitätsdiagramm verwendet werden, um den Steuerfluss vom Anfangszustand zum Endzustand darzustellen.
Aktivitätsdiagramme werden auch verwendet, um Geschäftsprozesse und Workflows zu modellieren. Sie werden verwendet, um das dynamische Verhalten eines Systems zu erfassen und den Workflow eines objektorientierten oder verteilten Systems zu modellieren.

Bearbeiten Sie dieses Aktivitätsdiagramm online
- Aktivitätsdiagramme werden verwendet, um eine Reihe von Aktionen oder einen Steuerfluss in einem System zu modellieren.
- Ein Diamant stellt eine Entscheidung mit alternativen Pfaden dar. Die Alternativen sollten mit Bedingungen beschriftet werden.
- Ein Fork-Knoten teilt einen einzelnen eingehenden Fluss in mehrere gleichzeitige Flüsse auf.
- Ein Join-Knoten verbindet mehrere gleichzeitige Flüsse wieder zusammen.
- Pins werden verwendet, um unübersichtliche Aktivitätsdiagramme zu klären. Sie stellen eine Eingabe zu oder eine Ausgabe von einer Aktion dar.
- Signale werden verwendet, um Aktivitäten in einem System zu modifizieren. Eine Antwort ist erforderlich, bevor die Aktivität geändert werden kann.
- Swimlanes werden verwendet, um Aktionen in Aktivitätsdiagrammen zu gruppieren.
3. Sequenzdiagramm
Ein Sequenzdiagramm ist ein einfaches Diagramm, das verwendet wird, um Interaktionen zwischen Teilen (z. B. Subsystemen oder Objekten) eines Systems darzustellen. UML-Sequenzdiagramme zeigen, wie Objekte im Laufe der Zeit interagieren, indem sie die vertikale Achse zur Darstellung der Zeit nutzen. Sequenzdiagramme erfassen Interaktionen zwischen einem System und seinem Benutzer oder zwischen Systemen. Ein Sequenzdiagramm zeigt, wie Operationen ausgeführt werden. Die Zeit verläuft, wenn man nach unten auf der Seite geht.
In einem Sequenzdiagramm stellen Nachrichten die Interaktion zwischen Objekten dar. Aufrufnachrichten stellen eine Anforderung zum Aufrufen einer Operation dar, Rückgabemeldungen stellen den Informationsfluss vom Empfänger zum Aufrufer dar, und rekursive Nachrichten stellen einen Aufruf an den Aufrufer dar.

Bearbeiten Sie dieses Sequenzdiagramm
- Ein Sequenzdiagramm kann verwendet werden, um darzustellen, wie verschiedene Teile eines Systems miteinander interagieren, um einen einzelnen Anwendungsfall zu erfüllen. Zum Beispiel kann ein Sequenzdiagramm helfen, Interaktionen zwischen Klassen zu visualisieren und Verantwortlichkeiten in einem neuen System zu erkennen.
- In einem Sequenzdiagramm sendet ein Objekt eine Nachricht an ein anderes Objekt. Beide Objekte sind während des Nachrichtenaustauschs aktiv.
- Nachrichtenpfeile werden in Sequenzdiagrammen verwendet, um eine Nachricht anzugeben. Der Nachrichtenpfeil ist mit einer Beschreibung versehen, die als Nachrichtensignatur bekannt ist.
- Eine asynchrone Nachricht wird gesendet, wenn der Nachrichtenaufrufer nicht auf die Verarbeitung der Nachricht wartet.
4. Zustandsmaschinen-Diagramm
Ein Zustandsmaschinen-Diagramm (auch Zustandsdiagramm oder Zustandsübergangsdiagramm genannt) wird verwendet, um die verschiedenen Zustände eines Komponenten in einem System zu beschreiben. Es wird durch externe oder interne Ereignisse gesteuert. Es wird verwendet, um die dynamische Natur eines Systems zu modellieren. Es beschreibt den Steuerfluss von einem Zustand zum anderen und wird verwendet, um das Lebenszyklus eines Objekts von der Erstellung bis zur Beendigung zu modellieren. Zum Beispiel zeigen Zustandsdiagramme alle möglichen Verhaltensweisen von Objekten einer Klasse und die Reihenfolge der Ereignisse und sind für unser Verständnis des Systems von entscheidender Bedeutung.
In den meisten Systemen entsteht die Komplexität aus der Interaktion zwischen Objekten verschiedener Klassen, und daher sind Zustandsdiagramme nicht für jede Klasse erforderlich. Für komplexe Klassen, wie z. B. Prozesssteuerung oder Kommunikationssysteme, ist jedoch ein Zustandsdiagramm erforderlich, um das Verhalten der Objekte zu modellieren.


Bearbeiten Sie dieses Zustandsmaschinen-Diagramm online
- Ein schwarzer gefüllter Kreis, um den Anfangszustand eines Systems oder einer Klasse darzustellen.
- Ein durchgezogener Pfeil, um einen Übergang von einem Zustand zum anderen darzustellen
- Ein abgerundetes Rechteck, um einen Zustand darzustellen.
- Zustandsübergänge von einem Zustand zum anderen werden durch Ereignisse ausgelöst.
- Wächter verhindern, dass bestimmte Übergänge erfolgen, und interne Übergänge beeinflussen keine Zustandsübergänge.
- Ein Zustandsdiagramm enthält einen Anfangszustand, mittlere Zustände, Übergänge und einen Endzustand. Es enthält außerdem ein Feld mit abgerundeten Ecken, einen Namen, Zustandsvariablen und Aktionen, die in jedem Zustand ausgeführt werden.
Was ist ein Zustand?
Ein Zustand ist ein Zustand oder eine Situation während des Lebens eines Objekts, und ein Ereignis ist ein Reiz, der einen Zustandsübergang auslösen kann. Eine Wächterbedingung ist die Auswertung eines booleschen Ausdrucks, und ein Übergang kann mehrere Wächterbedingungen haben. Zustandsdiagramme werden häufig verwendet, um das Verhalten elektronischer Komponenten zu beschreiben. Zustandsdiagramme können das Aufteilen von Zuständen in mehrere Zustände, das Verbinden von Zuständen, historische Zustände und zusammengesetzte Zustände enthalten.
Aktivitätsdiagramm im Vergleich zu Zustandsdiagramm
- In UML stellen Aktivitätsdiagramme hochwertige Aktivitäten dar. Insbesondere können Aktivitätsdiagramme Konkurrenz und Koordination darstellen.
- In einem Zustandsmaschinen-Diagramm stellen Ecken die Zustände eines Objekts dar, und Kanten stellen Ereignisse dar. Zusätzliche Notationen erfassen, wie Aktivitäten koordiniert werden.
5. Kommunikationsdiagramm
Kommunikationsdiagramme zeigen, wie Objekte miteinander interagieren. Sie zeigen auch die Nachrichten, die zwischen Objekten übertragen werden. Modellieren Sie den Nachrichtenaustausch zwischen Objekten, die Funktionalitäten von Anwendungsfällen und Operationen liefern, und erfassen Sie Interaktionen, die die übermittelten Nachrichten zeigen. In einem Kommunikationsdiagramm werden Objekte (Aktoren in Anwendungsfällen) durch Rechtecke dargestellt, und Nachrichten, die zwischen Objekten übertragen werden, werden durch beschriftete Pfeile dargestellt, die beim sendenden Objekt beginnen und beim empfangenden Objekt enden. Es ist leicht zu lesen, da die Nachrichten mit Nummern beschriftet sind.

(Erstellt mit Visual Paradigm’s Kommunikationsdiagramm-Tool)
- UML-Kommunikationsdiagramme zeigen, wie Nachrichten zwischen Objekten in einem System oder einer Softwarekomponente gesendet und empfangen werden.
- Linien stellen Verbindungen dar, und Pfeile stellen Nachrichten dar.
- Nachrichten werden in aufsteigender Reihenfolge nummeriert und mit Zahlen und Dezimalpunkten beschrieben.
Kommunikationsdiagramm im Vergleich zu Sequenzdiagramm
Das Kommunikationsdiagramm und das Sequenzdiagramm sind ähnlich. Sie präsentieren die gleiche Information, aber das Kommunikationsdiagramm ist nach Raum angeordnet, während das Sequenzdiagramm nach Zeit angeordnet ist.
Zum Beispiel kombiniert es häufig sowohl das Aktivitätsdiagramm als auch das Sequenzdiagramm und zeigt die Nachrichten, die zwischen den Entitäten ausgetauscht werden, um bestimmte vorgegebene Aufgaben im System zu erfüllen.
- Das Sequenzdiagramm zeigt die zeitliche Reihenfolge der Nachrichten, und
- Das Kommunikationsdiagramm zeigt die Beziehungen zwischen Objekten.
6. Interaktionsübersichtsdiagramm
Interaktionsübersichtsdiagramme ähneln Aktivitätsdiagrammen, wobei jede einzelne Aktivität als Rahmen dargestellt wird, der ein verschachteltes Interaktionsdiagramm enthalten kann. UML-Interaktionsübersichtsdiagramme bieten eine hohe Abstraktionsebene des Interaktionsmodells. Sie können auch den Ablauf von Aktivitäten zwischen Diagrammen zeigen. Mit anderen Worten zeigen Interaktionsdiagramme das dynamische Verhalten eines Systems, indem sie die chronologische Reihenfolge von Nachrichten und die strukturelle Organisation der Objekte, die Nachrichten senden und empfangen, beschreiben.

(Erstellt mit Visual Paradigm’s Interaktionsübersichtsdiagramm-Tool)
Ein Interaktionsübersichtsdiagramm ähnelt einem Aktivitätsdiagramm, wobei jede einzelne Aktivität als Rahmen dargestellt wird, der ein verschachteltes Interaktionsdiagramm enthalten kann. UML-Interaktionsübersichtsdiagramme bieten eine hohe Abstraktionsebene des Interaktionsmodells. Sie können auch den Ablauf von Aktivitäten zwischen Diagrammen zeigen. Mit anderen Worten zeigt das Interaktionsdiagramm das dynamische Verhalten des Systems, indem es die zeitliche Reihenfolge von Nachrichten und die strukturelle Organisation der Objekte, die Nachrichten senden und empfangen, beschreibt.
Ein Interaktionsübersichtsdiagramm enthält Knoten, die Interaktionsdiagramme darstellen. Zum Beispiel ein Interaktionsauftreten (oder Referenz-Sequenzdiagramm) ermöglicht es Ihnen, von einem Sequenzdiagramm aus auf ein anderes Sequenzdiagramm zu verweisen. Diese Funktion ermöglicht es Ihnen, komplexe Szenarien in kleinere Szenarien aufzuteilen, die wiederverwendet werden können. Jedes Szenario ist eine „Interaktion“.
7. Zeitdiagramm
Ein Zeitdiagramm ist ein Teil eines Interaktionsdiagramms, das zeigt, wie sich Zustände innerhalb und zwischen Lebenslinien entlang einer linearen Zeitachse verändern. Es zeigt, wie Objekte über einen bestimmten Zeitraum miteinander interagieren, wie lange jeder Schritt des Prozesses dauert, und kann zur Verbesserung genutzt werden.

(Erstellt mit Visual Paradigm (Desktop)’s Zeitdiagramm-Editor)
- Ein Zeitdiagramm zeigt Interaktionen entlang einer linearen Zeitachse und enthält Elemente wie Nachricht, Lebenslinie, Zeitachse und Objekt oder Rolle.
- Eine Lebenslinie stellt einen einzelnen Teilnehmer in einer Interaktion dar. Sie kann innerhalb eines Diagrammrahmens oder einer Schwimmzelle platziert werden.
- Die Dauerbeschränkung wird verwendet, um festzustellen, ob eine Beschränkung für eine bestimmte Dauer erfüllt ist oder nicht.
- Eine Zeitbeschränkung ist eine Intervallbeschränkung, die ein Zeitintervall darstellt. Eine verletzte Zeitbeschränkung bedeutet, dass das System fehlerhaft ist.













