Modulbeschreibung ◦ Überblick ◦ ?

Eine Möglichkeit, das Ergebnis der Modularisierungs- und Algorithmisierungsphasen explizit in das Endprodukt aufzunehmen, ist ihre Integration in den Modulkopf. Ein Modulkopf (module header) ist ein Kommentar, der den Zweck des Codemoduls dokumentiert. Der Modulkopf sollte keine Implementierungsdetails beschreiben, weil sich diese kurzfristig ändern können und die Kommentarverwaltung unnötig erschweren. Heben Sie sich die Beschreibung von Details für die Implementationsphase auf.

Nach der Beschreibung des Zwecks skizziert der Modulverantwortliche den Ablauf in einer verbalen oder grafischen Entwurfssprache. Ein Header für das Histogramm-Modul der Beispielanwendung Bibliotheksverwaltung könnte zum Beispiel wie folgt aussehen:

>     MODUL      Monatliche Ausleihestatistik 13111
>     ZWECK      Histogramm der Ausleihehäufigkeiten in BWL, VWL, Recht, Soziologie/Psychologie
>                und Uebrige am Bildschirm ausgeben
>     EINGABE    Ausleihehäufigkeiten BWL, VWL, Recht, Psychologie, Uebrige, Ausleihemonat
>     AUSGABE    Histogramm
>     AUTOR      mlu
>     GEÄNDERT   10.1.2002

>     Ausleihehäufigkeiten und -monat einlesen
>       Programmtitel ausgeben
>         Für jede Ausleihehäufigkeit:
>           Prompt "Ausleihehäufigkeit"
>           Ausleihehäufigkeit lesen
>           Ausleihehäufigkeit prüfen
>         Prompt "Ausleihemonat"
>         Monatszahl lesen
>         Monatszahl prüfen

>     Ausgabe des Histogramms vorbereiten
>       Maximale Häufigkeit ermitteln

>     Histogramm auf dem Bildschirm ausgeben
>       Ausgabetitel ausgeben
>       Spaltenbezeichner ausgeben
>       Für jede Ausgabehäufigkeit:
>         Zeilenbezeichner ausgeben
>         Balken ausgeben

Der Modulkopf enthält die folgenden Teile:

>     MODUL    		<Name> <ev. Klassifikationsnummer der Modulhierarchie>
>     ZWECK    		<Kurzbeschreibung des Modulinhalts>
>     EINGABE  		<Inhalte aus anderen Moduln>
>     AUSGABE  		<Ergebnisse für andere Moduln>
>     AUTOR			<Kurzbezeichnung>
>     GEÄNDERT 		<Datum der letzten Änderung>

>     <Entwurfscode>

Der obige Entwurfscode (Pseudocode) ist aus didaktischen Gründen detailliert. In der Praxis wird Pseudocode stärker vom späteren Programmcode abweichen; das heisst, der Entwurf wird in der Regel 5 bis 10 mal gröber als das Programm ausfallen. Algorithmisch anspruchsvolle Probleme werden dabei feiner entworfen als Routinetätigkeiten.

Beispiele entwurfssprachlicher Beschreibungen von TESTS-Code finden Sie in den folgenden Hilfethemen:

Satzverarbeitung in einer Schleife

Gültigkeitsprüfung in Access

Zuordnungslösungen formatieren

Fallbeispiel Gewinnverteilung

Entscheidungsbaum