Projektart 05

Software modernisierung: schrittweise umbauen oder neu entwickeln?

Die Frage lautet selten „alt oder neu“, sondern: Wie viel vom bestehenden System tragen Sie weiter, und in welchen Schritten? Dieser Leitfaden hilft Ihnen, die Entscheidung vorzubereiten.

Redaktion soft2018 · Zuletzt geprüft am · 7 Min. Lesezeit

Langer Gang eines Rechenzentrums mit schwarzen Serverschränken und einem Monitorwagen am Ende

Das Wichtigste in Kürze

  • Beginnen Sie mit einer Bestandsaufnahme: Funktionen, Daten, Schnittstellen, Wissensträger und Testabdeckung.
  • Schrittweises Vorgehen senkt das Risiko, weil jeder Schritt klein und umkehrbar bleibt; ein Komplettneubau ist nur bei klarer Ausgangslage vertretbar.
  • Planen Sie Datenmigration, Parallelbetrieb und Rückfallweg von Anfang an, nicht erst kurz vor dem Umschalten.
  • Wissen, das nur in einem Kopf steckt, und Software ohne Herstellersupport sind die häufigsten Gründe, nicht länger zu warten.

Für wen das Thema relevant ist

Eine Modernisierung wird fällig, wenn eine Software zwar noch läuft, aber zum Risiko oder zur Bremse geworden ist: Änderungen dauern unverhältnismäßig lang, die Technik wird nicht mehr unterstützt, es gibt kaum noch Entwickler, die sie kennen, oder Schnittstellen zu neuen Systemen sind kaum machbar.

Typische Auslöser (Beispiele, keine Statistik):

  • Eine Excel- oder Access-Lösung ist zur unverzichtbaren Fachanwendung geworden.
  • Die Anwendung läuft auf einer Version einer Programmiersprache oder Datenbank, die keine Sicherheitsupdates mehr erhält.
  • Der Mitarbeiter, der alles weiß, geht in den Ruhestand.
  • Ein ERP-Wechsel steht an, und die Eigenentwicklung hängt daran (siehe Schnittstellen und ERP-Anbindung).

Die Kernfrage: schrittweise modernisieren oder neu entwickeln?

Es gibt keine allgemeingültige Antwort. Die folgende Tabelle hilft, Ihre Lage einzuordnen.

KriteriumEher schrittweise modernisierenEher neu entwickeln
Fachliche Regelngewachsen, nur teilweise dokumentiertklar beschrieben oder stark veraltet
BetriebsrisikoSystem darf kaum ausfallenAusfallfenster oder Parallelbetrieb tragbar
Technische Basisgrundsätzlich tragfähig, einzelne Teile veraltetPlattform ist technisch am Ende
Wissen im TeamCode ist lesbar, Wissen teilweise vorhandenCode kaum verständlich, niemand kennt ihn
Testabdeckungvorhanden oder nachrüstbarnicht vorhanden und kaum nachrüstbar
Budget und Zeitverteilt auf mehrere Schrittegrößeres Vorhaben einmalig tragbar
Anforderungenwachsen im Betriebhaben sich grundlegend geändert
Datenmodellbrauchbarmuss grundlegend umgebaut werden

Wenn die meisten Zeilen links zutreffen, spricht vieles für schrittweises Vorgehen. Bei vielen Kreuzen rechts kann ein Neubau die bessere Wahl sein. Für den Vergleich mit fertiger Software hilft der Ratgeber Individualsoftware oder Standardsoftware, denn manchmal ist die dritte Antwort, das Altsystem durch ein Standardprodukt zu ersetzen.

Die gängigen Strategien: Rehost bis Replace

Für die Einordnung gibt es in der IT eine verbreitete „R“-Systematik. Bekannt ist sie aus der Cloud-Migration; sie lässt sich auf die Modernisierung allgemein übertragen. Amazon Web Services nennt in einer Übersicht sechs Strategien. Die Bezeichnungen variieren je nach Quelle; die folgende Zuordnung orientiert sich daran.

