„Vorübergehend“ hat sich eingerichtet.

Ein System ist über Jahre gewachsen. Ein Sonderfall kam dazu, dann ein neuer Vertriebskanal, dann ein Import, dessen Format niemand ändern durfte. Heute sieht der Code entsprechend aus. Das ist lästig. Es erklärt aber noch nicht, welcher Teil ersetzt werden sollte.

Im alten System steckt oft Wissen darüber, wie das Geschäft tatsächlich funktioniert. Manche merkwürdige Bedingung schützt einen Ablauf, den sonst niemand mehr auf dem Schirm hat. Wer sie entfernt, hat zunächst weniger Code. Ob er auch weniger Probleme hat, zeigt sich später.

Erst nachsehen, was trägt.

Wir beginnen bei den Abläufen, auf die Menschen angewiesen sind. Was muss zuverlässig funktionieren? Wo entstehen Fehler? Welche Abhängigkeit verhindert eine Änderung? Dazu gehören Gespräche mit den Leuten, die das System benutzen und betreiben, genauso wie der Blick in den Code.

Für entscheidendes Verhalten schaffen wir überprüfbare Beispiele und Tests. Eine Sonderregel darf hinterfragt werden. Sie sollte dabei nur nicht versehentlich verschwinden.

Eine gute Grenze ist ein Anfang.

Wenn sich ein Teil sinnvoll abtrennen lässt, kann er gezielt erneuert werden. Eine Schnittstelle bekommt einen klaren Vertrag. Ein langsamer Ablauf wird gemessen und überarbeitet. Eine Abhängigkeit wird ersetzt, ohne gleichzeitig die ganze Anwendung neu zu erfinden.

Jeder Schritt braucht eine Antwort auf zwei Fragen: Woran erkennen wir, dass er funktioniert? Und wie kommen wir zurück, wenn er es nicht tut? Ein kleiner Rollout mit einem erprobten Rückweg ist ein wesentlich angenehmerer Termin als ein großer mit gedrückten Daumen.

Und manchmal muss es doch neu.

Wenn die Architektur die nötigen Änderungen dauerhaft blockiert oder sich zentrale Abhängigkeiten nicht mehr sinnvoll betreiben lassen, kann eine Neuentwicklung die richtige Entscheidung sein. Dann wollen wir den Umfang, die Migration und den Übergang in den Betrieb vorher verstehen.

Unser Maßstab ist, was sich für Ihr System und Ihr Team verbessert: Zuverlässigkeit, Änderbarkeit, Laufzeit oder Betriebsaufwand. „Jetzt mit neuem Framework“ beantwortet diese Frage noch nicht.

Ihr System hat ein paar Geschichten zu erzählen?

Wir hören zu