Die Aufgabenstellung

Einer der größten Pflanzenhersteller Europas betreibt eine E-Commerce-Plattform für Endkundinnen / -kunden sowie einen dedizierten Online-Shop für B2B-Kunden. Dieser B2B Shop sollte im Produktivbetrieb von einem Fremddienstleister übernommen und von der Magento Enterprise-Version auf die kostenfreie Magento Community-Version umgestellt werden.

Darüber hinaus umfasste das Projekt die Erstellung von zwei weiteren Shop-Versionen auf derselben Code-Basis für die Märkte Nordamerika und Großbritannien. Zusätzlich wurde ein Austausch des angeschlossenen Media-Asset-Management-Systems (MAM) durch ein multifunktionales Product-Information-Management-System (PIM) durchgeführt, das ebenfalls über die erforderlichen Fähigkeiten zur Bereitstellung von Medien-Assets verfügt.


Die Migration

Die Übernahme des Shops und die Umstellung auf die Magento Community-Version offenbarte eine Reihe von technischen und konzeptionellen Herausforderungen. Neben der eigentlichen Migrationsaufgabe galt es, umfangreiche Funktionen und Module aus dem Standardumfang der Magento Enterprise-Version in der Magento Community-Version nachzubilden und individuell anzupassen.


Die Herausforderungen

Zusätzlich beinhaltete der B2B-Shop viele spezifisch erstellte Erweiterungen, ein eigenes Custom-Layout, separate Anbindungen an das vorhandene MAM sowie an das kundeneigene Warenwirtschafts-System (ERP). Produktdaten und Bilder wurden täglich, unter Verwendung des MAM und des Warenwirtschafts-Systems, automatisch aktualisiert. Kunden-, Auftragsdaten und Verfügbarkeiten wurden per Application-Programming-Interface (API) synchron abgefragt, um die Ausgabe aktueller Daten zu gewährleisten.

Eine zusätzliche Herausforderung war die komplexe Struktur des Shops, mit z.B.:

  • gleichen Artikelnummern aber in vielen verschiedenen Formen und Formaten
  • Verpackungseinheiten und Verfügbarkeiten abhängig von Form, Format und Lieferzeit
  • Mindestbestellmengen abhängig von/gebunden an Verpackungseinheiten
  • umfangreiche Produktinformationen
  • bidirektionale Synchronisierung des Shops mit dem Warenwirtschafts-System
  • besondere vom Bestellstatus abhängige Regeln für Änderungen und Stornierungen von Bestellungen

Die Lösung

Die Magento-Version wurde von der Enterprise-Version zur Community-Version zurückgebaut. Alle ursprünglich enthaltenen Funktionen wurden nachgebildet sowie die bestehenden Erweiterungen für den Wechsel angepasst. Diese Arbeiten erforderten eine umfangreiche Code-Analyse und konzeptionelle Ableitung der neuen Systemarchitektur, um Korrekturschleifen in der laufenden Migration zu minimieren.

Modernisiert durch ein komplett neues Layout, setzte die E-Commerce Plattform auch stilistisch Maßstäbe. So wurde das neu erstellte Design zusätzlich noch mit White-Label Funktionalitäten für Länderausspielungen produziert und auf dieser Basis ein weiteres eigenständiges Layout für die US-Tochterfirma erstellt.

Das Media-Asset-Management-System (MAM) wurde durch die Open Source Product-Information-Management-Software (PIM) Akeneo ersetzt und die Anbindung an den Shop weitgehend überarbeitet.

Zur einfacheren Wartung und Pflege sollten alle Shop-Versionen über eine gemeinsame Code-Basis verfügen, eigenständige Layouts und mehrsprachige Oberflächen verwenden. Hierfür wurde die Code-Basis entsprechend erweitert. Ein Update des Warenwirtschaftssystems (ERP) erforderte zudem eine Protokollumstellung der API von SOAP auf REST.

Eine besondere Lösung verlangte die individuelle Darstellung der Preisgestaltung, welche auf verschiedenen Faktoren beruht, z.B.:

  • dem Vertriebsweg (z.B. über Tochterfirmen/Vertriebspartner)
  • spezifischen Rabatten für einzelne Kunden oder Kundengruppen
  • Produktformen und Formaten
  • den Zeitpunkt der geplanten Lieferung

Dies führte dazu, dass zur Darstellung aktueller Preise der Einsatz eines komplexen Caching-Systems unerlässlich wurde. Entsprechend der gerade ausgewählten Produktdarstellung war immer eine aktive Synchronisierung mit dem Warenwirtschafts-System erforderlich.

Selbstverständlich wurde auch die Einrichtung und Erweiterung von mehreren neuen Serverarchitekturen für das komplexe System übernommen, bis zur ständigen Übernahme der Hosting-Betreuung, die eine Sicherstellung des laufenden Betriebes gewährleistet.


Key Facts

3
Monate Code-Analyse
15
Monate Entwicklungszeit
7
Entwickler im Team
>100.000
Zeilen Code