Den Modul nicht willkürlich bilden

19.09.1980

DÜSSELDORF (je) - Einzig der datenstrukturierte Programmentwurf garantiert eine verbesserte Programmqualität. Diese Meinung vertritt Hermann Lange, Abteilungsleiter Systementwicklung, Verfahren und Methoden bei der rhv Softwaretechnik GmbH, Düsseldorf.

Systementwickler Lange reagiert damit auf die beiden Beiträge "Wie ich lernte, Struktogramme zu lieben", erschienen in CW-Nr. 30 vom 25. Juli, und "Die Krone gebührt dem modularen Programmieren" in CW-Nr. 34 vom 22. August. Langes Eingangsempfehlung lautet: Man sollte den Programmentwurf nicht vergessen!

Er fährt fort: Sowohl das Programmieren mit Struktogrammen als auch die modulare Programmierung bedeuten natürlich eine wesentliche Verbesserung gegenüber der Programmierung ohne solche Methoden. Auch liegt der Unterschied der beiden Methoden hauptsächlich in der Darstellungsform, wobei auch andere Darstellungsformen (etwa Baumdiagramme) denkbar sind. Das Struktogramm besitzt aber den Vorteil, daß es keine Sprünge "querbeet" zuläßt, die bei der modularen Programmierung immer noch möglich sind. Beide Methoden haben jedoch den Nachteil, daß die Definition dessen, was ein "Modul" oder ein "Strukturblock" ist, vom einzelnen Programmierer völlig willkürlich und in der Regel "nach Gefühl" vorgenommen wird.

Die Angaben darüber gehen weit auseinander. Ein guter Programmierer wird gute Lösungen finden, bei einem schlechten Programmierer wird eine unübersichtliche Lösung entstehen. Auch ist der Weg von der Aufgabenstellung zum Struktogramm oder zur Modulaufteilung nicht vorgezeichnet. Die Logik wird vielmehr völlig "frei" und damit willkürlich entworfen. Das Ergebnis ist nicht vorhersagbar. Daraus folgert Lange: Eine wesentliche Verbesserung bringt hier der datenstrukturierte Programmentwurf, wie er von Jackson oder Warnier vorgeschlagen wird. Hier geht man aus von einem durch Datenstrukturen beschriebenen Modell der Aufgabenstellung, das schon in der Aufgabendefinitionsphase in Zusammenarbeit mit dem Auftraggeber erarbeitet werden kann. Daraus wird dann die Programmstruktur abgeleitet wobei wenn erforderlich, eine Modulbildung vorgenommen wird.

Es soll nicht verschwiegen werden, daß diese Methode auf erheblichen Widerstand stößt, der wohl hauptsächlich psychologisch bedingt ist: Der Programmierer muß erst denken und dann programmieren. Das aber ist für jemanden, der bisher "intuitiv" gearbeitet hat, eine echte Zumutung. Könnte es aber nicht sein, daß gerade darin die Stärke der Methode liegt?