Modernisierungs-Pattern

Das Problem

Es gibt eine API, einen Call oder einen Event im bestehenden System, der durch ein neues ersetzt werden soll.

Man kennt die Funktionalität, aber versteht den bestehenden Code nicht - oder hat gar keinen Zugriff.

Intercept

Also intercepted man die Kommunikation, die in die alte Applikation geht bzw. aus der alten Applikation kommt. Zum Beispiel durch einen Proxy oder ein ApiGateway, oder eine Fassade.

Parallel Run

Und man ruft mit diesen Parametern das alte wie das neue System auf und vergleicht die Resultate logisch. 

Wenn sie übereinstimmen - gut. Wenn sie nicht übereinstimmen prüft man, welches das erwünschte Verhalten war.

Ablösung

Wenn eine vorher festgelegte Zahl von Aufrufen mit korrekten Resultaten eingetreten ist - oder das alte System mehr fehlerhafte Daten als das neue zurückliefert - entfernt man den Proxy und setzt das neue System an die Stelle des alten.

Einsatzorte

Wenn man das alte System nicht anfassen mag, es aber ersetzen muss.

Modernisierungs-Pattern

By Johann-Peter Hartmann