© Excellent backgrounds/Shutterstock.com
Kolumne: Knigge für Softwarearchitekten

Die Systematischverbesserin


Oftmals ist die Forderung nach Verbesserung von Software eine Folge aus zu hohen Kosten von Änderungen oder Erweiterungen – denn unsere (fachlich oder betriebswirtschaftlich motivierten) Auftraggeber interessiert die innere Qualität von Systemen oftmals nur wenig. Veränderung von Software zum Besseren hin ist daher meist ein langwieriger Prozess, den Sie systematisch und schrittweise angehen müssen.

Hier kommt die Systematischverbesserin ins Spiel: Ihr gelingt es, systematisch die (wirtschaftlichen) Ziele von Auftraggebern mit der Verbesserung der (inneren) Qualität zu verbinden – und dabei noch alle Beteiligten bei Laune zu halten. Falls Sie das für schwierig halten – willkommen in der Realität.

Die Realität: degenerierte Systeme

Obwohl wir anfänglich alles sauber entwickelt und entworfen haben, degeneriert unser System mit der Zeit: Das Phänomen der „verfaulenden Software“ schlägt zu. Änderungen werden schwieriger, riskanter und dauern immer länger. In Entwicklung und Betrieb treten vermehrt Probleme auf, deren Behebung mehr und mehr Zeit und Ressourcen in Anspruch nimmt. Damit einher steigen Änderungs- und Betriebskosten. Die Zufriedenheit von Entwicklern, Betreibern und (fachlichen) Auftraggebern sinkt.

Grund: Schuldenfalle

Die ursprüngliche Ordnung im System weicht einem ständig steigenden Chaos. Ausnahmen werden zur Regel, Code wird immer schwerer verständlich, das Entwicklungsteam beginnt von „historisch gewachsen“ zu sprechen – weil kaum jemand nachvollziehen kann, wie es zu dieser kontinuierlichen Verschlechterung kommen konnte. Warum kommt es dazu? Verlernen Teams über die Zeit das vernünftige und saubere Arbeiten? Nein – vielmehr zwingen oftmals äußere Einflüsse zu Kompromissen, die dann langfristig zu den oben genannten Problemen führen. Neudeutsch nennen Manager dieses Phänomen „technische Schulden“ – Softwareentwickler bezeichnen diese als Quick and Dirty, Hotfix oder Workaround – und wissen, dass sich dahinter meistens ein weiterer Schritt in Richtung „degenerierter Systeme“ (rotten-software) verbirgt. Rufen wir die Systematischverbesserin zu Hilfe.

Systematisch verbessern in kleinen Schritten

Der Weg zu besserer Software führt in der Realität fast immer über viele kleine Schritte zum Ziel. Meist müssen wir Verbesserungen in die regulären Wartungsarbeiten (etwa: Erweiterungen, Fehlerkorrekturen) integrieren. Die Systematischverbesserin verwendet dazu einen iterativen Ansatz [1] und stellt sicher, dass wirklich relevante Probleme adressiert...

Neugierig geworden?

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