Modellierung mit UML - Teil 1

Einführung

UML ist eine Bezeichnung, die sich bei der Vereinheitlichung von OMT (Object Modeling Technique), Booch und OOSE (Object-Oriented Software Engineering) ergeben hat. UML wurde aber auch von anderen objektorientierten Notationen beeinflusst, wie sie zum Beispiel von Shlaer/Mellor, Coad/Yourdon, Wirfs-Brock und Martin/Odell eingeführt wurden.

UML umfasst aber auch neue Konzepte, die bei anderen wichtigen Methoden nicht vorkommen, wie den Erweiterungsmechanismus und eine beschränkte Sprache. UML wurde für eine Vielzahl von Anwendungen entwickelt. Daher stellt es auch Konstrukte für eine große Menge von Systemen und Aktivitäten bereit (beispielsweise Echtzeitsysteme, verteilte Systeme, Analyse, Systementwurf oder Verteilung). Die Systementwicklung konzentriert sich auf drei verschiedene Systemmodelle:

Das funktionale Modell wird in UML durch Anwendungsfalldiagramme dargestellt und beschreibt die Funktionalität des Systems aus der Sicht des Benutzers.

Das statische Modell wird in UML durch Klassendiagramme dargestellt und beschreibt die Struktur eines Systems hinsichtlich der Objekte, Attribute, Assoziationen und Operationen. Wir bezeichnen das statische Modell aus historischen Gründen oft auch als Objektmodell und unterscheiden dabei drei Ausprägungen: Während der Anforderungsermittlung und der Analyse heißt es Analyse-Objektmodell und beschreibt Elemente, die für den Anwendungsbereich relevant sind. Während des Systementwurfs wird das statische Modell in das Systementwurfs-Objektmodell verfeinert und enthält Beschreibungen der Subsystemschnittstellen. Während des Objektentwurfs wird das statische Modell in das detaillierte Objektmodell verfeinert und enthält genaue Beschreibungen von Objekten aus dem Lösungsbereich.

Das dynamische Modell wird in UML durch Interaktionsdiagramme, Zustandsdiagramme und Aktivitätsdiagramme dargestellt und beschreibt das interne Verhalten des Systems. Ein Interaktionsdiagramm beschreibt das Verhalten zwischen mehreren Objekten als eine Folge von Nachrichten, die zwischen den Objekten ausgetauscht werden. Ein Zustandsdiagramm beschreibt dagegen das Verhalten eines einzelnen Objektes als eine Menge von Zuständen und den Übergängen zwischen den Zuständen.