Problem

Ohne eine strukturierendes und skalierbares Modell, in das sich alle Dokumente einordnen lassen, ist die spätere Orientierung des Lesers und auch eine werkzeuggestützte Recherche nur eingeschränkt möglich.

Kontext

Menschen benötigen vertraute Strukturen, um sich in ihrer Umwelt zurechtzufinden. Was die Entwicklung von Software angeht, so bestehen diese vertrauten Strukturen in den statischen Aspekten eines Software-Systems: Funktion und Modul oder Operation und Klasse. Mit den Entwurfsmustern ist ein weiteres Strukturierungskonzept entstanden. Es scheint geeignet, diese statischen Aspekte auch zur übergeordneten Strukturierung der Entwurfs-Dokumentation zu verwenden. Neben der Bereitstellung einer lokalen Strukturierung auf Dokumentenebene (siehe Hemmschwelle: White Paper Barrier) zur Dokumentation der einzelnen Komponenten* (Musterausprägungen, Klassen, Operationen, Attribute) ist also auch eine übergeordnete Struktur nötig, in die die verschiedenen Dokumenttypen eingeordnet werden können.

Bild 3: Abstraktionsebenen der Dokumentation

Ein wichtiges Mittel des Menschen zur Komplexitätsbewältigung ist die Bildung von Abstraktionshierarchien. Die statischen Konzepte Attribut, Operation, Klasse und Entwurfsmuster bilden von ihrer Zuordnung her (Entwurfsmuster definieren Klassenstrukturen, Klassen enthalten Operationen und Attribute) eine Hierarchie. Wird diese Hierarchie auf die Anordnung der Dokumente übertragen, spiegelt sich die Software-Struktur in der sie beschreibenden Dokumentation wider und der Entwickler findet die ihm vertrauten Konzepte so auch in der Dokumentation wieder [Ziv, 1994; Odenthal, 1995].

Kräfte

Lösung

Wir werden analog der in Bild 3 dargestellten Abstraktionshierarchie ein Dokumentenmodell entwickeln. Ein erster Prototyp ist in [Blachnik, 1997] beschrieben und ausschnittsweise in Bild 4 wiedergegeben. Der Prototyp ist mit dem Software-Werkzeug SchemaText [Schema, 1997] realisiert. Die Knoten* des Modellgraphs sind getypt und werden zu entsprechen Hypertext-Fragmenten der Dokumentation ausgeprägt. Die Kanten* sind ebenfalls getypt und entsprechen Links* zwischen den Dokumentfragmenten, die von dem Werkzeug automatisch generiert werden. Ein Beispiel der von SchemaText erzeugten Dokumentation auf Basis dieses Modells ist in Bild 5 in Navigation: Lost in Hyperspace dargestellt.

Bild 4: Realisierung des Dokumentationsmodells [Blachnik, 1997]

Die automatische Erzeugung von Links zwischen den Dokumentfragmenten wird außer durch die im Modell definierten Links auch durch eine auf der Basis von Übersetzungstabellen realisierte Verzeigerung [Blachnik, 1997] gesteuert. Dabei geht es vor allem um die Anbindung vorhandener Dokumente aus den unteren Ebenen (Klassen- und Quellcode-Ebene) und die Referenzierung von Begriffsdefinitionen im Glossar (siehe Namensraum).

Referenzen

Navigation: Lost in Hyperspace, Namensraum