Dev
Les clés de la mise en oeuvre d’une démarche DevOps
Par La rédaction, publié le 31 décembre 2017
Dans les entreprises, le développement informatique (Dev) a gagné en efficacité et en réactivité avec la mise en place de méthodes agiles autour de petites équipes interdisciplinaires, des approches collaboratives et des process itératifs. Aujourd’hui, on peut aller encore plus loin en y associant les opérations informatiques (Ops) et en automatisant de bout en bout les outils et les tâches de test, d’intégration et de production. Baptisée DevOps, cette nouvelle pratique permet d’étendre le mode agile à l’ensemble du cycle de vie du logiciel, générant un véritable avantage concurrentiel. En la mettant en œuvre, un de nos clients a ainsi pu réduire de 70 % ses coûts d’immobilisation du système informatique et améliorer la qualité de son codage de 50 %.
En accélérant les tests et l’intégration des changements, DevOps raccourcit les lignes de code sur lesquels les développeurs travaillent et ajoute plus rapidement de nouvelles fonctionnalités. Cette réactivité présente un autre avantage déterminant en termes de sécurité informatique, ne laissant aux hackers que des « brèches » réduites à quelques heures au lieu de quelques jours.
L’automatisation des opérations libère du temps pour des activités à plus forte valeur ajoutée et pour l’innovation. Ce gain de productivité a pu atteindre 25 % dans le développement de nouvelles fonctionnalités destinées à l’application en ligne d’une grande banque européenne. Enfin, d’autres bénéfices attendus de la mise en place de DevOps sont des actions correctrices plus rapides et une meilleure qualité du codage. En effet, contrairement aux méthodes traditionnelles, cette approche agile et coopérative permet aux développeurs de mieux identifier d’éventuels problèmes sur des lignes de code plus courtes et d’intervenir en temps réel sur le cycle de vie du logiciel, évitant ainsi aux opérateurs de réaliser de lourdes corrections a posteriori.
Comme toute intégration d’une méthode agile dans une organisation, DevOps implique de structurer sa mise en œuvre. Même s’il n’existe pas de mode d’emploi spécifique, il ne faut pas sous-estimer les changements, parfois en rupture avec les méthodes et les outils traditionnels, induits par son déploiement. Les entreprises qui ont réussi se sont concentrées sur quelques axes de transformation. La démarche de l’automatisation du cycle de vie du logiciel doit être progressive, introduisant à chacune des étapes de la vie du logiciel la réactivité attendue, et elle devra être rigoureusement orchestrée en amont. Ce sera également l’occasion de réfléchir à la pertinence des outils et méthodes utilisés traditionnellement et, si besoin, de simplifier en supprimant, par exemple, des tests qui s’avèrent constamment positifs sur certaines lignes de code. Autre clé indispensable à la mise en œuvre de DevOps, la standardisation des outils, des process et des pratiques au sein de l’organisation. Cette homogénéisation parfois négligée par les entreprises est pourtant incontournable si l’on veut que les différentes équipes travaillent ensemble et coopèrent. Source de rationalisation et de réduction des coûts, ce travail peut aussi amener les entreprises à améliorer leurs outils en optant, par exemple, pour des architectures de cloud computing plus adaptées. Sur le plan humain, la méthode agile implique une nouvelle organisation autour d’équipes interdisciplinaires dans lesquelles on peut imaginer trouver des experts de la sécurité ou d’autres parties prenantes, tout en veillant à ne pas dépasser une petite dizaine de personnes dans chaque équipe. Enfin, de nouvelles compétences liées à l’automatisation, mais aussi aux approches collaboratives devront être développées.
Un point ne doit pas être négligé. DevOps marque un véritable changement de culture. On le voit notamment dans le management intermédiaire dont les tâches de coordination tendent à disparaître pour privilégier une mission de coaching et d’accompagnement au sein des équipes agiles. Il ne faut pas oublier que le digital, en bousculant les habitudes, peut engendrer des tensions ou des résistances. La direction, en s’engageant dans cet effort de transformation, en communiquant sur l’esprit et les bénéfices des méthodes agiles, en mettant en place l’environnement adapté, jouera un rôle décisif dans l’adoption de DevOps.
Antoine Gourévitch
Directeur associé senior au BCG