8
min. Lesezeit

Technische Schulden – Teil 1 – Was? Warum? Wie wirken sie sich auf Ihr Unternehmen aus?

Was sind technische Schulden? Wie wirkt sich das auf Ihr Unternehmen aus? Wie können Sie es verhindern und wie können Sie damit umgehen, wenn es einmal aufgetreten ist? Dies werden wir in dieser zweiteiligen Artikelserie zu erklären versuchen.
Jakub Bílý
Leiter Geschäftsentwicklung
July 30, 2025
[Updated]

Inhaltsverzeichniss

Was sind technische Schulden?

Technische Schulden. Klingt beängstigend, nicht wahr? Wir zeigen dir das Schlechte, das Gute und alles dazwischen. Dieser Teil wird theoretischer, aber nicht weniger wichtig sein. Am Ende des Artikels haben wir auch ein Beispiel aus der Praxis für technische Schulden und ihre Auswirkungen vorbereitet. Jetzt, wo wir das gesagt haben, können wir weitermachen.

Wikipedia beschreibt es so:



In der Softwareentwicklung sind technische Schulden (auch bekannt als Design- oder Codeschulden) die impliziten Kosten zusätzlicher Nacharbeiten, die dadurch entstehen, dass jetzt eine einfache (begrenzte) Lösung gewählt wird, anstatt einen besseren Ansatz zu verwenden, der länger dauern würde.

Obwohl die Beschreibung im Allgemeinen einigermaßen korrekt ist, ist sie nicht so einfach. Technische Schulden sind versteckte Kosten jedes IT-Projekts, aber nicht jeder Fall ist gefährlich oder wird durch schlechte Entscheidungen Ihres Entwicklungsteams verursacht (wie Sie in der Erklärung unten sehen werden).

Das Wort „Schulden“ ist kein Zufall, da es viele Eigenschaften mit wirtschaftlicher Verschuldung gemeinsam hat. Es ist absolut wichtig, es regelmäßig „zurückzuzahlen“. Das Ignorieren und Anhäufen der technischen Schulden kann fatale Folgen haben, im schlimmsten Fall sogar Konkurs. In der Welt der Softwareentwicklung bedeutet das, dass eine solche Software nicht funktioniert oder nicht weiterentwickelt werden kann, was zu erheblichen Investitionsverlusten führt.

Interessante Tatsache: In der amerikanischen Studie „Die Kosten für Software schlechter Qualität in den USA“ Ab 2018 schätzt Herb Krasner, dass sich die Gesamtkosten schlecht gemachter Software auf etwa 2,8 Billionen US-Dollar belaufen. Im Vergleich dazu sind das mehr als die BIP-Werte der meisten Länder der Welt.

Technical debt - Part 1 - What? Why? How does it affect your business?

Die häufigsten Arten von technischen Schulden. Beispiele für technische Schulden

Schauen wir uns also an, auf welche Arten von technischen Schulden Sie normalerweise stoßen können. Martin Fowler hat einen tollen Artikel, dem wir zustimmen. Es gibt grundsätzlich 4 Arten von technischen Schulden.

  1. Umsichtig und vorsätzlich - Das ist eine berechnete Wette. Das Team weiß, dass sich die technischen Schulden anhäufen, aber es beschließt, das Projekt weiter durchzuführen. Diese Lösung ist akzeptabel, wenn das Risiko gering ist oder die mögliche Rendite aus der früheren Markteinführung hoch genug ist, um die „Tilgungskosten“ der anfänglichen technischen Schulden zu decken.
  2. Rücksichtslos und vorsätzlich - Das ist das Schlimmste. Das Entwicklungsteam wählt bewusst den kürzesten Weg, um das endgültige Ziel zu erreichen, ohne sich um die Auswirkungen technischer Schulden, aufkommender Probleme und später höherer Kosten zu kümmern.
  3. Umsichtig und unbeabsichtigt - Das Team ist kompetent, kompetent, wendet bewährte Verfahren an und wählt die beste Lösung, die ihnen zu diesem Zeitpunkt bekannt ist. Das Problem ist, dass sich die IT als Branche ständig weiterentwickelt und es jedes Jahr neue Möglichkeiten gibt, verschiedene Probleme anzugehen und zu lösen. Dies ist auch der Grund, warum wir erwähnen, dass technische Schulden Teil jedes IT-Projekts sind. Im Laufe der Jahre gibt es immer bessere Möglichkeiten, dieselben Probleme zu lösen. Um Ihr Projekt zu verbessern, müssen Sie es umgestalten. Agiles Manifest hat eigentlich eine tolle Eröffnungszeile:


    Wir entdecken bessere Möglichkeiten, Software zu entwickeln, indem wir dies tun und anderen dabei helfen.
  4. Rücksichtslos und unbeabsichtigt - Das Team ignoriert Designpraktiken oder sauberen Code, in der Regel aufgrund mangelnder Erfahrung, ohne zu wissen, in wie viele Probleme es gerät.

