Si les méthodes de management Lean et Agile sont entrées dans la routine de l’entreprise en matière de développement produit et logiciel, une petite dernière a le vent en poupe : l’approche DevOps. Subtile combinaison de développement et d’opération, et répandue dans l’IT, elle propose une nouvelle manière de penser la gestion de projet agile qui devrait bousculer les opérations de vos organisations, afin de répondre aux nouveaux défis du numérique. Nous avons fait le point avec Gérald Célestine, ingénieur DevOps chez Wemanity qui nous éclaire sur cette méthodologie et son déploiement au sein d’une société.
- Quel est le fonctionnement du DevOps ?
- Plus qu’un outil, une culture d’entreprise
- Le DevOps en tant que bras droit de l’agilité
- Les bénéfices de l’approche DevOps
- Comment l’intégrer à son organisation ?
Avec l’essor des technologies numériques et du data, la transformation digitale est devenue la clé de la réussite des organisations. Son intégration dans une infrastructure nécessite donc une focalisation sur l’innovation, l’agilité, la mobilité et l’automatisation… C’est surtout nécessaire pour les DSI des entreprises, qui sont les principaux leviers de création de valeur. Pour profiter d’un cycle d’innovation continue, optez pour l’approcheDevOps. Son déploiement favorise une meilleure collaboration entre les équipes et offre à votre entreprise une culture d’adaptation au changement. Elle aurait même permis à 60 % des développeurs de publier des codes 2 fois plus vite pendant la période de la pandémie, ce qui illustre une application pratique de l’agilité. Ce système de gestion des projets et produits introduit plus de souplesse et de réactivité dans différents domaines et étapes de livraison d’un service. Bien sûr, une surveillance de chaque point est nécessaire pour une application optimale.
1. Quel est le fonctionnement du DevOps ?
Plus qu’un énième mot à la mode venant s’ajouter au riche jargon IT, l’approche DevOps est une véritable révolution de la gestion de projets logiciels ou produits, qui permet de livrer plus efficacement de nouveaux services en favorisant la collaboration entre les développeurs (Dev) et les équipes chargées des opPlus qu’un buzzword venant s’ajouter au riche jargon IT, l’approche DevOps est une véritable révolution de la gestion de projets logiciels ou produits. Son déploiement permet une meilleure livraison de de nouveaux services en favorisant la collaboration entre les développeurs (Dev) et les équipes chargées des opérations (Ops). Les premiers produisent de nouvelles fonctionnalités tandis que les seconds s’assurent de la fiabilité du site ou de l’application. En favorisant les synergies et leur implication mutuelle dans toutes les étapes du développement d’un service, le DevOps permet donc de casser les pratiques existant historiquement entre ces métiers. Ce qui, à terme, permet de gagner du temps sur la résolution des problèmes. Le déploiement d’un nouveau modèle est plus rapide et l’automatisation réduit les risques d’erreurs tout en permettant de dégager diverses solutions plus vite.
Cette approche ressemble à bien des égards au Lean management que l’on retrouve dans l’industrie automobile, même si elle emprunte aussi à l’agilité, comme l’explique Gérald Célestine, ingénieur DevOps chez Wemanity “Le DevOps est une méthodologie d’automatisation du travail et notamment des tâches répétitives qui permet d’être plus efficace. Si l’on prend l’exemple de l’industrie automobile, la première fois va être consacrée à la construction du véhicule, alors que la deuxième fois le DevOps va nous permettre de faire en sorte que ce dernier utilise moins de matériaux par exemple.” Mais qui permet aussi de calquer la production sur les besoins du client, comme il souhaite le rappeler.“ L’approche DevOps consiste aussi à être à l’écoute du business et de produire en fonction des besoins clients, des valeurs communes à l’agilité, aidées par la mise en place de l’automatisation, de mesures d’efficacité, et d’amélioration.
2. Plus qu’une pratique : une culture d’entreprise
Les pratiques DevOps automatisent les processus grâce à la technologie. Ce système se rapproche de l’agilité en s’appuyantsurdes outils de gestion de projet comme la méthodologie Scrum. Il repose toutefois sur le changement de pratiques dans l’organisation du travail au sein de l’entreprise.
Le DevOps est une nouvelle manière de travailler qui demande un certain état d’esprit : automatiser, tester et améliorer.
Gérald Célestine, expert DevOps chez Wemanity
En effet, le système DevOps nécessite :
- La mise en place d’un management basé sur la collaboration, l’écoute et la remise en question.
- Une culture de travail souple et orientée vers l’amélioration qui favorise ainsi l’émergence d’un contexte propice à l’innovation grâce à un environnement intégré.
- Une intégration continue qui consiste à tester automatiquement chaque modification du code avant sa mise en production.
Concrètement, lorsqu’un développeur crée un code, des logiciels, des produits ou des services, ces derniers sont testés de manière automatique. Et en cas d’erreur, une notification de sécurité lui est envoyée directement. Cette mesure facilite la surveillance du processus de création. Au contraire, si le test est réussi et qu’aucune mesure de sécurité n’est activée, le code est alors mis en production directement, comme le confirme Gérald “Lorsqu’un code est créé, il va être testé et on va s’assurer que le produit livré est mesurable, par exemple que des gens se connectent au site web livré. Si une des pages n’est pas utilisée, on va essayer de comprendre pourquoi et décider de la corriger ou de la supprimer selon les cas.”
3. Le DevOps, bras droit de l’agilité
Sachez que la mise en place d’une culture DevOps au sein de votre entreprise tournée vers la data s’inscrit dans une stratégie étroitement reliée à l’agilité. Les interactions entre les individus et le changement à chaque étape du projet permettent d’éviter des problèmes tels qu’une planification rigide et une surveillance constante. Elle encourage ainsi une vision moderne du management où la performance du collectif s’appuie sur la collaboration entre chacun de ses membres, qui met la création de valeur métier au cœur de son processus.
Dans une équipe, chacun est donc acteur à chaque étape de la création du produit. L’exploitation des logiciels ou des services n’est qu’une finalité. Pour l’atteindre, l’équipe doit décider de la meilleure façon de mettre en place le logiciel ou les produits. La mise en place d’un environnement adapté dans le domaine de la data ou autre est donc nécessaire. La formation de groupes équipés des données et des compétences en informatique nécessaires est primordial. La formation de ces groupes permettra la mise en place de la configuration des applications et des logiciels. Un test sera ensuite mené pour vérifier la qualité des produits et pour déterminer des solutions aux éventuels risques. Pour cette étape, une surveillance constante est nécessaire. Pour finir, la livraison finale du produit sera réalisée. Toutes ces étapes sont inspirées de la méthode agile, dont la méthodologie Scrum.
Si le Scrum fournit un cadre méthodologique à l’agilité, le DevOps, lui, constitue sa réponse pratique en implémentant à toute la chaîne de valeur d’un produit. Une agilité qui se retrouve au centre de l’organisation et de l’infrastructure de développement chez Wemanity, comme l’explique Gérald : “Aujourd’hui, on fait tous du DevOps chez Wemanity car les frameworks de développement ont tous une couche de test incluse. C’est devenu intrinsèque à notre manière de travailler. Nous n’avons pas eu besoin de l’adopter, car on ne peut juste plus l’ignorer.”
4. Les bénéfices de l’approche DevOps
4. Les bénéfices de l’approche DevOps
Les bienfaits de cette approche sont multiples. Des tests automatiques lors du développement du projet réduisent la marge d’erreur et le temps perdu par les développeurs. Ils réaliseront ainsi des livraisons de produit plus fréquentes et plus qualitatives auprès du consommateur final, comme nous le rappelle Gérald “L’approche DevOps peut servir toutes les strates d’un département IT. Quand on automatise, on a moins d’erreurs et donc moins de coûts opérationnels, on a des features plus proches des besoins du client, un gain en terme de temps et donc de valeur.”
Des bénéfices qui ne se limitent pas seulement aux secteurs IT mais peuvent aussi s’appliquer à d’autres fonctions de l’entreprise dans la réalisation d’un projet ou d’un produit.À l’aide d’outils dotés d’algorithmes intégrés et de tests automatisés, les tâches sont automatiquement réalisées sans intervention humaine et leur surveillance est assurée. Certains logiciels spécifiques à l’univers de la data comme Puppet se chargent de la configuration des produits et de la gestion des données sur le Cloud. Ils permettent aussi de recueillir les commentaires des clients, que vous pouvez ensuite intégrer à la planification et au développement de vos futurs produits. Une manière de faire la différence grâce à un écosystème souple, vous aidant à innover plus facilement tout en maintenant un niveau élevé de qualité lors du déploiement d’un logiciel ou d’applications.
5. Comment l’intégrer à son organisation ?
Mais aimer le DevOps ne veut pas dire l’adopter, car il faut pour cela être prêt à revoir en profondeur la mécanique organisationnelle du travail au sein de votre entreprise.
La première des choses est de considérer un cycle de vie projet plus court, qui permet de livrer plus régulièrement mais progressivement le produit au client. Mais aussi de favoriser la tenue de réunions régulières afin de faciliter l’auto-organisation, la transparence et le partage d’informations, et surtout d’accompagner vos collaborateurs dans les bonnes pratiques.
Chez Wemanity, Gérald Célestine a par exemple mis en place du “coaching DevOps” à travers lequel il liste les actions à suivre pour ses équipes afin de leur transmettre le bon niveau d’informations et qu’elles comprennent la cible à atteindre. “Mon travail consiste à prendre par la main des développeurs qui ne savent pas toujours ce qu’est le DevOps. J’essaie de leur montrer les outils mais aussi de partager avec eux les bons réflexes pour qu’ils sachent les utiliser par la suite selon leurs besoins et métiers”.
Une mentalité qu’il met en place grâce à l’aide de plusieurs outils :
- Le Value stream mapping, qui consiste à rassembler tous les acteurs d’un projet et d’essayer de retracer de façon graphique leur process, de l’idée à la livraison, afin d’identifier les points d’amélioration : process, devops ou agilité.
- Le maturity assessment, qui propose sur plusieurs thématiques de prendre une photo en début d’accompagnement de projet et d’en refaire à postériori pour suivre la progression.
Si aujourd’hui les métiers liés au DevOps ne sont pas encore très développés en France, il s’agit pourtant de postes clés pour des entreprises qui recherchent la productivité et l’innovation. En développant de nouveaux modèles d’exploitation agiles, qui étendent les principes DevOps au-delà du logiciel à toutes les fonctions environnantes, votre organisation peut ainsi gagner en réactivité tout en s’inscrivant dans une dynamique d’innovation et sans avoir à sacrifier la qualité – la clé de la transformation digitale de ces prochaines années.