Beiträge

Jedes Jahr zeigt die W-JAX Konferenz für Java, Architektur- und Software-Innovation wo die Reise in der Software-Entwicklung hingeht. Erfahren Sie im Folgenden mehr über die wichtigsten Java-Trends.

Agile Entwicklung & DevOps

„Agil“ ist seit langem ein großer Trend in der Software-Entwicklung, trotzdem nutzen noch nicht alle Unternehmen agile Methoden. Das liegt vor allem daran, dass agil nicht nur eine Methodik sondern eine Kultur im gesamten Unternehmen ist, die sich nicht von heute auf morgen entwickeln lässt. Damit agile Kultur in der Software-Entwicklung funktioniert, müssen auch andere Unternehmensbereiche agil denken und handeln. Im E-Commerce sind das zum Beispiel der Vertrieb und das Marketing, die IT, Einkauf und Fulfillment und letztendlich auch die Geschäftsführung, die E-Commerce-Projekte strategisch steuert. Treffen hier agiles und „klassisches“ Denken und Handeln aufeinander, führt dies zu Reibung und viele Chancen des „agilen“ bleiben ungenutzt.

Der Schlüssel zum Erfolg agiler Software-Projekte liegt also in einem gemeinsamen Verständnis von agiler Methodik sowie in der Integration verschiedener Unternehmensbereiche in Softwareprojekten. Hier kommt ein weiterer neuer Ansatz ins Spiel, der in Fachkreisen diskutiert wird: DevOps. Dahinter steckt die Idee, Business und Technologie so zu integrieren, dass beispielsweise Betriebs- und Entwicklungsingenieure über den gesamten Software-Lebenszyklus, vom Design- und Entwicklungsprozess bis hin zur Produktionsunterstützung Hand in Hand arbeiten. DevOps will das traditionelle Denken und Handeln in Silos ersetzen, in denen ein Team den Code schreibt, ein anderes Team testet, ein weiteres Team bereitstellt usw. Auch hinter DevOps steckt eine Kultur, die Grenzen in Unternehmen überwindet, um gemeinsam beispielsweise den E-Commerce weiterzuentwickeln. Das bedeutet auch, gemeinsam Verantwortung für Projekt zu übernehmen.

Agile Entwicklung und Prinzipien des DevOps wie etwa Continious Delivery finden sich in nahezu allen Projekten von eCube, wenngleich sie uns regelmäßig vor Herausforderungen stellen. Denn unsere Kunden „ticken“ in der Regel „klassisch“, wenn es darum geht, E-Commerce im Unternehmen zu entwickeln. Hier sind neben der Shop-Entwicklung selbst viele Brücken zwischen Fachabteilungen zu bauen, die bisher in parallelen Welten gelebt haben. Hier entwickeln wir nicht nur Software sondern oft auch eine neue Kultur.

Microservices

Um große Systeme geht es auch beim Thema Microservices: Diese dienen dazu komplexe Systeme in einzelne Programme und Aufgaben aufzuteilen. Einen ganz ähnlichen Ansatz verfolgt schon die UNIX Philosophie, die auf drei Ideen basiert: Ein Programm soll nur eine Aufgabe erfüllen, die Programme sollen zusammenarbeiten können und die Programme sollen eine universelle Schnittstelle nutzen. Der Haken bei der Sache: Microservices-Architekturen ermöglich ein hohes Maß an Flexibilität in der Entwicklung, erhöhen aber gleichzeitig die Komplexität des Gesamtsystems. Die Herausforderung besteht deshalb darin, die vielen Komponenten des Systems so zu orchestrieren, dass die Übersicht nie verloren geht. Bei eCube wägen wir deshalb in jedem Projekt genau ab, ob und an welchen Stellen eine Zerlegung nach Aufgaben sinnvoll ist, ohne dass der Aufwand den Nutzen übersteigt.

Spezielle Werkzeuge wie Istio und Linkerd können helfen, einen solchen “Service Mesh” in den Griff zu bekommen. Bei eCube nutzen wir aktuell Docker für die Containerisierung, Keycloak für IAM & Standard REST-APIs mit Spring MVC. Es empfiehlt sich, diese Tools in Software-Projekten so früh wie möglich einzusetzen, um von Beginn an die volle Kontrolle über die wachsende Zahl von Services zu behalten.

Lesetipp: Einen kurzen Überblick und Starthilfe für die Arbeit mit Microservices bietet das E-Book von Eberhard Wolf, dass man hier kostenlos herunterladen kann.