Die häufigsten Ursachen für technische Schulden

Jetzt kennen wir die häufigsten Arten von technischen Schulden, aber was sind neben den oben genannten die häufigsten Ursachen?

  • Zeitdruck,
  • unzureichende Tests,
  • veraltete Technologien,
  • Fehlen jeglicher Unterlagen,
  • unordentlicher Code,
  • falsche Architektur,
  • Mangel an Fähigkeiten des Entwicklungsteams.

Zeit — Kosten — Qualität

Die Geschäftswelt hat ein paar „goldene Regeln“ und hier ist eine davon. Aus der bekannten Dreifaltigkeit Zeit — Kosten — Qualität kann man nur zwei haben. Wenn Sie Ihr Entwicklungsteam dazu drängen, etwas billiges und schnelles zu entwickeln, erhalten Sie keine Qualität. Wenn Sie Qualität und schnelle Lieferung wünschen, wird es nicht billig sein. Das gilt in der kundenspezifischen Softwareentwicklung genauso viel wie anderswo, wenn nicht sogar mehr. Die falsche Wahl von zwei dieser drei Optionen kann häufig zu technischen Problemen führen.

Wir sind keine Nerds und wir verstehen, dass technische Schulden manchmal unvermeidlich sind und in einem bestimmten Fall sogar Sinn machen (z. B.: schnelle MVP-Entwicklung zur Marktvalidierung). In diesem Fall, wenn Sie nur über begrenzte Ressourcen verfügen und das gesamte Projekt so schnell wie möglich testen möchten, ist es möglicherweise nicht sinnvoll, eine komplexe Architektur zu erstellen, die auf Millionen von Benutzern skalierbar ist, großartige automatisierte Tests, verschiedene Sandboxen, die gesamte CI/CD-Pipeline und andere wichtige Aspekte der modernen Entwicklung vorzubereiten. Sie konzentrieren sich nur darauf, alles so schnell wie möglich zu erledigen. Und das ist in Ordnung, solange Sie die Risiken und Kosten verstehen, die in Zukunft damit verbunden sein werden (in einigen Fällen könnte sogar eine vollständige Neufassung der ersten Version der Anwendung erforderlich sein).

Die Sache ist die, dass die berechnete technische Verschuldung leider in der Regel nur einen kleinen Prozentsatz der Projekte ausmacht.

Was uns normalerweise in Moravio begegnet, wenn zum Beispiel Rettungsprojekte, ist das genaue Gegenteil oder genauer gesagt, rücksichtslose und vorsätzliche technische Schulden aus der obigen Beschreibung. Die technischen Schulden werden vernachlässigt, nehmen ständig zu, sie sind nicht dokumentiert und werden nicht verwaltet.

Es gibt noch eine weitere Sache, die gesagt werden sollte. Die IT-Branche entwickelt sich wie keine andere auf der Welt. Technologien, die in diesem Jahr auf dem neuesten Stand der Technik sind, könnten im nächsten Jahr deutlich bessere Hauptversionen oder alternative Technologien aufweisen. So geht das halt. Sie sollten immer versuchen, Ihr Projekt auf dem neuesten Stand zu halten. Wir sagen nicht, dass Sie am ersten Tag, an dem eine neue Version der Technologie veröffentlicht wird, ein Update durchführen müssen (im Gegenteil, wir raten aufgrund der Fehler, die normalerweise in den ersten Tagen auftreten, dringend davon ab), aber es ist ratsam, Ihr Projekt innerhalb eines angemessenen Intervalls auf der neuesten stabilen und langfristig unterstützten Version zu halten. In gewisser Weise kann dies auch als technologische Verschuldung an sich bezeichnet werden, weshalb wir zu Beginn des Artikels darüber sprechen, dass technologische Schulden Teil jedes Projekts sind.

Wie wirken sich technische Schulden auf Ihr Unternehmen aus?