StrategieBedeutungEignung
RehostAnwendung mit wenig oder ohne Änderung auf neue Infrastruktur verschieben („Lift and Shift“)Schnell, löst aber keine Probleme im Code
ReplatformWenige gezielte Anpassungen, etwa ein verwalteter Datenbankdienst, ohne die Architektur zu ändernMittlerer Aufwand, moderater Nutzen
RefactorInnere Struktur verbessern, Verhalten bleibt gleichMacht spätere Änderungen billiger
RearchitectAnwendung um eine neue Architektur herum neu aufbauenHoher Aufwand, hohe Wirkung
ReplaceDurch ein anderes Produkt ersetzen (bei AWS „Repurchase“)Sinnvoll, wenn Standardsoftware reicht
Retire / RetainAbschalten, wenn unbenutzt, oder bewusst unverändert lassenOft unterschätzt: Nicht alles muss modernisiert werden

Hinweis: AWS fasst Refactor und Re-architect zu einer Strategie zusammen. Die Trennung hier dient der Verständlichkeit.

Refactoring in einem Satz

Refactoring bezeichnet nach Martin Fowler das Umstrukturieren von Code in kleinen, abgesicherten Schritten, bei dem das äußere Verhalten gleich bleibt. Ziel ist, Software leichter verständlich und billiger änderbar zu machen. Ohne automatisierte Tests ist das riskant, weil niemand sicher sagen kann, dass das Verhalten unverändert blieb.

Das Strangler-Muster in einfachen Worten

Martin Fowler beschreibt mit dem Strangler-Fig-Muster ein schrittweises Vorgehen: Statt das Altsystem auf einen Schlag zu ersetzen, wächst das neue System um das alte herum. Neue Funktionen entstehen im neuen Teil, bestehende Funktionen werden nach und nach an dafür geeigneten Stellen herausgelöst und verlagert. Alt und Neu laufen währenddessen zusammen, über eine Übergangsarchitektur. Das Altsystem wird erst abgeschaltet, wenn nichts Wichtiges mehr darin steckt.

Der Vorteil: Jeder Schritt ist klein, das Risiko bleibt überschaubar, und der Nutzen zeigt sich früh. Der Preis: Sie betreiben zeitweise zwei Systeme und müssen Übergangslösungen bauen, die später wieder verschwinden.

Erste Schritte: Das sollten Sie vor dem Angebot klären

  • Bestandsaufnahme: Welche Funktionen hat die Software wirklich, welche werden genutzt, welche nicht?
  • Wissensträger: Wer kennt Fachlogik und Technik? Was ist nirgends aufgeschrieben?
  • Quellcode und Zugänge: Liegen Code, Server-Zugänge, Lizenzen und Schlüssel bei Ihnen?
  • Abhängigkeiten: Welche Programmiersprache, Bibliotheken, Datenbank und Betriebssystemversion laufen? Gibt es dafür noch Herstellersupport?
  • Schnittstellen: Mit welchen Systemen tauscht die Software Daten aus?
  • Testabdeckung: Gibt es automatisierte Tests? Falls nicht: Welche Abläufe müssen vor jeder Änderung von Hand geprüft werden?
  • Daten: Wie viele Daten gibt es, wie sauber sind sie, was darf nach der Migration entfallen?
  • Betriebsfenster: Wie lange darf das System im Zweifel stehen?

Die Ergebnisse gehören in ein strukturiertes Dokument. Wie man Anforderungen aufschreibt, zeigt der Ratgeber Lastenheft für Software und das Werkzeug Projekt vorbereiten.

Risiken im Bestand

Wissen in einem einzigen Kopf

Wenn nur eine Person das System versteht, ist das ein Betriebsrisiko, bevor es ein Technikproblem ist. Maßnahmen: Abläufe dokumentieren, Wissen in Gesprächen festhalten, Verhalten mit Tests beschreiben.

Laufzeitumgebungen ohne Support

Programmiersprachen und Frameworks haben Supportzeiträume. Ein Beispiel: PHP unterstützt jede Version laut php.net vier Jahre, zwei Jahre mit Fehlerkorrekturen, zwei weitere nur mit Sicherheitskorrekturen. Laut der Übersicht, abgerufen am 9. November 2026, endet der Sicherheitssupport für PHP 8.2 am 31. Dezember 2026. Prüfen Sie für Ihre eigene Technik die offizielle Supportseite des Herstellers und tragen Sie das Datum in Ihre Planung ein.

Sicherheitsupdates