Damit hochkomplexe Microservice-Architekturen nicht im Chaos versinken, nutzen wir die Techniken des Chaos Engineering.

Chaos Engineering

Eine sehr praktische Herausforderung der Software-Entwicklung adressiert das „Chaos Engineering“: Wie schafft man es, resiliente IT-Systeme zu bauen, die auch bei Teilausfällen noch funktionieren? Wie lassen sich Flexibilität der Entwicklung und die Geschwindigkeit der Bereitstellung (Time to market) in verteilten Softwaresystemen erhöhen, ohne dass beispielsweise die Wechselwirkungen zwischen verschiedenen Diensten in verschiedenen Systemen zu unvorhersehbaren Ergebnissen bzw. Fehlern oder Ausfällen führen?

„Chaos Engineering is the discipline of experimenting on a distributed system in order to build confidence in the system’s capability to withstand turbulent conditions in production.“ (principlesofchaos.org)

Die Herausforderung in der Software-Entwicklung besteht darin, Schwachstellen zu identifizieren, bevor sie sich in systemweiten, anormalen Verhaltensweisen manifestieren. Das ist leichter gesagt als getan und setzt voraus, dass Architekten und Entwickler wieder lernen, mehr systematisch zu experimentieren, statt jeden erdenklichen Fall voraussehen zu wollen. Ein Ansatz kann hier sein, „Chaos“ durch kleine Experimente in der Staging-Umgebung zu testen. Russ Miles, CEO von ChaosIQ hat dazu auf der JAX Konferenz 2018 einen sehr inspirierenden Vortrag gehalten:

Hier "Klicken", um Cookies zu akzeptieren und diesen Inhalt zu aktivieren

Einen groben Überblick, wie Chaos Engineering in der Praxis aussehen kann, geben die „Principles of chaos engineering“. Wir werden in einem weiteren Artikel hier im Blog näher darauf eingehen.

Fazit: neue Ansätze brauchen neues Denken

Neben den hier skizzierten Trends entstehen laufend neue Ideen und Konzepte für die Java-Enwicklung. Viele etablieren sich in der Praxis, während andere wieder verpuffen. Bei eCube greifen wir neue Methoden und Tools auf, wenn uns diese sinnvoll und praktikabel erscheinen, um Projekte flexibler und wirtschaftlicher umzusetzen. Dazu gehört derzeit etwa Kubernetes für die Automatisierung der Bereitstellung, Skalierung und Verwaltung von Container-Anwendungen. Dabei gehen wir ebenso agil bzw. iterativ vor wie in unseren Projekten. Das ist vor allem dann wichtig, wenn neue Ansätze eine Veränderung im Denken und in der Kultur erfordern, damit sie ihre volle Wirkung entfalten können. Wir werden in unserem Blog weiterhin von unseren Erfahrungen berichten.

Die Zeichen der Zeit stehen auch im B2B-Handel auf E-Commerce. Und dennoch sind viele Händler noch weit von E-Commerce auf höchstem Niveau entfernt. Zu diesem Ergebnis kommt eine aktuelle Studie von Forrester im Auftrag von Magento und nennt wesentliche Voraussetzungen, die Händler erfüllen müssen, um im E-Commerce erfolgreich zu sein.

Drei von vier Unternehmen kaufen Studien zufolge heute schon im Wesentlichen online ein, Tendenz steigend. Nicht ohne Grund erlebt der B2B-E-Commerce derzeit einen Boom und gehört schon heute zu den größten Segmenten der deutschen Internetwirtschaft. Hier bieten sich große Chancen für B2B-Händler, es ist jedoch zu erwarten, dass der Markt in vielen Branchen in absehbarer Zeit gesättigt sein wird. Ein Online-Shop allein wird schon bald nicht mehr ausreichen, um im wachsenden Wettbewerb Käufer zu überzeugen und zu binden.

Händler, die langfristig erfolgreich sein wollen, müssen Strategien entwickeln, die ihre Wettbewerbsfähigkeit auf Dauer sichert. Wir nennen das „E-Commerce-Excellence“.

Kriterien für „E-Commerce-Excellence“

Forrester hat in seiner Studie fünf Kriterien identifiziert, die Händler erfüllen müssen, um im E-Commerce überdurchschnittlich erfolgreich zu sein:

  • Ressourcen: Dediziertes Team oder klare Zuständigkeiten für E-Commerce im Unternehmen
  • Leadership: Führung bzw. Management für den Bereich E-Commerce
  • Technologie: Klare Zuständigkeiten für die technologische Unterstützung des E-Commerce
  • Integration: Zusammenwirken von E-Commerce und anderen Bereichen im Unternehmen
  • Rentabilität: E-Commerce als vollwertiges Profit-Center in der Organisation

