Profile helfen bei der Arbeit mit UML

01.03.2006
Von Stefan  Queins und Chris Rupp

Mit den nötigen Kenntnissen kann jeder Anwender ein Profil definieren. Aber auch das Industriekonsortium Object Management Group (OMG) hat als Verantwortlicher für die Standardisierung der UML schon einige Profile definiert.

Standardprofile erhältlich

So beinhaltet die UML von Haus aus zwei Standardprofile, in denen zum Beispiel spezielle Artefakt- und Komponententypen definiert sind. Zudem gibt es heute eine Reihe von weiterführenden Profilen, die sowohl auf Besonderheiten eines Anwendungsgebietes als auch auf die eingesetzten Technologien eingehen (siehe Kaste "Verfügbare Profile").

Wie sieht die Arbeit mit Profilen nun aus? Dies soll ein Beispiel verdeutlichen, in dem die UML-Notation erweitert wird. Das geschieht in der Praxis häufiger, als dass umgehrt die UML in ihrer Bedeutung eingeschränkt werden soll. Die Erweiterung erfolgt in diesem Beispiel mit Hilfe von UML-Stereotypen. Dies sind Mechanismen, mit denen sich die Bedeutung und Darstellung der UML ergänzen lässt. Stereotypen werden als eigene Piktogramme (Icons) mit eckigen Klammern dargestellt. Sie erlauben eine weitere Einteilung der Klassen, Abhängigkeiten und Assoziationen. Die Definition der jeweiligen Stereotypen erfolgt durch eine Erweiterung des Metamodells mit Hilfe der dafür definierten Erweiterungsbeziehung. Sie verbindet eine Metaklasse mit einer Klasse, die einen neuen Stereotypen darstellt.

Regeln zum Erstellen von Profilen

Ein UML-Profil

  • darf der semantischen Bedeutung der existierenden UML-Elemente nicht widersprechen;

  • darf nur die Erweiterungsmechanismen Stereotype und Constraint nutzen;

  • muss selbst ein austauschbares UML-Modell sein (Organisation der Stereotypen in Paketen und vollständige Definition von Profilabhängigkeiten etc.);

  • soll bestehende relevante Elemente auflisten (zum Beispiel Bibliotheken, Typdefinitionen und Modelle);

  • soll die Verknüpfung von Profilen zu einem neuen Profil berücksichtigen;

  • soll formal definierte Tagged Values (Attribute der Stereotypen) enthalten (Typ, Wert, Beschreibung, eventuell mathematische Operationen);

  • kann Regelungen zur grafischen Darstellung von Stereotypen enthalten;

  • soll unabhängig von dem Modell sein, auf das es angewandt wird, das heißt, es soll dynamisch austauschen und mehrfach wiederverwenden lassen.