Konzept: Meilenstein 'Architektur des Lebenszyklus'
Diese Richtlinie beschreibt die Bewertungskriterien für den Meilenstein "Architektur des Lebenszyklus" am Ende der Ausarbeitungsphase. Der Zustand der wichtigen Artefakte wird ebenfalls beschrieben.
Hauptbeschreibung

Am Ende der Ausarbeitungsphase befindet sich der zweite wichtige Projektmeilenstein, Architektur des Lebenszyklus. An diesem Punkt untersuchen Sie die detaillierten Zielsetzungen und den Umfang des Systems, die Auswahl der Architektur und die Bewältigungsstrategien für die Hauptrisiken.

Bewertungskriterien

  • Die Produktvision und die Produktanforderungen sind stabil.
  • Die Architektur ist stabil.
  • Die wichtigen Ansätze, die beim Test und bei der Bewertung verwendet werden sollen, sind bewährt.
  • Der Test und die Bewertung ausführbarer Prototypen hat gezeigt, dass die wichtigsten Risikoelemente behandelt und glaubwürdig aufgelöst wurden.
  • Die Iterationspläne für die Konstruktionsphase sind so detailliert und präzise, dass die Arbeit fortgesetzt werden kann.
  • Die Iterationspläne für die Konstruktionsphase werden durch glaubwürdige Schätzungen gestützt.
  • Alle Stakeholder stimmen überein, dass die Umsetzung der aktuellen Vision möglich ist, wenn der aktuelle Plan ausgeführt wird, um das gesamte System im Kontext der aktuellen Architektur zu entwickeln.
  • Das Verhältnis von tatsächlichem Ressourcenaufwand und geplantem Ressourcenaufwand ist akzeptabel.

Wird dieser Meilenstein nicht erreicht, kann das Projekt abgebrochen oder grundlegend überdacht werden.

Artefakte

Wichtige Artefakte (in der Reihenfolge ihrer Bedeutung) Status am Meilenstein
Prototypen Es wurden ein oder mehrere ausführbare Architekturprototypen erstellt, um kritische Funktionen und für die Architektur wichtige Szenarios zu untersuchen. Lesen Sie hierzu die Anmerkung zur Rolle Prototyperstellung.
Liste der Risiken Aktualisiert und überprüft. Neue Risiken beziehen sich wahrscheinlich auf die Architektur, insbesondere auf die Handhabung von nicht funktionalen Anforderungen.
Entwicklungsprozess

Der Entwicklungsprozess wurde, einschließlich projektspezifischer Richtlinien und Vorlagen, basierend auf den in der frühen Projektphase gemachten Erfahrungen präzisiert und ist ausreichend definiert, dass die Konstruktionsphase fortgeführt werden kann.

Entwicklungsinfrastruktur

Die Entwicklungsumgebung für die Konstruktion wurde eingerichtet, einschließlich aller Tools und der Automatisierungsunterstützung für den Prozess.

Softwarearchitekturdokument Erstellt und Referenzversion erstellt, einschließlich der Beschreibungen der für die Architektur wichtigen Anwendungsfälle (Anwendungsfallsicht), der Ermittlung von Schlüsselmechanismen und der Designelemente (logische Sicht plus Definition der Prozesssicht und der Deployment-Sicht (siehe Arbeitsergebnis: Deployment-Modell), falls das System verteilt ist oder parallel genutzt wird.
Designmodell (und alle Artefakte, aus denen es sich zusammensetzt) Definiert und Referenzversion erstellt. Anwendungsfallrealisierungen, die das Design betreffen, wurden definiert, und Designelementen wurde das erforderliche Verhalten entsprechend zugeordnet. Komponenten wurden festgelegt und die Entscheidungen bezüglich Erstellung, Kauf und Wiederverwendung ausreichend dargelegt, um die Kosten und den Zeitplan für die Konstruktionsphase zuverlässig bestimmen zu können. Die ausgewählten Architekturkomponenten wurden integriert und auf der Basis der primären Szenarios bewertet. Die aus diesen Aktivitäten gewonnenen Erkenntnisse können zu einer Überarbeitung der Architektur unter Berücksichtigung alternativer Designs oder zu einem Überdenken der Anforderungen führen.
Datenmodell Definiert und Referenzversion erstellt. Wichtige Datenmodellelemente (z. B. wichtige Entitäten, Beziehung, Tabellen) wurden definiert und überprüft.
Implementierungsmodell (und alle Artefakte, aus denen es sich zusammensetzt) einschließlich Implementierungselemente) Ausgangsstruktur erstellt und Prototypen für Hauptkomponenten erstellt.
Vision Konkretisiert, basierend auf neuen Informationen, die in der Phase gewonnen wurden und ein umfassendes Verständnis der wichtigsten Anwendungsfälle bewirken, die die Entscheidungen bezüglich der Architektur und der Planung beeinflussen.
Softwareentwicklungsplan Aktualisiert und erweitert auf Konstruktions- und Übergangsphase.
Iterationsplan Iterationsplan für die abgeschlossene und überprüfte Konstruktionsphase.
Anwendungsfallmodell (Akteure, Anwendungsfälle) Anwendungsfallmodell ungefähr zu 80 % abgeschlossen. Alle Anwendungsfälle wurden in der Anwendungsfallübersicht identifiziert, alle Akteure festgelegt, und die meisten Anwendungsfallbeschreibungen (Erfassung der Anforderungen) wurden entwickelt.
Ergänzende Spezifikationen Die als ergänzende Anforderungen erfassten nicht funktionalen Anforderungen sind dokumentiert und überprüft.
Testsuite ("Smoke-Test") Es wurden Tests implementiert und durchgeführt, um die Stabilität des Builds für alle ausführbaren Releases, die während der Ausarbeitungsphase erstellt wurden, zu überprüfen.
Architektur für Testautomatisierung Eine Referenzkomposition der verschiedenen Mechanismen und wichtigen Softwareelemente, die die grundlegenden Merkmale des Softwaresystems für die Testautomatisierung verkörpern.
Optionale Artefakte Status am Meilenstein
Kosten-Nutzen-Analyse Wird aktualisiert, wenn Untersuchungen der Architektur Fragen aufdecken, die die grundlegenden Annahmen für das Projekt ändern.
Analysemodell Kann als formales Artefakt entwickelt werden, wird häufig nicht formal verwaltet, sondern zu einer frühen Version des Designmodells weiterentwickelt.
Unterstützendes Material für Benutzer Benutzerhandbücher und anderes Schulungsmaterial. Vorläufiger Entwurf, der auf Anwendungsfällen basiert. Ist möglicherweise erforderlich, wenn das System eine umfangreiche Benutzerschnittstelle hat.

Die Rolle der Prototyperstellung

Rational Unified Process gibt dem Softwarearchitekten und dem Projektleiter die Freiheit, Prototypen verschiedener Typen (siehe Konzept: Prototypen) im Rahmen einer Risikominderungsstrategie zu erstellen. Einige dieser Prototypen dienen nur Versuchszwecken und werden nacheinander gelöscht. Es ist jedoch wahrscheinlich, insbesondere für große und neu entwickelte Systeme, dass die Architektur während der Ausarbeitungsphase als Serie evolutionärer Prototypen für verschiedene Probleme erstellt wird. Am Ende der Ausarbeitung steht dann eine integrierte, stabile Architekturbasis. Das soll jedoch nicht heißen, dass bei der Prototyperstellung während der Ausarbeitung eine Gruppe von Architekturfragmenten entstehen soll, die nicht integriert werden müssen.