UML: Stärken und Schwächen der grafischen Modellierung

Dolmetschen ist fehlerträchtig

Der fachlich Verantwortliche einer Anwendung beherrscht nur selten Sprachen wie Java oder C++. Er hat damit keine reelle Chance, sich in das Anwendungssystem selbst "einzulesen" oder sich einen Überblick über den aktuellen Stand zu verschaffen. Er benötigt den Entwickler als Dolmetscher und ist abhängig von dessen Kenntnissen und Fähigkeiten. Doch Dolmetschen ist fehlerträchtig, und oft kommt in der Übersetzung etwas Sinnverfälschtes heraus. Die zentrale Herausforderung in der Softwareentwicklung ist deshalb der Umgang und die Beherrschung der damit verbundenen Komplexität.

Ein Blick über den Tellerrand zeigt, wie es gehen kann: Die Entwicklung von Maschinen etwa wurde durch die Einführung von CAD-Systemen, die eine zwei- und dreidimensionale Konstruktion ermöglichen, deutlich vereinfacht. Das Ergebnis sind kürzere Entwicklungszeiten, höherwertige Lösungen und geringere Entwicklungskosten. Der entscheidende Entwicklungsschub lag in der deutlich besseren Beherrschbarkeit von Komplexität. Auch in der Softwareentwicklung führt dauerhaft kein Weg an der grafischen Modellierung vorbei. Ein erster Schritt in diese Richtung ist mit der Modellierungssprache Unified Modeling Language (UML) getan - grafisches Modellieren wird im Folgenden gleichgesetzt mit UML-gestütztem Vorgehen und umfasst auch den Einsatz entsprechender Modellierungs-Tools.

UML ist eine Sprache, deren Wortschatz aus grafischen Elementen besteht. Wer UML "spricht", entnimmt aus UML-Grafiken sehr schnell die Struktur und Funktion von Anwendungsaspekten. Die grafische Darstellung von Modellen verschafft einen schnellen Überblick über einzelne Komponenten der Anwendung und deren Strukturen. So erlaubt beispielsweise die Modellierung von Klassendiagrammen eine einfach verständliche Darstellung von Business-Klassen und deren wechselseitigen Abhängigkeiten. UML bietet zudem eine abstraktere Darstellung als Programmcode, da Klassen nur mit ihren Methodensignaturen dargestellt werden. Die für eine erste Systemübersicht irrelevante Methodenimplementierung wird nicht dargestellt.

Auch die Sprachbarrieren zwischen Fachabteilung und Entwicklern lassen sich überbrücken. Für Fachleute ist das Erlernen einer grafischen Modellierungssprache deutlich einfacher als das einer herkömmlichen Programmiersprache. Die leicht einprägsame Symbolik unterstützt das Verständnis von einzelnen Modellen.