|
|
Inhaltsverzeichnis Dokumentation für den Endanwender |
|
||
|
3. Here is an outline of the entire Pascal program:
4. The Global variables M and N have already been mentioned; we had better declared them. Other global variables will be declared later. define M_max=5000 {max. value of M} [Global variables 4] See also Sections 7, 9, and 13.
|
|||
|
Leider hat sich Literate Programming nicht durchsetzen können. Doch was sind die Nachteile? Dieses System funktioniert dann hervorragend, wenn während der Entwicklung schon sofort dokumentiert wird. Dies ist jedoch erst dann möglich, wenn die genaue Spezifikation vorliegt, bzw. keine Veränderungen mehr vorzusehen sind. In der Realität steht die Struktur eines Systems in der Regel nicht von Anfang an fest. Vielmehr gibt es mehrere Versuche und Veränderungen. Dieses Szenario kennzeichnet viele Softwareprojekte. Oft muß auf neue und veränderte Kundenanforderungen eingegangen werden. Die Dokumentation muß flexibel werden. Dazu ist wiederum Hypertext ein geeignetes Mittel. 2.2 Werkzeuge zur System-DokumentationUm die System-Dokumentation zu unterstützen und zu motivieren sind verschiedene Werkzeuge auf dem Markt verfügbar. Ich möchte hier nur kurz auf einige wenige eingehen. 2.2.1 Rational Rose & SoDAEin Werkzeug, welches leider nur recht schlechte Unterstützung für die Dokumentation bietet, ist Rational Rose von Rational Corporation. Es erlaubt leider nur kleine Notizen, die bei der Analyse und dem Design von Softwaresystemen an diverse Diagramme wie Use-Case oder Klassendiagrammen eingetragen werden können. Ich gehe deshalb auf Rational Rose ein, weil es einerseits die Anwendung von Entwurfsmustern (hoffentlich bald) untersützen wird, andererseits weil die unter Rational Rose modellierten Use-Case und Klassendiagramme mittels des Dokumentationswerkzeuges "SoDA" aus dem Hause Rational in ein automatisch generiertes und konfigurierbares WORD-Dokument umgesetzt werden können. Dazu werden die Notizen, die bei der Modellierung beispielsweise einer Klasse gemacht wurden, in die Dokumentation dieser Klasse in dem WORD-Dokument übernommen. Bei Rational Rose handelt es sich um ein Werkzeug zur "Visualisierung" von Analyse- und Design Entscheidungen. Die Use-Case Diagramme helfen dabei, ein Softwaresystem in einer bestimmten einheitlichen Notationsform, heute meistens die UML (Unified Modeling Language), zu modellieren. Ein weiteres Feature von Rational Rose ist die Unterstützung des Roundtrip-Engineerings. Dies macht es möglich sowohl Veränderungen in einem Diagramm direkt in eine Zielsprache zu übertragen, als auch (rückwärts) Veränderungen im Sourcecode in die Diagramme übertragen zu lassen. SoDA hingegen, ist ein Add-On für Microsoft Word, welches aus den Dateien, die mit Rational Rose erstellt wurden, entsprechende Dokumentationen unter Microsoft Word automatisch generieren kann. Die unten stehenden Screenshots zeigen ein Use-Case Diagramm von Rational Rose(links), ein Klassendiagramm in UML-Notation von Rational Rose (mitte), sowie ein automatisch generiertes WORD-Dokument unter SoDA (rechts). Wie man in dem Screenshot von SoDA sehen kann, werden die Dokumentationen sämtlicher Attribute einer Klasse automatisch angelegt. Allerdings ist auf dieser Ebene ein Roundtrip-Engineering nicht möglich. Änderungen unter SoDA werden also nicht in die Dokumentation in den Diagrammen übernommen. 2.2.2 Automatisch generierte HTML-Dokumentation mit JavadocIm Java Development Kit von Sun
Microsystems sind außer dem Java Compiler Es können jedoch lediglich die
mit public gekennzeichneten Klassen auf diese Weise dokumentiert
werden. Die von 2.2.3 Entwicklungsbegleitende Dokumentation mit dem Inprise JBuilderMit dem Inprise JBuilder ist eine Entwicklungsumgebung entwickelt worden, die eine System-Dokumentation von Anfang an unterstützt. Obwohl es sich bei dem JBuilder mehr um ein Werkzeug zur Implementierung handelt, können auch frühe Entwurfsentscheidungen sofort dokumentiert werden. So wird beim Anlegen eines neuen Projektes automatisch ein HTML-Dokument angelegt, welches die noch zu erledigenden Aufgaben erfaßt. Siehe dazu Bild 1. Es kann zunächst eine Beschreibung der Softwarekomponente eingetragen werden. Die Dokumentation der einzelnen Klassen geschieht ähnlich wie bei Rational Rose in Notizform am linken unteren Bildschirmrand. Diese Notizen werden dann beim Compilieren in den Quelltext als Kommentare eingesetzt. Bild 2 zeigt dazu ein Beispiel. Diese Art der Dokumentation ist
natürlich nur sehr unvollständig. Sie beschreibt
lediglich den Zweck einer Softwarekomponente und hilft bei der
Planung ihrer Erstellung. Die beschreibende HTML-Seite wird zwar
automatisch generiert, der Anwender wird allerdings nicht explizit
aufgefordert, diese auch zu editieren. Oft wird dies auch einfach
"vergessen". Es dient eher einer kurzfristigen
Projektplanung, damit nichts vergessen wird. 2.3 Warum ist dies wichtig?
In den Kapiteln 1 und 2 wurden bereits 2 wichtige Teilgebiete der Softwaredokumentation behandelt. Wünschenswert wäre allerdings eine durchgängige Dokumentation, wenn möglich auf einer höheren Ebene, die von der Analyse und Design-Phase, über die Implementierung bis hin zur Anwendung(Tutorien siehe Kapitel 1) und Wartung eine durchgängige, also lückenlose, und somit vollständige Dokumentation. Damit wird der Entwicklungsprozeß eines Softwaresystemes auch für andere nachvollziehbar und reproduzierbar. Angesichts der Zertifizierung der
DIN-ISO 9001 zur Qualitätssicherung ist solch eine
Dokumentation zwingend erforderlich. Gerade in Bereichen wie
bespielsweise der Raumfahrttechnik oder im Straßen- und
Luftverkehr ist es mitunter lebenswichtig, daß die
eingesetzten Softwaresysteme einwandfrei ihren Dienst verrichten.
Ansonsten könnten Menschenleben gefärhdet sein, oder
große finanzielle Verluste, zum Beispiel durch den Ausfall
eines Satelliten, wie erst kürzlich geschehen, entstehen.
Ein Hilfsmittel zur Qualitätssicherung bietet hier die Projektdokumentation, die nahezu alle Elemente verbindet und eine übergeordnete Dokumentation des Softwaresystemes darstellt. Dieses wird nun in Kapitel 3 - Projektdokumentation behandelt. |
|||
Letzte Änderung von René Eßer am 22.06.98 [Informationen]