Ein Silberstreif am Software-Horizont

23.09.1977

Auf dem Hamburger Anwendergespräch der Gesellschaft für Informatik zum Thema "Computergestützte Methoden zur Entwicklung kommerzieller Programmsysteme" im Juli dieses Jahres sprach der Initiator dieser Veranstaltung, Prof. Dr. Pressmar, mehrfach von einer derzeitigen Software-Krise. Denn nicht nur die Software-Entwicklungskosten stiegen unproportional an, auch der Anteil der Software-Wartungskosten erhöhe sich ständig: Oft wären es schon mehr als 50 Prozent der Gesamtkosten, die so zu Buche schlagen. Diese Kostenexplosion werde sich fortsetzen, wenn der Anwender nicht lerne, daß Software-Systeme dieser Größe mit herkömmlichen Techniken nicht mehr zu beherrschen sind. CW bat vier Teilnehmer dieses Anwendergesprächs dazu um ihre Prognosen. hö

Klaus-Dietrich Ahrens

Abteilungsleiter für Organisation und Programmierung, Jungheinrich, Unternehmensverwaltung KG, Hamburg

Im Hause Jungheinrich werden bereits diverse computerunterstützte Methoden zur Herstellung von Software eingesetzt (NPG in Verbindung mit Orgware): Generator für Berichts- und Auswertungssysteme = BAS, universelles Datei-Verwaltungssystem - alle Pakete von ADV/Orga. Im Rahmen des Symposiums stellte ich den BAS-Generator vor. Trotz Einsatz dieser Methoden ist die Möglichkeit nicht unterbunden, sogenannte "Spaghetti-Programme" zu produzieren. Auf der Suche nach dem "umfassenden" Generator-System, das Professor Pressmar in seinem Einführungsreferat modellartig beschrieb, sieht sich der Anwende einer Fülle von verschiedenen Generatoren gegenüber, die jeweils unterschiedliche Aufgaben erfüllen: Dokumentations-Generatoren für Strukturierte Programmierung, Ersatz der Cobol-Sprache durch mächtigere (oder weniger mächtigere) neue Programmiersprachen komfortablere ("RPG"-)List-Generator-Systeme, Entscheidungstabellen-Technik, Generator für normierte Programmierung, Systeme, die - überspitzt - Insellösungen darstellen.

Aus der Palette der vorgestellten Systeme fiel mir das Konzept der Firma mbp, vorgestellt von Herrn Dr. Strunz, besonders auf: Es entsprach (und entspricht) nahezu hundertprozentig den Anforderungen, die sich aufgrund unserer Erfahrungen mit Software-Generatoren in den letzten Jahren stellen:

- Einsatz der Strukturierten Programmierung im Sinne der Modularisierung des Programmes, und zwar bei allen Batch-Programmen unter der Ebene der Normierten Programmierung (nach unserer Auffassung schließen sich Normierte Programmierung und Strukturierte Programmierung nicht gegeneinander aus, sondern ergänzen sich ideal!).

- Verzicht auf spezielle, unseres Erachtens änderungs-unfreundliche Darstellungstechniken der Strukturierten Programmierung (zum Beispiel Nassi-Shneydermann-Diagramme). Statt dessen: Definition der Logik in den Programm-Modulen mit Hilfe von Entscheidungstabellen und Generierung durch einen ET-Generator (VORELLE).

- Keine Änderung der heute eingesetzten Methoden für das Projektmanagement (Orgware), sondern nahtlose Eingliederung der neuen Methoden in die bestehende Organisation.

Aus diesem ersten Kontakt mit dem Konzept der Firma mbp während des Symposiums wurden konkrete Maßnahmen: Noch in diesem Jahr wird mbp die oben beschriebene Form der Strukturierten Programmierung unter gleichzeitigem Einsatz des Entscheidungstabellen-Generators in unserem Hause schulen und implementieren.

Dr. Hubert Österle

Wissenschaftlicher Assistent am Lehrstuhl Betriebsinformatik der Universität Dortmund

Für die Entwicklung betrieblicher Anwendungsprogramme kündigen sich Technologien an, die den Programm-Entwicklungsprozeß wesentlich stärker verändern als bisher Verfahren wie die Strukturierte Programmierung, die Normierte Programmierung, die Entscheidungstabellen-Technik oder Berichtsgeneratoren. Die Strukturierte - im Sinne von GoTo - freier Programmierung hat Einsparungen bis zu 50 Prozent der Codierung, die nächste Generation des Software-Engineering erfaßt dagegen die gesamte Anwendungsentwicklung. Sehr große Anstrengungen werden im Bereich der Bedarfsanalyse - Requirements-Engineering - unternommen. Wenn auch in absehbarer Zeit keine formalen Verfahren zur Aufnahme von Benutzeranforderungen zu erwarten sind, so doch Techniken zur Systembeschreibung, die einerseits die Kommunikation zwischen Fach- und EDV-Abteilung verbessern und andererseits höhere Zuverlässigkeit erwarten lassen, die unter anderem durch formales Prüfen erreicht werden kann.

