Zum Inhalt springen

Wissen

Technische Schulden: warum Änderungen mit der Zeit teurer werden

· 6 Minuten Lesezeit

Der Begriff stammt aus der Softwareentwicklung, meint aber etwas sehr Kaufmännisches. Wer eine Abkürzung nimmt, um einen Termin zu halten, leiht sich Zeit. Zurückgezahlt wird nicht in einer Summe, sondern in kleinen Beträgen bei jeder späteren Änderung an dieser Stelle.

Solange wenig geändert wird, fallen kaum Zinsen an. Deshalb ist eine Anwendung mit vielen Abkürzungen, die niemand mehr anfasst, kein Problem. Teuer wird die Kombination aus Abkürzungen und einem Geschäft, das sich weiterentwickelt.

Woher die Schulden kommen

Selten aus Nachlässigkeit. Die drei häufigsten Quellen sind unspektakulär.

Termindruck. Eine Messe, eine Kampagne, ein Gesetz mit Stichtag. Man baut die Lösung, die bis Freitag fertig wird, und nimmt sich vor, das später sauber zu machen. Das Später kommt nie von selbst, weil danach der nächste Termin steht.

Geänderte Anforderungen. Die Anwendung wurde für einen Standort gebaut, jetzt sind es vier. Für einen Mandanten, jetzt sind es zwölf. Der ursprüngliche Aufbau war richtig, er passt nur nicht mehr zur heutigen Aufgabe.

Verlorenes Wissen. Die Leute, die wussten, warum etwas so gebaut wurde, sind nicht mehr da. Was übrig bleibt, ist Code, den niemand zu ändern wagt, weil unklar ist, was daran hängt.

Woran Sie es merken, ohne in den Code zu sehen

Sie brauchen keinen Entwickler, um den Zustand grob einzuschätzen. Fünf Beobachtungen genügen.

  • Schätzungen für vergleichbare Änderungen sind heute deutlich höher als früher.
  • Auf die Frage, ob etwas geht, kommt zuerst ein langes Zögern.
  • Behobene Fehler tauchen an anderer Stelle wieder auf.
  • Neue Leute im Team brauchen ungewöhnlich lange, bis sie etwas beitragen können.
  • Vor einem Feiertag will niemand mehr etwas ausliefern.

Der letzte Punkt ist der aussagekräftigste. Wo eine Auslieferung Mut erfordert, fehlt das Sicherheitsnetz aus Tests und geprobtem Rückweg.

Was tatsächlich hilft

Aufräumen im laufenden Betrieb, gebunden an die Arbeit, die ohnehin ansteht. Wer ein Modul anfasst, hinterlässt es besser als er es vorgefunden hat. Das klingt bescheiden und ist über ein Jahr gerechnet die wirksamste Maßnahme, weil sie genau dort ansetzt, wo tatsächlich gearbeitet wird.

Dazu gehören Tests an den Stellen, an denen ein Fehler weh tut. Nicht überall, das wäre Verschwendung. Aber dort, wo Geld, Termine oder Rechte berechnet werden, ist ein Test die Voraussetzung dafür, dass sich später jemand traut, etwas zu ändern.

Und es braucht eine Zeile im Budget. Wenn Aufräumen nur passiert, wenn gerade Luft ist, dann passiert es nicht, denn Luft ist nie.

Was selten hilft

Der große Neubau. Er wirkt verlockend, weil er das Problem in einem Schritt zu lösen verspricht. Tatsächlich beginnt er bei null, während die alte Anwendung weiter gepflegt werden muss, und er verliert unterwegs das Wissen, das in den vielen kleinen Sonderfällen des alten Systems steckt.

Wann ein Neubau trotzdem der richtige Weg ist, steht in einem eigenen Beitrag über Neubau oder Sanierung. In den meisten Fällen ist die Antwort eine schrittweise Ablösung.

Wo Ihre Anwendung steht, sagt ein Software-Audit. Damit die Kurve danach flach bleibt, gehört das Aufräumen in die Wartung und nicht in ein Projekt, das irgendwann beantragt wird.

Liniendiagramm ohne Zahlenachse: Eine rote Linie steigt vom Start über Jahr eins und zwei bis Jahr drei steil an, eine graue Linie daneben bleibt fast waagerecht. Beschriftet sind sie mit ohne Aufräumen und mit laufendem Aufräumen.
Der Aufwand je Änderung über drei Jahre. Die Kurven zeigen eine Form, keine Messung. Wie steil die rote Linie im Einzelfall steht, hängt an der Anwendung.

FAQ

Kurz gefragt

Ist das nicht einfach schlecht gearbeitet?
Manchmal. Häufiger sind es bewusste Abkürzungen unter Termindruck, die niemand später zurückgenommen hat. Auch eine saubere Anwendung sammelt Schulden an, wenn sich die Anforderungen ändern und die alte Struktur zur neuen Aufgabe nicht mehr passt.
Wie begründet man Aufräumen, das niemand sieht?
Nicht mit Codequalität, sondern mit dem, was auffällt: Wie lange dauert eine typische Änderung heute, und wie lange vor zwei Jahren? Wie oft kommt ein behobener Fehler zurück? Diese Zahlen kennt jeder Projektbeteiligte, und sie überzeugen ohne Vortrag über Architektur.

Weiterlesen

Andere Beiträge

Fühlt sich jede Änderung zäher an als früher?

Ein Audit sagt Ihnen, an welcher Stelle die Bremse sitzt und in welcher Reihenfolge sich das Lösen lohnt.