Technical Dept: The Hidden Cost

Technische Abteilung: Die versteckten Kosten

SOFTWARE · INGENIEURWESEN · PROJEKTMANAGEMENT

Technische Schuld:
Die versteckten Kosten von "Wir werden es später beheben"

Von Gabriel Weider · grabNade · 7 Min. Lesezeit · Ingenieurgrundlagen

Irgendwo in jedem Code, jeder Systemarchitektur und jedem Produktionsprozess gibt es eine Entscheidung, die unter Druck getroffen wurde und nie wieder überprüft wurde. Ein Workaround, der dauerhaft wurde. Eine vorübergehende Lösung, die länger überdauert hat als der Projektmanager, der sie genehmigt hat. Ein Kommentar, der lautet // TODO: das richtig beheben — datiert vor drei Jahren.

Das ist technische Schuld. Und im Gegensatz zu finanzieller Schuld erscheint sie nicht in einer Bilanz, bis die Zinszahlung fällig wird.

## 01. WAS TECHNISCHE SCHULD WIRKLICH IST

Der Begriff wurde 1992 von dem Software-Ingenieur Ward Cunningham geprägt, aber das Konzept gilt weit über Code hinaus. Technische Schuld ist die kumulierte Kosten für die Wahl einer schnelleren oder einfacheren Lösung jetzt anstelle der besseren Lösung, die länger dauern würde.

Wie finanzielle Schulden hat sie einen Haupt- und einen Zinsanteil. Der Hauptbetrag ist die Nacharbeit, die erforderlich ist, um die richtige Lösung umzusetzen. Die Zinsen sind die laufenden Kosten, um den Workaround zu umgehen — langsamere Entwicklung, schwierigere Wartung, fragilere Systeme, höhere Fehlerquoten.

Der entscheidende Unterschied zur finanziellen Schuld: technische Schuld kumuliert stillschweigend. Sie erhalten keine monatliche Abrechnung. Die Zinsen sammeln sich unsichtbar in Form von verlangsamter Geschwindigkeit, erhöhten Fehlerzahlen, längeren Einarbeitungszeiten für neue Ingenieure und Systemen, die zunehmend schwieriger zu ändern sind.

> DIE URSPRÜNGLICHE METAPHER (Ward Cunningham, 1992): "Erstmaligen Code zu versenden ist wie Schulden zu machen. Ein wenig Schuld beschleunigt die Entwicklung, solange sie umgehend mit einer Refaktorisierung zurückgezahlt wird... Die Gefahr tritt auf, wenn die Schuld nicht zurückgezahlt wird. Jede Minute, die mit nicht ganz richtigem Code verbracht wird, zählt als Zinsen auf diese Schuld."

## 02. WIE TECHNISCHE SCHULD ANSTEIGT

> DEBT_ACCUMULATION.model — Kosten für Änderungen über die Zeit
Sprint 1
Niedrige Schuld — schnelle Iteration
Monat 3
Mittel — Workarounds sammeln sich an
Jahr 1
Hoch — jede Änderung bricht etwas
Jahr 3+
Kritisch — neu schreiben oder zusammenfassen

Technische Schuld resultiert normalerweise nicht aus Faulheit oder Inkompetenz. Sie resultiert aus rationalen Entscheidungen, die unter realen Einschränkungen getroffen wurden. Die Frist war real. Das Budget war festgelegt. Das MVP musste ausgeliefert werden. Der Workaround war die richtige Entscheidung — zu diesem Zeitpunkt. Das Problem ist, was danach passiert: Die Frist verstreicht, der Druck verlagert sich auf das nächste Feature, und niemand geht zurück, um die Abkürzung zu beheben.

## 03. DIE VIER ARTEN VON TECHNISCHER SCHULD

Nicht alle technischen Schulden sind gleich geschaffen. Martin Fowlers Technische Schulden-Quadrant identifiziert vier Typen basierend auf zwei Achsen: absichtlich vs. unabsichtlich und leichtsinnig vs. umsichtig.

Absichtlich · Umsichtig

