Eine Einführung
Zwei sehr verbreitete Beschreibungssprachen im Bereich der Softwaremodellierung sind XML und UML, wobei XML eine rein textbasierte, UML hingegen eine grafische Beschreibungssprache ist.
Die Unified Modeling Language, kurz UML, ist eine objektorientierte grafische Beschreibungssprache. UML ist vor allem im Bereich der objektorientierten Analyse und Design sehr verbreitet.
Die UML bietet eine Reihe verschiedener Diagrammformen, die in zwei Kate-gorien unterteilt werden können:
Inhalt der UML ist eine feste Syntax und eine erste, relativ abstrakt gehaltene Semantik. So existieren in der UML beispielsweise Modellelemente zur Repräsentierung von
Die Semantik dieser Modellelemente ist zunächst noch relativ abstrakt, so dass sich die UML in ihrer Rohform hauptsächlich zur Klassen- und Ablaufmodellierung im Bereich der objektorientierten Programmierung eignet. Die tatsächliche Stärke der UML liegt jedoch in ihrer Erweiterbarkeit. Mit Hilfe von Stereotypes und Tagged Values kann das UML Metamodell um eigene Semantik erweitert werden, sodass es die Struktur der Artefakte in einem individuellen Softwareentwicklungsprozess exakt abbilden kann. Diese Fähigkeit macht die UML zu einem mächtigen Werkzeug im Bereich der modellgetrieben Softwareentwicklung.
Auch XML als textuelle Beschreibungssprache findet eine wichtige Rolle in der modellgetriebenen Softwareentwicklung. XML besitzt, im Gegensatz zur UML, zunächst überhaupt keine Semantik. Die Semantik sowie eine weiterfüh-rende Grammatik wird einer XML-Datei erst über eine DTD oder ein XML-Schema gegeben.
Bei der Modellierung von Softwareprodukten können XML und UML gleichzei-tig eingesetzt werden. Beim Entwurf der Metamodelle für die formale Verwal-tung von Projektinformationen muss jedoch jeweils abgewägt werden, welche Notationsform für welche Modellform die geeignetere ist. Einige grundsätzliche Unterschiede zwischen beiden Notationsformen sind:
XMI kann als die textuelle (XML-basierte) Repräsentierung der UML verstan-den werden. Die OMG hat mit XMI ein XML-Metamodell geschaffen, welches die Semantik und die erweiterte Grammatik der UML auf die Notationsform von XML abbildet. So lässt sich jedes UML-Diagramm in XMI ausdrücken, was ei-ne der wichtigsten Voraussetzung für die automatisierte Weiterverarbeitung von UML-Modellen ist.