Anwenderforderung nach fertigen Systemen bleibt weiterhin Illusion:

SE-Modelle durchlaufen iterative Prozesse

11.04.1986

An Verfahren und Werkzeugen des Software-Engineering werden häufig zu hohe oder gar falsche Erwartungen geknüpft. Peter Friedrich* zeigt am Beispiel des Salzgitter-Modells, was eine SW-Produktionsumgebung grundsätzlich leisten sollte.

Grundsätzlich ist die Vielfalt des Marktes, die aus der historischen Entwicklung der Softwaretechnologie resultiert, als positiv zu werten. Ende der 60er Jahre entstand die Softwaretechnologie als Teilgebiet der Informationsverarbeitung.

Es bedurfte zunächst einer Konsolidierung des Konzeptes der ingenieurmäßigen Softwareproduktion, bis dann ab Mitte der 70er Jahre erste Ergebnisse auf breiter Basis verfügbar waren.

Hierzu gehören zum Beispiel HIPO, Jackson-Methode und die Entscheidungstabellentechnik. Schwerpunktmäßig wurden dabei Entwurfs- und Implementierungstätigkeiten unterstützt; im Bereich der Anforderungsspezifikation gab es, mit wenigen Ausnahmen, kaum praktikable Konzepte.

Das Bewußtsein und die daraus resultierenden Forderungen, den gesamten Software-Produktionsprozeß von der Planung bis hin zur Inbetriebnahme und späteren Nutzung unterstützen zu können, hat sich gegen Ende der 70er Jahre gefestigt.

Die Realisierung homogener Software-Produktionsumgebungen, die den berechtigt hohen Ansprüchen der Software-Entwickler und -Anwender genügen, erfordert einen hohen kreativen und maschinellen Ressourceneinsatz. Den Software-Entwicklern und -Anwendern stehen heute Produkte zur Verfügung, mit denen die Informationsverarbeitung nach neuen Erkenntnissen gestaltet werden kann.

Die Forderung mancher Anwender nach einem fertigen System, das alle ihre Anforderungen vollständig unterstützt, wird jedoch noch lange Illusion bleiben. Denn die Entwicklung eines homogenen Engineering-Modells durchläuft einen iterativen Prozeß, der geprägt ist von neuen Erkenntnissen in der täglichen Projektarbeit und geänderten Technologien. Es bedarf immer einiger Pioniere, die bereit sind, die Fahne voranzutragen und ihre Erfahrungen im Umgang mit dem System in das Labor des Herstellers zurückfließen zu lassen. Sie nutzen den Vorteil, das Produkt mitzugestalten, und sie übernehmen in ihrem Hause die Mission, andere mit den Methoden und Werkzeugen vertraut zu machen.

Für den Hersteller gilt eine duale Sicht; er weiß, daß eine Software-Produktionsumgebung nur als strategisches Produkt Marktchancen besitzt, und er muß ein Konzept anbieten, das die berechtigten Detailanforderungen der Anwender flexibel integriert.

So ist zum Beispiel das Salzgitter-Modell (SM) in über 180 Mannjahren Projektarbeit bis zu Release 3 gereift, und es gibt genügend Anregungen, die eine Weiterentwicklung rechtfertigen. Im folgenden soll gezeigt werden, was eine Software-Produktionsumgebung grundsätzlich zu leisten hat und welche dieser Anforderungen mit dem Salzgitter-Modell/ Release 3 umgesetzt sind.

Das Salzgitter-Modell wurde von der Zentralen Datenverarbeitung der Stahlwerke Peine-Salzgitter und unter Mitwirkung des Instituts für Informatik der TU Braunschweig entwickelt. Die konzeptionelle Vorarbeit begann 1979. In einem Stufenplan von 1980 bis 1985 wurden marktfähige Versionen für VM/SP-CMS, MVS/SP-TSO und BS2000 realisiert und freigegeben.

Das Modell besteht aus zwei Komponenten. Das Software-Engineering-Management orientiert sich an den Methoden "Structured Analysis", "Structured Design" und "Structured Programming", die geeignet kombiniert und anhand eines Phasenkonzeptes für Planung, Entwurf und Implementierung praxisnah ausgelegt wurden.

Das Software-Engineering-System besteht aus Werkzeugen für Software-Planung, -Entwurf und -Implementierung sowie aus einer relationalen Datenbank, der Software-Engineering-Bibliothek.

Der Methodeneinsatz wird mittels eines speziell entwickelten hierarchisch strukturierten Pseudocodes gesteuert. Bei der Beschreibung des Methodeneinsatzes (Handbuch) wird die Methode auf sich selbst angewendet.

Im Gegensatz zu einer heterogenen Software-Produktionsumgebung, die verschiedene Techniken und Werkzeuge für verschiedene Entwicklungsaufgaben vereinigt, orientiert sich eine homogene SPU im wesentlichen an einer Technik, mit der die zum Einsatz kommenden Methoden aufeinander abgestimmt und strukturiert angeboten werden.

SM steuert den gesamten Produktionsprozeß mit einem Pseudocode, der sowohl im Umgang mit den Methoden als auch in der Kommunikation mit den Werkzeugen zur Anwendung kommt.

Ein hohes Ziel des Software-Engineerings besteht darin, den Anwender in den Planungsprozeß (Anforderungsspezifikation) einzubeziehen. Um dies sicherzustellen und dabei eine hohe Akzeptanz zu erreichen, muß auf unnötige Formalismen verzichtet werden.

SM unterstützt dieses Prinzip durch verschiedene aufeinander aufgebaute Pseudocode-Schichten, die beginnend mit der einfachsten Technik zur Kommunikation mit dem Anwender bis hin zum formalen Code in der Phase Programmierung anwachsen.

*Peter Friedrich ist Leiter der Abteilung Systemtechnik, Zentrale Datenverarbeitung der Stahlwerke Peine-Salzgitter AG, Salzgitter.