software-wartung24.de
· 6 Min. Lesezeit· Sandor Farkas

Software-Audit: Was man vor der Übernahme eines Legacy-Systems prüfen muss

Kosten & PlanungLegacy GrundlagenSoftware-AuditDue Diligence

Ein Software-Audit vor der Übernahme ist kein Luxus. Er ist professionelles Handeln.

Sie übernehmen ein Unternehmen. Oder Sie wechseln den IT-Dienstleister. Oder der bisherige Entwickler verlässt das Haus, und die Verantwortung für ein System liegt plötzlich bei Ihnen. Was auch immer der Anlass: Wer ein Legacy-System übernimmt, sollte vorher wissen, womit er es zu tun hat.

Dieser Artikel erklärt, was bei einem Software-Audit vor der Übernahme geprüft wird, welche Fragen Sie stellen sollten und warum dieser Schritt den Unterschied zwischen einer kontrollierten Übergabe und einer bösen Überraschung macht.

Was ist ein Software-Audit?

Ein Software-Audit ist eine strukturierte Bestandsaufnahme eines bestehenden Systems. Kein Umbau. Keine Verbesserung. Nur Analyse.

Das Ergebnis ist ein klares Bild: Was kann das System? Was kann es nicht? Wo liegen Risiken? Was würde es kosten, diese Risiken zu reduzieren?

Ein Audit ist die Grundlage für alle weiteren Entscheidungen. Ohne ihn übernehmen Sie die Katze im Sack. Mit ihm kennen Sie den Inhalt, bevor Sie die Hand aufmachen.

Warum ist ein Audit vor der Übernahme so wichtig?

Legacy-Systeme haben eine Geschichte. Diese Geschichte ist selten vollständig dokumentiert.

Was von außen wie ein stabiles, laufendes System aussieht, kann innen ganz anders aussehen. Technische Schulden, die sich über Jahre angesammelt haben. Abhängigkeiten, die niemand mehr kennt. Sicherheitslücken, die nie geschlossen wurden. Zugangsdaten, die bei einer einzigen Person liegen, die bald nicht mehr erreichbar sein wird.

Wer ein System übernimmt, ohne es vorher zu prüfen, übernimmt all das mit. Die Probleme. Die Risiken. Die Kosten. Und er hat im Nachhinein keine Möglichkeit mehr, darüber zu verhandeln.

Ein Software-Audit vor der Übernahme schafft Klarheit. Er verhindert unangenehme Überraschungen. Und er gibt Ihnen eine sachliche Grundlage für Gespräche mit dem Übergeber.

Was wird bei einem Software-Audit geprüft?

Ein guter Audit deckt mehrere Bereiche ab. Nicht jeder ist in jeder Situation gleich kritisch. Aber alle sollten zumindest angeschaut werden.

Code-Qualität und Plattform-Alter

Wie alt ist der Code? In welchen Programmiersprachen und Versionen wurde er geschrieben? Gibt es Teile, die von niemandem mehr verstanden werden?

PHP 5, Java 6, Symfony 2: Solche Versionen sind längst ohne Support. Wer ein System in diesen Technologien übernimmt, übernimmt auch das Risiko, das mit veralteten Plattformen verbunden ist. Was Legacy Software in der Praxis bedeutet und warum sie kein Schimpfwort ist, erklärt unser Glossar-Eintrag.

Ein Audit schaut auch auf die Codestruktur selbst. Ist der Code lesbar? Gibt es klare Zuständigkeiten? Oder ist das System über die Jahre zu einem schwer durchschaubaren Geflecht geworden?

Abhängigkeiten

Moderne Software steht nicht allein. Sie nutzt Bibliotheken und Frameworks von Drittanbietern. Diese sogenannten Dependencies müssen regelmäßig aktualisiert werden, da sonst Sicherheitslücken entstehen.

Ein Audit zeigt: Welche Abhängigkeiten sind im Einsatz? Wie veraltet sind sie? Gibt es bekannte Sicherheitslücken darin?

Ein System, das auf hunderten veralteten Paketen aufgebaut ist, trägt ein erhebliches Risiko. Auch wenn der eigentliche Code stabil läuft.

Sicherheit

Sicherheit ist bei älteren Systemen oft der kritischste Bereich.

Gibt es offene CVEs (Common Vulnerabilities and Exposures, also bekannte und dokumentierte Sicherheitslücken)? Werden Passwörter sicher gespeichert? Gibt es SQL-Injection-Risiken oder Cross-Site-Scripting-Anfälligkeiten? Läuft die Verbindung über verschlüsseltes HTTPS?

Viele dieser Probleme sind von außen nicht sichtbar. Sie tauchen nicht im Browser auf. Sie sind still und warten darauf, ausgenutzt zu werden. Ein Audit macht sie sichtbar, bevor jemand anderes das tut.

Dokumentation

Gute Dokumentation ist selten. Ohne sie ist ein System kaum zu übernehmen.

Gibt es eine technische Dokumentation? Einen Überblick über die Architektur? Informationen darüber, wie das System aufgesetzt und betrieben wird? Beschreibungen wichtiger Prozesse und Schnittstellen?

Fehlt diese Dokumentation, steigt der Aufwand für Einarbeitung, Wartung und Weiterentwicklung erheblich. Ein Audit hält fest, was vorhanden ist und was fehlt.

Infrastruktur und Betrieb

Wo läuft das System? Auf welchen Servern? Mit welchen Betriebssystem-Versionen? Gibt es ein funktionierendes Backup-System? Wer ist beim Hosting-Anbieter hinterlegt?

