In klassischen Wasserfallprojekten findet der Entwurf der Software Architektur in einer Designphase vor der Implementierung statt. Ein oder mehrere Software Architekten analysieren dabei die Anforderungen und legen die entscheidenden Rahmenbedingungen fest, innerhalb derer später die Entwicklung zu erfolgen hat. Anders sieht es hingegen in agilen Vorgehensmodellen wie Scrum aus. Hier liegt die Verantwortung für diese Aufgaben gemeinschaftlich bei dem Entwicklerteam, das die Architektur in regelmäßigen Intervallen überprüft, anpasst und weiterentwickelt. Doch wie ist sichergestellt, dass eine in sich schlüssige und tragfähige Architektur entsteht, die den Anforderungen genügt und deren Prinzipien auch von allen Entwicklern befolgt werden?

Anhand in der Praxis erprobter und bewährter Methoden und Werkzeugen wird gezeigt, wie eine Softwarearchitektur kollaborativ in einem agilen Team entworfen und kontinuierlich weiterentwickelt werden kann. Dabei gilt ein besonderer Augenmerk den Schlüsselfaktoren für eine erfolgreichen Software Architektur:

  • Schließen der Kluft zwischen Vision und Code
  • Aktualität und Versionssicherheit der
  • Transparenz und Überprüfbarkeit der Architektur

Die vorgestellten Ansätze sollen Agilen Teams dabei helfen, diese Herausforderungen zu meistern, denn: Eine kollektive Code Ownership verlangt nach einer kollaborativen Software Architektur.