Schrittweise Migration von Altcode auf Symfony2
Zunächst ging es um grundlegende Aspekte derartiger Migrationsprojekte. Neben ausgewählten Argumenten für den Umstieg spielt dabei auch die Herangehensweise eine große Rolle. Wir haben die Probleme und Gefahren des wir schreiben das neu-Ansatzes beleuchtet und begründet, warum ein schrittweiser Übergang sehr wichtig ist. Die Probleme sind:
- Pflege (oder sogar Weiterentwicklung) des Altsystems, während ein zweites Team im Dauersprint versucht, das neue System fertig zu bekommen.
- Gefahr des second system effect
- Nicht agil, weil kein "release early release often" möglich. Launch erst dann, wenn mindestens der Feature-Stand des Altsystems erreicht.
- Umstieg nur alles-oder-nichts möglich.
- Lange time-to-market, wenn neue Features erst auf der neuen Basis kommen können.
Bei der inkrementellen Erneuerung geht es daher darum, Symfony2 zunächst so neben das Altsystem zu stellen, dass beide zusammen eine gemeinsame Response an den Browser zurückgeben können. Wir können so Funktionalität nach und nach auf den Symfony2-Stack verlagern und benötigen entsprechend immer weniger Teile des Altsystems. Dabei können die Symfony2-basierten Features schon nach kurzer Zeit in Produktion gehen.
Etwas technischer haben wir dazu dann zwei Herangehensweisen gezeigt, die wir erfolgreich für die Migration zu unserem Wunschumfeld Symfony einsetzen konnten. Beide haben Vor- und Nachteile und auch Stolpersteine, die wir zu Anfang nicht gesehen haben.
Den Abschluss bildeten einige Überlegungen dazu, wie sich das Altsystem anschließend schrittweise zerteilen, verbessern und auf den Symfony2-Stack übertragen lässt.
Natürlich konnten wir kein Patentrezept mit Erfolgsgarantie für jede Situation bieten. Trotzdem hoffen wir, dass unsere Gäste ein paar Denkanstöße mit nach Hause nehmen und einen interessanten sowie kurzweiligen Abend verbringen konnten.
Wir freuen uns über Feedback und Fragen an @webfactory oder info@webfactory.de!
Updates
- Hier jetzt auch der Vortrag von Gero zum Wordpress-Integration-Bundle.
- Wir haben uns gefreut zu hören, dass unser im Talk vorgestelltes webfactory/legacy-integration-bundle inzwischen auch außerhalb der webfactory erfolgreich eingesetzt wird.
Über Matthias

Matthias Pigulla
Diplom-Wirtschaftsinformatiker, Geschäftsführer
Der strategische Kopf hinter unseren Softwaresystemen behält bei der Entwicklung und Betreuung komplexer Architekturen den Überblick, kümmert sich um die technische Infrastruktur oder berichtet über seine Erfahrungen und Erkenntnisse auf der Symfony User Group. Und wenn er abends damit fertig ist, entspannt der zweifache Vater entweder auf seiner Yogamatte oder lässt beim Fotografieren die Seele baumeln.
Wir freuen uns über Feedback und Diskussionen via @mpdude_de oder @webfactory!