Einen Monolithen zähmen: SIMATIC AX modularisieren
Siemens AG · SIMATIC AX · Jan 2023 – Mar 2025
Die Situation
Siemens entwickelte SIMATIC AX, eine Automatisierungsplattform der nächsten Generation. Ein Team arbeitete an einer einzigen, riesigen Codebasis. Die Build-Zeiten hatten sich auf über 30 Minuten ausgedehnt. Das Team hatte alles versucht, um die Builds zu beschleunigen, aber nichts hatte dauerhaft geholfen.
Das eigentliche Problem
Alle konzentrierten sich darauf, die Builds schneller zu machen. Mehr Caching, mehr Rechenleistung, andere Bundler. Aber niemand stellte die eigentliche Frage: Warum ist überhaupt alles an einem Ort?
In enger Zusammenarbeit mit dem Chief Architect und dem Chief Product Owner trat ich einen Schritt zurück und betrachtete das Gesamtbild. Die Codebasis war organisch gewachsen, verschiedene Funktionsbereiche waren so miteinander verwoben, dass inkrementelle Builds unmöglich wurden. Das Problem lag nicht beim Build-Tool. Es lag an der Architektur. Der Code musste analysiert, auseinandergenommen und in separate, unabhängige Module reorganisiert werden.
Zentrale Entscheidungen
- Codebasis analysiert und modularisiert. Ich kartierte die verschiedenen Teile der Anwendung, identifizierte die natürlichen Grenzen und trennte sie in isolierte Repositories. Jedes Modul erhielt seine eigene Codebasis mit klarer Zuständigkeit und unabhängigen Build-Pipelines. Das war die grundlegende Veränderung, die alles weitere ermöglichte.
- Microfrontend-Architektur eingeführt. Das war Neuland für das Team. Ich schulte sie in den Grundprinzipien, etablierte Verträge zwischen den Modulen, definierte Kommunikationsmuster und Deployment-Grenzen. Das Team wechselte von einem monolithischen Denken hin zu unabhängig deploymentfähigen Einheiten.
- Eine Pattern Library erstellt als gemeinsames Fundament für UI-Konsistenz über alle neu getrennten Module hinweg. Anstatt dass jedes Team Komponenten neu erfand, griffen sie auf dokumentierte, getestete Patterns zurück.
Die Build-Zeiten sanken von über 30 Minuten auf unter 5 Minuten. Aber das war nur das messbare Ergebnis. Der grössere Einfluss war strategischer Natur. Die Plattform entwickelte sich von einem Team, das mit einem Monolithen kämpfte, zu mehreren Teams, die unabhängig voneinander an klar definierten Modulen arbeiteten. Jedes Team konnte nach seinem eigenen Zeitplan deployen. Die Architektur konnte mit der Organisation skalieren.
Die Übergabe
Zweijähriger Auftrag von Januar 2023 bis März 2025. Die modulare Architektur, die Microfrontend-Patterns und die Pattern Library wurden vollständig dokumentiert und an die internen Teams übergeben. Das Team war geschult und in der Lage, die Architektur eigenständig weiterzuentwickeln.
Stehen Sie vor einer ähnlichen Herausforderung?
Jede Situation ist anders, aber die Muster wiederholen sich. Wenn Ihr Team nicht weiterkommt, Ihre Architektur unklar ist oder Sie kurz vor einer wichtigen technischen Entscheidung stehen, schildern Sie mir Ihre Situation.