Qu'est-ce que le devops ?

Le mouvement DevOps

Les premiers DevOps Day ont eu lieu en 2009 à l’initiative de Patrick Debois. Ce dernier, un administrateur système et réseaux, était frustré de voir que les relations entre les équipes de développement et les équipes de production et d’exploitation IT (ops) étaient sources de conflits.

Les fondements du mouvement DevOps

D’un côté, l’agilité a permis aux équipes de développeurs de faire un pas en avant énorme en termes de méthodologie, de vitesse de développement et d’implémentation du collaboratif au quotidien.
De l’autre côté, pour les équipes de production et d’exploitation il n’y a pas eu de changement notable.

À cause de cette différence d’évolution, le problème suivant est apparu : les développeurs livraient de nouvelles fonctionnalités en cascade mais les équipes de l’administration système refusaient ces changements trop rapides et fréquents. En effet, elles n’étaient pas capables de les mettre en production en continu. Le problème est que lors du lancement de la mise en production, de multiples nouvelles fonctionnalités du code étaient testées d’un coup. Par conséquent, le risque qu’il y ait une augmentation du nombre de bugs bloquants dans cette phase de déploiement augmentait et du temps était perdu le temps d’appliquer des recettes correctives. Les relations entre les devs et les ops étaient loin d’être idéales et tout le monde sortait perdant.

Ayant vécu cela personnellement, Patrick Debois s’est interrogé sur la nécessité de créer davantage de ponts entre les dévs et les ops. D’où la réunion des deux dans « DevOps ». L’idée est que la valeur ajoutée et la productivité de l’ensemble de la chaîne IT soit optimale.  Les premiers DevOps Day ont ainsi eu lieu en octobre 2009 à Gand, en Belgique.

 

Un autre mouvement à explorer : Le Software Craftsmanship

Les caractéristiques du mouvement DevOps

L’union des Dev et des Ops se fait par deux leviers principaux.

Le premier levier relève du bon sens : la communication entre les équipes de développeurs et les équipes de production / d’exploitation doit être permanente et de qualité. En effet, les deux « groupes » poursuivent un objectif : que le système fonctionne. Le fait de mettre les deux groupes en relation et de les faire fonctionner ensemble dans un but commun et non comme deux groupes aux objectifs opposés est un premier pas nécessaire.

Le deuxième levier est plus d’ordre technique. Il consiste à automatiser le plus possible la chaîne de production. Cela dans le but de déployer le code à une fréquence élevée pour limiter le risque d’erreur lors de la mise en production et les rollback vers les équipes de dévs. Plus concrètement, on a recours aux processus suivants :

  • De l’intégration continue qui permet de générer le code, de le compiler, d’exécuter des tests unitaires et fonctionnels à chaque changement d’environnement;
  • Du développement piloté par les tests (TDD pour Test Driven Development) : on écrit les tests unitaires avant d’écrire le code du logiciel;
  • Du déploiement continu sur la production pour minimiser le temps écoulé entre l’écriture d’une nouvelle ligne de code et l’utilisation de cette dernière.


Décide d’intégrer une entreprise travaillant de manière innovante ! 

Conclusion

Dans une certaine mesure, on peut dire que le mouvement DevOps est l’extension du processus agile sur l’ensemble de la chaîne IT grâce à de « bonnes pratiques ». Mais c’est aussi une nouvelle approche technique (TDD, intégration & déploiement continu …) et une nouvelle approche humaine. Il n’y a pas de méthodologie « DevOps » miracle.

Cela permet la réunion de deux parties de la chaîne IT qui avaient des intérêts divergents et des visions différentes.

C’est aussi une culture, un mouvement sur la vision d’un cœur de métier qui a changé la manière de travailler de nombreuses personnes et de nombreuses entreprises.

Aller plus loin concernant la communauté DevOps :

Les dernières actus