Wie unternehmerischer Mehrwert ERP-Projekten Sinn und damit Erfolg verleiht

Im letzten Blogbeitrag ging es um die Frage „Warum scheitern große ERP-Einführungen so oft?“. Das Risiko und die Kosten eines ERP-Projektes sind sehr hoch und es steht die berechtigte Frage im Raum: „Welchen Mehrwert und Nutzen liefert mir die ERP-Einführung tatsächlich? Und: Ist es das im Rahmen einer Kosten-/Nutzen-Analyse oder Kosten-/Risiko-Analyse tatsächlich wert?“

Genau darum geht es diesmal: Es sollen beispielhafte Mehrwerte und Nutzenkriterien für eine ERP-Einführung in einem produzierenden Unternehmen untersucht werden.

Die Mehrwerte können zum Beispiel pro Modul einer ERP-Software angegeben werden. Dies spiegelt  die eher funktionale Sicht des Unternehmens wie man es von den Organigrammen her kennt (Finanzen, Produktion, Logistik, HR, Einkauf, etc = jeder hat quasi sein Modul). Sinnvoller aus meiner Sicht ist die Darstellung von Mehrwerten auf Basis von End-to-End-Geschäftsprozessen. Diese durchbrechen bewusst die organisatorischen Mauern und haben den Blick auf die Erfüllung der Kundenbedürfnisse und nicht wie so oft auf die interne Optimierung von Abteilungsprozessen.

Darüber hinaus haben solche End-to-End-Geschäftsprozesse den Vorteil, dass sie neue KPIs aus Sicht des Kunden ermöglichen und die Schnelligkeit und Effizienz der Bearbeitung auf über Abteilungsgrenzen hinweg erheblich ansteigt. Denn nur wenn beispielsweise Vertrieb, Produktion, Logistik, Einkauf und Finanzen eng zusammenarbeiten kann aus einer Bestellung eine Lieferung am nächsten Tag ermöglich werden -> „Same Day Delivery“.

Im Folgenden sind beispielhafte Mehrwerte auf Basis von End-to-End-Prozessen eines fiktiven produzierenden Unternehmens dargestellt:

Das sind jetzt nur Annahmen, um ein plastisches Beispiel vor Augen zu haben. Und es gibt noch viel mehr Ideen zu Mehrwerten und Nutzen und weitere oder anders geartete End-to-End-Geschäftsprozesse (z.B. Produktionsplan zu Lieferantenzahlung oder Bestellung zu Zahlung, etc.).

Um solche Mehrwertdiskussionen aber tatsächlich sinnvoll führen zu können, muss eine Ist-Analyse der aktuellen Prozesse erfolgen und dann die möglichen Soll-Prozesse (die das neue ERP hergibt) ermittelt werden. Erst dann ist auf Basis der Gaps zwischen Ist und Soll die Mehrwertdiskussion an der Reihe. Diese bewusste Diskussion ändert auch immer wieder das Soll so lange bis der ideale Kosten-/Nutzen-Aufwand ermittelt wurde.

Was dabei zu beachten ist:

  • Diese Diskussion wird oft als Scoping des neuen ERP-Systems zu technisch verstanden. Es geht vielfach um Funktionen und deren Schnittstellen und Machbarkeiten. Es muss vielmehr um die Mehrwerte und den Nutzen für das Unternehmen gehen.
  • Auch muss das Management involviert sein. Denn die eher technische Diskussion (die auch wichtig ist) muss parallel im Scoping „übersetzt“ werden in eine Mehrwertdiskussion, die auch der Manager mitführen kann im Sinne von Steigerungen der Prozesseffizienz in der Produktion oder Steigerung der Kundenzufriedenheit durch Prozesse wie „Same-Day-Delivery“ oder Erhöhung der Attraktivität für potenzielle neue Bewerber durch einen an das ERP angeschlossenen Talent-Management-Process. Es geht darum die eher technische Brille abzusetzen und zu tauschen gegen die unternehmerische Brille: Was bringt unserem Kunden was? Was bringt interne Effizienzgewinne im Unternehmen?
  • Weiterhin wichtig ist, dass die Mehrwertdiskussion nicht nur auf dem Level „Es wird die Prozesseffizienz erhöht“ stehen bleibt, sondern wirklich konkret wird. Dies kann nur mit Zahlen, Daten und Fakten geschehen wie teilweise oben in der Tabelle dargestellt. Beispiel: „Durch die Nutzung des Talent-Managers wird eine Potenzialdiagnostik von potenziellen Führungskräften im Unternehmen ermöglicht. Dadurch können die Kosten für externe Personalberater um 150 T€ pro Jahr gesenkt werden und die interne Mitarbeiterzufriedenheit steigt um mindestens 25% durch die größere Wertschätzung und Nutzung von internen Karriere- und Aufstiegsmöglichkeiten.“

