En favorisant la collaboration entre les développeurs et les équipes d’exploitation, la méthode DevOps fluidifie le cycle de vie applicatif et accélère la mise en production. Un enjeu clé pour les entreprises engagées dans la transformation numérique.
C’est une première.
Cette année, les intentions de recrutement des experts DevOps dépassent celles des développeurs. Selon le dernier rapport de la Linux Foundation dédié au marché de l’emploi open source, 65 % de responsables de recrutement cherchent à attirer des spécialistes DevOps contre 59 % en 2018. Pour la première fois dans l’histoire de cette étude, les développeurs arrivent au deuxième rang (59 %). D’après la même source, 75 % des professionnels de l’open source déclarent utiliser les pratiques DevOps dans leur travail contre 58 % deux ans plus tôt.
Ces quelques chiffres illustrent l’importance prise en l’espace d’une douzaine d’années par l’approche DevOps. Elle vise à favoriser la collaboration entre les « dev » et les « ops ». Une collaboration qui, sur le papier, n’a rien de naturelle. Mêmes si elles évoluent au sein de la DSI, les deux populations ont longtemps travaillé chacun dans leur coin. Elles se regardaient même en chiens de faïence tant leur formation initiale comme leurs missions semblaient inconciliables.
Les développeurs ont pour vocation à faire évoluer le système d’information, en alignant les lignes de code, tandis que les responsables d’exploitation doivent au contraire le maintenir stable. Cette rivalité n’est plus tenable à l’heure de la transformation numérique et l’arrivée des DevOps siffle la fin de la récré.
En s’inspirant des GAFA, il s’agit d’accélérer la mise en production afin de répondre aux exigences du « time to market« . D’après une récente étude du cabinet d’études Forrester, l’approche porte ses fruits et les organisations qui se sont engagées dans une transformation agile/DevOps dépassent leurs objectifs business.
En ce sens, DevOps s’inscrit dans la philosophie des méthodes agiles (Scrum, Kanban…). Par opposition au cycle en V, et à son fameux effet tunnel, qui consiste à livrer en un bloc tout ou partie d’un projet, il s’agit là d’aboutir rapidement à un produit qui répond à un besoin élémentaire du métier (Minimum viable product, MVP1).
Sur le principe « you build it, you run it« , une équipe unique suit tout le cycle de vie applicatif, depuis les spécifications du produit jusqu’à son exploitation. Dès lors, développeurs et gens de la « prod » ne peuvent plus se jeter mutuellement la pierre en cas de dérive sur les délais ou la qualité du livrable.
1 Webinar présenté par Damien Gosset, VP of Engineering chez 42c, disponible : Comment le MVP accélère l’innovation dans votre entreprise ?
DevSecOps et BizDevOps
On parle même de DevSecOps quand le volet sécurité est pris en compte dès le début d’un projet et non en bout de course. 44 % des personnes interrogées dans la dernière édition du World Quality Report (WQR), rapport publié par Sogeti et Micro Focus, font l’amélioration de la sécurité leur priorité numéro 1.
Pour casser les silos et accélérer cette mise en production, les équipes partagent un certain nombre de bonnes pratiques et d’outils logiciels qui visent à automatiser les phases de développement, de livraison et de tests afin de réduire autant que possible les actions manuelles répétitives.
Si une plateforme d’intégration continue et de livraison continue – CI/CD – vise à uniformiser et à industrialiser l’approche, on assiste néanmoins à une inflation d’outils dédiés au dépôt et à la révision du code, aux tests préliminaires, au contrôle de version ou à la mise en production. On peut notamment citer des solutions comme GitOps, GitLab, Jenkins, Concourse, Drone ou Buildbot.
Interrogés sur les principaux défis qu’ont à relever les équipes DevOps, 63 % des répondants de l’étude de Sogeti et Micro Focus indiquent l’absence d’automatisation de bout en bout, de la conception au déploiement, contre 55 % l’année précédente.
L’autre enjeu consiste à porter DevOps à l’échelle et diffuser les bonnes pratiques au-delà des seules équipes IT. L’approche BizDevOps implique ainsi le « business » pour que celui-ci partage pleinement sa vision du produit et que le développement applicatif s’aligne avec les priorités des métiers.