Progammskelette mit Delta definieren und sodann mit Cobol-Code auffüllen, Teil IV a:

Eine Methode ist nur so gut wie das Werkzeug

15.05.1981

Zu Beginn dieser Artikelreihe (I. und II. Teil) war der Werkzeugkasten "Delta" und seine Einbettung in den Software-Entwicklungsprozeß Gegenstand der Erörterungen. Einer der Themenpunkte war die Delta-eigene mächtige Makrosprache, mit der der Anwender eigene Generatoren entwickeln kann, die in der Lage sind, Programme oder Programmteile selbständig zu generieren. Von einem weiteren Generator soll im folgenden die Rede sein.

Der Autor hat mit seinen Methodenfachleuten einen Generator für Standardprogrammstrukturen

("SPS") aufgebaut, mit dem Bildschirmprogramme weitgehend aufgrund von Parameterdefinitionen generiert werden können. Das Wichtigste dabei ist: Der Programmierer kann allen Ballast der TP-Monitore vergessen, und der Programmieraufwand reduziert sich auf einen Bruchteil.

Für Batch-Programme gibt es bereits seit geraumer Zeit standardisierte Programmstrukturen, die ihren Niederschlag in der DIN-Norm 66220 ("Dateiverwaltung nach Satzgruppen" ) fanden. Hierfür sind auch entsprechende Generatoren schon lange verfügbar.

Normierte Programmierung für Bildschirmprogramme

Alle diese Generatoren haben den Vorteil, daß dem Programmierer die Arbeit abgenommen wird, die Ablaufsteuerung für jedes Batch-Programm neu zu erarbeiten und die entsprechenden Befehle immer wieder neu zu schreiben und auszutesten.

Für Bildschirmprogramme gibt es hier jedoch noch "weiße Flecken" auf der EDV-Landkarte: Zwar gibt es eine Fülle von Maskengeneratoren, die dem Programmierer das mühsame Definieren der Bildschirm-Ein- und -Ausgabebereiche erleichtern, es ist jedoch noch nicht der Versuch unternommen worden, die Ablaufstruktur und den Datenfluß innerhalb eines Bildschirmprogrammes zu standardisieren - also die Ablauflogik so zu formulieren, daß diese für alle denkbaren Bildschirmprogramme anwendbar ist.

Dieser Artikel beschreibt eine Standard-Programmstruktur, eine Normierungsmethode für Bildschirm-Dialogprogramme, die unter TP-Monitoren laufen. Wie bei der Normierten Programmierung auch, kann eine Methode nur dann zum Erfolg führen, wenn sie durch ein Werkzeug unterstützt wird, genauer gesagt: wenn sie durch ein Werkzeug implizit vorgegeben ist.

Im Jahreszeiten-Verlag, Hamburg, sind Makros entwickelt worden, die ein Bausteinnamen-Skelett sowie den Code für die Ablaufsteuerung und zum größten Teil auch für die interne Datenverwaltung und gleichfalls die TP-Monitor-abhängigen Befehle in einem Bildschirmprogramm automatisch generieren. Darüber hinaus stehen Makros für die Maskenbildbeschreibung zur Verfügung, die gemeinsam mit dem Ablaufgenerator einen Großteil der "Massen"-Schreib- und -Denkarbeit (in bezug auf die Ablaufsteuerung) erledigen. Dem Organisationsprogrammierer verbleibt jedoch immer noch der (sicherlich interessantere) Teil der Aufgabe, das organisatorische Konzept mit den Fachabteilungen festzulegen und die internen logischen "Datenverarbeitungsteile" zu schreiben.

Im Gegensatz zu den meisten Assemblern bieten die gängigen Cobol-Compiler nicht die Möglichkeit, Makros zu formulieren, die während der Kompilierung selbständig Code generieren können. Als Instrument für die Formulierung von Makros und deren Auflösung vor der Cobol-Kompilierung wird im Jahreszeiten-Verlag Delta benutzt.

Auf ein wesentliches Konzept des Delta-Systems muß hier besonders hingewiesen werden, weil es die umfassende Generierung von Ablaufsteuerungsbefehlen ermöglicht: das Konzept der Definition (Generierung) von "Programmskeletten" einerseits, die Generierung von Code in die entsprechenden Stellen dieses Skeletts andererseits.

Kompakte Makros

So können beispielsweise mit einem "Haupt-" Makro Parameter zur Ablaufsteuerung angegeben werden; dieses Makro generiert ein "Ablaufskelett"- dieses Skelett ist ein Gerüst von Namen (verbunden durch generierten Steuerungscode), die zunächst noch leere Bausteine ("Locationen") bezeichnen, denen später (auch durch andere Makros oder durch den Programmierer selbst) Cobol-Code zugewiesen wird.

Dieses Konzept schaffte erst die Voraussetzung, an die Realisierung des vorliegenden Makro-Systems zu gehen. Es sei noch darauf hingewiesen, daß dieses System auf einer Univac 90/80 unter dem Betriebssystem VS/9 und dem TP-Monitor IMS/VS9 läuft. Für die Beschreibung des Datenflusses innerhalb eines Bildschirmprogammes sind die Begriffe dieses TP-Monitors verwendet würden. In anderen Betriebssystemen gibt es jedoch analoge Datenbereiche, so daß hier der Leser lediglich Namen austauschen muß.

Die im Hause Jahreszeiten-Verlag verfügbaren Makros generieren zwar Code, die mit dem obengenannten TP-Monitor IMS kommunizieren, die Makros selbst sind jedoch wegen der sehr mächtigen Makro-Sprache des Delta-Generators (Entscheidungstabellen-Befehle, Do-Schleifen-Befehle) sehr kompakt geschrieben und sind deshalb (im Verhältnis zum Aufwand für die konzeptionelle Arbeit) der geringere Teil eines solchen Systems. Sie können deshalb relativ schnell auf andere TP-Monitore umgeschrieben werden.

Delta wird in der Bundesrepublik von der GMO, Hamburg, vertrieben.

Klaus D. Ahrens ist Org./DV-Bereichsleiter im Jahreszeiten-Verlag, Hamburg.

Wird fortgesetzt