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.