Einfach ausgedrückt, viel. Hier sind nur einige Beispiele:

  • Entwicklungsgeschwindigkeit und Kosten für neue Funktionen,
  • Wartungskosten,
  • Zufriedenheit des Entwicklungsteams,
  • Kundenzufriedenheit,
  • Ihre Geschäftsprozesse,
  • Kommunikation,
  • nicht zuletzt Ihr Ruf.

Es hängt alles von der Art Ihres Unternehmens ab. All dies kann auch direkt oder indirekt in monetäre Verluste umgewandelt werden.

Das Wichtigste, was Sie aus diesem Artikel mitnehmen sollten

Stellen Sie sich technische Schulden als lebendigen Teil Ihres Projekts vor. Nehmen Sie sich Zeit für Ihre Entwickler adressiere es. Überwachen und dokumentieren Sie es (Eine einfache aktualisierte JIRA-Aufgabe oder eine Confluence-Seite können Wunder bewirken). Arbeite mit deinen technischen Schulden und nimm kontinuierlich Stücke daraus heraus. Nur so können wir es auf lange Sicht unter Kontrolle halten. Wenn Sie das nicht tun, werden Sie wahrscheinlich früher oder später um ein Vielfaches höhere Kosten einholen.

Ein echtes Beispiel für technische Schulden

In Moravio, neben Bereitstellung dedizierter Entwicklungsteams, das tun wir auch Gemeinsame Entwicklung und Personalüberlassung und Projekt Rescue.

An einem der Projekte, die wir gerettet haben, möchten wir Ihnen das heutige Beispiel zeigen. Das Projekt wurde sehr vernachlässigt und der Kunde aus dem Ausland kam sehr spät auf uns zu. Der Kunde war zu dieser Zeit auch nicht sehr erfahren. Er bemerkte die Probleme also selbst erst, als deutlich sichtbar wurde, dass etwas nicht stimmte. Hinter dem Projekt steckten 2-3 Hauptversionen von PHP und dem Laravel-Framework, unordentlicher Code, falsche Architektur, Tausende unnötiger Datenbankaufrufe, Zehntel unbenutzter oder nicht aktualisierter NPM-Pakete, sechs verschiedene Bibliotheken, die Bilder handhaben, eine große Datei für CSS und JavaScript, falsches URL-Routing, keine Dokumentation und Tests. Du nennst es.

Was waren einige der Ergebnisse?

  • Das Laden der meisten wichtigen Seiten dauerte mehr als 5 Sekunden. In extremen Fällen dauerte das Laden einiger Seiten länger als eine Minute!
  • Sehr langsame Entwicklung, weil der Code sehr chaotisch und überhaupt nicht organisiert war. Ein Beispiel kann sein, dass Laravel Blades auf völlig falsche Weise verwendet wurden. Die Laravel Blades enthielten auch JavaScript- und PHP-Logik, d. h. was im Controller/Service/Repository hätte sein sollen, befand sich direkt zwischen dem HTML dieses Laravel-Blades.
  • Das Projekt war anfällig für Sicherheitsbedrohungen. Der Grund war, dass es sehr veraltete Versionen aller verwendeten Technologien gab, die nicht mehr unterstützt wurden. Darüber hinaus war es in einem Zustand, in dem es nicht mehr möglich war, den Kern des Linux-Serversystems zu aktualisieren, ohne die Technologie des Projekts zu aktualisieren, was zu zusätzlichen Sicherheitsbedrohungen führte.

Mach dir keine Sorgen. Wir haben alle Probleme erfolgreich gelöst, aber das obige Beispiel ist eine gute Möglichkeit, die technischen und geschäftlichen Probleme zu erkennen, auf die Sie möglicherweise stoßen können.

Dieser Teil war etwas theoretischer. In nächster Teil, wir erklären, worauf Sie achten müssen, um technische Schulden zu entdecken, wie Sie mit den technischen Schulden umgehen können und noch einige Beispiele aus unserer persönlichen Erfahrung aus erster Hand.

Jakub Bílý

Leiter/in Geschäftsentwicklung

Gemeinsam zu erfolgreichen Ergebnissen!
Füllen Sie das Formular aus, und wir antworten Ihnen innerhalb von 8 Geschäftsstunden.
Wir beantworten gerne all Ihre Fragen!
Wir analysieren Ihr Projekt und besprechen die Details.

Kontakt aufnehmen

Uploading...
fileuploaded.jpg
Upload failed. Max size for files is 10 MB.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
KI-übersetzt