Das BSI behandelt Patch- und Änderungsmanagement im IT-Grundschutz-Kompendium als eigenen Baustein (OPS.1.1.3). Wer Software ohne Sicherheitsupdates betreibt, trägt das Risiko selbst, besonders bei Systemen, die aus dem Internet erreichbar sind. Fragen Sie Ihre IT-Sicherheitsverantwortlichen, wie das in Ihrem Unternehmen geregelt ist.

Migration, Parallelbetrieb und Umschalten

  • Datenmigration: Welche Daten wandern, welche werden bereinigt oder archiviert? Wer prüft die Vollständigkeit? Legen Sie Abgleichskriterien fest (Anzahl, Summen, Stichproben).
  • Parallelbetrieb: Läuft das neue System zunächst neben dem alten, und wie werden Doppelerfassungen vermieden?
  • Umschaltung (Cutover): Stichtag oder Etappen? Wer entscheidet, und anhand welcher Kriterien?
  • Rückfallweg (Rollback): Wie kehren Sie zurück, wenn nach dem Start Fehler auftreten? Bis wann ist das möglich?

Beispielszenario: Auftragsverwaltung eines Maschinenbauers

Beispielszenario, frei erfunden und kein realer Fall. Angenommen, ein mittelständischer Betrieb in der Region Rhein-Neckar verwaltet Aufträge mit einer vor vielen Jahren selbst gebauten Anwendung. Sie läuft auf einer nicht mehr unterstützten Laufzeitumgebung, ein einzelner Mitarbeiter kennt die Preislogik, und Tests gibt es nicht.

Ein mögliches schrittweises Vorgehen:

  1. Bestandsaufnahme: Funktionen und Datenflüsse erfassen, Preislogik gemeinsam mit dem Wissensträger beschreiben.
  2. Absichern: Für die wichtigsten Abläufe Tests schreiben, Quellcode und Zugänge in Ihre Verwaltung überführen.
  3. Plattform: Laufzeitumgebung auf eine unterstützte Version bringen (Replatform), soweit der Code es zulässt.
  4. Herauslösen: Die Angebotserstellung als erstes Modul neu bauen, das Altsystem ruft sie über eine Schnittstelle auf (Strangler-Muster).
  5. Parallelbetrieb: Neue Angebote entstehen im neuen Modul, Altaufträge bleiben im alten System, ein Abgleich vergleicht Summen.
  6. Weitere Module: Auftragsverwaltung und Lager folgen in späteren Etappen, danach wird das Altsystem abgeschaltet.

Welche Reihenfolge in einem realen Fall sinnvoll ist, hängt von Risiko und Nutzen ab, nicht von diesem Beispiel.

Phasen und Ergebnisse, die Sie verlangen sollten

Typische Phasen: Assessment, Zielbild und Migrationsplan, Absicherung durch Tests, Umsetzung in Etappen, Parallelbetrieb, Umschaltung, Abschaltung des Altsystems, Übergabe.

Verlangen Sie von einem Dienstleister:

  • einen Assessment-Bericht mit Funktionsumfang, Abhängigkeiten, Risiken und Empfehlung samt Begründung der Alternativen,
  • einen Migrationsplan mit Etappen, Abhängigkeiten, Datenmigration und Abschaltkriterien,
  • einen Rückfallplan für jede Umschaltung,
  • Testkonzept und Testfälle für das bestehende Verhalten,
  • Dokumentation, Quellcode, Zugänge und Schlüssel auf Ihren Namen,
  • eine Aufstellung dessen, was das Altsystem kann und was bewusst entfällt.

Wie Sie Anbieter vergleichen, steht im Ratgeber Softwaredienstleister auswählen.

Kosten- und Zeittreiber

Seriöse Preise lassen sich ohne Prüfung des Bestands nicht nennen. Aufwand und Dauer hängen vor allem ab von:

  • Umfang und Qualität des vorhandenen Codes und seiner Dokumentation,
  • Testabdeckung und Aufwand, sie nachzurüsten,
  • Datenmenge, Datenqualität und Migrationsregeln,
  • Zahl und Art der Schnittstellen zu anderen Systemen,
  • Länge des Parallelbetriebs,
  • Verfügbarkeit der Wissensträger,
  • Anforderungen an Ausfallsicherheit.

Mehr zur Preisstruktur steht im Ratgeber Was kostet Individualsoftware?. Wenn am Ende ein Neubau steht, hilft der Überblick zu Individualsoftware.

Betrieb nach der Modernisierung