50% der befragten Unternehmen erfüllen gerade einmal eines dieser Kriterien, nur jeder vierte Händler im B2B erfüllt wenigstens vier davon. Die Integration des E-Commerce in die bestehende Organisation bzw. in die Systemlandschaft stellt für viele Händler eine große Herausforderung dar. Das bestätigt auch eine Studie zum Einfluss der Digitalisierung auf den deutschen Einzelhandel von ibi Research, DIHK und IHK, die wir bereits in einem früheren Beitrag erläutert haben. Nicht wenige E-Commerce-Initiativen scheitern (oder bleiben zumindest hinter ihren Möglichkeiten), weil E-Commerce losgelöst von vorhandenen Strategien und Strukturen im Unternehmen geplant und umgesetzt wird.

Flexible Technologie als Schlüssel zum Erfolg

„Komplexe Infrastrukturen mit durchschnittlich 10,2 verkaufsbezogenen Technologien machen es vielen Unternehmen schwer, eine integrierte Lösung zu entwickeln, die ihren individuellen Anforderungen gerecht wird.“Forrester 2018

Daraus ergeben sich besondere Anforderungen an E-Commerce-Lösungen im B2B: zum einen müssen sie so flexibel sein, dass sie in die vorhandene Infrastruktur beim Händler integriert und im Kontext anderer Applikationen weiterentwickelt werden können. Denn nur wenn Systeme im Unternehmen zusammenwirken, können auch neue und alte Bereiche der Organisation erfolgreich zusammenwachsen.

Zum anderen müssen E-Commerce-Lösungen flexibel genug sein, um die Erwartungen der Käufer mit denen des eigenen Verkaufs in Einklang zu bringen. Und das unter höchst dynamischen Marktbedingungen, wo Kaufverhalten, Wettbewerb und Technologie permanent in Bewegung sind. Das ist leichter gesagt als getan, denn flexible E-Commerce-Systeme erfordern ein Umdenken und neue Methoden in der Planung und Umsetzung von Software. Hier kommt die agile Shop-Entwicklung ins Spiel, die wir an anderer Stelle genauer erörtern.

Empfehlungen für den E-Commerce im B2B

Aus den Ergebnissen der Forrester-Studie und den Erfahrungen aus der Praxis lassen sich wertvolle Erkenntnisse für die Planung und Umsetzung von E-Commerce-Projekten ableiten, die jeder Händler beherzigen sollte. Und zwar unabhängig davon ob er neu in den E-Commerce einsteigt oder seinen Online-Verkauf weiterentwickeln will.

1. Eigene Ressourcen und klare Zuständigkeiten für den E-Commerce

E-Commerce sollte nicht nur ein weiterer Verkaufskanal, sondern ein integraler Bestandteil der Geschäftsstrategie sein. Um dies zu erreichen, braucht es klar zugeordnete Verantwortlichkeiten, Ressourcen und Know-how im Unternehmen, sowohl auf fachlicher als auch auf technologischer Ebene. Die hier eingesetzten Teams müssen integriert mit sonstigen am Verkauf beteiligten Funktionsbereichen wie etwa Marketing, Vertrieb, Kundenservice, Fulfillment etc. zusammenarbeiten, um Kaufprozesse im Omni-Channel gemeinsam zu unterstützen.

2. E-Commerce und klassischer Verkauf verfolgen gemeinsame Ziele

So wie Marketing und Vertrieb gemeinsame Ziele verfolgen sollten, um den Verkaufserfolg zu sichern, so sollte auch der Online-Verkauf in die übrige Organisation eingebunden werden. Gemeinsame Ziele und Kennzahlen tragen dazu bei, Grenzen zwischen dem E-Commerce und anderen Unternehmensbereichen zu überwinden und Kräfte im Sinne des gemeinsamen Geschäftserfolges zu bündeln. Eine gezielte Incentivierung von Online-Verkäufen kann die Entwicklung und Verankerung des E-Commerce im Unternehmen zusätzlich begünstigen.

3. E-Commerce-Technologie muss sich neuen Anforderungen flexibel anpassen

