{"id":120013,"date":"2022-12-22T08:00:00","date_gmt":"2022-12-22T07:00:00","guid":{"rendered":"http:\/\/e3mag.com\/?p=120013"},"modified":"2024-01-19T12:49:56","modified_gmt":"2024-01-19T11:49:56","slug":"headless-mais-pas-sans-tete","status":"publish","type":"post","link":"https:\/\/e3mag.com\/fr\/headless-mais-pas-sans-tete\/","title":{"rendered":"Headless, mais pas sans t\u00eate"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Produits configurables avec SAP Commerce et SAP Spartacus<\/h2>\n\n\n\n<p>Pour r\u00e9pondre \u00e0 l'h\u00e9t\u00e9rog\u00e9n\u00e9it\u00e9 des besoins en mati\u00e8re de vente, SAP Commerce peut \u00eatre adapt\u00e9 aux exigences individuelles gr\u00e2ce \u00e0 des packs d'extension modulaires. L'extension Configurator Complex Products (CCP) permet de g\u00e9rer des produits configurables et complexes et r\u00e9alise l'int\u00e9gration avec SAP Variant Configuration and Pricing Services (souvent abr\u00e9g\u00e9 en CPS), qui est responsable de la mise en \u0153uvre de la logique de configuration. Une abstraction appropri\u00e9e permet \u00e9galement d'int\u00e9grer des environnements de configuration non natifs de SAP, par exemple des configurateurs historiques.<\/p>\n\n\n\n<p>Outre la mise en \u0153uvre fonctionnelle et logique de la personnalisation des produits configurables, CCP fournit un front de magasin rudimentaire pour l'affichage et l'interaction des produits dans le catalogue de produits du syst\u00e8me de commerce. La repr\u00e9sentation continue des structures de produits - du moteur de configuration au catalogue de produits au point de vente central (PoS) - permet de concevoir une exp\u00e9rience client continue et d'automatiser les processus de production internes \u00e0 l'entreprise sur la base des donn\u00e9es de produits g\u00e9r\u00e9es de mani\u00e8re centralis\u00e9e.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">SAP Spartacus<\/h3>\n\n\n\n<p>SAP Spartacus est un projet open source sous licence Apache License 2.0, g\u00e9r\u00e9 et d\u00e9velopp\u00e9 principalement par l'\u00e9quipe cloud de SAP Commerce. Bas\u00e9 sur le framework Angular, Spartacus impl\u00e9mente une UI headless qui s'int\u00e8gre out of the box avec le syst\u00e8me de commerce SAP en tant que storefront. Dans ce contexte, le terme headless signifie que SAP Commerce et SAP Spartacus sont des applications ind\u00e9pendantes et autonomes, la responsabilit\u00e9 de la livraison du contenu incombant au syst\u00e8me SAP Commerce, tandis que le storefront de Spartacus met en \u0153uvre la conception et l'interaction.<\/p>\n\n\n\n<p>Contrairement aux fronts d'attaque traditionnels, qui sont g\u00e9n\u00e9ralement des pages de serveur Java (JSP), l'application \u00e0 page unique (SPA) dissocie le front-end du back-end. Cela permet de g\u00e9rer et d'ex\u00e9cuter les cycles de d\u00e9veloppement ind\u00e9pendamment les uns des autres et de s\u00e9parer les bases de code. La communication entre les applications se fait exclusivement via des API bas\u00e9es sur le web. En standard, Spartacus fournit toutes les fonctions attendues d'une boutique en ligne, dont la page d'accueil, la page de d\u00e9tail du produit, le panier d'achat et le check-out, entre autres.\u00a0<\/p>\n\n\n\n<p>Le d\u00e9veloppement d'une interface de magasin configurateur commence par le choix de la technologie appropri\u00e9e. Pour cr\u00e9er la transparence dans les bases de d\u00e9cision pour une technologie pour la mise en \u0153uvre du front de magasin individuel, une comparaison des alternatives de d\u00e9cision aide. Les fronts de magasin acc\u00e9l\u00e9rateurs classiques sont annot\u00e9s comme obsol\u00e8tes dans les versions actuelles de SAP Commerce et doivent \u00eatre enti\u00e8rement supprim\u00e9s du syst\u00e8me au deuxi\u00e8me trimestre 2024. SAP justifie cette d\u00e9cision par les avantages du d\u00e9couplage du front-end et du back-end. Suite \u00e0 cette d\u00e9cision de la part de SAP, le red\u00e9veloppement d'un Accelerator Storefront traditionnel ne repr\u00e9sente plus une option du point de vue actuel.<\/p>\n\n\n\n<p>Les alternatives restantes sont le d\u00e9veloppement individuel d'une fa\u00e7ade de magasin \u00e0 partir de z\u00e9ro et l'utilisation des fonctionnalit\u00e9s pr\u00e9d\u00e9finies du framework Spartacus.&nbsp;<\/p>\n\n\n\n<p>Spartacus offre out of the box un front de magasin ex\u00e9cutable, dont la personnalisation est bas\u00e9e sur les concepts de configurabilit\u00e9 et d'adaptabilit\u00e9. Les configurations modifient le comportement de Spartacus, par exemple l'adresse du backend \u00e0 connecter, l'authentification et la pr\u00e9sentation. Pour favoriser l'adaptabilit\u00e9, la base de code de Spartacus est \u00e9galement explicitement con\u00e7ue pour r\u00e9utiliser et adapter les \u00e9l\u00e9ments de code sur la base des concepts d'injection de d\u00e9pendance du framework SPA Angular. Gr\u00e2ce \u00e0 la mise en \u0153uvre du projet Spartacus par SAP Commerce Cloud, les projets de d\u00e9veloppement bas\u00e9s sur Spartacus b\u00e9n\u00e9ficient d'une expertise technique approfondie dans l'environnement commercial.<\/p>\n\n\n\n<p>De plus, Spartacus met en \u0153uvre une gestion \u00e9volutive de l'\u00e9tat du front-end. Le d\u00e9veloppement en interne de ces composants de base dans le cadre d'un projet individuel retarde le d\u00e9ploiement du premier front de magasin enti\u00e8rement op\u00e9rationnel et augmente sensiblement les co\u00fbts de maintenance et de d\u00e9veloppement. Les crit\u00e8res de qualit\u00e9 classiques du d\u00e9veloppement logiciel rel\u00e8vent en outre de la responsabilit\u00e9 de l'\u00e9quipe de d\u00e9veloppement. D'autre part, dans le cadre d'un projet individuel, l'\u00e9quipe de d\u00e9veloppement est ind\u00e9pendante sur le plan technologique et a la responsabilit\u00e9 de chaque d\u00e9cision et de l'impl\u00e9mentation de la logique.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Concepts transversaux<\/h3>\n\n\n\n<p>Tant le syst\u00e8me SAP Commerce que SAP Spartacus tirent parti du mod\u00e8le de conception logicielle Fa\u00e7ade. Une fa\u00e7ade constitue une couche d'abstraction sur une ou plusieurs sources de donn\u00e9es pour pr\u00e9parer les donn\u00e9es dans un but pr\u00e9cis. Le SAP Commerce met en \u0153uvre une Configuration Facade rudimentaire dans le backend afin d'obtenir les donn\u00e9es de configuration, de les agr\u00e9ger et de les pr\u00e9parer pour une utilisation dans un front office de configuration. Comme les fonctionnalit\u00e9s rudimentaires ne sont que tr\u00e8s rarement suffisantes pour r\u00e9pondre aux besoins de configuration individuels, les d\u00e9veloppeurs doivent \u00eatre en mesure d'ajouter des fonctionnalit\u00e9s sp\u00e9cifiques \u00e0 cette fa\u00e7ade. La base technologique pour le d\u00e9veloppement dans SAP Commerce est le framework Java-Spring-webmvc.\u00a0<\/p>\n\n\n\n<p>SAP Spartacus utilise \u00e9galement le mod\u00e8le de conception Fa\u00e7ade dans le frontend pour pr\u00e9parer les donn\u00e9es obtenues du backend \u00e0 l'utilisation dans le web frontend. Pour personnaliser cette fonctionnalit\u00e9, il faut savoir utiliser l'injection de d\u00e9pendances Angular et les jetons d'injection qui lui sont inh\u00e9rents. Sur la base des jetons d'injection, les composants peuvent \u00eatre \u00e9chang\u00e9s et \u00e9tendus afin de cr\u00e9er une exp\u00e9rience utilisateur personnalis\u00e9e. SAP Commerce et SAP Spartacus utilisent \u00e9galement le concept OCC (Omnichannel Commerce). L'OCC poursuit l'objectif d'une exp\u00e9rience client sans faille \u00e0 travers tous les points de contact du client avec l'entreprise, ind\u00e9pendamment du moyen de communication utilis\u00e9. <\/p>\n\n\n\n<p>D'un point de vue technique, OCC dans SAP Commerce signifie l'interface de mise \u00e0 disposition des donn\u00e9es pr\u00e9par\u00e9es dans la fa\u00e7ade sur la base de services web. SAP Spartacus reprend ce concept et r\u00e9cup\u00e8re les donn\u00e9es dans sa couche OCC avant de les transmettre \u00e0 la fa\u00e7ade. Tant les fa\u00e7ades que l'OCC sont des bases \u00e9l\u00e9mentaires pour pouvoir d\u00e9velopper un front de magasin robuste, \u00e9volutif et maintenable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Comp\u00e9tences SAP Commerce<\/h3>\n\n\n\n<p>La possibilit\u00e9 de personnaliser le syst\u00e8me SAP Commerce repose \u00e9galement sur les configurations et l'extension de la base de code pr\u00e9\u00e9tablie. \u00c0 des fins de configuration, le syst\u00e8me SAP Commerce est livr\u00e9 avec le moteur propri\u00e9taire ImpEx (importation et exportation). Gr\u00e2ce \u00e0 la syntaxe tabulaire des scripts ImpEx, il est possible d'apporter des modifications faciles \u00e0 comprendre et reproductibles au comportement du SAP Commerce. Les personnalisations de la destination et de la mise en page en sont un exemple. Ce que l'on appelle les \"destinations utilis\u00e9es\" (en anglais \"Consumed Destinations\") permettent l'int\u00e9gration dans d'autres syst\u00e8mes back-end. En appliquant un script ImpEx correspondant, la destination utilis\u00e9e peut \u00eatre redirig\u00e9e vers le moteur sp\u00e9cifique au client avec des informations d'authentification sp\u00e9cifiques. La mise en page peut en outre \u00eatre adapt\u00e9e en ce qui concerne les conteneurs \u00e0 afficher dans le frontend, qu'un storefront utilise ensuite pour afficher les contenus correspondants.<\/p>\n\n\n\n<p>Pour pr\u00e9parer les donn\u00e9es, le SAP Commerce utilise les concepts de populator et de mapper en combinaison avec les fa\u00e7ades. Un populator est responsable de la conversion des donn\u00e9es en un objet existant. Plusieurs populateurs peuvent \u00eatre connect\u00e9s les uns derri\u00e8re les autres afin de repr\u00e9senter une transformation globale des donn\u00e9es. Les mappeurs sont responsables, au sein des populateurs, de la g\u00e9n\u00e9ration d'un nouvel objet de donn\u00e9es \u00e0 partir d'un autre type de donn\u00e9es. Ensemble, les populateurs et les mappeurs forment la transformation de donn\u00e9es qui fournit l'input pour la fa\u00e7ade. <\/p>\n\n\n\n<p>L'utilisation syst\u00e9matique de ce type de transformation des donn\u00e9es a un effet nettement positif sur les crit\u00e8res de qualit\u00e9 du code \u00e9crit. Le concept de gestion des donn\u00e9es est au c\u0153ur du front de stockage de Spartacus : il se compose de l'impl\u00e9mentation de la gestion d'\u00e9tat avec NgRx (Redux), de l'utilisation syst\u00e9matique des observables ainsi que des concepts de normalisation et de s\u00e9rialisation. La combinaison de ces \u00e9l\u00e9ments rend le front de stockage centr\u00e9 sur les donn\u00e9es et r\u00e9actif. NgRx est une impl\u00e9mentation Angular open source du framework Redux. L'\u00e9tat des donn\u00e9es stock\u00e9es dans NgRx est communiqu\u00e9 exclusivement via des observables, ce qui permet \u00e0 l'IU de r\u00e9agir en permanence aux modifications des donn\u00e9es.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Kit de comp\u00e9tences Spartacus&nbsp;<\/h3>\n\n\n\n<p>La normalisation d\u00e9signe le processus de transformation des donn\u00e9es du back-end Commerce dans la fa\u00e7ade Spartacus afin de les pr\u00e9parer pour l'affichage. Toutes les donn\u00e9es entrantes passent par des normaliseurs d\u00e9di\u00e9s. Inversement, toutes les donn\u00e9es modifi\u00e9es par l'interaction de l'utilisateur circulent de la fa\u00e7ade Spartacus vers le backend Commerce par l'interm\u00e9diaire de s\u00e9rialiseurs, qui sont responsables de la transformation des donn\u00e9es en retour vers le mod\u00e8le OCC.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Conclusion<\/h3>\n\n\n\n<p>CCP et SAP Spartacus offrent une interface de configuration pr\u00eate \u00e0 l'emploi qui s'int\u00e8gre parfaitement avec les configurateurs SAP existants. Si une exp\u00e9rience client individuelle doit \u00eatre repr\u00e9sent\u00e9e avec les deux syst\u00e8mes, les entreprises ne peuvent toutefois pas \u00e9viter d'adapter la logique existante. Pour cela, il faut une expertise dans le backend, c'est-\u00e0-dire Java Spring webmvc, ainsi que dans le frontend, c'est-\u00e0-dire Angular. Bien que l'affichage des configurateurs r\u00e9agisse de mani\u00e8re adaptative aux donn\u00e9es du backend, les entreprises atteindront rapidement leurs limites avec l'impl\u00e9mentation standard dans les deux syst\u00e8mes. Il est possible de d\u00e9velopper son propre front de magasin \u00e0 partir de z\u00e9ro, mais cela comporte des risques tr\u00e8s diff\u00e9rents. Pour les ma\u00eetriser, il faut que l'\u00e9quipe de d\u00e9veloppement dispose d'un savoir-faire approfondi dans diff\u00e9rents domaines de l'ing\u00e9nierie logicielle.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"112\" src=\"https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso.jpg\" alt=\"\" class=\"wp-image-120018\" srcset=\"https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso.jpg 1000w, https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso-768x86.jpg 768w, https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso-100x11.jpg 100w, https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso-480x54.jpg 480w, https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso-640x72.jpg 640w, https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso-720x81.jpg 720w, https:\/\/e3mag.com\/wp-content\/uploads\/2022\/11\/ci-banner-adesso-960x108.jpg 960w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>","protected":false},"excerpt":{"rendered":"<p>En tant que plateforme de commerce \u00e9lectronique, SAP Commerce est un \u00e9l\u00e9ment central de la num\u00e9risation de nombreuses entreprises de production. Configurator Complex Products et SAP Spartacus offrent une interface de configuration ex\u00e9cutable qui s'int\u00e8gre parfaitement avec les configurateurs SAP existants.<\/p>","protected":false},"author":2532,"featured_media":120016,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"pmpro_default_level":"0","footnotes":""},"categories":[5,41922],"tags":[15917,229,111,41924],"coauthors":[40507],"class_list":["post-120013","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-it-management","category-mag-22-11","tag-adesso","tag-e-commerce","tag-infrastruktur","tag-mag-22-11","pmpro-has-access"],"acf":[],"featured_image_urls_v2":{"full":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"thumbnail":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-80x80.jpg",80,80,true],"medium":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",400,180,false],"medium_large":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-768x346.jpg",768,346,true],"large":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"image-100":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-100x45.jpg",100,45,true],"image-480":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-480x216.jpg",480,216,true],"image-640":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-640x288.jpg",640,288,true],"image-720":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-720x324.jpg",720,324,true],"image-960":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-960x432.jpg",960,432,true],"image-1168":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-1168x526.jpg",1168,526,true],"image-1440":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"image-1920":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"1536x1536":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"2048x2048":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"trp-custom-language-flag":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",18,8,false],"bricks_large_16x9":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"bricks_large":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"bricks_large_square":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",1200,540,false],"bricks_medium":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",600,270,false],"bricks_medium_square":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz.jpg",600,270,false],"profile_24":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-24x24.jpg",24,24,true],"profile_48":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-48x48.jpg",48,48,true],"profile_96":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-96x96.jpg",96,96,true],"profile_150":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-150x150.jpg",150,150,true],"profile_300":["https:\/\/e3mag.com\/wp-content\/uploads\/2022\/12\/shutterstock_2159893093_Golden-Dayz-300x300.jpg",300,300,true]},"post_excerpt_stackable_v2":"<p>SAP Commerce ist als E-Commerce-Plattform zentraler Bestandteil der Digitalisierung etlicher produzierender Unternehmen. Configurator Complex Products und SAP Spartacus bieten eine lauff\u00e4hige Konfigurationsoberfl\u00e4che, die sich nahtlos mit vorhandenen SAP-Konfiguratoren integriert.<\/p>\n","category_list_v2":"<a href=\"https:\/\/e3mag.com\/fr\/categorie\/gestion-de-linformatique\/\" rel=\"category tag\">IT-Management<\/a>, <a href=\"https:\/\/e3mag.com\/fr\/categorie\/mag-22-11\/\" rel=\"category tag\">Mag 22-11<\/a>","author_info_v2":{"name":"Adesso SE","url":"https:\/\/e3mag.com\/fr\/author\/adesso-se\/"},"comments_num_v2":"0 commentaire","_links":{"self":[{"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/posts\/120013","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/users\/2532"}],"replies":[{"embeddable":true,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/comments?post=120013"}],"version-history":[{"count":1,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/posts\/120013\/revisions"}],"predecessor-version":[{"id":137658,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/posts\/120013\/revisions\/137658"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/media\/120016"}],"wp:attachment":[{"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/media?parent=120013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/categories?post=120013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/tags?post=120013"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/e3mag.com\/fr\/wp-json\/wp\/v2\/coauthors?post=120013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}