Konferenz
07.04.2025, 10:00 Uhr
DWX hakt nach: Lassen sich technische Schulden vermeiden?
Software altert, wenn nicht fähige Architekten und Softwareentwickler entgegen wirken. Wie das geht, erklärt Developer-Week-Sprecherin Dr. Carola Lilienthal.

(Quelle: Dr. Carola Lilienthal)
Das Leben des Softwareentwicklers könnte so schön sein, wenn es a) die technischen Schulden und b) das Management nicht gäbe. Letzteres muss verstehen, dass erstere entstehen können und beseitigt werden müssen. Dr. Carola Lilienthal, Geschäftsführerin, Senior Softwarearchitektin bei WPS - Workplace Solutions GmbH und Sprecherin auf der DWX Developer Week, erklärt in ihrem Vortrag Technische Schulden dem Management erklären Dank ihrer tiefgreifenden Kenntnisse über nachhaltige Softwarearchitekturen, wie diese Kluft überwunden werden kann.
Besser ist aber, wenn technische Schulden erst gar nicht entstehen. In ihrer Session Langlebige Softwarearchitekturen – Technische Schulden vermeiden geht Carola auf probate Mittel gegen diese Probleme ein. DWX hat sie vorab schon nach ein paar Tipps gefragt.
Was sind die häufigsten Ursachen dafür, dass Softwaresysteme im Laufe der Zeit unwartbar werden?
Dr. Carola Lilienthal: Das sind:
- Keine Zeit für Refactorings, weil Erweiterungen immer ein Überdenken der Architektur erfordern, die zu Refactorings führen.
- Mangelndes Architekturwissen im Entwicklungsteam, was dazu führt, dass die Software entweder ohne Architektur-Knowhow begonnen oder in der Wartung ohne Architektur-Knowhow weiterentwickelt wird.
- Geringe oder gar nicht vorhandene Testabdeckung, so dass jede Änderung oder Anpassung einem Kamikaze-Einsatz gleicht und deshalb überall nur angebaut und nichts umgebaut wird.
Welche Prinzipien oder Strategien helfen dabei, eine Architektur zu entwerfen, die auch nach Jahrzehnten noch wartbar bleibt?
Carola: Die beiden Grundprinzipien für jede langlebige Softwarearchitektur sind hohe Kohäsion und lose Kopplung. Auf allen Ebenen der Architektur (Module/Microservices, Packages/Namespaces, Klassen/Funktionen) müssen Einheiten programmiert werden, die lokal durch die in ihr enthaltenen Einheiten eine Aufgabe/Funktionalität erledigen (hohe Kohäsion), eine schmale Schnittstelle nach Außen anbieten und keine anderen Einheiten für die Erledigung der Aufgabe benötigen (lose Kopplung).
Gibt es Beispiele für gute Legacy, also alte Softwaresysteme, die trotz ihres Alters erfolgreich weiterentwickelt werden?
Carola: Ja, es gibt Beispiele von Softwaresystemen, die über viele Jahre weiterentwickelt und dabei stetig größer werden. Der entscheidende Faktor ist, dass es einen oder am besten mehrere gut ausgebildete Architekten gibt, die am Anfang und in der Weiterentwicklung für eine langlebige Softwarearchitektur sorgen.
Wer mehr wissen und Carola kennen lernen will, sollte auf die DWX Developer Week nach Mannheim kommen. Hier spricht sie am 2. Juli 2025 um 13.30 Uhr zu langlebigen Softwarearchitekturen und am 3. Juli 2025 um 14.00 Uhr zur Kommunikation mit dem Management. Mehr Informationen gibt es auf www.developer-week.de.