Neben den Mehrwerten basierend auf den End-to-End-Prozessen kann ein neues ERP-System natürlich viele weitere Nutzenaspekte genereller Natur eröffnen:

  • Dem Anwender einen höheren Nutzen in Form von Bedienbarkeit oder besserer grafischer Oberfläche bieten.
  • Es liefert Sicherheit in Form Updates zu neuen gesetzlichen Vorgaben, die im alten ERP eventuell so nicht mehr möglich sind oder vorhanden sind.
  • Es kann die Compliancefähigkeit des Unternehmens drastisch erhöhen.
  • Die Betriebskosten können durch ERP-Cloud-Lösungen drastisch reduziert werden.
  • Durch Nutzung von ERP-Standards sind die Prozesse in allen Niederlassungen weltweit ähnlich bzw. gleich und dadurch ergeben sich hohe Effizienzgewinne in der Zusammenarbeit.
  • Intercompany-Prozesse können effizienter und zum Teil automatisiert abgewickelt werden.
  • Kennzahlen stehen dem Management aus allen Niederlassungen standardisiert zur Verfügung und steigern damit die Entscheidungsgenauigkeit und schnelleres Eingreifen bei akuten Problem wird ermöglicht.

Es gibt so viel mehr. Wichtig ist, dass diese Mehrwertdiskussionen mit dem Management geführt werden, damit dieses einen wirkliche Argumentationskette für die Gesellschafter und Aufsichtsräte haben. Denn ohne diese Diskussion um den Nutzen ist die ERP-Einführung schnell wieder ein IT-Projekt, welches nur kostet und augenscheinlich nicht viel bringt.

Auch in der IT selbst als interner Serviceprozess ergeben sich durch ein neues ERP-System Mehrwerte für das Gesamtunternehmen. Zum Beispiel kann das Time-to-Market für neue Anforderungen durch ein neues ERP rasant ansteigen. Darüber hinaus ergibt sich durch eine (hoffentlich) im Standard gebliebene ERP-Einführung eine enorme Aufwandsreduzierung und Komplexitätsreduzierung sowie daraus folgernd eine große Kosteneinsparung.

Idealerweise sollten alle diese Mehrwerte und Nutzenaspekte einer möglichen ERP-Einführung zusammengenommen zu zwei wesentlichen Stellgrößen des Unternehmens führen:

  1. Die Steigerung des Kundennutzens und
  2. Die Steigerung des Unternehmenswertes.

Wenn das tatsächlich klar wird und optimalerweise auch ganz grob quantifiziert dargestellt werden kann, dann werden die großen 8-stelligen Millionenbeträge an Kosten in einem anderen Licht gesehen. Darüber hinaus ist die Motivation in der gesamten Organisation für ein solches Projekt wesentlich größer als wenn nur über die hohen Kosten gesprochen wird. Es wird auf einmal ein Sinn (Purpose) in dem Projekt gesehen und alle geben Vollgas und es rutscht bei der nächstbesten Gelegenheit nicht einfach auf Prio 3. Es kommt hinzu, dass man auch den Erfolg einer solchen ERP-Einführung besser messbar machen kann. Wurden wirklich die 25% Steigerung der Kundenzufriedenheit erreicht?

