DevOps, l’accélérateur du cycle de vie applicatif
Les entreprises et organisations traditionnelles ont emboité le pas aux géants d’Internet qui ont popularisé la démarche DevOps pour leur permettre de réinventer sans cesse leur Business. Comme son nom l’indique, DevOps exprime littéralement l’essence d’un mouvement qui vise à rapprocher les études et l’exploitation pour les atteler ensemble au même objectif : gagner en réactivité et en efficacité pour mieux servir l’utilisateur. DevOps est naturellement l’extension des méthodes de développement Agiles.
Dans le monde digital en forte compétition, la vitesse est primordiale. Il faut pouvoir devancer ses concurrents ou, à défaut, être sûr de pouvoir réagir sur-le-champ à la moindre de leurs initiatives. Au niveau applicatif, cela signifie avoir la capacité d’ajouter sans cesse de nouvelles fonctionnalités métier, de corriger des anomalies ou des dysfonctionnements sitôt qu’ils sont révélés, de tenir compte de l’opinion des clients pour continuellement améliorer leur expérience… Largement adoptées, les méthodes de développement agiles permettent de passer très vite de l’idée à sa réalisation. Mais, de même qu’une chaîne logistique parfaitement optimisée peut buter sur l’étape clé du « dernier kilomètre », tous les bénéfices du développement agile peuvent être perdus si le déploiement applicatif et le provisionning des infrastructures restent gérés de façon traditionnelle et deviennent des goulots d’étranglement.
Agile de bout en bout
L’approche DevOps a pour objectif de lever ces freins à l’efficacité du cycle de vie applicatif en le rendant agile de bout en bout. Le principe consiste à compléter les équipes pluridisciplinaires de l’agile par des profils issus de la production. De cette façon, les questions liées à l’exploitabilité sont prises en compte très en amont, au travers d’Users Stories Techniques au même titre que les Users Stories Fonctionnelles. Les points de vue sont alignés et l’équipe constitue désormais une unité de production autonome et responsable, sur le principe « you build it, you run it » rendu célèbre par Amazon. Les équipes sont ainsi organisées en Features Teams (ou DevOps Teams).
Loin d’être une remise en cause des compétences de l’exploitation, DevOps les valorise au contraire en soulignant leur importance vis-à-vis des enjeux métiers. En revanche, la démarche bouleverse profondément les méthodes, les pratiques et l’organisation du Delivery, et représente à ce titre un changement culturel majeur. Par ailleurs, afin d’aller vite, il est indispensable de s’appuyer sur des éléments et des procédures prédéfinis. Dans le cadre de DevOps, on va donc s’attacher à automatiser les tâches manuelles répétitives ou à faible valeur ajoutée, à standardiser les architectures techniques et applicatives, et à outiller les processus de provisionning des environnements et de déploiement des applications, permettant de mettre en place la livraison continue, pierre angulaire de la démarche.
Un projet de transformation
Culture, processus, outils, Shift Left, Automatisation… la mise en œuvre de DevOps n’est rien de moins qu’un projet de transformation majeur. Il doit être mené de façon progressive avec un un investissement à la hauteur des enjeux, et le sponsoring actif au niveau de l’exécutive (DSI, CDO, voire du DG puisque les métiers sont parties prenantes). Enfin, la démarche concerne l’ensemble des entreprises et organisations puisque le critère déterminant n’est ni la taille, l’âge ou le secteur mais bien la sensibilité de l’activité à la vitesse de transformation dans un environnement digital.
Réussir une telle transformation exige pour commencer de disposer d’une équipe dédiée, qui aura un rôle pionnier et moteur en interne à l’entreprise. Ce « DevOps Center » expérimentera la démarche dans le contexte propre à l’entreprise, l’ajustera à ses spécificités et contribuera à l’essaimer plus largement au fil des projets adoptant la démarche DevOps. Cette équipe doit intégrer l’aspect de communication en continue afin de sensibiliser et encourager les acteurs, promouvoir et diffuser les bonnes pratiques, valoriser les premiers bénéfices… Elle aura aussi pour tâche d’évaluer l’éligibilité des applications (en priorité, celles qui ont de forts enjeux de time-to-market) et d’établir la feuille de route du projet de transformation adossé à un Business Case simple et lisible notamment par le Management. A titre d’exemple, les indicateurs à prendre en compte sont l’accroissement de la fréquence des déploiements et la diminution des anomalies et des incidents en production par la mise en œuvre du Shift – Left.
« DevOps est le facteur clé de la transformation digitale des entreprises. Il procède à la refonte de l’organisation, des méthodes et des pratiques pour assurer l’agilité des entreprises. » Mohamed Bedouani, Atos
La feuille de route, facteur clé de succès
Cette dernière constitue indéniablement l’un des facteurs déterminants de succès. La feuille de route doit acter le fait que la transformation se fait de façon progressive. Elle doit être ambitieuse mais réaliste, prioriser les chantiers en fonction de leur difficulté et de la valeur escomptée, et surtout définir des états stables. Ces paliers permettront de mesurer les bénéfices attendus pour chaque palier. Mesurés par des indicateurs simples et facilement compréhensibles, ceux-ci permettront de rallier de nouveaux candidats à la dynamique de transformation.
DevOps chez Atos
Atos a démarré par sa propre transformation en assurant la formation de +1 000 collaborateurs formés aux méthodes agiles, et + 250 à spécifiquement DevOps en France. Atos accompagne ses clients quel que soit leur degré d’avancement : audit et définition de la trajectoire DevOps ; expérimentations et projet pilote ; conduite du changement, et coaching ; mise en œuvre des fonctionnalités DevOps incluant les solutions technologiques (Intégration Continue, Infra as Code, déploiement automatique des applications, Continuous Testing, Services Virtuels…).
Atos dispose de solutions DevOps en propre telles que alien4cloud et Atos compose pour la mise en œuvre de l’Infra as Code (Orchestration et Provisionning Automatique des Environnements). Enfin dans le cadre des projets d’externalisation de parc applicatif ou du parc d’infrastructures dans ses locaux, Atos met en place une organisation et les processus permettant la continuité des processus DevOps des clients, ainsi que l’outillage pour l’automatisation des activités manuelles qui lui sont confiées pour assurer le Delivery en continu (Continuous Delivery).