+ All Categories
Home > Technology > Evaluierung einer Hybris-Anbindung an Sitecore mittels Commerce Connect

Evaluierung einer Hybris-Anbindung an Sitecore mittels Commerce Connect

Date post: 06-Apr-2017
Category:
Upload: comspace-gmbh-co-kg
View: 1,790 times
Download: 1 times
Share this document with a friend
40
© 2015 .comspace Evaluierung einer Hybris- Anbindung an Sitecore Sitecor UserGroup Deutschland Sep. 2015 1
Transcript

© 2015 .comspace

Evaluierung einer Hybris-Anbindung an Sitecore

Sitecor UserGroup Deutschland Sep. 2015

1

© .comspace2015

Dieser Vortrag wurde Ende September 2015 beim Treffen

der Sitecore Usergroup Deutschland in Bielefeld

gehalten. Der Vortrag befasst sich mit einem

Anwendungsfall für den Einsatz des Sitecore Commerce

Connect. In diesem Anwendungsfall hat das Sitecore

Team von Comspace einen PoC für eine Hybris

Integration in Sitecore erfolgreich durchgeführt.

Hintergrund

2

© 2015 .comspace

Agenda

© .comspace2015

• Ziel des PoC

• Kurzvorstellung Sitecore Commerce Connect

• Erfahrungsbericht PoC

• Fazit

• Kontakt

Agenda

4

© 2015 .comspace

Ziel des PoC

© .comspace2015

Warum ein PoC

6

• Evaluierung des Sitecore Commerce Connect (Funktionsumfang kennenlernen)

• Einsatzbereiche identifizieren

• Welche Aufwände sind bei einem solchen Integrationsvorhaben einzuplanen

• Umsetzbarkeit von Kunden- und Shop-spezifischen Anforderungen besser einschätzen können

• Wissenstransfer

© 2015 .comspace

Kurzvorstellung Sitecore Commerce Connect

© 2015 .comspace

Do not forget!

8

“Sitecore Commerce Connect is an abstract service layer and not a stand-alone

solution. It is a framework and an API for e-commerce with focus on

integration and at the same time, to track, act, and follow up on customer

behavior. The goal is to bring the unique customer engagement features of

Sitecore into e-commerce solutions, regardless of the back-end e-commerce

system being used.”

© 2015 .comspace

Architektur Ansatz

9

Commerce Server Connector

Dynamics AX Connector

Hybris Connector

Sitecore Experience Platform

Webshop

Connect Engagement Artifacts

Connect Service Layers (APIs)

Connect Product Data Modell

© 2015 .comspace

Architektur Ansatz

10

Commerce Server Connector

Dynamics AX Connector

Hybris Connector

Sitecore Experience Platform

Webshop

Connect Engagement Artifacts

Connect Service Layers (APIs)

Connect Product Data Modell

Conditional rendering rules, EA plans with actions and conditions, Pages Events and goals

© 2015 .comspace

Architektur Ansatz

11

Commerce Server Connector

Dynamics AX Connector

Hybris Connector

Sitecore Experience Platform

Webshop

Connect Engagement Artifacts

Connect Service Layers (APIs)

Connect Product Data Modell

Cart, Pricing, Customers, Inventory, Orders, Products, Sync

2015 .comspace

• Shopping Cart • Pricing • Customers and Users • Inventory • Orders • Product Sync • Gift Card • Wish List • Payments • Shipping • Loyality Programs

Existierende Service Layer (APIs)

12

© 2015 .comspace

Service Layer - Domain Model (Shopping Cart)

13

© 2015 .comspace

Service Layer - Service Provider (Shopping Cart)

14

