Lesezeit: 2 Min.

Wie passen Software-Architektur und Agilität zusammen?

Agilität verspricht keine initialen schwergewichtigen Architekturen entwickeln zu müssen, sondern  inkrementell und iterativ basierend auf den Kundenanforderungen die Architektur aufzubauen. Funktioniert das wirklich?

Agilität verspricht keine initialen schwergewichtigen Architekturen entwickeln zu müssen, sondern  inkrementell und iterativ basierend auf den Kundenanforderungen die Architektur aufzubauen. 

Bekannt zu dem Thema, ist der Begriff „BDUF“ (Big Design Up Front). BDUF passt gemäss vielen Diskussionen und Meinungen nicht zum agilen Ansatz. Denn die Gefahr ist gross, dass initial zu viel Design – d.h. Architektur-Arbeit gemacht wird, was im Laufe der Entwicklung dann wieder geändert werden muss. Konsequent iterativ und inkrementell eine Software zu entwicklen bedeutet auch die Architektur evolutionär zu entwickeln. 

Aber…


Bei vielen zu entwickelnden Software-Systemen, sind die Anforderungen grösstenteils bereits zum Start klar. Natürlich kann auch ein solches System iterativ und inkrementell entwickelt werden – aber dann so zu tun, als wisse man nicht, was das System am Ende leisten soll ist keine gute Idee. Hier sollte unbedingt die Architektur initial so passend wie möglich definiert werden. Damit spart man sich viel Aufwand und Kosten während der Entwicklung.

Und…


Selbst wenn die Anforderungen erst im Laufe der Entwicklung geschärft werden können und deshalb „richtig“ inkrementell und iterativ entwickelt werden muss, ist eine geeignete d.h. ausbaubare und skalierbare Architektur essentiell um sinnvoll agil entwickeln zu können. Der richtige Begriff hierzu ist „EDUF“ (Enough Design Upfront). 

Selbst Dave Thomas, einer der Autoren des «Agilen Manifests» sagte schon: 

„Big design up front is dumb, but doing no design up front is even dumber.“

Frei übersetzt: „Umfangreiches Vorab-Design ist dumm, aber kein Vorab-Design ist noch dümmer“.

Genau zu dem Thema spreche ich mit Marc Löffler in seinem Podcast:

Klicken Sie auf den unteren Button, um den Inhalt von embed.podcasts.apple.com zu laden.

Inhalt laden

Marc Löffler

Marc Löffler ist Keynote-Speaker, Autor und Berater für passionierte agile Teams und Unternehmen. Er befasst sich schon seit 2005 leidenschaftlich mit agilen Methoden, wie z.B. Scrum, Kanban oder eXtreme Programming. Du findest seine Webseite hier: https://marcloeffler.eu.

Also da solltest Du unbedingt reinhören. Hier nochmals der Link: Zur Podcast-Folge

Wie weiter?

Falls Du Fragen zu dem Inhalt des Podcasts hast, dann schreib mir einfach – gerne beantworte ich Deine Fragen

Weiteres zum Thema Architektur-Erstellung:

Viel Erfolg bei Deinen agilen oder nicht agilen Software-Entwicklungen.

Matthias

Schreiben Sie einen Kommentar

Weiterlesen:

  • 3 Quellen unnötiger Komplexität verhindern und damit einfacher Software entwickeln

    Die typischen Quellen unnötiger Komplexität in der Software-Entwicklung zeige ich im Video dieses Beitrages.

    Weiterlesen >

  • Jenseits des Codes – Warum Software-Architektur nicht nur für Entwickler relevant ist

    Software-Architektur ist nicht nur für Software Entwickler relevant. Was Du als Nicht-Software-Entwickler über Software -Architektur wissen solltest.

    Weiterlesen >

  • Wie passen Software-Architektur und Agilität zusammen?

    Agilität verspricht keine initialen schwergewichtigen Architekturen entwickeln zu müssen, sondern  inkrementell und iterativ basierend auf den Kundenanforderungen die Architektur aufzubauen. Funktioniert das wirklich?

    Weiterlesen >