L'illusion DevOps : et si les entreprises n’étaient pas assez connectées ?

Par :
Brian Dawson

ven, 18/12/2020 - 12:22

Comment une approche Software Delivery Management permet-elle d’optimiser les pratiques DevOps ?

Depuis l’introduction du terme « DevOps » en 2009, il ne serait pas exagéré de dire que celui-ci a entraîné un important changement, voire fondamental, dans le développement et la livraison de logiciels. Sa mise en œuvre a notamment encouragé une meilleure collaboration entre les équipes de développement et des opérations, un recours accru à l'automatisation, une plus grande attention à la culture, et une utilisation optimale des boucles de rétroaction pour affiner les processus.

En théorie, l’approche DevOps a changé la donne. Mais, en pratique, son utilité est plus difficile à définir. Alors que le concept entre dans son adolescence, l'idée d'une organisation de livraison de logiciels entièrement intégrée et alignée sur un objectif commun de création de valeur commerciale, reste illusoire.

Les équipes concernées sont-elles aussi connectées qu'elles le devraient ? La réalité est que celles de développement et des opérations ont tendance à avoir leurs propres visions de « DevOps devs » et de « DevOps ops », travaillant alors les uns contre les autres au sein d'équipes soi-disant intégrées. Bien que les deux parties aient mis en place des pipelines de déploiement, chacune a tendance à utiliser des outils différents, à accéder à ses informations uniquement et à suivre ses propres cadences, ce qui fragilise les transmissions et entraîne même des retards dans les plannings de livraison.

A travers l'entreprise, les collaborateurs de différents services, unités commerciales et zones géographiques sont encore moins connectées. En réalité, la stratégie DevOps est difficile à mettre en œuvre car la plupart des organisations ne disposent pas d’un langage, de processus et de bonnes pratiques en commun soumis à l’accord de la direction. Ainsi, dans quelle mesure la culture DevOps permet-elle de relier les objectifs, les besoins, les ressources et les processus des autres fonctions qui dépendent de la livraison de logiciels, telles que le marketing, les ventes et la direction générale ?

De meilleurs logiciels livrés grâce à DevOps

Selon Gartner, le modèle DevOps est axé sur « la fourniture rapide de services informatiques grâce à l'adoption de pratiques agiles dans le cadre d'une stratégie orientée système ». En d'autres termes, il s'agit de livrer plus rapidement et de manière plus organisée. Mais DevOps a-t-il vraiment aidé les entreprises à livrer de meilleurs logiciels ? Les a-t-il aidés à mettre en place les bons processus pour fournir le bon logiciel au bon rythme, afin d'apporter le plus de valeur possible ?

Une nouvelle catégorie de technologies est en train d'émerger et s’appuie sur les accomplissements du concept DevOps pour étendre ses bénéfices à l'ensemble de la fonction de livraison de logiciels. Elle s'appelle le Software Delivery Management (SDM). Cette approche vise à élever la livraison de logiciels au rang de priorité essentielle de l'entreprise, comme les ventes ou la finance, reflétant le niveau d'importance atteint par les logiciels dans l'environnement commercial actuel.

Les bénéfices d’une approche Software Delivery Management

L'adoption d'une stratégie SDM en plus d'une culture DevOps existante peut aider une entreprise de plusieurs façons.

Il est difficile de déterminer si les équipes livrent le bon produit final s'il n’existe pas de visibilité et de vision communes. Le SDM permet d’établir des données et des processus partagés, en fournissant aux collaborateurs une vue d’ensemble et des informations clés afin que toutes les fonctions collaborent.

Le SDM propose un modèle permettant de comprendre les performances d’une entreprise qui s’appuie sur DevOps, d’identifier les équipes qui fonctionnent bien et celles qui ne fonctionnent pas, et de recommander des utilisations de ces informations pour s'améliorer.

Cinq conseils pour la mise en œuvre du concept SDM

1 : Intégrer les outils. Des chaînes d'outils déconnectées rendent difficile, voire impossible, l'orchestration d'un processus de livraison de bout en bout. Lorsque les outils DevOps sont tous disponibles sur une plateforme commune, ils peuvent partager des informations entre les équipes et les fonctions hiérarchiques.

2 : Générer et exploiter des données. Il s’agit d’établir une piste d'audit et de capturer des données sur les événements et les actions prises tout au long du processus. Ensuite, il faut rassembler ces informations dans une réserve de données commune en tant qu'objets normalisés. Les rendre accessibles à travers toutes les fonctions permet, par exemple, de coupler une demande de support particulière avec le bon user story.

3 : Ne pas oublier de communiquer. Une fois la réserve de données créée, il est important d’établir une relation solide et une communication régulière avec le service commercial de l'organisation. Le déploiement continu n'est plus réservé aux développeurs. Les fonctions de livraison de logiciels doivent répondre aux besoins globaux de l’entreprise.

4 : Établir des indicateurs de performance clés (KPI). Il est vital de disposer d’une taxonomie ou d’une hiérarchisation des objectifs commerciaux recherchés par l’entreprise avec DevOps. Il convient alors d’établir les hypothèses qui peuvent permettre d'atteindre ces objectifs, puis d’intégrer les fonctionnalités, les user stories ou les entités de niveau d'implémentation qui conduiront vers ces objectifs.

5 : Tirer parti des pratiques d'observabilité. Ainsi, les performances peuvent être mesurées par rapport aux KPI. Par exemple, si l’hypothèse est qu’une mise à jour de l’interface utilisateur augmentera le temps passé par les utilisateurs dans une application SaaS, il faut établir quel est le KPI cible. Ensuite, au fur et à mesure que ces changements sont apportés, il est nécessaire de les mesurer, les analyser et les ajuster pour continuer à se rapprocher de l'hypothèse.

Le modèle DevOps a beaucoup fait avancer la livraison de logiciels, et la mise en œuvre d'une stratégie SDM peut faire le reste du chemin. Il ne s’agit pas de changer l’approche DevOps, mais plutôt de redynamiser les bonnes pratiques. En déployant les deux stratégies de concert, les équipes peuvent se concentrer moins sur l'automatisation et les outils, et plus sur les résultats ainsi que les personnes et les étapes nécessaires pour les obtenir.

A propos de l'auteur

Brian Dawson
Directeur de marketing produit, CloudBees