Problem

Die Kommunikation zwischen den Projektbeteiligten ist nur auf Grundlage definierter Begriffe effektiv und effizient möglich.

Kontext

Die verbindliche Vereinbarung von Bezeichnungen für die identifizierten Bestandteile eines Problems sowie die semantisch eindeutige Übernahme bestehender Bezeichnungen aus einer Problemdomäne (Beispielsweise Banken- und Versicherungswesen) in das Modell ist eine wichtige Tätigkeit im Rahmen eines Software-Projekts. Sehr oft entstehen die größten Probleme durch Mißverständnisse zwischen den Projektbeteiligten. Bezeichnungen sind formal betrachtet ein Tupel aus Name und Begriffsdefinition. Betrachtet man die Evolution eines Begriffes, so entsteht dieser zu einem bestimmten Zeitpunkt der Entwicklung und erhält eine bestimmte Definition. Aufgrund eines vertieften Verständnisses des Zusammenhangs, der durch den Bezeichner referenziert wird, kann sich die Begriffsdefinition verändern (Redefinition oder Verfeinerung). Auch die Aufteilung einer Bezeichnung in Unterbezeichnungen ist in diesem Kontext denkbar. Wird aus einer Bezeichnung im Verlauf der Entwurfsphase ein Bezeichner für eine Entwurfskomponente (ein Muster, eine Klasse, Operation oder Attribut), dann entstehen durch die Einbindung in die entstehende Systemstruktur weitere Beziehungen: Vererbung, Aggregation, Kenntnis (siehe Bild 2).

Kräfte

Lösung

Ein wichtiger Bestandteil der Dokumentation wird das Begriffsglossar werden. Dieses Glossar stellt für den Anwender auch zugleich eine alternative Möglichkeit dar, die Dokumentation zu erschließen. Besonders geeignet erscheint das für den aus der Problemdomäne stammenden Anwender. Dieser findet hier am schnellsten die ihm vertrauten Begriffe der Domäne wieder und kann sich anhand der in Bild 2 wiedergegebenen Hypertext-Struktur des Glossars den abstrakteren Begriffen, die im Verlauf eines Software-Projekts entstanden sind, nähern.

Bild 2: Hypertext-Struktur des Begriffsglossars

Die Links und Knoten aus Bild 2 lassen sich in zwei Gruppen einteilen: Die Begriffsdefinitionsknoten und die Links vom Typ Redefinition/Verfeinerung, Aufteilung und Formalisierung (informelle Links) entstehen zum größten Teil in der Analysephase. Die Bezeichnerknoten und die zugehörigen Links (formale Links) entstehen in der Entwurfs- und der Implementierungsphase. Zwischen den Linkgattungen besteht der Unterschied, daß die informellen Links vom Benutzer manuell angelegt werden und die formalen Links automatisch analog der entsprechenden strukturellen Gegebenheiten des Entwurfs und der Implementierung. Die Knoten unterscheiden sich insoweit, als das die Begriffsdefinitionsknoten im Glossar ausführlich definiert werden sollten und die Bezeichnerknoten nur Verweise auf die an anderer Stelle dokumentierten Bezeichner (Dokumente der Klassen- und Quellcode-Ebene) darstellen. Die Begriffe der Musterebene* gehören somit zur ersten Gruppe. Der Einfachheit halber wird der Linktyp "Aggregation" einerseits für die Beziehung zwischen Objekten der Klassenebene* verwandt, andererseits auch für die Beziehung von Klassen zu den enthaltenen Attributen und Operationen.

Alle Links zwischen einer Begriffsverwendung in einem Dokument und der Begriffsdefinition im Glossar werden automatisch generiert (siehe Dokumentationsmodell). So bleibt für den Benutzer die Arbeit der Pflege des Glossars.

Referenzen

Evolution der Entwicklung nachvollziehen, Dokumentationsmodell