Warum Architektur nicht zur agilen Softwareentwicklung passt

Runter vom Bau - raus auf den Bolzplatz

Jürgen Lampe


Ein solcher Ansatz erlaubt einen unkonventionellen Blick auf den Softwareentwicklungsprozess und liefert quasi nebenbei plausible Erklärungen für Probleme, die in der Praxis immer wieder auftauchen. Nicht zuletzt ergeben sich daraus auch neue Lösungsansätze. Der Beitrag stellt einiges ganz bewusst überspitzt dar. Es geht nicht darum, ausgearbeitete Ergebnisse zu präsentieren – durch die ungewohnte Sicht sollen vielmehr die Diskussionen belebt und neue Einsichten provoziert werden.

Die Baumetapher

Der Vergleich mit dem Bau eines Gebäudes ist eine der ältesten Analogien für die Softwareentwicklung. Zu der Zeit, in der Programme als Teil des Computers verkauft wurden, war das offensichtlich ein passendes Modell. Mittlerweile hat sich die Welt um uns gewandelt und mit ihr die Rolle der Software. Das Bild vom Bauen, obwohl in Details immer wieder an aktuelle Entwicklungen angepasst, droht die Sicht auf bestimmte Aspekte zu behindern, weil wichtige Voraussetzungen im Laufe der Jahre entfallen sind oder an Bedeutung verloren haben.

Ein grundlegender Aspekt beim Bauen ist Langfristigkeit. Gebaut wird vorrangig für über den Tag hinausreichende Ziele. Damit verknüpft ist die relative Beständigkeit der äußeren Umstände. Genauso wird immer unter der Annahme gebaut, dass sich die Umgebung einschließlich zu nutzender Technologien, Preise und Besitzverhältnissen während des Bauens und auch danach nur in beschränktem Maß ändert. Als dritter Aspekt kommt außerdem hinzu, dass Bauen und Architektur als Erfahrungstätigkeiten durch kleinschrittige Entwicklung, die sich jeweils nur wenig vom Erprobten entfernt, gekennzeichnet sind. Versuche, die Schrittlänge leichtfertig zu vergrößern, haben von der Antike bis heute immer wieder ins – zumindest finanzielle – Desaster geführt.

Softwarearchitektur

Von der Baumetapher ist es nur ein kleiner Schritt zur Architektur. Die Gesellschaft für Informatik schreibt in ihrem Informatiklexikon: „Häufig wird die Rolle der Softwarearchitekten mit der Rolle der Gebäudearchitekten verglichen.“ und in Bezug auf Enterprise-Application-Integration weiter: „In derartigen Umgebungen passt die Analogie zur Stadtplanung besser.“ [1].

Es lohnt sich, die Begriffe genauer zu hinterfragen. Neben vielen anderen ist es eine wesentliche Aufgabe der Architektur, schon vor der Bauausführung einen möglichst vollständigen Entwurf des angestrebten Produkts (= Bauwerks) anzufertigen. Allein dieses Anliegen ist nur unter der angesprochenen Konstanz der Randbedingungen ...

Warum Architektur nicht zur agilen Softwareentwicklung passt

Runter vom Bau - raus auf den Bolzplatz

Jürgen Lampe


Ein solcher Ansatz erlaubt einen unkonventionellen Blick auf den Softwareentwicklungsprozess und liefert quasi nebenbei plausible Erklärungen für Probleme, die in der Praxis immer wieder auftauchen. Nicht zuletzt ergeben sich daraus auch neue Lösungsansätze. Der Beitrag stellt einiges ganz bewusst überspitzt dar. Es geht nicht darum, ausgearbeitete Ergebnisse zu präsentieren – durch die ungewohnte Sicht sollen vielmehr die Diskussionen belebt und neue Einsichten provoziert werden.

Die Baumetapher

Der Vergleich mit dem Bau eines Gebäudes ist eine der ältesten Analogien für die Softwareentwicklung. Zu der Zeit, in der Programme als Teil des Computers verkauft wurden, war das offensichtlich ein passendes Modell. Mittlerweile hat sich die Welt um uns gewandelt und mit ihr die Rolle der Software. Das Bild vom Bauen, obwohl in Details immer wieder an aktuelle Entwicklungen angepasst, droht die Sicht auf bestimmte Aspekte zu behindern, weil wichtige Voraussetzungen im Laufe der Jahre entfallen sind oder an Bedeutung verloren haben.

Ein grundlegender Aspekt beim Bauen ist Langfristigkeit. Gebaut wird vorrangig für über den Tag hinausreichende Ziele. Damit verknüpft ist die relative Beständigkeit der äußeren Umstände. Genauso wird immer unter der Annahme gebaut, dass sich die Umgebung einschließlich zu nutzender Technologien, Preise und Besitzverhältnissen während des Bauens und auch danach nur in beschränktem Maß ändert. Als dritter Aspekt kommt außerdem hinzu, dass Bauen und Architektur als Erfahrungstätigkeiten durch kleinschrittige Entwicklung, die sich jeweils nur wenig vom Erprobten entfernt, gekennzeichnet sind. Versuche, die Schrittlänge leichtfertig zu vergrößern, haben von der Antike bis heute immer wieder ins – zumindest finanzielle – Desaster geführt.

Softwarearchitektur

Von der Baumetapher ist es nur ein kleiner Schritt zur Architektur. Die Gesellschaft für Informatik schreibt in ihrem Informatiklexikon: „Häufig wird die Rolle der Softwarearchitekten mit der Rolle der Gebäudearchitekten verglichen.“ und in Bezug auf Enterprise-Application-Integration weiter: „In derartigen Umgebungen passt die Analogie zur Stadtplanung besser.“ [1].

Es lohnt sich, die Begriffe genauer zu hinterfragen. Neben vielen anderen ist es eine wesentliche Aufgabe der Architektur, schon vor der Bauausführung einen möglichst vollständigen Entwurf des angestrebten Produkts (= Bauwerks) anzufertigen. Allein dieses Anliegen ist nur unter der angesprochenen Konstanz der Randbedingungen ...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang