Seit Anfang September läuft unser neues ERP produktiv. Kontakte, Projekte, Zeiterfassung, Rechnungen und Auswertungen sind wie bisher in einem System vereint. Im Hintergrund hat sich dagegen fast alles verändert.
Der Vorgänger war eine Eclipse RCP-Anwendung, ein Fat Client, der uns fast fünfzehn Jahre begleitet hat und nun abgelöst werden musste. Das neue System läuft im Browser, auf unserer Uniport Cloud und als Teil unseres eigenen Firmenportals.
Für die Ablösung haben wir verschiedene SaaS-Lösungen evaluiert, verglichen und gerechnet. Am Ende haben wir uns erneut für eine Eigenentwicklung entschieden. Einen wichtigen Unterschied zu früher machte AI: Der Aufwand für die Entwicklung war damit deutlich kleiner geworden. Im Februar haben wir mit der Umsetzung begonnen.
Was früher ein Jahresprojekt gewesen wäre, wurde mit AI-gestützter Entwicklung in einem halben Jahr machbar.
Was unser ERP abbildet
Bei uns laufen Ressourcenplanung, Zeiterfassung, Projektabrechnung, Rechnungen und CRM in einem System. Das klingt zunächst nach einem klassischen ERP ab der Stange.

Ressourcenplanung (links) und Zeiterfassung (rechts). Alle dargestellten Daten sind künstliche Testdaten.
Über die Jahre sind aber viele eigene Regeln und Prozesse entstanden. Projekte laufen je nach Kunde unterschiedlich, Rechnungen richten sich nach individuellen Vereinbarungen und auch intern haben wir Abläufe, die sich nicht einfach in ein Standardschema einordnen lassen.

Eine Rechnung mit ihren Positionen, aufgeschlüsselt nach geleisteten Stunden und Ansätzen. Alle dargestellten Daten sind künstliche Testdaten.
Keine der SaaS-Lösungen, die wir angeschaut haben, konnte all das so abbilden, wie wir es brauchen. Manche kamen nahe heran, an verschiedenen Stellen hätten wir unsere Prozesse aber an die Software anpassen müssen. Für uns waren das in der Summe zu viele Kompromisse.
Direkter Zugriff auf unsere Daten
Ein weiterer wichtiger Punkt war für uns, wo unsere Daten liegen und wie frei wir damit arbeiten können.
Bei einer SaaS-Lösung ist das API des Anbieters die Schnittstelle zu den eigenen Geschäftsdaten. Beim Export ist man auf die vorgesehenen Formate angewiesen. Für die Verbindung mit anderen Systemen stehen jene Möglichkeiten zur Verfügung, die das Produkt bietet. Auch bei Auswertungen hängt vieles davon ab, welchen Zugriff das System zulässt.
Mit einem eigenen ERP haben wir direkten Zugriff auf die Datenbank. Abfragen, Joins und Berechnungen können wir so umsetzen, wie wir sie für unsere Arbeit brauchen. Neue Auswertungen oder Verbindungen zu anderen Systemen lassen sich direkt auf unseren Daten aufbauen.
Damit bleiben die Geschäftsdaten in unserer Umgebung und wir bestimmen selbst, wie wir damit arbeiten.
Was AI bei der Ablösung verändert hat
Die Ablösung unseres ERP stand schon seit Jahren auf der Liste. Solange das bestehende System seinen Zweck erfüllte, hatte im Alltag meist das Kundengeschäft Vorrang. Mit der Zeit war aber klar, dass wir die bestehende Basis nicht mehr sinnvoll weiterführen können.
Dass wir uns bei der anstehenden Ablösung nochmals für eine Eigenentwicklung entschieden haben, hat viel mit AI zu tun. AI-gestützte Entwicklung hat sich in kurzer Zeit stark weiterentwickelt und damit den Aufwand für ein solches Projekt verändert. Was wir früher als Jahresprojekt eingeschätzt hätten, wurde innerhalb eines halben Jahres machbar.
Bei der Ablösung sind wir so vorgegangen, wie wir Legacy-Systeme grundsätzlich modernisieren. Datenbankschema und Zugriffsregeln haben wir übernommen und die Funktionalität danach Modul für Modul migriert.
AI haben wir vor allem bei der Entwicklung und beim Testen der neuen Software eingesetzt. Auch bei der Migration der bestehenden Daten war sie hilfreich. Entscheidend blieb für uns, dass wir das Verhalten der neuen Anwendung laufend mit dem bisherigen System vergleichen konnten. Dafür setzen wir auf Golden-Master-Testing.
Wie dieser Prozess im Detail aussieht und wo wir AI mehr oder weniger Spielraum geben, haben wir in einem eigenen Artikel zur Legacy-Ablösung mit AI beschrieben.
Was die Eigenentwicklung mit sich bringt
Eigene Software heisst auch, Verantwortung für die eigene Software zu übernehmen. Betrieb, Updates und Security liegen bei uns und nicht bei einem Anbieter. Diesen Aufwand nehmen wir bewusst in Kauf.
Dafür bekommen wir ein System, das zu unseren Abläufen passt und sich mit ihnen weiterentwickeln lässt. Wenn sich interne Prozesse ändern oder neue Anforderungen dazukommen, können wir direkt darauf reagieren.
Auch das Wissen über das ERP bleibt bei uns im Team. Mehrere Entwickler kennen das System und können es gemeinsam weiterentwickeln.
Wieder eine moderne Basis
Nach fast fünfzehn Jahren haben wir unser bisheriges ERP abgelöst und wieder eine moderne Basis, die zu unseren heutigen Abläufen passt. Das neue System ist in unser Firmenportal integriert und lässt sich dort weiterentwickeln, wenn sich unsere Prozesse verändern oder neue Anforderungen dazukommen.
Ob eine Standardlösung oder eine Eigenentwicklung besser passt, hängt deshalb nicht nur vom Funktionsumfang ab. Entscheidend ist auch, wie gut eine Software zu den eigenen Abläufen passen muss, welche Abhängigkeiten zu anderen Systemen bestehen und wie viel Kontrolle man über Daten und Weiterentwicklung behalten möchte.
Bei uns kamen diese Anforderungen mit den neuen Möglichkeiten der AI-gestützten Entwicklung zusammen.
