Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

12.12.1980

Editierter Pseudocode und Bausteinkonzept in "Struktogrammen ohne Kästchen drum rum":Programmgenerator fördert Methoden-Akzeptanz

SCHWERZENBACH (je) - Akzeptanzerfolge selbst bei methodenscheuen Anwendern erzielt die Sodecon AG, Schwerzenbach (Schweiz), nach eigenen Angaben, indem sie mit Hilfe ihres Programmgenerators "Delta" eine Programmablaufsteuerung im Pseudosode definiert. Damit erreichen die Schweizer eine strikte Trennung von Programmdesign und Anwendungsprogrammierung.

Sodecon-Chef Dr. Reinhold Thurner nimmt ausdrücklich Bezug auf den Beitrag von Ulrich-Christian Desbarats (CW Nr. 45, Seite 8): "Desbarats hat nicht nur auf die Vorteile der Methode aufmerksam gemacht, sondern auch auf das Problem der Durchsetzung und Einhaltung gebührend hingewiesen. Wir konnten mit Hilfe von Delta die Akzeptanzschwelle auch bei nicht Methoden-Begeisterten erheblich heruntersetzen und damit einen breiteren Einsatz dieser Methoden bei unseren Anwendern erreichen."

Die Übersichtlichkeit des beispielsweise zusammen mit dem Desbarats-Artikel abgebildeten Struktogramms führt Thurner auf zwei Gründe zurück. Erstens sei die Darstellung halbgrafisch, der Ort, an dem eine Anweisung steht, also eng mit dem Ablauf verknüpft. Zweitens zeige das Struktogramm nur ein Programmskelett (Programmsteuerung, Datenversorgung - Maske senden, Maske empfangen -, und kurz beschriebene Verarbeitungsbausteine - so etwa Vorprogramme oder Buchen).

Mit dieser Strukturierung, erläutert Thurner, wird neben der Übersichtlichkeit der Darstellung eine hierarchische, funktionale Gliederung erreicht. So kann etwa der Baustein Buchen auf einer niedereren Detaillierungsstufe im Detail ausgeführt oder seinerseits weiter untergliedert werden. Der Pfeil 3 im besagten Struktogramm weist darauf hin, daß an diese Stelle noch das Buchen des Auftrages einzufügen ist: Dies entspricht de Idee der Zuweisung oder Allokation von Anweisungen zu einem Baustein innerhalb einer Programmsteuerung.

Die Problematik dieser Lösung, erinnert sich Thurner im Rückblick, wurde ebenfalls bereits in der COMPUTERWOCHE behandelt. Thurner: "Es ist sehr viel Disziplin erforderlich,

zunächst diese Dokumentation zu entwickeln und erst anschließend zu programmieren. Noch mehr Disziplin ist erforderlich, um bei Wartungsaufgaben in der gleichen Weise zuerst die Dokumentation nachzuführen und dann erst das Programm anzupassen."

Um Probleme einer vom Programmcode unabhängigen und redundanten Dokumentation zu vermeiden, hat Sodecon in Delta unter anderem eine Funktion für die Verarbeitung von Pseudocode implementiert. Die im Struktogramm gezeigte Ablaufsteuerung wird (mit freiem Format) im Pseudocode definiert, wobei die noch auszufüllenden Programsbausteine durch die Anweisung LOC gekennzeichnet sind. Der Generator druckt die abgebildete grafisch aufbereitete Liste und erzeugt aus diesen Anweisungen ein Cobol-Programm.

Mit Hilfe der Anweisung SL lassen sich auf der nächsten Detaillierungsstufe weitere Anweisungen und Bausteindefinitionen den auf der höchsten Stufe liegenden Bausteinen zuweisen. Der Anbieter merkt an, daß jedem Baustein beliebig oft beliebig viele Anweisungen zugeordnet werden können.

Das "Struktogramm ohne Kästchen drum rum" (Thurner) bildet im Ergebnis einen integrierenden Bestandteil des Programms, und die Dokumentation ist zwangsläufig auf Stand. Durch das Bausteinkonzept erreichen die Schweizer eine strikte Trennung der Programmsteuerung vom reinen Anwendungscode. Solche Programme, unterstreicht der Anbieter, sind leichter zu realisieren (Trennung zwischen Programmdesign und Anwendungsprogrammierung) und leichter zu warten (Programmdesign gibt Überblick über das Programm, damit man sich einarbeiten kann).

Wie Desbarats in seinem Beitrag richtig feststellt - so das abschließende Thurner-Statement, läßt sich ein solches Programm auch einfach und vollständig testen. Der Programmgenerator unterstützt diesen Test, indem er bei jedem Verzweigungspunkt (Schleife, Auswahl) den Aufruf einer Testhilfenroutine generiert.