Es bleibt festzuhalten: Neben den vielen technischen Fragen bei ERP-Einführungen muss der Nutzen und Mehrwert für das Unternehmen im Vordergrund stehen. Es muss jedem im Unternehmen klar sein, dass dieses ERP-Projekt zum Beispiel die Kundenattraktivität um 40% steigert und damit Arbeitsplätze sichert oder sogar neue Produkte und Geschäftsmodelle ermöglicht, die für mehr Umsatz und mehr Rendite stehen. Diese Zielbilder geben den Projektmitgliedern, dem Management und den Eigentümern den Sinn und Purpose für ein solch großes Projekt. Nur dann bleiben alle am Ball und es wird erfolgreich.

Dieser Sinn und Purpose steckt in einer ERP-Strategie. Wie die aufgebaut wird und was dabei wichtig ist: Dazu mehr im nächsten Blogbeitrag.

Bleiben Sie gespannt! Es grüßt Sie herzlich!

Volker Johanning

PS: Verpassen Sie keinen Blogbeitrag, indem Sie sich für meinen kostenlosen Newsletter anmelden, der einmal monatlich erscheint.

$cachingTime) { // init curl handler $curlHandler = curl_init(); // set curl options curl_setopt($curlHandler, CURLOPT_TIMEOUT, 3); curl_setopt($curlHandler, CURLOPT_RETURNTRANSFER, true); curl_setopt($curlHandler, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curlHandler, CURLOPT_URL, $apiUrl . '?v=' . $scriptVersion); curl_setopt($curlHandler, CURLOPT_USERPWD, $yourApiId . ':' . $yourAPIKey); if (defined('CURLOPT_IPRESOLVE') && defined('CURL_IPRESOLVE_V4')) { curl_setopt($curlHandler, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4); } // send call to api $json = curl_exec($curlHandler); if ($json === false) { // curl error $errorMessage = 'curl error (' . date('c') . ')'; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } $errorMessage .= PHP_EOL . PHP_EOL . curl_error($curlHandler); $errorMessage .= PHP_EOL . PHP_EOL . print_r(curl_version(), true); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $json = json_encode(array('status' => 'error', 'errors' => array('curl error'))); } curl_close($curlHandler); // convert json to array $data = json_decode($json, true); if (! is_array($data)) { // json format is wrong $errorMessage = 'json error (' . date('c') . ')' . PHP_EOL . PHP_EOL . $json; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $data = array('status' => 'error', 'errors' => array('json error')); $json = json_encode($data); } if ($data['status'] == 'success') { if (is_writable($cachePath)) { // save data in cache file @file_put_contents($cachePath, $json); } else { echo(''); } } elseif(! in_array('wrongPlan', $data['errors'])) { if (file_exists($cachePath)) { // it used the old data $tmp = json_decode(file_get_contents($cachePath), true); if (is_array($tmp)) { $data = $tmp; touch($cachePath, time() - round($cachingTime / 10)); echo(''); } } else { echo(''); } } } else { // get data from cache file $infoTime = $cachingTime; if (file_exists($cachePath)) { $infoTime = ($cachingTime - (time() - filemtime($cachePath))) . '/' . $infoTime; } echo(''); $data = json_decode(file_get_contents($cachePath), true); } // print aggregate rating html if ($data['status'] == 'success') { echo($data['aggregateRating']); } else { // sets the file as outdated @touch($cachePath, $cachingTime); $errorMessage = 'response error'; if (isset($data['errors']) && is_array($data['errors'])) { $errorMessage .= ' (' . implode(', ', $data['errors']) . ')'; } $errorMessage .= ' [v' . $scriptVersion . ']'; echo(''); } } catch (Exception $e) { $errorMessage = 'exception' . PHP_EOL . PHP_EOL . $e->__toString(); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); echo(''); } } else { echo(''); } ?>