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

'Das Pferd ist tot! Nun, dann wechseln wir den Reiter' - Witze über Softwareprojekte gibt es zuhauf. Doch lustig ist die Situation keinesfalls. Einen Ausweg aus dieser Misere bietet die grafische Modellierung mit UML.

Viele IT-Profis kennen aus eigener Erfahrung Projekte, die nach dem Motto "Nur das Genie beherrscht das Chaos" organisiert wurden oder schlicht die Business-Anforderungen des Kunden nicht erfüllt haben. Projekte, die Zeitplan und Budget weit überzogen oder bei denen die geplanten Anwendungen nie das Licht der Welt erblickten.

Warum lernt man so wenig aus den Fehlern der Vergangenheit? Ein wesentlicher Grund liegt sicher im Produkt selbst. Software besteht in letzter Konsequenz aus einer riesigen Zahl von Codezeilen. Diese Form der Anwendungsbeschreibung kann für kleinere Projekte ausreichend sein. Schwieriger wird es, wenn der Programmcode sehr umfassend wird. Denn hier gibt es keine abstrakteren Zwischenmodelle, die eine schrittweise Näherung an die Anwendung ermöglichen. Unterschiedliche Sichten des Systems aus verschiedenen Blickwinkeln und Abstraktionsebenen werden nicht unterstützt.

Noch schwieriger wird es, wenn der Code über längere Zeit von unterschiedlichen Entwicklern gepflegt wurde. Wartung und Erweiterungen beeinträchtigen die strukturelle Qualität der Software zunehmend. Es ist dann nahezu unmöglich, sich aus zehntausenden Zeilen Code einen Überblick über die Struktur der Anwendung und die in ihr abgebildeten Beziehungen zu verschaffen. Textliche Beschreibungen wie Programmcode sind also eine denkbar ungeeignete Arbeitsgrundlage für den effizienten Umgang mit einer Softwareanwendung.