Anforderungen bilden die Basis für pragmatische und iterative Arbeit an der Softwarearchitektur. Doch nicht alle Anforderungen sind gleich. Einige formen die Architektur und beeinflussen Architekturentscheidungen stärker als andere. Hätten Sie diese architektonisch signifikanten Anforderungen nicht oder wären sie anders ausgeprägt, würde Ihre Architektur anders aussehen. Vernachlässigen Sie deren Behandlung, entstehen technische Schulden auf Architekturniveau. In diesem Kapitel werden Muster besprochen, die Ihnen dabei helfen, die richtigen Anforderungen abzuholen, sie zu strukturieren, zu priorisieren und laufend zu verfeinern. Auch die iterative Abarbeitung von Architekturanforderungen in Backlogs oder die Verarbeitung mit Kanban sind Thema.

Architekturarbeit ist dort am sinnvollsten, wo Entscheidungen risikoreich sind. Idealerweise erkennen Sie dieses Risiko, bevor die Entscheidung getroffen und die Lösung dafür umgesetzt wurde – also auf Anforderungsebene. Welche Anforderungen sind architekturrelevant? Welche Anforderungen führen zu Entscheidungen, die das Projekt gefährden, wenn sie falsch getroffen werden? Sie werden in diesem Kapitel eine detaillierte Antwort darauf bekommen, wie Sie diese kritischen Anforderungen in Ihrem Projekt finden und bearbeiten.

Initialer Anforderungs-Workshop
Wie können Architekturanforderungen effektiv erhoben und kommuniziert werden?
Anforderungspflege-Workshops
Wie kann auf Basis einer Anforderungsliste mit architekturrelevanten Inhalten ein stetiger Fluss iterativ verarbeitbarer Aufgaben gewährleistet werden?
Szenarien
Wie drückt man Qualitätsanforderungen aus, um (1) Architekturarbeit sinnvoll zu leiten und (2) Stakeholder-gerecht zu kommunizieren?
Szenarien kategorisieren
Wie können Szenarien in iterativen und/oder agilen Prozessen abgearbeitet werden, ohne zu verzögern oder zu behindern?
Technische Schulden
Wie werden architektonische Probleme und Versäumnisse effizient, transparent und in die Architekturentwicklung integriert behandelt?
Architekturarbeit im Backlog
Wie kann Architekturarbeit (1) iterativ, (2) stetig priorisiert und (3) mit funktionalen Aufgaben verwoben erledigt werden?
Architekturarbeit auf Kanban
Wie kann die Architekturarbeit von der Idee bis zur Auslieferung optimiert werden, so dass ein mit Umsetzungsaufgaben verwobener, stetiger und sichtbarer Fluss von Aufgaben entsteht?