Aktivität: Architektur präzisieren
Diese Aktivität vervollständigt die Architektur für eine Iteration.
BeschreibungProjektstrukturplanTeamzuordnungVerwendung der Arbeitsergebnisse
Beziehungen
Übergeordnete Aktivitäten
Beschreibung

Diese Aktivität

  • bildet den natürlichen Übergang von den Analyseaktivitäten zu den Designaktivitäten und legt Folgendes fest:
    • aus den Analyseelementen die entsprechenden Designelemente,
    • aus zugehörigen Analysemechanismen die entsprechenden Designmechanismen.
  • beschreibt die Organisation der Laufzeit- und Deployment-Struktur des Systems.
  • organisiert das Implementierungsmodell so, dass der Übergang zwischen Design und Implementierung nahtlos erfolgen kann.
  • gewährleistet die Konsistenz und Integrität der Architektur, indem sie Folgendes sicherstellt:
    • Neue Designelemente für die aktuelle Iteration werden in bereits vorhandene Designelemente integriert.
    • Maximale Wiederverwendung verfügbarer Komponenten und Designelemente in einem möglichst frühen Stadium des Designs.
Eigenschaften
Ereignisgesteuert
Mehrere Vorkommen
Fortlaufend
Optional
GeplantYes
Wiederholt anwendbar
Mitarbeiterauswahl

Diese Aktivitäten werden am besten von einem kleinen Team ausgeführt, das sich aus Mitgliedern verschiedener Funktionsbereiche zusammensetzt. Zu den Aspekten, die in der Regel für die Architektur relevant sind, gehören Bedienungskomfort, Leistung, Skalierung, Prozess- und Thread-Synchronisation sowie Verteilung. Das Team sollte auch Mitglieder mit Erfahrung im Aufgabenumfeld haben, die wichtige Abstraktionen erkennen können. Außerdem muss das Team Erfahrung in Modellorganisation und -aufbau haben. Das Team muss in der Lage sein, diese unterschiedlichen Threads zu einer in sich geschlossenen, kohärenten (jedoch vorläufigen) Architektur zusammenzuführen.

Da sich der Schwerpunkt der Architekturarbeiten auf Implementierungsaspekte verlagert, muss speziellen Technologieaspekten mehr Aufmerksamkeit geschenkt werden. Dies veranlasst das Architekturteam, Mitglieder auf andere Teams zu verteilen oder das Team durch Personen zu erweitern, die Erfahrung mit der Verteilung und dem Deployment haben (sofern solche Aspekte in Bezug auf die Architektur von Relevanz sind). Um die potenziellen Auswirkungen der Struktur des Implementierungsmodells auf die Integration zu verstehen, können Erfahrungen im Management von Software-Builds von Nutzen sein.

Gleichzeitig ist es von entscheidender Bedeutung, das Architekturteam nicht allzu groß wird. Einem solchen Trend kann vorgebeugt werden, indem ein relativ kleines Kernteam eingesetzt wird, dem eine Satellitengruppe mit weiteren Teammitgliedern als "Berater" für Schlüsselprobleme zur Seite gestellt wird.. Diese Struktur eignet sich auch für kleinere Projekte, in denen spezielles Fachwissen für spezielle Probleme von anderen Organisationen ausgeliehen oder eingekauft werden kann.

Verwendung
Anleitung zur Verwendung

Diese Arbeit wird am besten auf mehrere Sitzungen verteilt und über mehrere Tage (oder Wochen und Monate für sehr große Systeme) hinweg ausgeführt. Zunächst liegt der Schwerpunkt auf den Aktivitäten Designmechanismen identifizieren und Designelemente identifizieren. Einen großen Teil der Iteration nimmt die Aktivität Vorhandene Designelemente integrieren ein, um sicherzustellen, dass neue Elemente die Funktionalität bereits vorhandener Elemente nicht duplizieren.

Mit fortschreitendem Design werden Parallelitäts- und Verteilungsaspekte in die Aktivitäten Laufzeitarchitektur beschreiben bzw. Verteilung beschreiben eingeführt. Während der Überprüfung dieser Aspekte müssen möglicherweise Änderungen an Designelementen vorgenommen werden, um Verhalten auf Prozesse, Threads oder Knoten zu verteilen.

Wenn die einzelnen Modelle präzisiert werden, um die Architekturentscheidungen einzubinden, werden die Ergebnisse in den entsprechenden Sichtabschnitten im Softwarearchitekturdokument dokumentiert (d. h. wenn das Designmodell präzisiert wird, wird auch der Abschnitt zur logischen Sicht im Softwarearchitekturdokument präzisiert). Die sich daraus ergebende Architektur wird überprüft.