"Wir wissen, dass das falsch ist — wir werden es nach dem Start beheben"

Die am besten handhabbare Form. Ein bewusster Kompromiss, der mit vollem Bewusstsein der Kosten und einem Plan zur Rückzahlung getroffen wurde. Akzeptabel, wenn die Rückzahlung tatsächlich erfolgt. Gefährlich, wenn "nach dem Start" zu "nie" wird.

Absichtlich · Leichtsinnig

"Wir haben keine Zeit, es richtig zu entwerfen"

Abkürzungen, die genommen wurden, ohne die Konsequenzen anzuerkennen oder zu planen. Oft als Pragmatismus getarnt. Ansammelt sich am schnellsten, weil es keine Absicht zur Rückzahlung gibt — die Schulden werden nicht einmal als Schulden erkannt.

Unabsichtlich · Umsichtig

"Jetzt wissen wir, wie wir es hätten machen sollen"

Schulden, die durch echten Mangel an Wissen zum Zeitpunkt der Entscheidung entstanden sind. Das Team hat sein Bestes mit dem gegebenen Wissen getan — der bessere Ansatz wurde erst durch Erfahrung klar. Häufig in sich schnell entwickelnden technischen Bereichen.

Unabsichtlich · Leichtsinnig

"Was meinst du mit geschichteter Architektur?"

Schulden, die aus dem Unwissen darüber entstehen, wie gute Praktiken aussehen. Das Team hat nicht erkannt, dass sie Schulden schaffen. Am teuersten zu entdecken, weil es oft tief verwurzelt ist, bevor es jemand identifiziert.

// verwandte Ausrüstung
"Wo 'wir werden es später beheben' auf 'später kam nie' trifft." Damen T-Shirt zu technischen Schulden · Lässiger Schnitt

## 04. DIE SYMPTOME — WIE TECHNISCHE SCHULDEN IN DER PRAXIS AUSSEHEN

Technische Schulden kündigen sich selten an. Sie zeigen sich indirekt, in Symptomen, die Teams oft anderen Ursachen zuschreiben:

Symptom Was es tatsächlich signalisiert
"Einfache" Änderungen dauern Wochen Hohe Kopplung — alles hängt von allem anderen ab
Neue Ingenieure brauchen Monate, um produktiv zu sein Keine Dokumentation, inkonsistente Muster, System zu komplex, um schnell gelernt zu werden
Fehlerbehebungen führen zu neuen Fehlern Fragile Architektur, fehlende Tests, Workarounds, die auf Workarounds basieren
Niemand möchte Modul X anfassen Hochverschuldeter Bereich — jeder weiß es, aber niemand hat Zeit, es zu beheben
Die Geschwindigkeit sinkt jedes Quartal Zinszahlungen steigen — mehr Zeit mit dem Kämpfen gegen das System als mit dem Erstellen von Funktionen
"Wir brauchen eine vollständige Neuschreibung" Die Schuldenhöhe hat den Wert der inkrementellen Rückzahlung überschritten — Zinseszinsen haben gewonnen
> DER ZEITPLAN / DAS BUDGET / DER SCHULDEN-INTERSEKT: Technische Schulden sind das, was im Zentrum des Venn-Diagramms lebt, wo Zeitdruck und Budgetbeschränkungen sich überschneiden. Wenn Sie beide gleichzeitig komprimieren und die Kosten nicht berücksichtigen, sind technische Schulden das, was die Lücke füllt. Es ist kein Metapher — es ist der messbare, sich kumulierende Rest jeder Abwägung, die nicht richtig kalkuliert wurde.

## 05. MANAGEMENT TECHNISCHER SCHULDEN — DER PRAKTISCHE ANSATZ

Das Ziel ist nicht null technische Schulden. Einige Schulden sind rational — die absichtliche, umsichtige Art, die die Lieferung beschleunigt, wenn sie planmäßig zurückgezahlt wird. Das Ziel ist verwaltete Schulden: sichtbar, nachverfolgt und zurückgezahlt, bevor die Zinsen den ursprünglichen Gewinn übersteigen.

Machen Sie es sichtbar

Technische Schulden, die nicht verfolgt werden, werden nicht zurückgezahlt. Erstellen Sie ein Schuldenregister — eine einfache Liste bekannter Abkürzungen, ihrer geschätzten Rückzahlungskosten und ihres aktuellen Zinssatzes (wie sehr sie Sie verlangsamen). Was gemessen wird, wird verwaltet.

Weisen Sie Rückzahlungskapazität zu

Die Standardempfehlung ist, 20% der Ingenieurkapazität für die Rückzahlung von Schulden zu reservieren — Refactoring, Dokumentation, Architekturverbesserungen. Teams, die dies überspringen, stellen fest, dass der Prozentsatz unwillkürlich ansteigt, während die Kosten für den Schuldendienst immer mehr Sprintkapazität verbrauchen.

Hören Sie auf, Schulden anzuhäufen, bevor Sie zurückzahlen

Die Rückzahlung von Schulden, während man weiterhin in demselben Tempo Schulden anhäuft, ist Stillstand. Bevor eine aggressive Rückzahlung sinnvoll ist, müssen sich die Bedingungen, die die Schulden verursacht haben — unrealistische Zeitpläne, fehlende Designüberprüfungen, keine Definition von "fertig" — ändern.

Priorisieren Sie nach Zinssatz, nicht nach Hauptsumme

Zahlen Sie zuerst die Schulden zurück, die Sie pro Sprint am meisten kosten, nicht die größte Hauptsumme. Eine kleine architektonische Abkürzung in einem Bereich mit hohen Änderungen kostet mehr an täglichen Zinsen als ein großes Legacy-Modul, das niemand anfasst.

> DAS EHRLICHE GESPRÄCH, DAS FÜHREN SOLLTEN: Wenn jemand nach einer schnelleren Lieferung fragt und Sie die erforderlichen Abkürzungen kennen — nennen Sie die Schulden ausdrücklich. "Wir können das in zwei Wochen liefern, wenn wir die Testabdeckung überspringen und die Konfiguration hartcodieren. Das schafft ungefähr drei Wochen Nacharbeitschulden, die wir im Q3 zurückzahlen müssen." Machen Sie den Kompromiss sichtbar. Lassen Sie den Stakeholder eine informierte Entscheidung treffen. Das ist Ingenieurwissenschaft, nicht nur Programmierung.
// verwandte Ausrüstung
"Gut. Schnell. Günstig. Wählen Sie Zwei." Das Ingenieur-Dreieck T-Shirt

## 06. DAS FAZIT

Technische Schulden sind kein Versagen der Ingenieurwissenschaft. Es ist ein Merkmal der Ingenieurwissenschaft unter realen Bedingungen. Das Versagen liegt darin, so zu tun, als ob sie nicht existieren — darin, "wir werden es später beheben" als vollständigen Satz zu behandeln, anstatt als den Anfang eines Plans.

Die besten Ingenieurteams haben keine null Schulden. Sie haben Schulden, die sie sehen können, eine Rate, die sie sich leisten können, und einen Rückzahlungsplan, den sie tatsächlich einhalten. Sie wissen, dass Zeitplan und Budget nicht isoliert existieren — sie schneiden sich bei den technischen Schulden, und was auch immer an dieser Schnittstelle lebt, wird letztendlich bestimmen, ob das System ein Vermögenswert oder eine Verbindlichkeit ist.

Die Ingenieure, die das verstehen, liefern nicht nur schneller. Sie liefern Systeme, die lieferbar bleiben.

// grabnade.com · Bekleidung

Zeitplan. Budget. Technische Schulden.
Gesetze der Physik.

Das Venn-Diagramm Ihrer Stakeholder
müssen Sie vor der nächsten Sprintplanung sehen.
Tragen Sie es zur Besprechung.
[ SHOP THE TEE ]
Zurück zum Blog

Hinterlasse einen Kommentar

Bitte beachte, dass Kommentare vor der Veröffentlichung freigegeben werden müssen.