Situation · Wissen ist weg

Der Entwickler ist weg, das System läuft noch: so übernehme ich eine verwaiste PHP-Anwendung

Der Entwickler ist in Rente, die Agentur hat zugemacht, der Freelancer antwortet nicht mehr. Die Anwendung läuft weiter, aber niemand kann sie anfassen. Was in den ersten 48 Stunden zu sichern ist, welche drei Wege es gibt, und was eine geordnete Übernahme kostet.

Der Anruf klingt immer ähnlich. „Unser Warenwirtschaftssystem hat ein Entwickler gebaut, der ist seit März in Rente. Es läuft. Aber jetzt brauchen wir eine kleine Änderung und wissen nicht mal, wo der Code liegt.“ Manchmal ist es keine Rente, sondern eine Agentur, die Insolvenz angemeldet hat, oder ein Freelancer, der seit drei Monaten nicht mehr auf E-Mails antwortet.

Das Unangenehme an dieser Situation: Sie fühlt sich nicht dringend an. Das System läuft ja. Deshalb wird sie aufgeschoben, bis ein Hoster eine Frist setzt, ein Kunde eine Schnittstelle braucht oder ein Server ausfällt. Dann ist sie dringend, und dann ist sie teuer.

Was Sie in den ersten 48 Stunden sichern

Bevor irgendjemand über Modernisierung redet, geht es um Besitz. Ein System, dessen Zugänge Sie nicht kontrollieren, gehört Ihnen nur auf dem Papier.

  1. Zugänge inventarisieren und wechseln. Hosting-Panel, SSH, Datenbank, Domain-Registrar, DNS, E-Mail-Postfächer, die die Anwendung nutzt, API-Schlüssel bei Zahlungsanbieter, Versand, Newsletter. Wer die Passwörter nicht hat, lässt sie über den jeweiligen Anbieter zurücksetzen. Der Registrar ist der wichtigste Posten: Wer die Domain kontrolliert, kontrolliert das Geschäft.
  2. Ein vollständiges Backup ziehen und woanders ablegen. Dateien und Datenbank, nicht nur das, was der Hoster automatisch macht. Prüfen Sie, ob das Backup sich zurückspielen lässt, sonst ist es keins.
  3. Aufschreiben, was läuft. Welche Domains, welche Cronjobs, welche Schnittstellen zu anderen Systemen, welche E-Mails die Anwendung verschickt. Fragen Sie die Anwender, die wissen mehr als jede Doku.
  4. Lizenzen und Verträge sichten. Gehört Ihnen der Quellcode laut Vertrag? Bei Agenturen ist das nicht selbstverständlich. Gibt es Lizenzen für Bibliotheken oder Verschlüsselung, die an den alten Entwickler gebunden sind?

Das können Sie selbst machen. Wenn Sie es nicht selbst machen wollen, ist es der erste halbe Tag des Befunds.

Was passiert, wenn Sie nichts tun

Das System läuft weiter, bis es das nicht mehr tut. Der Auslöser ist erfahrungsgemäß einer von vier: Der Hoster stellt die PHP-Version ab, ein Zahlungsanbieter schaltet seine alte API ab, ein Zertifikat läuft ab, oder die Festplatte ist voll, weil ein Log niemand rotiert. In allen vier Fällen steht dann jemand vor einem System, das er nicht kennt, ohne Doku, unter Zeitdruck. Das ist die teuerste Konstellation, die es in meinem Beruf gibt, und sie kostet nicht nur Geld, sondern Tage Ausfall.

Die drei realistischen Optionen

Option A: Einen Freelancer für die aktuelle Änderung holen

Jemand von einer Plattform, der die eine Änderung macht. Günstig, schnell, erledigt.

Woran es scheitert: Sie haben danach dasselbe Problem mit einem weiteren Namen im Adressbuch. Der Freelancer hat nichts dokumentiert, weil das nicht beauftragt war, und beim nächsten Mal ist er ausgelastet. Für eine einmalige, kleine Änderung ist Option A richtig. Für ein System, von dem Ihr Geschäft abhängt, verschiebt sie das Problem um ein Quartal.

Option B: Agentur beauftragen, neu bauen

Die Agentur schaut sich das Alte kurz an, empfiehlt einen Neubau, und nennt sechs bis zwölf Monate.

Woran es scheitert: Niemand weiß, was das alte System alles tut. Die Spezifikation für den Neubau wird aus dem Gedächtnis der Anwender geschrieben, und die Sonderfälle, „damals wegen des einen Kunden“, fehlen. Sie tauchen nach dem Go-live als Fehler auf, während beide Systeme parallel laufen. Manchmal ist ein Neubau richtig. Aber ohne Befund des Alten ist er eine Wette, und die Agentur trägt das Risiko nicht.

Option C: Geordnete Übernahme

Zugänge und Backup sichern, dann Befund: Ich lese Code, Datenbank und Betrieb und schreibe auf, was das System tut, wo es brennt und was es kostet, es zu behalten. Danach entweder Werkstatt-Bereitschaft, wenn das System solide ist und nur einen Ansprechpartner braucht, oder eine Modernisierung in Etappen, wenn es Substanzprobleme hat.

Woran es scheitert: Daran, dass der Befund die falsche Antwort liefern könnte. Manchmal steht darin, dass das System nicht zu halten ist. Dann haben Sie einen Festpreis für ein Dokument bezahlt, das Ihnen eine teure Fehlentscheidung erspart hat. Ich halte das für den besten Fall von Scheitern, den es gibt.

