![](/stable5/en/kdoctools5-common/top-kde.jpg)
Inhaltsverzeichnis
Dieses Kapitel gibt einen kurzen Überblick über die UML-Grundlagen. Man sollte sich aber bewusst sein, dass es keine vollständige UML-Anleitung ist. Wenn man mehr über die Unified Modelling Language, oder allgemein über Software Analyse und Design, lernen will, dann sollte man eines der vielen zu diesem Thema publizierten Bücher lesen. Man kann natürlich die vielen Einführungen im Internet zum Thema als Ausgangspunkt wählen.
Die Unified Modelling Language (UML) ist eine Diagrammnotation zum spezifizieren, visualisieren und dokumentieren von Modellen objektorientierter Softwaresysteme. UML ist kein Vorgehensmodell, d.h. es sagt nichts über die einzelnen Schritte aus, die nötig sind, um ein System zu gestalten. Aber UML hilft ihnen ihr Design zu visualisieren und mit anderen zu kommunizieren. Der UML-Standard wird von der Object Management Group (OMG) gepflegt und ist der Industriestandard zur Beschreibung von Softwaremodellen.
UML wurde für das objektorientierte Softwaredesign entwickelt und ist daher nur von begrenztem Nutzen bei anderen Programmierparadigmen.
UML setzt sich zusammen aus vielen Modellelementen, die für sich einen bestimmten Sachverhalt des Softwaresystems repräsentieren. Diese Elemente werden zu Diagrammen kombiniert, die einen Ausschnitt oder einen bestimmten Blickpunkt auf das System darstellen. Folgende Diagrammtypen werden von Umbrello UML Modeller unterstützt:
Anwendungsfalldiagramm , stellt Akteure (Menschen oder andere Benutzer des Systems), Anwendungsfälle (Szenario, wie die Akteure das System nutzen) und die Beziehungen dazwischen dar
Klassendiagramm, stellt Klassen und ihre Beziehungen untereinander dar
Sequenzdiagramm, stellt Objekte und ihre Beziehungen dar, wobei der Schwerpunkt auf dem chronologischen Nachrichtenaustausch zwischen den Objekten liegt
Kollaborationsdiagramm , stellt Objekte und ihre Beziehungen dar, wobei der Schwerpunkt auf Objekten liegt, die am Nachrichtenaustausch beteiligt sind
Zustandsdiagramm , stellt Zustände, Zustandsänderungen und Ereignisse in einem Objekt oder Teilsystem dar
Aktivitätsdiagram , stellt die Aktivitäten, Zustände und Zustandsänderungen von Objekten und die Ereignisse in Teilsystemen dar
Komponentendiagramm , stellt die höheren Programmierkomponenten (wie KParts und Java Beans) dar.
Verteilungsdiagramm , stellt die Instanzen der Komponenten und ihre Beziehungen dar.
Entitäten-Beziehungs-Diagramm, stellt Daten und ihre Beziehungen beziehungsweise Einschränkungen untereinander dar.