Die Rolle von Softwarequalität beim Evaluieren eines neuen ERP-Systems
Pascal Sieber
Unser Kunde ist ein Produktionsunternehmen mit Sitz in der Schweiz, das an 25 Standorten über Europa verteilt tätig ist. Sie baten uns, bei der Suche nach einem Anbieter eines neuen ERP-Systems (Enterprise Ressource Planning) behilflich zu sein. Wir haben das Unternehmen über einen Zeitraum von zwölf Monaten begleitet.
Das Projekt hat in vier Phasen stattgefunden:
Definition der strategischen Ziele und Lieferantenpräsentation mit heute geltenden state-of-the-art - Lösungen
Ausschreibung an die möglichen Lieferanten zusammen erarbeiten
Gesamten Auswahlprozess und die Verhandlungen mit den Anbietern unterstützen
Implementierung des neuen ERP-Systems vorbereiten
Definition der strategischen Ziele und heutige Lösungen
Zu Beginn haben wir zusammen mit dem Kunden auf Basis der Unternehmensstrategie die strategischen Ziele definiert, welche die Software unterstützen soll. Auf Basis der globalen Entwicklungen in der Branche wurden – so weit möglich – zukünftige Anforderungen an die Software antizipiert. Parallel dazu haben wir eine Auswahl an potenziellen Anbietern eingeladen, bei einer ersten Demonstration aufzuzeigen, was heute technisch möglich ist, und wo es Lücken gibt, die es in Zukunft durch individuelle Erweiterungen zu füllen gilt.
Ausschreibung an die Lieferanten
In der Ausschreibungsphase gingen wir grundsätzlich nach Lehrbuch vor. Wir haben jedoch eine entscheidende zusätzliche Anforderung definiert: Bei der Lieferanten-Beurteilung wurde die Software-Qualität der angebotenen Lösung mitberücksichtigt. Dabei haben wir besonders auf die Wartbarkeit fokussiert. Sie entscheidet darüber, wie aufwändig es ist, neue Funktionen zu integrieren, respektive Fehler zu beheben.
Wir baten die Softwareanbieter, nicht nur die Stärken, Vorteile und positiven Eigenschaften ihrer Software darzulegen, sondern auch, wo sie die Schwächen sehen und wie sie planen, diese in den nächsten Jahren zu verbessern. Der Anbieter, der die gesündeste und ehrlichste Selbsteinschätzung gab, konnte bei uns am meisten an Vertrauen gewinnen.
Auswahlprozess und Verhandlungen
In einem nächsten Schritt liessen wir uns von allen drei Anbietern ihren Quellcode geben. Diesen haben wir mit unserer Partnerfirma (SIG) bezüglich Qualität und Wartbarkeit analysiert. Während der Codeanalyse stellten wir die tatsächliche Qualität fest. Die aufgrund des Codeumfangs und der Codequalität zu erwartenden jährlichen Wartungsaufwände haben wir mit den vorhandenen Entwicklungsressourcen der Anbieter verglichen.
Dieses Wissen – zusammen mit der Selbsteinschätzung des Lieferanten – gab unserem Kunden in den anschliessenden Verhandlungen eine starke Position. Zum Teil wusste er sogar mehr über die Qualität der Software als die Lieferanten selbst.
Alle Erkenntnisse haben wir zusätzlich auch während des Einführungsprojekts genutzt. Sie flossen in die Planung von Begleitmassnahmen (bspw. spezifisches Risikomanagement) ein.
Implementierung
Schliesslich definierten wir für den neuen Code einen Renovationsplan mit zu erfüllenden Meilensteinen und Qualitätszielen. Der ausgewählte Lieferant musste während des Projekts seine Software stetig verbessern. Dadurch wollte der Kunde sicherstellen, dass nach Projektabschluss neue Anforderungen schnell und günstig umgesetzt werden können.
Die Wartungsgebühren wurden daran gekoppelt, inwiefern die Meilensteine erreicht wurden. Erreichte der Lieferant die Meilensteine, erhielt er die vollen Wartungsgebühren. Erreichte er achtzig Prozent, so erhielt er nur achtzig Prozent der Wartungskosten. Das Ziel war natürlich, dass er hundert Prozent erreichte, denn am Ende wollten beide Seiten bessere Software. Dies ermöglicht eine kürze time-to-market von neuen Funktionen, höhere Flexibilität und niedrigere Wartungsaufwände.
Alle Beteiligten haben profitiert
Im vorliegenden Fall war das gesamte Projekt mit rund zehn Millionen budgetiert. Am Ende hat das Wissen über die Softwarequalität unserem Kunden zwei bis drei Millionen eingespart.
Aber das ganze Verfahren ergab nicht nur Vorteile für die Kunden und den gewählten Anbieter, sondern für alle drei Anbieter. Diese kamen bereits während des Auswahlprozesses zu uns und wünschten, von uns unterstützt zu werden, um ihre Codebasis zu verbessern. Also ein Vorteil für alle Beteiligten.
Der schliesslich gewählte Lieferant und der Auftraggeber arbeiteten danach gemeinsam daran, die Codequalität zu verbessern. Unserem Kunden gab das die Sicherheit, das Projekt während der ganzen Zeit unter Kontrolle zu haben und der Anbieter profitierte von einer am Ende erreichten Qualitätsauszeichnung.