La transformation digitale est la réponse de chaque entreprise au défi que représente l’essor des technologies numériques.
L’IT est devenu le principal vecteur de création de valeurs pour une entreprise qui doit être capable de détecter des opportunités, répondre aux besoins, changer et s’adapter rapidement et en toute confiance.
Mais toute transformation digitale ne peut réussir que si elle s’inscrit dans une démarche globale d’adaptabilité et d’agilité, de collaboration et de confiance dont DevOps est peut-être la solution…
Qu’est-ce que l’agilité ?
Initialement conçue par des développeurs pour des développeurs, l’agilité cherchait à mettre en place une autre forme de gestion de projet afin de permettre une mise à disposition plus rapide de solutions informatiques répondant aux besoins des utilisateurs, d’une qualité irréprochable et dans un budget maitrisé.
Restée relativement confidentielle pendant une vingtaine d’années, l’agilité sort désormais de plus en plus du cadre informatique pour s’adresser de façon générale à tous les niveaux de l’entreprise.
Les limites du développement Agile
Cependant, très souvent, la mise à disposition aux utilisateurs dépend de plans de déploiements sur plusieurs mois. Une fois en production, le produit n’est que peu étudié afin de s’assurer qu’il correspond réellement aux attentes. Et quand des retours sont effectués, leur prise en compte est faible ou lente.
Voilà tout le challenge de DevOps : étendre les principes agiles à toute la chaine de valeur du produit en réduisant le délai de mise sur le marché, en optimisant la gestion des mises en production et la stabilité du SI et en améliorant la qualité de service pour les utilisateurs finaux.
Qu’est-ce DevOps ?
DevOps est la concaténation des 3 premières lettres du mot anglais « development » et de l’abréviation usuelle (ops) du mot anglais « operations » (exploitation).
Cette concaténation marque l’impérieuse obligation d’une collaboration étroite entre les équipes études & développement et les équipes d’exploitation, collaboration jusque dans la responsabilité de l’échec ou du succès.
Les fondamentaux de DevOps
Pour cela, les cycles de livraison du produit ou service sont réduits via des mises en production fréquentes, des déploiements sans arrêt de service, une industrialisation de la chaine complète de production logicielle et des livraisons d’évolutions de petites tailles.
Les ressources IT sont optimisées via la standardisation, l’automatisation du déclenchement et de l’exécution du plus grand nombre de tâches (configuration, développement, déploiement…).
Afin de mettre à disposition un produit de qualité, répondant aux attentes de l’utilisateur, il est nécessaire de tester perpétuellement, d’arrêter le processus en cas de défaut, de refondre le logiciel sans altérer le service, d’instrumentaliser et de superviser.
Enfin, l’humain est positionné au cœur du dispositif DevOps. Ce dernier fondement est à la fois le plus important mais aussi le plus difficile à mettre en œuvre. Il demande la mise en place d’une nouvelle culture fondée sur la collaboration et une sur recherche permanente de l’amélioration continue par l’apprentissage.
La mise en place de DevOps
Se lancer dans la mise en place de DevOps consiste donc à mettre en place 3 piliers, cimentés par une culture humaine de collaboration et de confiance mutuelle :
- Une gouvernance digitale, orientée adaptation permanente, collaboration et permettant des prises de décisions de financement et d’exécution de projets informatiques, en lien avec le marché et la valeur apportée au client final
- Une architecture modulaire, orientée services applicatifs et une infrastructure permettant une mise à disposition rapide d’environnements
- Un cycle de vie du produit ou service permettant une livraison en continue de valeur au client final. Valeur surveillée afin de l’améliorer en ajoutant de nouvelles évolutions et entamer ainsi un nouveau tour de cycle.
DevOps, une démarche de collaboration Agile …
DevOps est donc une approche de travail collaborative avec le juste nécessaire d’automatisation et de supervision pour pérenniser ce mode de fonctionnement.
Un flux continu est mis en place afin de livrer régulièrement, petit à petit, de nouvelles fonctionnalités au produit/service afin d’apporter de plus en plus de valeur à l‘utilisateur final.
Cette démarche Agile entre équipes de développement, production et business se déroule du recueil du besoin au suivi en production de la solution et ce dans un cycle itératif et incrémental d’amélioration continue qui se poursuit tant que le produit existe.
… demandant de repenser son organisation
Adopter Devops signifie donc étendre les pratiques Agiles de collaboration, de confiance et de réactivité à l’ensemble des équipes parties prenantes du produit ou service IT, c’est à dire à l’ensemble de l’entreprise.
Un véritable changement de culture est nécessaire afin de repenser l’organisation complète de l’entreprise.
Bibliographie pour aller plus loin :
« Découvrir DevOps : L’essentiel pour tous les métiers », Stéphane Goudeau, Samuel Metias (InfoPro, Dunod)
« Mettre en œuvre DevOps : Comment évoluer vers une DSI agile », Alain Sacquet (InfoPro, Dunod)