Profile helfen bei der Arbeit mit UML

01.03.2006
Von Stefan  Queins und Chris Rupp
Die Unified Modeling Language beschreibt Systeme, deckt im Standard aber nicht alle Praxisanforderungen ab. UML-Profile füllen die Lücke.

Gern wird die UML von der Industrie als Allheilmittel für die Beschreibung von Softwaresystemen be- worben. Im Projektalltag indes stößt ihre Notation immer wieder an Grenzen. An fehlenden Features liegt das nicht. Vielmehr wurde die UML mit Version 2.0 nochmals erheblich überarbeitet und ermöglicht es heute, praktisch jede Anforderungen auch im Modell darzustellen.

Hier lesen Sie …

  • warum UML-Profile nötig sind;

  • wie sie sich einsetzen lassen;

  • welche Rolle Stereotypen dabei spielen können;

  • welchen Mehraufwand sie nach sich ziehen.

Vom Metamodell zur Anwendug – Grafik A
Vom Metamodell zur Anwendug – Grafik A

Die entscheidende Frage ist aber, wie gut und wie einfach der Entwickler und Architekt dies tun kann. In diesem Punkt setzen die UML-Profile an, die ebenfalls zum Standard gehören. Sie sollen gerade die Besonderheiten eines Problems oder einen individuellen Lösungsansatz formulieren helfen. Bevor sich jedoch der Anwender mit Profilen beschäftigt, sollte ihm klar sein, dass er mit ihnen den Sprachumfang der UML individuell erweitert und sicherstellen muss, dass andere Leser die Profile noch verstehen können.

Allgemein erweitern Profile die UML um so genannte leichtgewichtige Änderungen (siehe Kasten "Regeln zum Erstellen von Profilen"). Dies bedeutet, dass sich anhand vorgegebener Konstrukte das Metamodell der UML erweitern oder einschränken lässt.

Individuelle Anforderungen

Erfahrungen aus kleinen und großen Projekten haben gezeigt, dass der Einsatz von Profilen sich oft aus den Anforderungen in einem spezifischen Anwendungsgebiet ergibt. So wollen Projektteams in der Analysephase immer wiederkehrende Eigenschaften mit ihnen präzise und einfach beschreiben - seien es die Unterschiede zwischen Hard- und Software, eine besondere Art von Sensoren oder auch die Differenzen zwischen System- und Geschäftsprozessen.

Manche Teams wollen den eigenen Entwicklungsprozess an das Anwendungsgebiet anpassen und einige Artefakte dieses Prozesses mit Hilfe von Profilen besonders kennzeichnen. Ein anderes häufiges Motiv für die Verwendung von Profilen neben dem UML-Standard ist der Wunsch, bei der Beschreibung einer Architektur und im Feindesign die eingesetzten Techniken detaillierter beschreiben zu können. So soll das Profil beispielsweise darstellen, welche Teile des Modells als Javabeans implementiert sind oder welche Klasse die Rolle eines Senders von Informationen übernimmt.