Neue Perspektiven durch ein Architekturreview
By Urs Fässler
Manchmal erreicht ein Software-Projekt einen Punkt, an dem die Weiterentwicklung fast zum Stillstand kommt. Features werden nur noch mühsam implementiert, und die Kosten für Änderungen explodieren. Genau an diesem Punkt stand unser Kunde, als er uns, Urs Fässler von iQiliO und Peter Gfader von Beyond Agility, mit einem Architektur-Review beauftragte. Ziel war es, den Zustand der Software objektiv zu bewerten und eine Empfehlung abzugeben: Soll die bestehende Software weiterentwickelt oder komplett neu geschrieben werden?
Ausgangslage und Vorgehen
Die Softwareentwicklung des Kunden war massiv verlangsamt, und die Führung war besorgt über die Zukunftsfähigkeit der Software. Unsere Aufgabe bestand darin, eine Bestandesaufnahme durchzuführen und Handlungsoptionen aufzuzeigen.
Unser Review umfasste:
-
Analyse des Codes: Wir haben die Code-Basis geprüft, Metriken erfasst und uns von den Entwicklern die Architektur und Funktionsweise erklären lassen.
-
Arbeitsweise und Prozesse: Wir haben das Ticketing-System und die Entwicklungsprozesse untersucht.
-
Gespräche mit Beteiligten: Offene Gespräche mit Entwicklern, Führungspersonen und Produktverantwortlichen halfen uns, verschiedene Perspektiven und Herausforderungen zu verstehen.
Unser Ansatz war geprägt von der Überzeugung, dass alle Beteiligten ihr Bestes geben. Diese Haltung ermöglichte es uns, eine Atmosphäre des Vertrauens zu schaffen, in der alle offen über ihre Herausforderungen sprechen konnten. Viele empfanden die Gespräche als befreiend und waren dankbar, ihre Meinungen und Ansichten teilen zu können.
Ergebnisse des Reviews
Unsere Analyse zeigte, dass die Softwarequalität auf einem sehr tiefen Niveau ist. Dies war den Entwicklern teilweise bewusst - viele wussten, wie sie es besser machen könnten, waren aber durch das Umfeld daran gehindert, diese Verbesserungen umzusetzen. Auf der Seite der Führung und des Produktmanagements zeigte sich ein ähnliches Bild: Herausforderungen waren bekannt, doch die Strukturen verhinderten Veränderungen.
Trotz des schlechten Zustands der Software empfehlen wir, sie nicht neu zu schreiben. Warum? Weil eine Neuentwicklung nach unserer Erfahrung und gemäss Conways Law in einer ähnlichen Situation enden würde. Stattdessen ist es effektiver, gezielt in die Prozesse der Softwareentwicklung zu investieren.
Unsere Empfehlungen
Um die Software-Entwicklung wieder auf Kurs zu bringen, schlagen wir folgende Massnahmen vor:
-
Product Owner oder Agiler Coach: Eine zentrale Rolle zur Kanalisierung und Priorisierung der Anforderungen ist essenziell. Diese Person sollte auch in der Lage sein, Anforderungen abzulehnen und gegenüber den Entwicklern bessere Qualität einzufordern - und gleichzeitig den Raum schaffen, diese umzusetzen.
-
Unterstützung durch einen Senior-Entwickler oder Technischen Agilen Coach: Ein erfahrener Experte kann das Entwicklerteam gezielt unterstützen, Fähigkeiten weiterzuentwickeln und Best Practices umzusetzen.
Fazit
Unser Architektur-Review bietet dem Kunden eine objektive Bestandesaufnahme seiner Code-Basis und der umgebenden Strukturen. Mit den von uns vorgeschlagenen Massnahmen kann die Softwareentwicklung von einem reinen Kostenfaktor zu einem Treiber für Innovation werden.
Ein Architektur-Review ist nicht nur ein Blick in den Rückspiegel, sondern ein strategischer Schritt nach vorne - hin zu besserer Qualität, effizienteren Prozessen und einem motivierten Team.
Haben Sie Fragen zu unserem Ansatz oder Interesse an einem Architektur-Review?
Kontaktieren Sie uns - wir helfen gerne, Ihre Softwareentwicklung zukunftsfähig zu machen.