04.04.01 Die Unified Modeling Language
Sie haben mittlerweile viel über Objekt-Orientierung gelernt. In diesem Kapitel werden Sie nach und nach eine Menge über die Unified Modeling Language (UML) – die Sprache der OOP – lernen. Aber schauen wir uns erstmal an, was UML überhaupt ist.
Die UML ist eine standardisierte Modellierungssprache, mit der in der Software-Entwicklung Strukturen, Abläufe, Verknüpfungen und noch vieles mehr dargestellt werden kann. Es ist z. B. möglich mithilfe von UML die Beziehungen zwischen Ihren Klassen (Klassendiagramm) oder Objekten (Objektdiagramm) zu modellieren. Aber Sie können bspw. auch darstellen, wie Ihr Programm in bestimmten Situationen reagieren (Aktivitätsdiagramm), oder zeitlich ablaufen (Sequenzdiagramm) soll. Nachfolgend finden Sie eine Auflistung, aufgeteilt in Struktur- und Verhaltensdiagrammen, aller 13 Darstellungsarten mitsamt einer kurze Beschreibung:
Strukturdiagramme
- Das Klassendiagramm dient zur Darstellung von Klassen und deren Beziehungen untereinander
- Objektdiagramme stellen Verknüpfungen und Attributwerte der Objekte zu einem bestimmten Zeitpunkt des Programmablaufs dar
- Ein Paketdiagramm stellt die Aufteilung in
packages
dar - Wenn ein Kompositionsstrukturdiagramm verwendet wird, geht es um das Innere eines Klassifizierers
- Beim Komponentendiagramm wird die Struktur eines modellierten Systems aus einer bestimmten Sicht gezeigt
- Das Verteilungsdiagramm wird im Bezug auf die Verteilung von Komponenten in Knoten verwendet
Verhaltensdiagramme
- Um die Abläufe und Verzweigungen in einem Programm darzustellen, wird das Aktivitätsdiagramm verwendet
- Wenn Sie ein Anwendungsfall- oder auch Use-Case-Diagramm vor sich liegen haben, zeigt Ihnen dieses, welche Möglichkeiten ein User haben soll mit Ihrem Programm zu arbeiten
- Das Interaktionsdiagramm zeigt die dynamischen Aspekte des modellierten Systems aus einer gewissen Sichtweise und ist dem Aktivitätsdiagramm ähnlich
- Beim Kommunikationsdiagramm handelt es sich um die Beziehungen und Interaktionen zwischen Objekten
- Um den zeitlichen Ablauf in Ihrer Anwendung darzustellen, verwenden Sie das Sequenzdiagramm
- Für den Entwurf von Echtzeitanwendungen ist das Zeitverlaufsdiagramm aufgrund seiner zeitlich präzisen Spezifikation am Besten geeignet
- Das Zustandsdiagramm zeigt eine Folge der Zustände von Objekten
Verwendung von UML
UML-Diagramme sind häufig teil eines Pflichtenhefts. Dadurch können Anforderungen an den Programmierer sehr genau und unmissverständlich definiert werden. Voraussetzung dafür ist aber natürlich, dass sowohl der Entwickler als auch der Auftraggeber die UML beherrschen. Auch werden bei größeren Projekten oftmals UML-Diagramme vom Programmierer selbst oder einem Zuständigen entworfen. Dies verhindert zum Einen, dass einfach planlos „drauf los programmiert“ wird, und zum Anderen böse Überraschungen und Ungereimtheiten, die dann urplötzlich während der Programmierung auftreten und das komplette Projekt gefährden können.
Und letztendlich ist es auch die Pflicht der meisten Informatik-Studenten und Auszubildenden im IT-Bereich die UML wohl oder übel zu erlernen.