UML und XML als Modellierungssprachen

Modellgetriebene Softwareentwicklung

Eine Einführung

UML und XML als Modellierungssprachen

Zwei sehr verbreitete Beschreibungssprachen im Bereich der Softwaremodellierung sind XML und UML, wobei XML eine rein textbasierte, UML hingegen eine grafische Beschreibungssprache ist.

UML als zentrale Modellierungssprache

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:

  • Statische Diagramme
  • Dynamische Diagramme / Verhaltensdiagramme

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

  • Klassen, Objekten
  • Verschiedene Arten von Beziehungen zwischen Klassen
  • Status
  • Aktivitäten
  • Use Cases

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.

XML als textuelle Alternative oder Ergänzung zu UML

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.

UML vs. XML

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:

  • UML ist als grafische Beschreibungssprache besser lesbar und intuitiver.
  • Aufgrund der fehlenden Semantik ist XML für spezielle Fälle flexibler als UML.
  • XML ist bereits ein definiertes Speicherformat und somit direkt automatisiert weiterverarbeitbar.
  • XML ist ein reines Textformat und kann somit über jeden einfachen Textedi-tor formuliert werden. UML Diagramme hingegen benötigen einen grafischen Editor. Die meisten Editoren speichern UML-Diagramme in propritären Da-teiformaten, so dass ein UML-Diagramm für die automatische Weiterverar-beitung zunächst in ein Standardaustauschformat exportiert werden muss (siehe unten: XMI)
  • Die UML bietet durch ihr semantisches Metamodell bereits einen (Meta-) Modellierungsrahmen, sodass eigene UML-Metamodelle in der Regel einem allgemein verständlichen Standard folgen.

XMI

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.

SuchenSitemap