Entwicklerhorror

Legacy-Software als Teufelskreis: Darum ist regelmäßige Softwarepflege ein Muss

Nadine Riederer

© Shutterstock / sashk0

Unternehmen sollten die Pflege ihrer Anwendungen nicht schleifen lassen, sonst wird es am Ende richtig teuer. Eine permanente, inkrementelle Softwarepflege rechnet sich aber nicht nur finanziell.

Regelmäßige Softwarepflege ist unentbehrlich. Wer sie ignoriert, steht meist irgendwann vor einem riesigen Berg an Problemen. Die Zahl der fälligen Bugfixes wächst ins Unüberschaubare, die Flut an gewünschten Verbesserungen und Erweiterungen ist mühsam abzuarbeiten. Außerdem ist die Wahrscheinlichkeit ziemlich groß, dass Middleware, Datenbanken und Programmiertools veraltet sind und schon wegen Sicherheitsaspekten zusätzlich auf Vordermann gebracht werden müssen. Und wer zu lange wartet, kann vielleicht auch nicht mehr auf die Entwickler der Applikationen zurückgreifen, weil sie das Haus inzwischen verlassen haben.

Regelmäßige Softwarepflege – Das sind die Vorteile

Die größte Gefahr ist aber der Teufelskreis, der entstehen kann: Wurde eine Software zu lange nicht mehr angefasst, schwindet die Motivation, sie zu modernisieren. Dann schreitet der Alterungsprozess weiter voran, sie wird zur Legacy-Software und ihr Nutzen nimmt ab. Sie steht immer weiter unten auf der Agenda und wird zunehmend vernachlässigt. Fehler werden toleriert und mit viel Aufwand umgangen, zusätzliche Excel-Tabellen oder ähnliche Provisorien gleichen Defizite aus. Nützliche Anpassungen mit Verbesserungs- und auch Einsparpotential bleiben aus. Soweit sollten Unternehmen es nicht kommen lassen. Betreiben sie eine ständige, inkrementelle Softwarepflege, können sie davon an vielen Stellen profitieren:

  • Der Code einer kontinuierlich betreuten Software ist immer aktuell. Unnötiger Ballast wird regelmäßig entfernt, etwa die Felder „BLZ“ und „Kontonummer“, die seit IBAN nicht mehr gebraucht werden. Zusätzliche Aufgaben und User- oder Abteilungsanforderungen lassen sich reibungslos innerhalb kleiner Projekte umsetzen.
  • Der Aufwand für Entwickler, eine veraltete Software von Grund auf zu überarbeiten, ist gigantisch: sie müssen sich zuerst wieder mühselig einarbeiten. Das erfordert hohe Personalressourcen und treibt die Kosten übermäßig in die Höhe. Wurde die Software hingegen regelmäßig weiterentwickelt, tendiert die Einarbeitungszeit gegen Null. Anpassungen können schnell und risikoarm durchgeführt werden und die dazu notwendigen Werkzeuge sind stets bereit.
  • Anwender akzeptieren kleinere Anpassungen einer Applikation eher, weil die Lernkurve gering bleibt. Große Änderungssprünge hingegen, etwa mit radikal überarbeiteten Benutzeroberflächen oder einer großen Anzahl neuer Features, können User schnell überfordern. Dann sinkt nicht nur die Akzeptanz: im Extremfall sind sogar Schulungen notwendig, die Kosten verursachen und den Anwendungsprozess verzögern.
  • Bei Software, die längere Zeit nicht angefasst wurde, kommt es vor, dass sie in einer Sprache oder einem Programmierstil entwickelt wurde, die nicht mehr aktuell sind. Wenn deren Entwickler die Firma inzwischen aber verlassen haben, ist das Programmier-Know-how nicht mehr verfügbar und muss aufwändig rekonstruiert werden – vor allem dann, wenn der Code schlecht dokumentiert wurde. Eine gut dokumentierte, regelmäßig gepflegte Software mit kurzen Versionsabständen macht es neuen Mitarbeitern oder Dienstleistern einfach in der Einarbeitung.
  • Kleinere Änderungen an der aktuellen Software lassen sich in der Regel schnell durch automatisierte Tests validieren. Das Testen umfangreicher Änderungen hingegen ist mit einem wesentlich höheren Aufwand verbunden zudem bei nicht regelmäßig gepflegter Software meist keine automatisierten Tests vorhanden sind.
  • Jeder Smartphone-Benutzer weiß heute, dass Sicherheitslücken schnell geschlossen werden müssen. Bei Unternehmenssoftware ist es genauso. Erschwerend ist allerdings, dass hier oft kritische und vertrauliche Daten gespeichert werden, entweder Personen-, Konstruktions- oder Angebotsdaten, die für Cyberkriminelle besonders wertvoll sind. Aktuelle Sicherheitslücken werden oft automatisiert innerhalb weniger Stunden oder Tagen weltweit ausgenutzt – die Zeit dann ein Entwicklungsteam aufzubauen, dass diese Lücken in einer veralteten, unbekannten, undokumentierten und manuell zu testenden Anwendung schließt ist sehr begrenzt.

Unternehmen, die ihre Software lange nutzen möchten, müssen sie regelmäßig aktualisieren. Gut gepflegte Software ist ein Dauerbrenner und stellt für Unternehmen ein technisch und wirtschaftlich zuverlässiges Werkzeug dar, mit dem sie am Markt sicher, agil und schnell agieren können.

Geschrieben von
Nadine Riederer

Nadine Riederer ist CEO bei Avision, einem auf Software Revival spezialisierten IT-Dienstleister in Oberhaching bei München.

Kommentare

Hinterlasse einen Kommentar

avatar
4000
  Subscribe  
Benachrichtige mich zu: