Auch wenn Automationsträume unerfüllt blieben

CASE: Der Einsatz von Tools ist nach wie vor sehr sinnvoll

24.07.1992

Viele Anwender sind von den Ergebnissen ihrer bisherigen CASE-Anstrengungen enttäuscht. Diese Frustration war vorprogrammiert, denn in den meisten Fällen ging die Erwartungshaltung dahin mit CASE den Prozeß des Software-Engineerings automatisieren zu können. Ein Trugschluß, wie Peter Brüggemann schildert.

Der Einsatz von CASE kann heute und in naher Zukunft nicht zu einer Automatisierung des Software-Engineering-Prozesses führen. Ein Nutzen läßt sich aber sehr wohl aus dem Werkzeugeinsatz ziehen. Er ist dadurch gegeben, daß die Werkzeuge den Einsatz moderner Methoden und Verfahren überhaupt erst effektiv möglich machen. Moderne Methoden des Software-Engineering ohne Werkzeugunterstützung einzusetzen bedeutet, daß umfangreiche Funktions- und Datenmodelle manuell erstellt werden müssen. Dies aber hat sich in der Praxis als kaum handhabbar erwiesen .

So kann beispielsweise das Datenflußdiagramm eines umfangreichen Systems nicht manuell verwaltet werden - es sei denn, man will die Anwender und Entwickler mit den häufig notwendigen und methodisch vorgesehenen Änderungen zur Verzweiflung bringen. Gerade die Modellierung und damit auch die Visualisierung ist aber elementarer Bestandteil moderner Methodik.

Wenn man also davon ausgeht, daß Modellierung und Visualisierung ohne Werkzeuge nicht zu bewerkstelligen sind, dann bedeutet ein Verzicht auf den Einsatz von CASE-Tools in letzter Konsequenz den Verzicht auf den Einsatz moderner Methoden des Software-Engineerings. Der potentielle Nutzen des CASE-Einsatzes resultiert aus den Stärken moderner Werkzeuge.

Ziel jeder CASE-Anwendung muß es sein, diese Stärken umzusetzen. Dabei spielt die jeweilige Ausgangssituation des betroffenen Unternehmens eine entscheidende Rolle. Diese Ausgangslage wird im wesentlichen durch das Niveau des Methodeneinsatzes zum Zeitpunkt der Werkzeugeinführung bestimmt.

Der Tool-Einsatz will vorbereitet sein

Schon vor der Tool-Einführung müßte für einen Methodeneinsatz auf hohem Niveau gesorgt werden. Das kann durch die manuelle Anwendung der dem jeweiligen Werkzeug zugrundeliegenden Methoden und Verfahren erreicht werden. Auf diese Weise wird eine optimale Vorbereitung für den späteren Werkzeugeinsatz erzielt.

Die Methoden, die den gängigen Tools zugrunde liegen, sind grundsätzlich anerkannt. Ihre Verbreitung in der Praxis läßt allerdings eher auf Zurückhaltung bei den Anwendern schließen. Die breite praktische Anwendung der Methoden wurde in der Vergangenheit oft mit dem Argument abgelehnt, die Werkzeuge seien unausgereift und die Methoden auf manuellem Wege nicht mit einem vertretbarem Aufwand handhabbar. Heute, da es brauchbare unterstützende Werkzeuge gibt, sind es die Meldungen über Investitionskosten von astronomischer Höhe, die erschreckend wirken.

Übersehen oder ignoriert wird hierbei vielfach, daß die Einführung der den Werkzeugen zugrundeliegenden Methoden einen großen Anteil der Kosten ausmacht. Gleichzeitig muß berücksichtigt werden, daß de facto noch immer die Unkenntnis der Methoden der größte Hemmschuh bei der Einführung von Werkzeugen ist.

Die Verbesserung der Methodenbasis ist aber nicht primär als CASE-Investition zu sehen. Vielmehr ist die Einführung von CASE-Werkzeugen nur ein Auslöser für die Einleitung längst fälliger Veränderungen und Verbesserungen des Software-Engineering-Prozesses. Die damit verbundenen Kosten alleine der Werkzeugeinführung anzulasten, führt zu einer Überbewertung der Investitionskosten, die eine CASE-Einführung mit sich bringt. Schließlich ist der Einkauf eines methodenunterstützenden Tools häufig sowohl Ursache als auch Anlaß für eine Methodeneinführung.

Vorteile: Visualisierung und Dokumentation

Wo liegen denn nun die Stärken der Werkzeuge? Sie liegen überwiegend im Bereich der Visualisierung und der Dokumentation sowie in der Unterstützung anerkannter Modellierungsmethoden. Ihr heutiges Haupteinsatzgebiet ist damit der Front-end-Bereich des Software-Engineering und die Unterstützung angrenzender Funktionen wie das Daten-Management.

Die Visualisierung durch eine grafische Darstellung von Zusammenhängen unterstützt in erster Linie die Kommunikation zwischen allen am Prozeß des Engineering beteiligten Personengruppen .

Nicht vernachlässigt werden darf in diesem Zusammenhang die Personengruppe der Anwender. Auch hier läßt sich die Schulung des Personals und Methodenerfahrung nicht durch die Anschaffung eines Werkzeugs ersetzen.

Im Gegenteil: Methodische Sicherheit und Akzeptanz der Methoden sind eine unabdingbare Voraussetzung für deren Anwendung. Nur so ist ein erfolgreicher CASE-Tool-Einsatz zu gewährleisten .

Vorteile bringen CASE-Werkzeuge bei der Dokumentation in allen Phasen des Software-Engineerings. Die Erstellung und Pflege umfangreicher Dokumentationen hat sich in der Vergangenheit als aufwendig und zeitraubend erwiesen und ist deshalb allzu oft vernachlässigt worden. Der Aufwand ist auch beim Einsatz eines CASE-Tools groß. Die Motivation der am Entwicklungsprozeß beteiligten Personen, die Dokumentation durchzuführen, kann aber durch gute Werkzeuge gesteigert werden. In diesem Sinne dienen CASE-Werkzeuge der Durchsetzung einheitlicher, konsistenter und somit aussagefähiger Dokumentationen.

Aufgabe des Daten-Managements ist unter anderem das Erfassen, Beschreiben und Darstellen von Zusammenhängen zwischen Daten. Diese Aufgabe wird durch CASE-Werkzeuge unterstützt. Umfangreiche Beschreibungen und Reportmöglichkeiten moderner Werkzeuge sind wertvolle Hilfe bei der Überprüfung der Datenbasis auf Konformität mit den festgelegten Konventionen des Unternehmens.

Das vom Entwicklungsteam im CASE-Tool erstellte Datenmodell dokumentiert die Anforderungen an die Datenbasis eines neuen Anwendungssystems. Werkzeuge erlauben dem Daten-Management, homonyme beziehungsweise synonyme Datenelemente zu ermitteln und somit die Frage zu beantworten, ob die vorhandene Datenbasis den Bedarf des neuen Systems decken kann. CASE-Werkzeuge werden somit zum zentralen Instrument des Daten-Managements. Die Möglichkeiten der Umsetzung des konzeptionellen Datenmodells in die physische Datenbasis sind allerdings oftmals noch nicht befriedigend gelöst.

Ein Nutzen läßt sich aus der modernen CASE-Technologie schon heute ziehen, obwohl die Durchgängigkeit des Werkzeugeinsatzes nur selten gewährleistet ist. Wer allerdings CASE als Technologie zur Automatisierung des Software-Engineering-Prozesses versteht, wird seine

Erwartungen nicht erfüllt sehen.