Le DevOps a le vent en poupe. Mais selon Jean-Louis Lormeau, Digital Performance Architect chez Dynatrace, sans une gouvernance DevOps bien définie et rigoureuse et une solution de monitoring adaptée, difficile en revanche de valoriser sa mise en œuvre et d’éviter les écueils communément rencontrés dans son processus d’adoption. Son avis d’expert.
Selon une étude IDC parue en mars 2017, près de la moitié des entreprises de plus de 1 000 salariés en France s’intéresse de près au DevOps. Parmi elles, un tiers environ a déjà lancé une initiative dans ce sens, tandis que 17 % sont encore en phase de réflexion.
L’adoption d’une démarche DevOps est en règle générale directement liée à la question de la taille de l’organisation, qui doit être suffisante, autant que le nombre d’applications et d’équipes, pour justifier d’une telle démarche. Vient ensuite la question de sa capacité à appliquer les bonnes pratiques du DevOps, pour en garantir l’efficacité. Et c’est souvent là que le bât blesse : observons les quatre principaux pièges dans lesquels risquent de tomber les entreprises.
Maintenir une vision fragmentée
C’est l’écueil numéro un ! Malgré une ambition affichée, les responsables IT peinent souvent à véritablement s’engager dans une conception claire et précise de l’approche transitionnelle que nécessite le DevOps.
À défaut d’une démarche commune, top-down et sponsorisée, les initiatives DevOps se heurtent à d’inévitables divergences entre les équipes – en charge de l’infrastructure, des tests, de la gestion de projet, du développement et de l’exploitation – qui sont susceptibles de complètement paralyser les processus. Sans un plan unifié, chacun finit par avoir des priorités différentes – et souvent conflictuelles.
Résultat : les équipes continuent à fonctionner sur un modèle cloisonné, les méthodes ne sont pas mutualisées et l’innovation se retrouve étouffée par l’organisation en silos dont l’entreprise ne s’est pas débarrassée.
Sous-estimer l’importance d’une formation transversale
Souvent, les entreprises manquent de formation sur les technologies et les processus propres à une initiative DevOps. Dans la grande majorité des cas, si l’équipe en charge de l’application est bien cross-fonctionnelle, les autres services restent cantonnés à des fonctions encore très limitées et compartimentées.
Ne pas prendre la peine d’éduquer et de former tout le monde aux processus et aux technologies cross-fonctionnelles, c’est vouer la démarche DevOps à un échec certain.
Oublier de définir clairement les rôles de chacun
Cet écueil est la conséquence directe des deux précédents. La difficulté ici vient du fait que cet oubli est souvent identifié trop tard, une fois que le mal est fait, et que les problèmes sont avérés.
Un manque de planning et de formation provoque immanquablement l’omission, dans l’organigramme de l’équipe DevOps, des fonctions et des responsabilités critiques. Une équipe agile et cross-fonctionnelle bien définie doit être constituée autour du pipeline applicatif, en lieu et place d’une multitude d’équipes, représentant chacune leurs départements respectifs.
Conserver une communication cloisonnée
Les nombreux outils aujourd’hui à disposition des organisations leur permettent de disposer de rapports, de tableaux de bords et plus généralement de données à forte valeur ajoutée, en lien direct avec l’exploitation des applications, les résultats de tests ou encore l’état d’avancement d’un développement. Parallèlement à ces sources d’information, chaque groupe peut, dans le cadre d’une démarche DevOps, améliorer ses propres processus.
Toutefois, à défaut de communiquer et de mutualiser régulièrement ces efforts, de manière à la fois centralisée, standardisée et cohérente, les contributions individuelles restent… individuelles ! Ce qui empêche de faire profiter de l’information utile à l’ensemble du pipeline. Or, qui dit vision et communication silotées, dit inévitablement innovation et amélioration cloisonnées.
Conclusion : pas de DevOps sans une gouvernance et des outils adaptés
En résumé, si les meilleures initiatives sont celles qui sont quotidiennement soutenues et sponsorisées au sein de l’organisation, elles ne se consolident qu’au travers d’équipes engagées et coordonnées, toutes spécialités confondues.
L’adoption d’une démarche DevOps doit ainsi inclure une directive claire quant à la façon dont les collaborateurs et les processus devront être organisés pour mieux gérer les cycles de vie des applications, leurs dépendances et leurs performances. Ce qui nécessite la mise en œuvre d’une gouvernance DevOps bien définie et rigoureuse, tenant compte des standards de développement, de tests, de monitoring et d’exploitation adaptés, ainsi que la sélection des meilleures technologies, comme par exemple une solution APM de dernière génération