Seit Beginn der 1990er Jahre entstanden verschiedene Methoden zur Vorgehensbeschreibung bei der Entwicklung objektorientierter Softwaresysteme. 1997 wurde UML (Unified Modelling Language) in einer ersten Version veröffentlicht und hat sich seitdem als Standard in vielen Bereichen etabliert hat. Seit kurzer Zeit ist die Version UML 2.0 auf dem Markt..
Die Unified Modelling Language bietet eine Reihe von Diagrammarten zur Beschreibung der Architektursichten. Jedes Diagramm enthält eine Menge von definierten Elementen. Pro Architektursicht können verschiedene Diagramme verwendet werden. Die folgende Aufstellung vermittelt einen Überblick über die vollständige Diagrammstruktur der UML 2.0 [ Basiswissen Softwarearchitektur]:
In der Kontextsicht werden die Systeme als Blackbox beschrieben, um die nach außen sichtbaren Eigenschaften zu definieren. Hierfür eignen sich zum einen das Use-Case-Diagramm, welches die Kernfunktionalitäten des Systems beschreibt und zum anderen das Komponentendiagramm, das die Schnittstellen des Systems zur Umgebung hervorhebt.
In der Struktursicht ist die Realisierung der Schnittstellen des Systems zu betrachten. Hierzu werden in der UML 2.0 Kompositionsstrukturdiagramme verwendet, die die innere Struktur eines Architekturbausteins darstellen. Die innere Struktur wird mit Hilfe sog. Parts dargestellt, die Bestandteile eines übergeordneten Bausteins sind.
Neben der strukturellen Systembeschreibung sind die dynamischen Abläufe von besonderer Bedeutung. Für die Verhaltenssicht existieren zwei wesentliche Bereiche, die beschrieben werden müssen:
die Interaktionen zwischen mehreren Bausteinen
das Verhalten eines einzelnen Bausteins.
Interaktionsdiagramme und Zustandsdiagramme eignen sich für diese Aspekte am besten.
Mit Hilfe von Interaktionsdiagrammen wird die Interaktion zwischen einzelnen Bausteinen beschrieben. Bausteine können dabei Komponenten, Objekte oder Prozesse sein. Die Unified Modelling Language stellt vier Arten von Interaktionsdiagrammen bereit: Sequenz-, Kommunikations-, Interaktionsübersichts- und Timing-Diagramme.
Zustandsdiagramme hingegen dienen zur Beschreibung des Verhaltens einzelner Bausteine und beruhen auf den von Harel definierten Zustandsautomaten. UML 2.0 stellt zwei Arten von Zustandsdiagrammen bereit: Protokollzustands- und Verhaltenszustandsdiagramme. Erstere dienen zur Verhaltensbeschreibung an Schnittstellen, letztere zur Verhaltensbeschreibung von einzelnen Bausteinen.
Die Abbildungssicht beschreibt die Zuordnung von Bausteinen zu ihren Ausführungsumgebungen und ihren Realisierungen. Diese Aspekte werden in der UML 2.0 durch Verteilungsdiagramme unterstützt.