Modernisierung ist kein Endzustand. Vereinbaren Sie, wer nach dem Start Updates einspielt, Abhängigkeiten pflegt und Supportzeiträume beobachtet. Legen Sie fest, wie oft die Dokumentation aktualisiert wird und wie Wissen im Unternehmen bleibt, damit Sie nicht erneut von einer Person abhängen.

Warnzeichen im Angebot

  • Ein Festpreis für den Komplettneubau, ohne dass der Bestand angesehen wurde.
  • Kein Assessment, keine Aussage zu Alternativen wie Refactoring oder Standardsoftware.
  • Die Datenmigration wird nicht beschrieben oder als „Nebensache“ behandelt.
  • Kein Parallelbetrieb und kein Rückfallweg.
  • Der bestehende Funktionsumfang ist nicht dokumentiert, es heißt nur „wie bisher, aber neu“.
  • Quellcode und Zugänge bleiben beim Dienstleister.
  • Es wird versprochen, alles in einem Schritt zu ersetzen, ohne Risiken zu nennen.

Nächster Schritt

Halten Sie fest, was Ihre Software heute tut, wer sie kennt und wo die Risiken liegen. Mit dem Werkzeug Projekt vorbereiten erstellen Sie daraus eine kopierbare Beschreibung für Angebotsanfragen. Zur Struktur Ihrer Anforderungen passt der Ratgeber Lastenheft für Software.

Häufige Fragen

Ist ein Neubau nicht sauberer als ständiges Flicken?

Er fühlt sich oft sauberer an, enthält aber das Risiko, jahrelang gewachsenes Fachwissen zu vergessen. Alte Systeme enthalten Regeln, die niemand mehr aufgeschrieben hat. Ein Neubau ist sinnvoll, wenn die Anforderungen klar sind oder die Technik keine schrittweise Änderung zulässt.

Wie lange läuft das Altsystem während der Modernisierung weiter?

Meist bis zum letzten Umschalten, und oft parallel zum neuen Teil. Das verursacht Doppelaufwand, den Sie einplanen sollten. Im Angebot sollte stehen, wann welcher Teil abgeschaltet wird.

Was, wenn der ursprüngliche Entwickler nicht mehr erreichbar ist?

Dann lassen Sie zuerst das Verhalten dokumentieren und mit Tests absichern, bevor Sie etwas ändern. Prüfen Sie außerdem, ob Quellcode, Zugangsdaten und Serverzugänge vollständig bei Ihnen liegen.

Brauchen wir für eine Modernisierung ein Lastenheft?

Sie brauchen eine Beschreibung dessen, was die Software heute leistet und was künftig anders sein soll. Das muss kein formales Lastenheft sein, aber eine strukturierte Fassung hilft beim Vergleich von Angeboten.

Quellen

  1. Strangler Fig Martin Fowler (martinfowler.com) · abgerufen am 9. November 2026
  2. 6 Strategies for Migrating Applications to the Cloud Amazon Web Services (AWS Enterprise Strategy Blog) · abgerufen am 9. November 2026
  3. Refactoring Martin Fowler (refactoring.com) · abgerufen am 9. November 2026
  4. Supported Versions The PHP Group (php.net) · abgerufen am 9. November 2026
  5. OPS.1.1.3 Patch- und Änderungsmanagement, IT-Grundschutz-Kompendium Bundesamt für Sicherheit in der Informationstechnik (BSI) · abgerufen am 9. November 2026

So ist dieser Beitrag entstanden

Recherchiert anhand der Beschreibung des Strangler-Musters und des Refactoring-Begriffs bei Martin Fowler, der AWS-Übersicht zu Migrationsstrategien, der PHP-Supportübersicht und des BSI-Bausteins zum Patch-Management; Angaben am 9. November 2026 an den Quellen geprüft.

soft2018.eu ist ein unabhängiger Ratgeber. Wir entwickeln keine Software, empfehlen keine Anbieter gegen Bezahlung und beraten nicht im Einzelfall. Rechtliche Hinweise sind allgemeine Informationen, keine Rechtsberatung.

Vorhaben skizzieren, bevor Sie Angebote einholen

Die Projektskizze fragt Ziel, Nutzer, Systeme und Rahmen ab. Sie entsteht nur in Ihrem Browser und lässt sich an mehrere Anbieter schicken.

Projekt vorbereiten