Definition

Technische Schuld

Ein klassischer Kredit muss mit Raten und Zinsen zurückbezahlt werden. In Bezug auf die Softwareentwicklung bedeutet die Rückzahlung, dass die Entwickler das Programm überarbeiten, wenn sie mehr über die Anwendung lernen. Beispielsweise, welche Funktionen die Endanwender nutzen oder nicht nutzen oder wie das Programm mit anderen Anwendungen interagiert. Und natürlich, auch welche Funktionen sich die Nutzer wünschen. So wie monetäre Schulden leicht außer Kontrolle geraten können, wenn sie nicht richtig verwaltet werden, gilt dies gleichermaßen für die technische Schuld (technical debt).

Im Geschäftsalltag wird die Metapher der technischen Schuld häufig verwendet, um das Prinzip zu veranschaulichen, dass ein Unternehmen in Zukunft mehr Geld aufwenden muss, wenn sie ein technisches Problem nicht sofort angehen, wenn es auftritt. Die Annahme ist, dass eine Maßnahme zu ignorieren, von der man weiß, dass man sie ergreifen sollte, dazu führen kann in Zukunft in Form von Zeit, Geld oder Reputationsschäden dafür bezahlen zu müssen.

Zudem können die Bemühungen das ursprüngliche Probleme erst zu einem späteren Zeitpunkt zu lösen, durch zwischenzeitlich auftretende Entwicklungen erschwert werden. Oftmals wird ein Punkt erreicht, an dem ein Unternehmen entscheiden und abwägen muss, ob die Schuld bestehen bleibt oder Zeit und Mühe investiert wird, das Problem zu beheben. Diese Entscheidung kann durch den Effekt der „Versunkenen Kosten“ (sunk cost effect) erschwert werden. Dies beinhaltet die emotionale Tendenz von Personen, weiterhin in etwas investieren zu wollen, das offensichtlich nicht funktioniert.

Die Metapher wird unter anderem Informatikern wie Ward Cunningham zugeschrieben. Der US-amerikanische Programmierer ist bekannt für die Entwicklung Wiki Wiki Web, die erste Wiki-Website. Nach Cunninghams Ansicht muss es kein schlechter Ansatz sein, Software so schnell wie möglich zum Laufen zu bekommen. Analog zu einer Auszahlung, die man bei einem Kredit bekommen, direkt etwas mit dieser Auszahlung bewegen. In ähnlicher Weise kann eine Software, die schnell ausgeliefert wird, dem Unternehmen, die sie benötigt, unmittelbaren Nutzen bringen. Gleichzeitig erhalten die Programmierer wertvolle Rückmeldungen, wir der Code tatsächlich in der realen Welt funktioniert.

Diese Definition wurde zuletzt im Februar 2021 aktualisiert

Erfahren Sie mehr über Softwareentwicklung

ComputerWeekly.de
Close