E-Commerce ist Veränderung: die Bedürfnisse und Verhaltensweisen der Käufer sind ebenso in Bewegung wie die Wettbewerbssituationen und das Aufkommen neuer Technologien im Markt. Ein E-Commerce-System muss den Händler dabei unterstützen, den Erwartungen der Käufer jederzeit gerecht zu werden. Voraussetzung dafür ist eine technologische Basis, die es ermöglicht, schnell und einfach Änderungen vorzunehmen und Kernfunktionen bei Bedarf zu erweitern oder zu ersetzen. Es empfiehlt sich Online-Shops dementsprechend nach agilen Prinzipien zu entwickeln.

Anmerkung zum Thema Produktdaten

Produktdaten sind die Achillesferse im E-Commerce, denn ihre Qualität entscheidet ganz wesentlich über die „Product Experience“ – also die Erfahrung, die ein Käufer in einem Online-Shop macht. Besonders, wenn in Online-Shops und auf Marktplätzen riesige Mengen an Daten verarbeitet werden, stößt das manuelle Verarbeiten von Daten an Grenzen. Zur „E-Commerce-Excellence“ gehört deshalb auch, das Produktdaten-Management so weit wie möglich zu automatisieren. Hier kommt das Prinzip der „Product Data Consolidation“ ins Spiel, die den klassischen PIM-Ansatz um Mechanismen für die laufende und automatisierte Verbesserung der Qualität von Produktdaten erweitert.

Fazit

Die Studie von Forrester zeigt einmal mehr, wohin die Reise im B2B-E-Commerce geht: wer heute mit einem eigenen Shop in den Online-Verkauf einsteigen will, muss strategisch planen und integrieren. Denn der Online-Verkauf kann langfristig nur gelingen, wenn er mit anderen Funktionsbereichen im Unternehmen, die am Verkauf beteiligt, sind optimal zusammenwirkt. Händler sollten ihren E-Commerce wie jedes andere Profitcenter in ihrem Unternehmen strategisch steuern und mit den notwendigen Ressourcen an Personal, Know-how und Technologie ausstatten.

Viele Händler tun sich schwer mit der technischen Umsetzung ihres Online-Shops, insbesondere, wenn es um Produktdaten und die Integration von Systemen geht. Wir greifen im Folgenden drei Problemfelder auf und geben Anregungen für die Praxis.

Der stationäre Verkauf stellt im Multichannel-Handel nur noch einen von vielen Kanälen zum Kunden dar, bleibt aber auch künftig noch der wichtigste Einkaufskanal – wenn auch zunehmend in Verbindung mit anderen. Zu diesem Ergebnis kommt eine Studie zum Einfluss der Digitalisierung auf den deutschen Einzelhandel von ibi Research, DIHK und IHK. Fast 40 Prozent der heute rein stationären Händler wollen in fünf Jahren auch online Umsätze erzielen. Hauptmotivationen für den Schritt ins E-Commerce sind die Erschließung neuer Kunden und die Steigerung des Umsatzes.

Händler, die bereits online verkaufen, sahen sich beim Einstieg in den Online-Handel insbesondere mit Herausforderungen im Management von Produktdaten und Schnittstellen zwischen verschiedenen Software-Systemen konfrontiert. Lesen Sie hier, wie unsere E-Commerce-Experten die entsprechenden Ergebnisse aus der Händlerbefragung einschätzen.

1. Online-Händler unterschätzen das Thema Produktdaten

Laut Studie verursacht die Aufbereitung bzw. Bereitstellung von Produktdaten für die Umsetzung eines Online-Shops bei jedem zweiten Online-Händler mehr Aufwand als erwartet. Ein ähnliches Bild ergibt sich bei Betreibern von Marktplätzen.

Joachim Uhrlaß, Geschäftsführer bei eCube

E-Commerce hat höhere Ansprüche an Produktdaten

Wenn Händler versuchen, die Produktdaten aus ihrem stationären Verkauf 1:1 im Online-Shop einzusetzen, geht das zwangsläufig schief. Denn Produktdaten haben im E-Commerce zwei wesentliche Aufgaben, die es im Laden nicht in dieser Form gibt: Zum einen müssen die Daten die Produkte im Online-Shop optimal präsentieren. Das ist vor allem deshalb wichtig, weil es keine persönliche Beratung wie im Laden gibt. Zum anderen steuern Produktdaten im Online-Verkauf eine Reihe von Shop-Funktionen.

