SAP Commerce Cloud enfin disponible dans le Cloud

Aujourd’hui, beaucoup emploient le terme « SAP Customer Experience » (SAP CX) pour parler de SAP Commerce Cloud et des autres produits inclus dans la suite.

Certains savent qu’il existe 2 versions différentes de SAP Commerce Cloud : CCv1, qui est basée sur une infrastructure SAP, et une deuxième version dans un Cloud public. Mais rares sont ceux qui connaissent vraiment CCv2, cette version récente de SAP Commerce Cloud dans le Cloud public.  Pourquoi l’éditeur a-t-il choisi ce mode d’hébergement pour sa solution e-Commerce Cloud ? Et quel est son potentiel ? À l’heure où la majorité des applications sont hébergées dans le Cloud, en quoi SAP Commerce Cloud CCv2 se démarque-t-elle des autres offres ?  Je vous explique tout cela aujourd’hui. 

Du «Cloud» vers le Cloud

 Commençons par ce qui manquait dans la version CCv1. Même si SAP Commerce Cloud basée sur une infrastructure SAP comportait déjà la mention «Cloud» dans son nom, il ne s’agissait pas vraiment d’une solution Cloud à proprement parler pour 2 raisons : 

  1. Le client ne pouvait utiliser que 3 ou 4?environnements : développement standard, simulation, production et QA en option. Chaque environnement était composé de machines virtuelles hébergées par l’un des datacenters de SAP assurant le fonctionnement de SAP Hybris Commerce.
  2. Pour gérer ces environnements, SAP fournissait au client un tunnel VPN qui ne lui permettait pas d’accéder aux environnements de simulation et de production, ces derniers étant réservés à SAP. S’il incombait aux clients de créer leurs packages, il était impossible de déployer dans ces environnements. Pour toute tâche administrative, il fallait transmettre une demande de changement et attendre que les ingénieurs de SAP la traitent, pendant les horaires d’ouverture uniquement. Il était donc impensable de faire un déploiement en production un dimanche soir… 

Tout a changé en juin 2018 avec l’arrivée de SAP Commerce Cloud hébergé dans le Cloud public (ou CCv2). Pour l’hébergement, l’éditeur a choisi Microsoft Azure, l’un des leaders sur le marché des fournisseurs Cloud. Désormais, toutes les capacités dont vous avez besoin pour vos builds, vos déploiements dans le Cloud, vos tâches administratives et la surveillance sont disponibles dans le portail SAP Commerce dédié. Ce portail sert de proxy entre nous, les développeurs, et le Cloud public.   Pour en savoir plus sur les applications du portail SAP Commerce, penchons-nous sur quelques-uns des nouveaux piliers de CCv2.  

L'approche conteneurs

Comme dans SAP Commerce Cloud CCv1, vous bénéficiez de 3 environnements : développement, simulation et production. Chaque environnement repose sur Microsoft Azure et est équipé de son propre cluster Kubernetes assurant l’orchestration des nœuds. Chaque nœud est configuré avec Docker et Kubelet pour permettre le déploiement des images Docker créées par le processus de build de SAP Commerce Cloud. Son rôle est défini dans la configuration Aspect utilisée pendant le build.

Chaque aspect contribue ensuite à la conteneurisation en définissant les rôles des instances SAP Commerce Cloud dans un cluster Kubernetes. Par conséquent, l’application HAC est conteneurisée sur les nœuds avec les rôles «back office», «accstorefront» et «backgroundProcessing», tandis que SmartEdit est distribué sur les nœuds avec les rôles «backoffice» et «api», par exemple.  Le portail SAP Commerce facilite le travail dans ces différents environnements. Il vous permet de gérer tous vos endpoints et leur configuration, les stockages Cloud, les configurations de déploiement, les services, les instantanés et la surveillance.   

«Sésame, ouvre-toi» 

Sur le plan de la gestion de versions du code, SAP s’est enfin alignée sur des références sectorielles comme Git. Jusqu’à récemment, les utilisateurs étaient contraints de coder directement dans le système métier assurant l’exécution du code. Aujourd’hui encore, les programmeurs ABAP se souviennent avec effroi de leurs expériences dans les années 70. L’arrivée de la plateforme Java Netweaver au début des années 2000 avait permis aux développeurs d’utiliser de nouveaux produits pour gérer leur code, mais uniquement en Java.