Diese Fragen klingen banal. In der Praxis führen sie aber regelmäßig zu Überraschungen. Systeme auf abgekündigten Serverversionen. Backups, die seit Monaten nicht mehr funktionieren. Zugangsdaten, die nur eine Person kannte und mit der diese Person gegangen ist.

Versionskontrolle und Deployment

Gibt es eine Versionskontrolle? Git, oder irgendetwas anderes? Oder werden Änderungen direkt auf dem Produktionssystem gemacht?

Ohne Versionskontrolle ist unklar, was wann geändert wurde. Fehler lassen sich kaum rückgängig machen. Neue Entwickler haben keinen Ausgangspunkt.

Auch der Deployment-Prozess, also wie Änderungen vom Entwickler auf den Server kommen, wird geprüft. Manueller FTP-Upload oder automatisierter Prozess? Das sagt viel über den reifegrad des Systems aus.

Welche Fragen sollten Sie stellen?

Vor der Übernahme haben Sie eine Position, die Sie danach verlieren. Sie können fragen, fordern und ablehnen. Das sollten Sie nutzen.

Diese Fragen sind ein guter Ausgangspunkt:

Zur Plattform: Welche PHP-, Python- oder Java-Version läuft produktiv? Wann wurde zuletzt ein Update eingespielt?

Zur Sicherheit: Gibt es bekannte offene Sicherheitslücken? Wann wurde zuletzt ein Sicherheits-Audit durchgeführt?

Zum Betrieb: Wo läuft das System? Wer ist Ansprechpartner beim Hosting-Anbieter? Gibt es einen Notfallplan bei einem Ausfall?

Zur Dokumentation: Was ist dokumentiert? Wo liegt die Dokumentation? Wer kennt das System am tiefsten?

Zu den Kosten: Was kostet der laufende Betrieb pro Monat? Gibt es absehbare Investitionen in den nächsten zwölf Monaten?

Wenn auf diese Fragen keine Antworten kommen, ist das selbst eine Antwort. Eine wichtige.

Was kostet ein Software-Audit vor der Übernahme?

Das hängt vom System ab.

Ein überschaubares System mit klaren Grenzen und vorhandener Dokumentation lässt sich in zwei bis drei Tagen analysieren. Ein gewachsenes System mit mehreren Subsystemen, fehlender Dokumentation und zehn Jahren Geschichte kann eine bis zwei Wochen in Anspruch nehmen.

Die Kosten bewegen sich je nach Umfang typischerweise zwischen einigen hundert und einigen tausend Euro.

Das klingt nach Aufwand. Ist es auch. Aber es ist deutlich weniger Aufwand als die Konsequenzen einer Übernahme ohne Audit. Die technischen Schulden, die man ungeprüft mitübernimmt, können das Vielfache kosten. Ein Audit ist eine Investition, keine Ausgabe.

Was passiert ohne Audit?

Ein System ohne Vorabprüfung zu übernehmen bedeutet, Verantwortung ohne Information zu übernehmen.

Das kann gutgehen. Manchmal ist ein System besser als erwartet.

Aber es kann auch bedeuten: Sicherheitslücken, die unmittelbar ausgenutzt werden. Betriebskosten, die deutlich höher liegen als geplant. Systeme, die sich kaum weiterentwickeln lassen. Abhängigkeiten von Technologien oder einzelnen Personen, die man nicht kannte und die jetzt fehlen.

Wer die Software-Wartung für ein System übernimmt, muss das System kennen. Ohne dieses Wissen ist jede Verantwortungsübernahme ein Blindflug.

Fazit: Prüfen bevor Sie übernehmen

Ein Software-Audit vor der Übernahme ist kein Misstrauensvotum gegenüber dem Vorgänger. Er ist eine sachliche Grundlage für eine gute Entscheidung.

Er zeigt, was vorhanden ist. Er benennt Risiken. Er macht Kosten planbar.

Wer ein Legacy-System übernehmen möchte und wissen will, womit er es zu tun hat: Sprechen Sie uns an. Das Erstgespräch ist kostenlos. Wir analysieren Ihr System und liefern ein ehrliches Bild, bevor Sie eine Entscheidung treffen.

Weitere Artikel

· 8 Min. Lesezeit

ChatGPT API in eine PHP-Anwendung einbinden – so geht's

Sie wollen die ChatGPT API in PHP einbinden, ohne Ihre bestehende Anwendung neu zu bauen? Dieser Artikel zeigt den Weg Schritt für Schritt. Mit konkretem Code-Beispiel und klaren Hinweisen zur DSGVO.

KI & ModernisierungPHPOpenAI
· 7 Min. Lesezeit

KI in Legacy-Software: Was geht, was nicht geht

KI Legacy Software ist machbar, oft sogar leichter als gedacht. Was technisch wirklich möglich ist, wo die Grenzen liegen und warum Ihr Altsystem selten das Problem ist, erklärt dieser Artikel ohne Fachchinesisch.

KI & ModernisierungLegacy GrundlagenModernisierung
· 6 Min. Lesezeit

Muss ich meine Software neu bauen um KI nutzen zu können?

Viele glauben, KI bestehende Software lasse sich nur durch einen Neubau nutzbar machen. Das stimmt selten. Dieser Artikel zeigt, wann ein Altsystem KI-fähig ist und wann ein Neubau wirklich nötig wird.

KI & ModernisierungModernisierungLegacy Grundlagen

Bereit, Ihre Software in gute Hände zu geben?

Das Erstgespräch ist kostenlos und unverbindlich. Wir schauen uns an, was Sie haben, und sagen Ihnen ehrlich, was möglich ist.

Kostenlose Erstberatung anfragen →