Stichwort "Integrierte Projektunterstützungs-Umgebung" (Teil 3):

Grafikunterstützung kontra Komplexität

22.07.1988

Wolfgang Grandel ist Vertriebsleiter, Gerhard Friederich Marketing-Leiter Europa - beide im Produktbereich Maestro der Softlab GmbH, München.

Je komplexer ein Projekt, desto unzureichender die konventionellen Methoden. Eine gute Benutzeroberfläche sowie grafische Werkzeuge leisten den Entwicklungs-Teams hingegen auch bei der Bewältigung vielschichtiger Aufgaben Unterstützung.

Bilder bestimmen seit je her unser Leben; das läßt sich bis zu den Urvölkern zurückverfolgen. Mit Bilderbüchern beginnt die lernende Kindheit, und das Unterhaltungs- und Informationsmedium Nummer 1, das Fernsehen, ist eigentlich auch nichts anderes als ein sprechendes Bilderbuch.

Warum gab es dann aber in der Software-Entwicklung solange nur Texte beziehungsweise einfache Handzeichungen? - Die Hardwaretechnologie macht es erst seit wenigen Jahren möglich, Computergrafik wirkungsvoll einzusetzen. 1984 /85 tauchten auf dem Markt die ersten "Diagramming Tools" auf, einfache PC-Programme, die dem Entwickler die Mühe des Zeichnens von Block- oder Datenfluß-Diagrammen abnahmen.

Heute sind rund 40 Entwicklungs-Tools für Einzelarbeitsplätze auf dem Markt, von denen kaum eines den Anforderungen einer Integrierten Projektunterstützungs-Umgebung (IPSE) gerecht wird. Bis 1991, so behaupten Insider, wird in mehr als einem Drittel aller Entwicklungsumgebungen die Grafik-Workstation als Front-End-Gerät ihren festen Platz eingenommen haben.

Eine besondere Bedeutung kommt den Grafik-Tools in der Analyse- und Entwurfsphase neuer Programme zu. Es beginnt bereits bei den Vorgehensmodellen (Lifecycle), die mit grafischen Darstellungsformen überschaubarer und leichter handhabbar werden.

Je komplexen sich ein Projekt darstellt, umso weniger ist es mit herkömmlichen Methoden lösbar. Dabei soll gerade diese Phase in der Software-Entwicklung den Grundstein für eine optimale Lösung legen. Es bedarf keiner besonderen Vorstellungskraft, zu erkennen, daß bei einer manuellen Analyse nicht alle Möglichkeiten der Entwicklungsarbeit ausgeschöpft werden. Hier kann jedes Hilfsmittel nur recht sein.

Ziel ist intelligente Grafik-Workstation

Bei den bisher entwickelten Grafik-Tools handelt es sich im großen und ganzen um Einzelplatz-Lösungen. Damit ist zwar der Einstieg in eine Integration der Software-Entwicklung getan; das Entscheidende aber, die Einbindung aller notwendigen Dokumente in einen Entwicklungs-Arbeitsplatz, fehlt noch. Das Ziel muß die intelligente Grafik-Workstation (IWS) sein. Ein System mit einer optimalen Benutzeroberfläche (einschließlich Fenstertechnik), mit Maus-Bedienung, Zoom und direkter Anbindung an eine Projektdatenbank. Es könnte dabei helfen, das Dilemma in der Software-Entwicklung zu überwinden.

Ansätze dafür sind schon vorhanden. Es gibt heute bereits grafische Workstations, auf denen Symbole zur Definition von Prozessen, Datenflüssen und Beziehungen dargestellt werden können. Damit lassen sich komplexe Probleme und Abläufe einfacher darstellen. Über eine Kommunikationsschnittstelle kann man diese Rechner auch an eine gemeinsame Datenbasis anbinden.

User-Schnittstellen sind Multitasking-fähig

Die angebotenen Benutzeroberflächen verfügen bereits über Tastatur und Maus-Editing, haben kontextbezogene Help-Funktionen und bieten ihre Leistungen über Menüs an. Darüber hinaus sind diese User-Schnittstellen auch multitaskingfähig, und sie verfügen sowohl über ein Fenstersystem für Daten und Prozeduren als auch über ein Regie-System.

In einer lokalen Datenbank lassen sich Objektklassen, Attribute und Relationen ebenso ablegen wie Eigenschaften von Objekten und Beziehungen zwischen verschiedenen Objekten und deren Attributen. Symbol-Editoren, Compiler für Prozeduren und Regelsprachen gehören ebenfalls zur Grundausstattung, genauso wie Compiler für Menüs und Masken. Gängige grafische Design-Methoden wie Structured Analysis (SA), Structured Analysis und Design Technique (SADT) und Jackson-Charts, sollten sich anwenden lassen.

Die Regelsprachen dienen zur Beschreibung von Syntax-Regeln. Danach lassen sich aus beliebigen Fließtexten jene Informationen ableiten, die ein Problem quantitativ beschreiben. Als Beispiele dafür mögen hier nur das Übersetzen von Herstellervarianten verschiedener Standardsprachen wie Cobol, PL/1 oder Fortran sowie das Generieren von formalen Data-Dictionary-Inputs aus formlosen Spezifikationen erwähnt werden. Für die Renovierung von Programmen sind Restrukturierungsprogramme und Möglichkeiten zur Nachdokumentation vorgesehen. Die Analyse von Fluß- und Feldbeziehungen sowie von Befehlen und Parametern komplettieren die Regelsprachen.