Ein anderer Bereich betrifft Hilfsmittel zur Makro-Strukturierung. Dazu zählen Techniken zum Festlegen von Programmen und ihren Systemen zum Entwurf der modularen Struktur und der globalen Datenstruktur von Programmen sowie das Datenbank-Design.

Eine weitere Gruppe von Verfahren wird sich auf das Testen von Programmen beziehen, auf das derzeit ein großer Teil der Entwicklungskosten entfällt. Begleitet werden Sie von Methoden von rechnerunterstützten Dokumentationen. Die Entwicklung trägt folgenden Erkenntnissen Rechnung:

1. Fehler, die in der Spezifikation der Programmvorgaben liegen, werden auch von den besten Methoden in der Codierung nicht beseitigt. Sie werden erst beim Programmtest festgestellt und führen dann zu einem höheren Änderungsaufwand.

2. Die Makrobetrachtung ist schwieriger als die Mikrobetrachtung. Die Festlegung von Programmen innerhalb eines Anwendungsbereiches und die Modularisierung eines Datenbank-Designs bereiten mehr Probleme als das Codieren eines einigermaßen exakten und kleinen Moduls. Die Dokumentation ist nur dann ausreichend detailliert und aktuell zu halten, wenn der Großteil der Dokumente maschinell erzeugt und gepflegt wird.

Klaus Rüdiger

Organisationsabteilung, Berliner Kraft und Licht AG

Wir wurden praktisch gezwungen, uns mit neuen Programmiertechniken anzufreunden und sie sogar einzusetzen, da unsere gesamte EDV Anfang der 70er Jahre umorganisiert wurde. Heute sind wir so weit, ein Konzept für die nächsten Jahre zu entwickeln und dabei speziell die Anwendungen zu berücksichtigen. Den Schritt zu den Software-Tools wie Struktogramme, Detab-Generator, modulare Programmierung haben wir nicht bereut und werden uns auch in Zukunft nicht scheuen, vertraute Methoden durch neue zu ersetzen. Allerdings sollte man hierbei nicht wahllos zugreifen, sondern gründlich planen, ob, was und wie konsequent man sie einsetzt.

Klaus Weyler

Leiter der Projektprogrammierung, H. F. und r. S F. Reemtsma, Hamburg

Bei dem Einsatz von neuen Methoden der Systemanalyse oder Programmiertechnik spielt vor allem das bekannte - nur zu menschliche - Beharrungsvermögen, das Festhalten von Bekanntem und h Beherrschtem eine große Rolle. Wir haben die Erfahrung gemacht, daß hier nur ein schrittweises Vorgehen durch Situationsanalysen und Motivierung einen Sog bei allen Mitarbeitern erzeugt, der eine Umsetzung auf neue Methoden, Systeme und Generatoren erleichtert.

Das Preis/Leistungsverhältnis von DV-Systemen hat sich zwar entscheidend verbessert, die Entwicklungskosten von Software aber steigen weiter an. Auf der einen Seite sind wir in den Unternehmen in das Stadium der immer größer werdenden Integration von EDV-Anwendungen eingetreten, auf der anderen Seite werden die Werkzuge der Vergangenheit noch immer zur Realisierung benutzt. Die Frage der Programmtechnik wurde ausgeweitet auf die Frage der Systementwicklung. Wenn wir in Zukunft den daraus resultierenden Anforderungen gerecht werden wollen, so müssen wir den Sehritt in die dritte Software-Generation tun. Je besser wir auf die Probleme eingestellt sind, desto leichter wird dieser Prozeß sein. Sollten wir diesen Sehritt nicht selber tun, wird ihn ein anderer für uns tun.

Gerade im letzten Jahr hat sich bestätigt, daß unser Schritt, zur Software-Entwicklung Generator-Systeme einzusetzen, richtig war. Wir konnten bisher echt meßbare Einsparungen verzeichnen - wir bekommen für weniger Kosten die gleiche oder gar mehr Leistung. Also werden wir in dieser Richtung weitergehen. Daß die Generator-Systeme noch verbessert werden müssen, steht außer Diskussion. Von einer Software-Krise aber kann man nicht mehr sprechen, zeichnet sich doch am dunklen Himmel ein heller Horizont ab.