Dokumentation
Aus Cascade
Die Dokumentation erfolgt in natürlichsprachlichen und modellbasierten Spezifikationen. Die natürliche Sprache eignet sich für die Spezifikation jeder Art von Anforderung. Für die Vermeidung unterschiedlicher Interpretationen kann auch die natürliche Sprache Satzschablone folgen.
Inhaltsverzeichnis |
Dokumentation im Requirements Engineering
Die Wahl der modellbasierten Spezifikationsform hängt davon ab, ob die Anforderungen an das System strukturell, funktional oder aus dem Verhalten des Systems heraus beschrieben werden.
- In der statisch-strukturellen Sicht steht speziell die Struktur der Daten im Vordergrund. Beispiel: UML-Klassendiagramm
- In der funktionalen Sicht geht es um den Datenfluss, die Verarbeitung der Daten. Beispiel: UML-Aktivitätsdiagramm
- Steht das Verhalten des Systems im Blickpunkt des Betrachters, so geht es um Zustände und Reaktionen des Systems auf einfließende Ereignisse. Beispiel: UML-Zustandsdiagramm
Die Dokumente, die die unterschiedlichen Sichten zusammenhängend widerspiegeln müssen selbst formalen Regeln gehorchen.
Architekturdokumentation
Eine umfassende Dokumentation der Architektur sollte die folgenden Bestandteile erarbeiten
- Sie muss alle relevanten Sichten enthalten
- Sie beschreibt das Zusammenspiel dieser Sichten
- Sie enthält eine Beschreibung ihres Aufbaus
- Sie enthält Hilfestellungen für den Leser
Sichten
Typischen Sichten für die Architekturdokumentation:
- Betrachtung des Systems von außen- Kontextsicht
- Betrachtung der statischen Struktur des Innenlebens
- Betrachtung des dynamischen Verhaltens des Innenlebens
- Betrachtung der Abbildung auf Artefakte, Prozessoren oder Teams
Kontextsicht
Kontextsicht beschreibt die Einbettung des zu entwickelnden Systems in die Umgebung. Das Systems wird aus in einer Blackbox betrachtet. In dieser Sicht werden die Systemgrenzen überprüft und konkretisiert. Kernfunktionalitäten werden identifiziert und priorisiert.
Die folgenden Elemente sind für diese Sicht relevant:
- Externe Elemente
- System
- Schnittstellen
Struktursicht
In der Struktursicht werden die grundlegenden Architekturbausteine des Systems und ihre Beziehungen aus statischer Perspektive dargestellt. Die Struktursicht betrachtet das Innenleben eines Systems und ihrer Komponenten. Die Struktur sicht ist an die Verhaltenssicht gekoppelt.
Die folgenden Elemente sind für diese Sicht relevant:
- Architekturbausteine
- Schnittstellen
- Kommunikationsbeziehungen
Verhaltenssicht
Die Verhaltensicht beschreibt die dynamischen Aspekte des Innenlebens der beschriebenen Bausteine (Struktur/ Verhalten).
Die Verhaltensicht beantwortet die folgenden Fragen:
- Welche Interaktionen finden zwischen diesen Bausteinen statt?
- Folgen dieser Interaktionen einem bestimmten Muster (z.B. Model-View-Controller-Muster)?
- Gibt es eine bestimmte Ablauflogik innerhalb eines Bausteins?
- Wird der Workflow nach bestimmten Aktionen abgearbeitet?
- Oder sind die Bausteine Ereignis gesteuert? (Zustandsautomaten)
Die folgenden Elemente sind für diese Sicht relevant:
- Architekturbausteine
- Interaktionen
- Zustandsbeschreibungen
Abbildungssicht
In der Abbildungssicht enthält technischen Abbildungen so wie die nichttechnischen Aspekte des Systems.
Die Abbildungssicht beantwortet die folgenden Fragen:
- Wie wird die Software auf die Hardware verteilt?
- Wie werden Bausteine durch Dateien realisiert?
- Wie werden Arbeitspakete für Teams ausgewählt?
Die folgenden Elemente sind für diese Sicht relevant:
- Ausführungseinheit (z.B. Rechner, Steuergeräte)
- Artefakte (z.B. DLL, EJB)
- Pakete
UML als Werkzeug
Die unterschiedlichen Sichten in der Softwarearchitektur können durch UML- Diagramme dargestellt werden.
| Sichten der Softwarearchitektur | UML Diagramm |
|---|---|
| Kontextsicht | |
| - Architekturdesign | Komponentendiagramm |
| Sequenzdiagramm | |
| - Anforderungsanalyse | Use-Case-Diagramm |
| Aktivitätsdiagramm | |
| Struktursicht | Interne Strukturdiagramm |
| Verhaltenssicht | Interaktionsdiagramm |
| Zustandsdiagramm | |
| Abbildungssicht | Verteilungsdiagramm |