A partir de Juillet, Voyages-SNCF.com pourra déployer une nouvelle version de son site chaque mois sur l’ensemble de son infrastructure de production de Lille et Saint Denis, grâce à la démarche Devops. Les équipes techniques savent installer la plateforme du site en 18 minutes afin de tester de nouveaux services.
Aller toujours plus vite pour délivrer de nouveaux services informatiques aux clients finaux, tel est l’objectif des équipes techniques du site Web Voyages-SNCF.com. Le site a généré un volume d’affaires de 4,2 milliards d’euros en 2014.
Démarche Devops
Afin de réduire le « time-to-market« , et passer en juillet à une mise en service d’une nouvelle version du site chaque mois – contre trois mois auparavant – les informaticiens ont adopté la démarche Devops, qui réunit les développeurs logiciels et les exploitants techniques des serveurs au sein d’une même équipe.
Ensemble, ils gèrent la réalisation d’un produit particulier tel que le calcul du devis d’un voyage ou la proposition d’offres à l’international. Ces produits sont créés par des équipes polyvalentes, à partir de l’expression des demandes des clients finaux.
18 minutes pour déployer
Grâce au Devops, déployer une nouvelle version d’un produit logiciel – le calcul du prix d’un voyage par exemple – et l’ensemble des briques du site prend 18 minutes. L’objectif est de réaliser cela en moins de 15 minutes cette année. Le tout s’appuie sur une plateforme de gestion des tests et des déploiements qui aura pris un an pour être mise au point.
Quant au déploiement d’une nouvelle version complète du site, il se déroule sur les fermes de serveurs dans le Data Center de la SNCF à Lille – où sont hébergées les machines de Voyages-SNCF.com – et sur le PRA (Plan de Reprise sur Activité) situé à Saint Denis et géré par IBM.
Budget de 85 millions d’euros
C’est ce que décrit Gilles de Richemond, directeur général de VSC Technologies, la filiale de la SNCF en charge des technologies de Voyages-SNCF.com. Il a répondu aux questions de La Revue du Digital le 5 Mai. L’entité qu’il dirige dispose d’un budget annuel de 85 millions d’euros, emploie 500 personnes entre Paris, Lille et Nantes.
« Pour nous, c’est une usine digitale, il y a de la rigueur à avoir, » résume-t-il en parlant de la démarche qu’il a mis en oeuvre. Il souligne le nouveau cycle de développement des applications à l’heure du digital. Un cycle qui s’établit sur des délais de 18 mois.
Un cycle de 18 mois
« Il faut 3 mois pour développer le produit, 6 mois pour analyser les retours des utilisateurs et s’adapter, et 9 mois pour faire exploser les usages. C’est la règle des 18 mois du digital. La page devis du site Voyages-SNCF.com a été refaite comme cela, elle a été mise en ligne en 3 mois, » illustre-t-il.
Les équipes Devops qui réunissent des développeurs, des testeurs, un « product owner » et des exploitants ont été baptisées « Feature Team ». Ces équipes ont été mises en place cette année. « Les Américains les appellent les ‘pizzas teams’ » sourit Gilles de Richemond, car elles peuvent être nourries par une ou deux pizzas. Ces équipes réunissent de 7 à 9 personnes. « Monter une feature Team devrait être l’objectif d’une DSI, » pense le DG.
Equipe polyvalente
Le secret du succès d’une « feature team » c’est que l’équipe qui la constitue dispose d’un fort degré d’autonomie pour gérer le développement d’un produit logiciel, souligne Gilles de Richemond.
Une telle équipe est nettement plus productive. « Les charges de coordination pèsent 10% du temps de travail contre 30% habituellement. On ergote moins » pointe le directeur.
Méthode Scrum depuis 2012
De plus, depuis 2012, Voyages-SNCF.com s’appuie sur des développements logiciels agiles, réalisés selon la méthode Scrum, qui amène à travailler par cycles itératifs courts, appelés « sprints ». Ces sprints ont une durée de quinze jours et placent côte à côte, celui qui exprime le besoin, le product owner, et les développeurs afin de réaliser de nouvelles fonctions ou faire évoluer celles existantes.
Quatre « feature teams » ont été ainsi constituées afin de développer la fonction devis – qui calcule le prix du billet – la page d’accueil, les ventes à l’international et le calendrier des prix.
Autoroute digitale
En Juillet de cette année, la totalité du développement agile ira de l’expression du besoin métier jusqu’au déploiement à Lille et dans le PRA (Plan de Reprise d’activité) à Saint Denis, de bout en bout. « Nous avons fait des simulations, à blanc, et en juillet, le déploiement ira de la demande métier jusqu’aux fermes de serveurs, via notre autoroute digitale, de bout en bout » présente le DG.
A terme, quatre autres « feature teams » auraient du sens estime Gilles Richemond. Cela concerne la gestion du panier d’achat, du cross-selling ou du paiement. « Il faut agir de manière opportuniste » précise-t-il.
Cycles rapides
Avec le Devops se met en place un nouveau cycle de mise en service pour les équipes informatiques. « Nous travaillons sur des cycles de développement itératif de 15 jours, et nous pouvons mettre en place toutes les briques logicielles du site de voyages-SNCF.com en 18 minutes sur l’infrastructure de production pour une ferme de serveurs, » décrit le directeur général.
Pour autant, il souligne qu’il « ne saute pas dans la piscine » d’un seul coup, mais agit prudemment et préfère procéder au déploiement d’une nouvelle application progressivement sur la durée des 15 jours disponible avant que n’arrive une nouvelle fonction issue du cycle itératif suivant, en déployant sur une ferme de serveurs après l’autre dans le Data Center.
Une release par mois
« Nous avons beaucoup changé nos méthodes de travail, nous comptons aller en production tous les 15 jours sur nos sprints, » confirme Gilles de Richemond. « Nous voulons mettre en service une fois par mois pour tout le site » ajoute-t-il. Il s’agit en effet de passer cette année, à la mise en service d’une nouvelle version (release) par mois sur le site contre 1 par trimestre, jusqu’alors.
Voyages-SNCF.com gère une centaine d’applications. « 15 d’entre elles sont en mode Devops actuellement, elles devraient être 30 à la fin de cette année et tout devrait avoir basculé à la fin de 2016 » conclut le DG.
Photo : Gilles de Richemond, directeur général de VSC Technologies, le 5 mai 2015.
La plateforme Devops a coûté 1 an de travail
La démarche Dévops de Voyages-SNCF.com s’appuie sur une plateforme interne de production, de gestion automatisée des tests et des déploiements. Des simulateurs d’inventaire de places à vendre ont été mis en place pour les tests. La plateforme a pris 1 an de développement.
Elle est bâtie autour de composants Open Source. Elle est baptisée « usine de production digitale. » « Il s’agit d’une plateforme Paas (Platform as a service) qui est en production depuis 1 an. On y intègre de plus en plus de technologies » assure Gilles de Richemond, directeur général de VSC Technologies, l’entité technologique de Voyages-SNCF.com.
« Nous avons assemblé des composants Open Source pour monter notre Paas, par exemple, Jenkins pour scripter les déploiements, » illustre-t-il. Voyages-SCNF.com a vendu 78 millions de billets en 2014. Le pic de trafic est de 27 billets vendus à la seconde en octobre. Les 2 200 serveurs et les 2 data centers – Lille et Saint Denis – traitent 60 To de données par mois.
Changement managérial avec le Devops
Le Devops entraîne un changement managérial, prévient Gilles de Richemond, directeur général de l’entité technologique de Voyages-SNCF.com. C’est la fin du contrôle pyramidal. Il y a un allègement du chemin de prise de décision, et il évite les contrôles au quotidien des managers. L’équipe, la « feature team » en charge d’un produit, se voit dotée de plus d’autonomie.
« Le Devops amène à être plus manager et moins contrôleur, » affirme le directeur général. « Il faut apporter la vision et être moins dans le contrôle. » C’est la fin d’une chaîne managériale avec des comités de pilotage mensuels. « Comment faire un copil chaque mois pour sortir un produit en 3 mois ? » expose-t-il. La « feature team » répond à cette demande, dit-il.
Dans la « feature team« , le « product owner » – qui exprime le besoin à l’instar de ce qui se passe dans tous les sites de e-commerce – est quelqu’un du métier. Il est issu de VSC Technologies. Il a une vision marketing, et produit, et s’il connaît la programmation c’est aussi bien, car cela facilite la communication avec les développeurs.
Dans le même temps, la « feature team » est guidée par la vision du management qui exprime les objectifs, par exemple, tels qu’augmenter la satisfaction client ou le taux de transformation. Au final, le Devops contribue à créer une entreprise agile. « Une entreprise agile, c’est un changement managérial. Cela veut dire donner de l’autonomie aux équipes et que le directeur n’ait pas à prendre toutes les petites décisions opérationnelles » conclut le directeur général.
Pourquoi les méthodes agiles chez Voyages-SNCF.com