CartServiceProvider (aus dem Developer’s Guide

© 2015 .comspace

Service Layer - Pipelines, Pipelines… (Shopping Cart)

15

© 2015 .comspace

Service Layer - Pipelines, Pipelines… (Shopping Cart)

16

RunSaveCart

© 2015 .comspace

Service Layer - Pipelines, Pipelines… (Shopping Cart)

17

RunSaveCart

RunSaveCart

© 2015 .comspace

Service Layer - Pipelines, Pipelines… (Shopping Cart)

18

commerce.carts.saveCart

RunSaveCart

RunSaveCart

© 2015 .comspace

Prinzipien des Frameworks

19

Pipelines jeder Service Layer

benutzt Sitecore Pipelines

Abstraction keine Sitecore oder ECS* Abhängigkeit in Service Layern

Extensibility Domain Model

erweiterbar

Simplicity kleinster

gemeinsamer Nenner

Fallback fehlende

Implementierungen im ECS* können

überbrückt werden Independently

keine Abhängigkeit zwischen Service

Layern

* ECS = External Commerce System

© 2015 .comspace

Erfahrungsbericht PoC

© .comspace2015

Reminder: Warum ein PoC

21

• Evaluierung des Sitecore Commerce Connect (Funktionsumfang kennenlernen)

• Einsatzbereiche identifizieren

• Welche Aufwände sind bei einem solchen Integrationsvorhaben einzuplanen

• Umsetzbarkeit von Kunden- und Shop-spezifischen Anforderungen besser einschätzen können

• Wissenstransfer

© .comspace2015

Setup für den PoC

22

Ausgangssituation:

• Lokale Hybris Installation

• Demoshop eingerichtet (powertoolsProductCatalog/Online)

• Leere Sitecore Installation

Vorgehen:

• Funktionale Anforderungen definiert

• Parallele Entwicklung Hybris REST-Services (JSON) und Sitecore Demo HybrisConnect

• Layout von Azubis

© .comspace2015

Anforderungen

23

1. Einfache Produkte darstellen

2. Preise darstellen

3. Artikel in Warenkorb legen

© 2015 .comspace24

Theoretischer Hintergrund: Produktsynchronisation

Abgrenzung: Preise & Lagerbestand sind keine Produktdaten

wegen deren hoher Komplexität und Dynamik

Produktdatenverwaltung - naheliegende Varianten

• Produkte als Items in Sitecore Datenbank (bidirektional möglich)

• Produkte in ECS, Zugriff über Sitecore Data Provider

• Produkte in ECS, Zugriff über Sitecore Index

© .comspace2015

Theoretischer Hintergrund: Entscheidungskriterien

25

1. Aufwand (Variante 1 ist Modul-Standard)

2. Sitecore Funktionsumfang (Produkt als Item)

• Sitecore Experience Editor

• Personalisierung

• Rendering Engine (Caching, A/B-Tests etc.)

3. Bearbeitungsmöglichkeiten in Sitecore

4. Verfügbarkeit ECS (aus Sicht Sitecore)

5. Asynchrone Schnittstelle ausreichend?

6. Performance

© 2015 .comspace

Demo Produkte

26

sitecorepilotstorefront/rest/products/powertoolsProductCatalog/Online sitecorepilotstorefront/rest/product/powertoolsProductCatalog/Online sitecorepilotstorefront/rest/categories/powertoolsProductCatalog/Online

© 2015 .comspace27

Demo Sitecore - Funktionen

• Repository zeigen (X Produkte)

• Produkt zeigen

• Produkt in Hybris ändern

• Count hochsetzen

• Produkte synchronisieren

• Repository zeigen (X + 1 Produkte)

• Produkt gerändert

• Demo VS

© .comspace2015

Erfahrung Produkte: Funktionsumfang (Produkt als Item)

28

• Dauer ca. 5 Tage

• Erster Einstieg durch Pipelines in Pipelines herausfordernd

• Dokumentation

• „Top“: Synchronisation von Produkten und Klassifizierungen

• „Mau“: Zuordnung von Classifications zu Products

• Erkenntnis: Größter Aufwand wird in Abgleich der Datenmodelle gehen (Verständnis für ECS)

• Problemlos: Differenzabgleich, Multishop

• Standard umfasst keine Synchronisation von Bildern

• Applikation “Merchandising Manager” ist Bestandteil des CommerceServer Connect

© .comspace2015

Erfahrung Produkte: Was man wissen muss

29

• Einige nützliche Klassen sind in der CommerceServer API verortet: ProductsSearchResult & CommerceConstants → Selbst entwickeln

• Custom Product: ProductTemplateId in Sitecore.Commerce.Products.ItemClassificationService fest verdrahtet → Service überschreiben

• weitere Informationen auch in unserer Serie zum Commerce Connect unter blog.comspace.de

© .comspace2015

Anforderungen

30

1. Einfache Produkte darstellen

2. Preise darstellen

3. Artikel in Warenkorb legen

© 2015 .comspace

Demo Preise

31

sitecorepilotstorefront/rest/product/powertoolsProductCatalog/Online

© .comspace2015

Erfahrung Preise

32

• Dauer ca. 1 Tage

• „Top“: ECS Preishoheit

• Kleiner Service Layer

• Datenmodell schnell nachvollziehbar

• Wenig Pipelines, d.h. kurze Konfigurationsdatei

• Performance: Synchrone Schnittstelle sollte Bulk-Operationen nutzen:

• „Mau“: GetProductPricesRequest enthält keine Sprache → Custom Request schreiben

© .comspace2015

Anforderungen

33

1. Einfache Produkte darstellen

2. Preise darstellen

3. Artikel in Warenkorb legen

© 2015 .comspace

Demo Warenkorb

34

sitecorepilotstorefront/rest/cart sitecorepilotstorefront/rest/addToCart

© .comspace2015

Erfahrung Warenkorb: Was man wissen muss

35

• Dauer ca. 2 Tage

• Komplexer Service Layer

• Pipelines über Pipelines

• Herausforderungen:

✴ Datenhoheit/ Zuständigkeit

✴ Synchronisation: Sitecore Shop, ECS, EA-Plan

✦ Zwischenspeicher (z.B. Contact.Attachments)

✦ Trigger (je Aktion, Checkout)

• Stolpersteine:

• Processor FindCartInEaState benötigt CustomerId → eigentlich optionale CustomerId an CreateOrResumeCartRequest mitgeben

© 2015 .comspace

Fazit

© .comspace2015

Sitecore Commerce Connect - Entwicklung

37

• Entwicklungsdauer: ca. 2 Wochen

• Materialien

• Umfangreiche Dokumentation

• Noch wenig Quellen im Internet

• Beispielimplementierungen für MS Dynamics AX und CommerceServer auf dev.sitecore.net zum download

• Erster Einstieg könnte durch Schulung und Cookbooks erleichtert werden

• Hohe Abstraktion: Customizing ist Grundkonzept

• eCommerce-KnowHow erforderlich

• Hoher Konzeptions- und Abstimmungsaufwand durch fachliche Komplexität

• Option: Einsatz als PIM-Connector

© 2015 .comspace38

Fazit

Die Entwicklung mit dem Sitecore Commerce Connect macht Spaß! Wir entwickeln den PoC weiter. Damit wir eine „runde“ Integration präsentieren können.

© 2015 .comspace

Ihre Fragen. Nehmen Sie Kontakt mit uns auf…


Recommended