Il a fallu attendre des dizaines d’années pour que SAP intègre enfin des systèmes de contrôle de versions distribués et open source comme Git.  Initialement lancée pour les activités de développement sur SAP HANA, l’intégration Git a rapidement été adaptée à SAP Commerce Cloud.

Elle en est aujourd’hui un composant natif. Pour nous en tant que développeurs et intégrateurs, cela signifie que la création d’un pipeline d’intégration continue (CI) fait maintenant partie intégrante de la plateforme. SAP Commerce Cloud CCv2 est directement connecté à n’importe quel dépôt de code Git : il vous suffit de spécifier son adresse depuis le portail SAP Commerce Cloud et de paramétrer une clé publique SSH dans votre dépôt Git pour autoriser la connexion. Ensuite, vous n’avez plus qu’à cliquer sur «Deploy to Environment», puis choisir les options d’environnement et de déploiement pour votre build et votre déploiement.

Spartacus monte au Front(End) 

Les solutions headless ont beaucoup fait parler d’elles, tant sur le plan de leurs avantages que de leur impact sur la technologie et le marché de l’e-Commerce. Mais ce n’est pas la seule caractéristique importante de SAP Commerce Cloud CCv2. L’un des changements technologiques clés de cette version est l’utilisation de Spartacus, une vitrine JavaScript basée sur Angular au niveau front-end. Cette vitrine dissociée et open source s’appuie sur des API omni-commerce connect (OCC) pour communiquer avec le back-end SAP Commerce Cloud.

Et si vous préférez les front-ends de SAP comme les Accelerators B2C ou B2B, ne vous inquiétez pas : ils sont toujours disponibles dans CCv2. C’est précisément dans ces situations que le mode headless entre en jeu : Spartacus se dissocie du système back-end et ne remplace pas obligatoirement vos Accelerators de prédilection !

Il crée simplement un point de contact supplémentaire exécuté sur le même back-end.  Quels sont les autres points forts de Spartacus ? Il est développé en SPA (Single-Page Application), autrement dit sous forme d’application web qui charge une seule page puis met à jour son contenu grâce à des requêtes AJAX via une API REST. Cette approche représente une avancée vers les PWA (Progressive Web Applications), un nouveau concept d’applications front-end pour tous types de supports (ordinateurs, appareils mobiles, appareils intelligents, etc.).  

Quelles perspectives pour la solution ? 

SAP redouble d’efforts pour combler ses lacunes technologiques et s’imposer comme un leader et un concurrent redoutable dans le marché du Cloud. Malgré leur popularité et leur évolution continue, ses solutions Cloud pourraient encore s’améliorer.   Voici quelques perspectives potentielles pour CCv2 : 

  1. Spartacus a vocation à remplacer les Accelerators B2B et B2C. C’est déjà chose faite pour l’Accelerator B2C, et SAP travaille actuellement sur l’ajout de la fonctionnalité B2B dans Spartacus.
  2. On peut également s’attendre à des améliorations au niveau des processus de build et de déploiement actuellement chronophages, ainsi qu’à une flexibilité accrue en termes de personnalisation des builds. Ces optimisations ont pour objectif d’éliminer les tâches manuelles pendant la création des pipelines CI.
  3. Intégration à SAP Commerce Data Hub, SAP Cloud Platform Integration, Cloud Platform Extension Factory et à la solution SAP Cloud Platform, ainsi qu’à SAP S/4HANA.
  4. Unification de toutes les interfaces Cloud SAP. Cette unification pourrait s’accompagner d’un rebranding et d’un remaniement des plateformes. 

SAP Commerce Cloud CCv2 représente avant tout une transition : au lieu d’avoir à gérer des infrastructures complexes et de développer en interne, les clients peuvent maintenant gérer la mise en œuvre de solutions métier avec une approche open source. Si vous souhaitez offrir à vos utilisateurs une meilleure expérience client, tout en démocratisant vos activités de développement, vous avez tout intérêt à opter pour CCv2 et Spartacus.