UML-Diagramme: Ein umfassender Leitfaden
Classified in Informatik
Written at on Deutsch with a size of 7,27 KB.
Klassendiagramme
Ein Klassendiagramm ist ein Diagramm, das eine Reihe von Klassen, Schnittstellen, Kooperationen und Beziehungen darstellt. Wie andere Diagramme können Klassendiagramme Hinweise und Einschränkungen enthalten. Sie können auch Pakete oder Subsysteme enthalten, um Elemente eines Modells in größeren Teilen zu gruppieren. Manchmal werden Instanzen in den Diagrammen platziert, vor allem, wenn Sie die Art (möglicherweise dynamisch) einer Instanz zeigen.
Objektdiagramme
In UML werden Klassendiagramme verwendet, um die statischen Aspekte der Bausteine zu visualisieren. Die Interaktionsdiagramme werden verwendet, um die dynamischen Aspekte des Systems darzustellen und bestehen aus Instanzen dieser Blöcke und Nachrichten, die zwischen ihnen ausgetauscht werden. Ein Objektdiagramm enthält eine Reihe von Instanzen der Elemente, die in einem Klassendiagramm gefunden werden. Daher drückt ein Objektdiagramm den statischen Teil einer Interaktion aus, bestehend aus den kooperierenden Objekten, aber keiner der Nachrichten zwischen ihnen.
Interaktionen
In jedem System interagieren Objekte miteinander. Eine Interaktion ist ein Verhalten, das eine Reihe von Nachrichten umfasst, die von einer Reihe von Objekten in einem Kontext ausgetauscht werden, um einen Zweck zu erreichen.
Anwendungsfalldiagramme
Sie zeigen eine Reihe von Anwendungsfällen und Akteuren (eine besondere Art von Klassen) und deren Beziehungen. Sie decken die statische Sicht der Anwendungsfälle ab und sind besonders wichtig für die Modellierung und Organisation des Verhaltens.
Zustandsdiagramme
Sie zeigen eine Zustandsmaschine, bestehend aus Zuständen, Übergängen, Ereignissen und Aktivitäten. Diese Diagramme sind für die dynamische Sicht auf das System und sind sehr wichtig bei der Gestaltung des Verhaltens einer Schnittstelle, Klasse oder Kooperation.
Komponentendiagramme
Zeigt die Organisation und Abhängigkeiten zwischen einer Reihe von Komponenten. Sie decken die statische Umsetzung ab und stehen in Beziehung zu Klassendiagrammen, da eine Komponente in der Regel eine oder mehrere Klassen, Schnittstellen oder Kooperationen hat.
Architektur
Die Entwicklung eines Softwaresystems setzt voraus, dass dieses aus verschiedenen Perspektiven betrachtet wird. Verschiedene Benutzer (Endverbraucher, Analysten, Entwickler, Integratoren, Projektmanager) haben verschiedene Aktivitäten zu verschiedenen Zeiten während der Projektlaufzeit, was zu unterschiedlichen Ansichten des Projekts führt, je nachdem, welches Interesse zu jedem Zeitpunkt größer ist.
Die Architektur ist die Menge der wichtigen Entscheidungen über:
- Die Organisation des Systems.
- Auswahl der Strukturelemente und ihrer Schnittstellen, durch die das System gebildet wird.
- Verhalten, wie in der Zusammenarbeit zwischen den Komponenten angegeben.
- Zusammensetzung der Struktur- und Verhaltenselemente in immer größeren Teilsystemen.
- Der architektonische Stil, der diese Organisation leitet: Statische und dynamische Elemente und ihre Schnittstellen, ihre Zusammenarbeit und ihre Zusammensetzung.
Sequenzdiagramm
Ein Sequenzdiagramm betont die zeitliche Reihenfolge der Nachrichten. Ein Sequenzdiagramm wird gebildet, indem zuerst die beteiligten Objekte in der Interaktion am oberen Rand des Diagramms entlang der X-Achse platziert werden. In der Regel stellt dies links das Objekt dar, das die Interaktion initiiert, und untergeordnete Objekte rechts. Dann werden diese Objekte entlang der Y-Achse platziert, in der Reihenfolge, in der sie im Laufe der Zeit gesendet und empfangen werden, von oben nach unten. Dies gibt dem Leser ein klares visuelles Signal für den Kontrollfluss im Laufe der Zeit.
Aktivitätsdiagramme
Ein Aktivitätsdiagramm zeigt den Fluss von Aktivitäten. Eine Aktivität ist eine laufende, nicht-atomare Ausführung innerhalb einer Zustandsmaschine. Die Aktivitäten führen im Laufe der Zeit zu einer Aktion, die aus ausführbaren, atomaren Berechnungen besteht, die eine Änderung des Systemstatus erzeugen oder einen Wert zurückgeben. Aktionen sind Aufrufe anderer Operationen, Signalisierung, die Erstellung oder Zerstörung von Objekten oder einfache Berechnungen wie die Auswertung eines Ausdrucks. Grafisch ist ein Aktivitätsdiagramm eine Sammlung von Knoten und Kanten.
Übergänge
Nach Abschluss der Aktion oder Aktivität eines Zustands geht der Kontrollfluss sofort zum nächsten Aktions- oder Aktivitätszustand über. Dieser Fluss wird durch Übergänge angegeben, die den Pfad von einem Aktions- oder Aktivitätszustand zum nächsten angeben. In UML wird ein Übergang als gerichtete Kante dargestellt.
Verzweigung (Fork)
Sequenzielle Übergänge sind häufig, aber nicht die einzige Möglichkeit, den Kontrollfluss zu modellieren. Wie bei Flussdiagrammen können Sie eine Verzweigung (Fork) einfügen, die alternative Pfade bietet, die durch den Wert eines booleschen Ausdrucks ausgewählt werden. Eine Verzweigung wird durch einen Diamanten dargestellt. Eine Verzweigung kann einen eingehenden Übergang und zwei oder mehr ausgehende Übergänge haben. Jeder ausgehende Übergang trägt einen booleschen Ausdruck, der nur einmal ausgewertet wird, wenn die Verzweigung erreicht wird. Die Wächter der ausgehenden Übergänge dürfen sich nicht überlappen (sonst wäre der Kontrollfluss mehrdeutig), müssen aber alle Möglichkeiten abdecken, da sonst der Kontrollfluss unterbrochen würde.
Aufteilung und Vereinigung (Division and Union)
Sequenzielle Übergänge und Verzweigungen sind die am häufigsten verwendeten Pfade in Aktivitätsdiagrammen. Es gibt jedoch auch konkurrierende Abläufe, insbesondere bei der Modellierung von Geschäftsprozessen. In UML wird eine Synchronisationsleiste verwendet, um die Aufteilung und Vereinigung von zwei parallel laufenden Kontrollflüssen anzugeben. Eine Synchronisationsleiste wird als dicker horizontaler oder vertikaler Balken dargestellt.
Akteure
Ein Akteur ist eine Rolle, die ein Benutzer in Bezug auf das System spielt. Wichtig ist, dass es sich um eine Rolle handelt, denn damit wird festgelegt, dass ein Akteur nicht unbedingt eine bestimmte Person ist, sondern die Arbeit, die er in Bezug auf das System leistet.
Beispiel: In einem Vertriebssystem kann die Rolle des Verkäufers in Bezug auf das System von einem Verkäufer oder vom Leiter der Filiale wahrgenommen werden.
Ein Akteur ist eine Entität außerhalb des modellierten Systems, die mit ihm interagieren kann. Beispiele für Akteure sind Benutzer oder andere Systeme. Die Beziehungen zwischen Anwendungsfällen und Akteuren können sein:
- Ein Akteur kommuniziert mit einem Anwendungsfall.
- Ein Anwendungsfall erweitert einen anderen Anwendungsfall.
- Ein Anwendungsfall verwendet einen anderen Anwendungsfall.
Verteilungsdiagramme
Das Verteilungsdiagramm zeigt den physischen Standort der entwickelten Softwarekomponenten. Das heißt, die Software befindet sich in der Hardware, die sie enthält. Jeder Hardwareknoten wird dargestellt.