Die Produktverzeichnisstruktur dient als logisch verschachtelter Platzhalter für alle produktbezogenen
Arbeitsergebnisse mit Versionsangabe. Arbeitsergebnisse werden im folgenden Entwicklungsprozesszyklus und für die
Entwicklung jedes zugehörigen Implementierungselements des Gesamtsystems erzeugt.
Die folgende Abbildung zeigt, dass sich System-X aus "N" Subsystemen und jedes Subsystem aus "N" Komponenten
zusammensetzt. Die Produktverzeichnisstruktur ist ein allgemeiner Platzhalter für die verschiedenen Arbeitsergebnisse,
die für die Entwicklung jedes Teil des Gesamtsystems erforderlich sind.
Obwohl ein erfahrener Softwarearchitekt von vornherein einen sinnvollen Lösungsansatz für die Systemzusammensetzung
haben kann, entsteht die Sicht der wichtigen Entwicklungskomponenten als Ergebnis der analyse- & designbezogenen
Aktivitäten, wo die geeigneten Architekturen definiert und präzisiert werden.
Die folgende Tabelle zeigt ein Muster für eine Produktsystemverzeichnisstruktur, die in den ersten Phasen der
Projektentwicklung als "Produktverzeichnisstruktur" verwendet werden könnte. Die exakten Details der zugehörigen
Subsysteme und die Architekturschichten müssen jedoch noch festgelegt werden.
Wenn die Analyse- & Designaktivitäten laufen und mehr Informationen zur Anzahl und zum Charakter der erforderlichen
Subsystem für das Gesamtsystem vorliegen (Aufgabe:
Subsystemdesign), muss die Produktverzeichnisstruktur erweitert werden, um die einzelnen Subsysteme unterzubringen.
Die Informationen in der Systemproduktverzeichnisstruktur muss für alle Subsysteme im Projekt sichtbar sein. Somit
gehören neben dem Produktmanagement auch Standards und Richtlinien für Anforderungen und Testinformationen in die
Systemproduktverzeichnisstruktur. In dem Beispiel sind Tools in der Systemproduktverzeichnisstruktur enthalten. Sie
könnten aber auch in ein Verzeichnis der höheren Ebene eingefügt werden, damit mehrere Systeme dieselben Tools
verwenden können.
Die Informationen in der Produktsubsystemverzeichnisstruktur beziehen sich direkt auf die Entwicklung des jeweiligen
Subsystems. Die Anzahl der 'Instanzierungen' der Produktsubsystemverzeichnisstruktur bezieht sich eindeutig auf die
Anzahl der Subsysteme, die während der Analyse- & Designaktivitäten identifiziert wurden. System-y kann
beispielsweise drei Subsysteme haben (Subsystem-A, Subsystem-B und Subsystem-N). Jedes Subsystem hat die erforderlichen
Informationen für sein Design und eventuell auch für seine Implementierung.
Eine generalisierte Gliederung der Produktsubsystemverzeichnisstruktur ist wie folgt:
Die Anzahl der Komponenten ist ein Ergebnis von Subsystemdesignentscheidungen. Die folgende Verzeichnisstruktur muss
für jede zu entwickelnde Komponente instanziert werden.
Wenn Sie Verzeichnisse in der vorgeschriebenen Weise verschachteln, hat dies den Vorteil, dass alle relevanten
Kontextinformationen zur Entwicklung einer Komponente auf der Ebene der Komponente selbst oder der übergeordneten Ebene
verfügbar sind.
Auf der Basis einer solchen logischen Verschachtelung können Entwicklungs- und
Integrationsarbeitsbereiche eingerichtet werden, die mit der Gesamtstruktur des Entwicklungsteams verknüpft werden können.
Die Namenskonvention für Arbeitsergebnisse ist in Aufgabe: Richtlinien für das Konfigurationsmanagement festlegen, Schritt:
Verfahren für die Konfigurationsidentifizierung beschrieben.
|