Posté le : 01/08/2021

Partager

Contexte

Azure chez Feu Vert

La société Feu Vert fait confiance à Expertime depuis 2013 pour de développement et la maintenance de sa plateforme e-commerce feuvert.fr

Depuis sa création la fréquentation et le taux de transformation du site e-commerce n’ont cessés de progresser.

Après une première étape franchie il y a 7 ans, avec la mise en œuvre d’une architecture hybride PaaS et IaaS dans Azure, et la réalisation de nombreuses évolutions fonctionnelles consécutives (prise de rendez-vous en ligne, utilisation des pages produits sur bornes de consultation en magasin, nouvelle recherche pour la gamme de produits pneumatiques etc), il devenait évident pour la direction digitale de Feu Vert de devoir procéder à la modernisation de la plateforme, afin d’assurer des fondations solides aux prochaines années d’investissements de la marque sur le digital. 

Le site dans sa version de 2013 consistait en l’intégration d’une solution custom développée en .Net avec la brique Endeca de l’éditeur Oracle pour les fonctions de recherches et de merchandising (mise en avant produits, gestion de bannières, règles d’affichages dynamiques à la catégorie etc). La plateforme a ainsi été développée sur une architecture hybride de services PaaS et IaaS dans Azure afin de garantir une performance globale aux différentes briques techniques intégrées.

C’est cette première version qui a permis de valider que le concept d’une plateforme multi-sites pouvait fonctionner, c’est-à-dire pouvoir gérer de manière unifiée un ensemble de plusieurs centaines de catalogues d’offres correspondants aux différents ateliers et points de vente de la marque. Chaque catalogue d’offre d’un magasin étant lui même composé de centaines de milliers de références produits.

 

Ainsi, en 2018 se pose la question de l’avenir de la solution de search et merchandising utilisée, et Feu Vert envisage alors deux options :

  • Acquisition et intégration de la nouvelle version de la solution Oracle Commerce (Endeca)
  • Recours à une autre solution spécifique d’un éditeur concurrent sur le marché, probablement en mode SaaS

La société demande également à Expertime d’aider au choix et à la validation technique de cet élément central et indispensable qui permet de structurer l’ensemble des informations et offres magasins sur d’une seule et même plateforme.

C’est sur la base de ce travail d’analyse que nous avons élaboré la proposition de recourir à une architecture full Azure PaaS notamment grâce à l’utilisation des services Azure Search (Cognitive Search) et de développements custom .NetCore plutôt qu’intégrer un service tiers.

Cette proposition semblait en effet répondre aux enjeux de simplification et de rationalisation d’une architecture complexe ainsi qu’aux exigences de performance souhaitées.

 

Plusieurs objectifs doivent être remplis au travers de cette refonte :

  • Offrir des possibilités d’indexation comparables à celle de la solution dédiée actuellement exploitée : plusieurs millions de lignes d’offres et produits avec des résultats de recherche instantanés​
  • Améliorer la performance globale du site afin de bénéficier d’un meilleur ranking et devenir à nouveau une référence face à la concurrence des autres enseignes de l’entretien automobile​
  • Optimiser les coûts d’exploitation versus coûts de licences d’une solution tierce​
  • Garantir des fonctionnalités plus simples et fiabiliser les process d’indexation et publications des règles métiers sur les sites

Démarche du projet

Pour valider la proposition d’architecture envisagée, et notamment la bonne adéquation du PaaS Azure Search aux spécificités business de Feu Vert, nous avons d’abord réalisé un Proof of Concept (POC) sur la base d’un échantillon de catalogue représentatif.

Cette démarche visait notamment à vérifier les critères de performance et de capacité fonctionnelle moyennant quelques développements custom ad-hoc. Ce POC d’une durée de 6 semaines à permis de conclure à la bonne adéquation de la solution aux contraintes et aux exigences du métier de Feu Vert.

A l’issue de cette première phase opérationnelle, nous avons proposé à Feu Vert une démarche agile afin d’éviter un effet Big Bang sur l’ensemble de la solution. En effet, compte tenu du périmètre fonctionnel très large qui consistait finalement au complet remplacement du back-end, les risques de régression et la durée des efforts de fiabilisation conséquents au déploiement complet d’une plateforme au jour J, semblaient trop importants.