Damit beispielsweise die Suche nach Produkten oder das Filtern nach Kategorien optimal funktionieren, müssen die Produktdaten neben Basisdaten auch sogenannte Metadaten für die Steuerung des Systems enthalten. Dafür müssen Daten zunächst angereichert, bzw. konsolidiert werden. Bei größeren Online-Shops oder Marktplätzen, wo Produktdaten aus verschiedenen Quellen zusammengeführt werden, sollte das Shop-System das Datenmanagement und hier vor allem die Konsolidierung von Produktdaten zum Zweck der Qualitätssicherung so weit wie möglich automatisieren. Das reduziert auf Dauer den manuellen Aufwand für den Händler und stellt sicher, dass die Qualität der Produktdaten im Shop stets den Erwartungen der Käufer entspricht.

2. Schnittstellen im E-Commerce: anspruchsvoll in der Umsetzung

Hohe technische Komplexität wie etwa durch die Integration von Schnittstellen im Shop ist für fast die Hälfte der befragten Händler der Studie ein Grund, Ihre Produkte oder Dienstleistungen nicht online zu verkaufen. Das gilt sowohl für große als auch für kleinere Händler.

Günter Heiß, Geschäftsführer bei eCube

Multichannel braucht ein flexibles Schnittstellen-Management

Mit der Einführung eines neuen Verkaufskanals wächst für viele Händler naturgemäß die digitale Komplexität in ihrem Unternehmen. Wo sonst eine einfache Warenwirtschaft und eine Kundendatenbank friedlich koexistierten, stellt nun der Online-Handel in Echtzeit völlig neue Anforderungen an das Management von Daten und Waren. Dazu müssen vorhandene Systeme sinnvoll miteinander verbunden werden, um ihren Beitrag zum Verkaufserfolg im Internet optimal leisten zu können.

Das alte Denken und Planen in einzelnen Funktionen und Anwendungen, sogenannten “Application-Silos”, funktioniert im E-Commerce nicht. Die Umsetzung eines Online-Shops ist deshalb sehr wohl eine Herausforderung, aber zugleich für viele Händler auch eine “historische” Chance, die Landschaft und das Zusammenspiel verschiedener Systeme im Unternehmen neu zu ordnen und langfristig auf eine solide Basis zu stellen. Wichtig ist, die Weichen zu stellen für eine Shop-Architektur, die so flexibel ist, dass Schnittstellen und Komponenten in der Zukunft jederzeit ergänzt und bei Bedarf an neue Anforderungen an den Verkauf angepasst werden können.

3. Händler verzichten wegen knapper Ressourcen auf E-Commerce

Zu den wichtigsten Gründen, warum Händler nicht online verkaufen, zählen laut Studie vor allem die Angst vor hohen Kosten sowie fehlende zeitliche und personelle Ressourcen. Das gilt besonders für kleine Händler, die sich am ehesten davon abschrecken lassen.

Maximilian Kühne, Geschäftsführer bei eCube

Online-Handel sollte auf Dauer keinen zusätzlichen Aufwand verursachen

Bei eCube arbeiten wir daran, dass Händler ihren Online-Verkauf mit möglichst geringen personellen Ressourcen und schlanken Prozessen betreiben können. Denn das Produktdaten- und Qualitätsmanagement oder der Austausch von Kunden- und Verkaufsdaten mit CRM- und ERP-Systemen lassen sich sehr gut automatisieren. Dazu müssen die einzelnen Funktionsbereiche integriert zusammenwirken und nach definierten Regeln arbeiten. Diese Regeln und Anforderungen festzulegen, macht besonders beim Einstieg in den Online-Handel viel Arbeit und muss professionell gemacht werden.

Darin sehen wir eine unserer Stärken, denn wir betrachten Shop-Systeme nicht nur aus Sicht der Software-Entwickler, sondern vor allem auch aus der Business-Perspektive, denn hierfür werden Shop-Systeme entwickelt. Sie sollen Händlern weitere Umsatzpotenziale erschliessen und dabei die Möglichkeiten der Digitalisierung für die Automatisierung von Verkaufsprozessen unterstützen. Der Aufwand, der anfangs bei der Implementierung eines neuen Systems für den Händler entsteht, kann und soll sich nach kurzer Zeit amortisieren.

Übrigens

Dass es möglich ist, eine komplexe Shop-Architektur mit einem ausgetüftelten Produktdaten- und Schnittstellenmanagement auch für kleinere Online-Händler umzusetzen, zeigt der HENKA Onlineshop für Präzisionswerkzeuge. Gerne stellen wir Ihnen das Projekt persönlich vor und geben Ihnen Einblicke in Aufgabenstellung, Ablauf und Besonderheiten der Umsetzung.