Die Reihenfolge, die ich empfehle

  1. Heute: die 48-Stunden-Liste oben. Zugänge, Backup, Inventar, Verträge.
  2. Diese Woche: Befund. Zwei bis drei Werktage lesender Zugriff. Sie bekommen ein Dokument mit Systembeschreibung, Risiko-Karte (was ist akut, was kann warten), Abhängigkeiten, und dem Aufwandsband für Minimal-Migration und Vollmodernisierung. Dazu 60 Minuten Durchsprache.
  3. Sofortmaßnahmen, wenn nötig. Manche Befunde haben eine rote Seite: Passwörter im Quellcode, offene Admin-URLs, kein funktionierendes Backup. Das schließe ich vor allem anderen, in Tagen, nicht Wochen.
  4. Betreuung oder Modernisierung. Werkstatt-Bereitschaft für ein System, das läuft und einen Ansprechpartner braucht. Vollmodernisierung in Etappen für ein System, das seine nächsten zehn Jahre verdienen soll. Beides mit Festpreis, beides ohne Big Bang.

Was ich anders mache als der Entwickler vorher

Ich dokumentiere für den Fall, dass ich selbst ausfalle. Git, ein README, das ein Fremder versteht, eine Docker-Umgebung, die den Betrieb nachstellt, ein Änderungsprotokoll. Das ist keine Geste, das ist die einzige Versicherung gegen die Situation, in der Sie gerade stecken. Sie sollen mich anrufen, weil Sie wollen, nicht weil Sie müssen.

Für wen dieser Weg nicht passt

Wenn das System eine Webvisitenkarte mit Kontaktformular ist, brauchen Sie keinen Befund, sondern einen Freelancer für einen Nachmittag. Wenn Sie ohnehin nächstes Jahr auf eine Standardsoftware wechseln und das Alte nur bis dahin durchhalten muss, reicht oft die Werkstatt-Bereitschaft ohne alles andere. Beides sage ich Ihnen im kostenlosen Kurz-Check, bevor Sie etwas beauftragen.

Häufige Fragen

Was mich in dieser Situation meistens gefragt wird

Wir haben keinen Quellcode, nur die laufende Webseite. Geht das trotzdem?

Fast immer. Bei PHP liegt der Quellcode auf dem Server, auf dem die Anwendung läuft. Mit Zugang zum Hosting bekomme ich ihn. Was fehlen kann, ist die Versionsgeschichte, und die ist verzichtbar. Kritisch wird es nur bei verschlüsseltem Code (ionCube, Zend Guard), das kläre ich in der ersten Stunde.

Der alte Entwickler hat noch alle Zugänge. Was tun?

Erst die Zugänge wechseln, dann das Gespräch suchen, nicht umgekehrt. Hosting-Passwort, Domain-Registrar, Datenbank, Deploy-Keys, API-Schlüssel von Zahlungs- und Mail-Anbietern. Das ist keine Unterstellung, das ist Sorgfaltspflicht. Wenn der Entwickler kooperativ ist, hilft er dabei sogar.

Wie lange dauert es, bis Sie das System „können“?

Für den Befund zwei bis drei Werktage. Danach kenne ich Struktur, Abläufe, Cronjobs, Schnittstellen und die Stellen, die gefährlich sind. Bis ich jede Sonderregel im Detail kenne, dauert es länger, das kommt mit der Arbeit. Nach dem Befund kann ich das System aber betreiben und ändern, und das ist, was zählt.

Lohnt es sich überhaupt, das alte System zu behalten?

Das ist die Frage, die der Befund beantwortet, und zwar mit Begründung. Wenn das System 15 Jahre Sonderfälle Ihres Geschäfts enthält, die nirgendwo dokumentiert sind, ist es meist wertvoller als jede Neuentwicklung. Wenn es ein dünner Aufsatz auf einem toten Framework ist, sage ich Ihnen das auch. Beides steht dann schwarz auf weiß.

Was kostet die Übernahme?

Der Befund hat einen Festpreis, der auf jedes Folgepaket angerechnet wird. Die laufende Betreuung danach ist die Werkstatt-Bereitschaft mit monatlichem Preis, monatlich kündbar. Beide Zahlen stehen unter „Was es kostet“. Wenn nach dem Befund eine Modernisierung nötig ist, bekommen Sie dafür einen Festpreis in Etappen.

Wir wollen langfristig eine Agentur. Sind Sie dann überflüssig?

Nein, dann bin ich die Übergabe. Der Befund ist genau das Dokument, das eine Agentur braucht, um ein seriöses Angebot zu machen, und das sie sonst auf Ihre Kosten selbst erstellen würde. Ich habe kein Problem damit, das System sauber weiterzugeben.

Doğan Uçar, Gründer von LegacyWerk
PHP seit 2013
Legacy im Ernstfall

Wer Ihr Projekt übernimmt

Kein Callcenter. Sie sprechen direkt mit mir.

„Ein System, das seit 15 oder 20 Jahren läuft, ist kein Müll – es ist der Beweis, dass die Logik funktioniert. Das Problem ist fast nie die Fachlogik, sondern der Code drumherum. Also werfe ich nicht weg, was sich bewährt hat. Ich bringe es zurück in die Gegenwart."

Seit 2013 arbeite ich mit PHP – ein großer Teil davon mit gewachsenen Systemen, die andere längst aufgegeben hätten. Ich schaue mir Ihr System selbst an, schreibe Ihnen die Einschätzung selbst und verantworte das Ergebnis. Wenn sich eine Modernisierung für Sie nicht lohnt, sage ich Ihnen das auch.

Doğan Uçar Gründer, LegacyWerk

Nächster Schritt: Befund (ab 2.980 €)

Drei kurze Schritte im Formular, dann melde ich mich mit einer ehrlichen Einschätzung. Wer noch nicht so weit ist, nimmt den kostenlosen Kurz-Check.

Befund anfragen