Den Kern einer grafischen Workstation bilden natürlich die Editoren und die Bedienung mit der Maus. Gerade die Cursorbewegungen mit der Maus ermöglichen das "Zeichnen" auf dem Bildschirm. Durch Einfügen, Löschen, Versetzen von Zeichen und Linien, durch Markieren von Zeilen, Dateiaufblättern an markierten Stellen und vieles andere mehr wird die Arbeit des Entwicklers erleichtert und zusätzlich Kreativität freigesetzt.

Ein intelligenter, grafischer Design-Editor sollte für alle verfügbaren Design-Methoden einsetzbar sein, wobei schon die Menüführung von der jeweils gewählten Design-Methode abhändig sein könnte. Die Fenstertechnologie gestattet das grafische Arbeiten in mehreren Fenstern gleichzeitig, was einem objektorientierten Grafik-Design sehr entgegenkommt.

Ein solcher Editor sollte auch über diverse Möglichkeiten der Linienführung verfügen. Die Objekte müssen sich mit geraden oder gekrümmten Linien verbinden lassen. Ganze Linienzüge können verschoben, gelöscht oder mit Richtungspfeilen versehen werden, die beispielsweise den Datenfluß anzeigen sollen. Übergänge zu anderen Diagrammen müssen definierbar sein (Interdiagrammfluß).

Gültigkeitsprüfungen ersparen unnötige Arbeit

Das, was für die Linien gilt, trifft auch für die Objekte zu. Kopieren, Einfügen, Auslagern, Löschen oder Verschieben sind notwendige Funktionen; die Möglichkeit, zu

beschriften und über Masken Objekt-Attribute zu bearbeiten, ist eine Hilfe, die der Entwickler zu schätzen weiß. Als besonders nützlich haben sich Gültigkeitsprüfungen herausgestellt; sie ersparen Zeit, indem sie unnötiges Arbeiten in die falsche Richtung vermeiden helfen.

Alle wichtigen vordefinierten Grafiksymbole sind in einer lokalen Datenbank der Workstation abgelegt. Dem Benutzer steht es jedoch frei, zusätzliche eigene Symbole in diese Datenbank einzufügen. Das Leistungsspektrum wird abgerundet durch die Kommunikationsfunktionen innerhalb des Software-Entwicklungssystems. Die Simulation eines "normalen" Entwicklungs-Arbeitsplatzes gehört ebenso dazu wie FileTransfer und Host-Kommunikation mit dem Zielrechner. Ein Text-Editor für Beschreibungen und

Beschriftungen vervollständigt das Grafiksystem.

Die mit einer grafischen Workstation bearbeitbaren Diagrammtypen können sowohl daten- als auch flußorientiert sein. Das System muß alle im Einsatz befindlichen Typen unterstützen, so zum Beispiel Entity-Relationship-Diagramme und Entity-Life-History.

Betrachtet man nun die Einbindung der grafischen Workstation in das gesamte Entwicklungsumfeld, so sind an die Integrationsfähigkeiten folgende unabdingbare Forderungen zu stellen:

- Austausch der Ergebnisse mit der zum Entwicklungssystem gehörenden Projektbibliothek,

- logische Vermengung mit dem Objekt-Management-System der Entwicklungsumgebung

- Echtzeit-Datenbankbenutzung (Real-Time-Team), die es allen im Team tätigen Entwicklern möglich macht, auf die Leistungen der Kollegen sofort und unmittelbar zuzugreifen.

Alle Komponenten, wie Datenbank, Text- und Grafik-Editor, sollen dabei vollständig im Team integriert sein.

Der Einfluß dieser Entwicklung auf die Kreativität des Teams ist leicht nachweisbar. Nur die Entflechtung komplexen Zusammenhänge, wie sie in großen Organisationen gang und gäbe sind, sowie ihre klare, grafische und übersichtliche Darstellung führen zu optimalen Lösungen. Die Vielfältigkeit der aus der Analyse gewonnenen Informationen verlangt es, die Zusammenhänge in einer Form festzuhalten, in der sie überhaupt erst sinnvoll weiterverarbeitbar sind. Eine verbale Darstellung dieser Zusammenhänge ist fast ausgeschlossen, wenn gute Entwicklungsergebnisse erwartet werden.

Bisher war die Akzeptanz der Bildverarbeitung nicht sehr hoch, obwohl die Methoden sehr wohl akzeptiert wurden. Es darf aber angenommen werden, daß sich das mit zunehmender Benutzerfreundlichkeit der eingesetzten Tools ändern wird. Der Trend scheint eindeutig in die Richtung zu gehen, daß die Analyse künftig ebenso im Team erfolgt wie heute die Produktion.

Betrachtet man die Zahl der Datenfluß-Diagramme, die heute bereits bei Großprojekten erstellt werden müssen, so erkennt man, wie nötig in diesem Bereich eine Rationalisierung ist. Hinzu kommt, daß die Kontrollmöglichkeiten des Auftraggebers, also der Fachabteilung, über die Leistung der Analyse verbessert werden.