Pour engager cette démarche itérative permettant un remplacement progressif des différents modules fonctionnels, nous avons d’abord considéré un des périmètres les plus représentatifs et complexes du site : le moteur de recherche dédié aux offres sur les pneumatiques. Ce module étant l’un des plus riches fonctionnellement mais également un de ceux qui génère le plus de trafic et de conversion.

C’est au cours de ce premier chantier de modernisation que nous avons pu mettre en place les éléments constitutifs de la nouvelle architecture micro-services, ainsi que les principes et outils méthodologiques DevOps.

Cette première itération constitue en quelque sorte le MVP (minimum viable product) qui sera donc déployé en production et exploité en conditions réelles afin de pouvoir évaluer au plus tôt la pertinence et la résilience de la solution proposée au-delà des expérimentations réalisées lors du POC.

Pour retirer le plus possible d’informations de cette première itération et mesurer très précisément les gains obtenus, nous avons décidé de procéder à une phase de plusieurs semaines de A/B testing permettant de comparer différents KPIs entre le nouveau module et celui habituellement exploité sur le site.

En résumé nous avons donc engagé le projet selon différentes étapes et principes de validations qui permettent de construire la démarche de modernisation globale tout en limitant les risques lors de la phase d’industrialisation et en facilitant les retours d’expériences en conditions d’exploitation réelles.

La démarche et ses différentes phases

azure devops démarche

  • POC – 5 semaines

– Validation technique et fonctionnelle​ ​

– Estimations des performances search et coûts d’exploitation par extrapolation des résultats obtenus

  • MVP – 8 semaines

– Premier cas d’industrialisation sur un périmètre représentatif

– Initialisation des outils et principes DevOps

– Initialisation de l’architecture technique cible

  • GO Live – 6 semaines

– Déploiement de la première itération et validation des critères de performances par a/b testing

– Mesure des résultats obtenus sur différents KPIs : temps de réponse, taux de transformation, coûts de fonctionnement des services Azure 

– Optimisations et fiabilisation de l’architecture

  • Itération #1 #2 #3 – 6 mois

– Développement des différents modules selon plusieurs itérations avec GO live successifs

– Evolution du dimensionnement de l’architecture cible en parallèle de l’existant exploité

– Transfert de connaissance aux équipes Feu Vert sur la nouvelle architecture​​

– Implémentation continue des principes CI/CD de la méthode DevOps

Conclusion

La nouvelle version de l’architecture est intégralement livrée en début d’année 2020. Grâce aux méthodes et à la démarche employée, le temps cumulé d’indisponibilité des services suite aux différentes opérations sur les environnements de production n’a été que de quelques heures. Durant toute la période du projet, il a été possible d’assurer un maintien en condition opérationnelle et même certaines évolutions sur l’architecture exploitées, tout en maîtrisant le coût et la complexité d’implémentation, grâce à l’usage de Azure DevOps et GitHub.

Aujourd’hui la plateforme enregistre une fréquentation record et des volumes de traitements toujours croissants qui se chiffrent en plusieurs millions de sessions et centaines de milliers d’utilisateurs par mois.​

Au plus fort des pics de fréquentation, l’implémentation autour des services PaaS (App Service, Azure Redis, Azure Search et des Serverless Micro-Services basés sur Azure Functions) a prouvé sa résilience et son élasticité permettant même un record de ventes quelques mois après la mise en service de la nouvelle architecture cible.

Dès les premières semaines, sans avoir fait évoluer l’ergonomie front-end du site, les taux de transformation étaient en progrès.

Grâce aux mécanismes CI/CD (intégration continue et déploiements continus) mis en œuvre, une nouvelle version du site peut être réalisée, testée et déployée sur l’environnement de production en quelques heures. Auparavant, un délai incompressible de plusieurs jours était nécessaire (sauf procédure technique d’exception sous forme de patchs, risquée et fastidieuse car nécessitant des efforts de manipulations techniques importants).

L’architecture ainsi déployée permet aujourd’hui de construire l’ensemble des services et nouvelles fonctionnalités nécessaires à la transformation digitale de l’enseigne.

Le recours aux micro-services et aux versions les plus récentes des frameworks .NetCore permettent de traiter dans un coût d’exploitation maîtrisé plusieurs milliers d’appels par mois sur les APIs au travers de 4 canaux front-end : web site  e-commerce, borne de consultation en magasin, tablette numérique vendeur, système de caisse en point de vente.

En complément, vous pouvez retrouver l’interview de Guillaume GAMET, Responsable Digital Factory de Feu Vert.
Contactez-nous Postuler Nos offres d'emploi