search
– DORA Metrics : aider les entreprises à mieux comprendre la productivité de leur développement
Gitlab

DORA Metrics : aider les entreprises à mieux comprendre la productivité de leur développement

Dans la mesure où DevOps est un savant mélange des meilleures pratiques, outils et, surtout, habitudes de travail, une question subsiste : Comment mesurer son efficacité ? Il existe heureusement différents indicateurs de CI/CD destinés à aider les départements informatiques et de développement de logiciels à obtenir une visibilité et des informations pertinentes.

L’un de ces outils a pour nom « métriques DORA », ou DevOps Research and Assessment (recherche et évaluation DevOps). Forts de notre vaste expérience en matière de conseil sur GitLab, nous vous présentons les fondements de DORA, les paramètres nécessaires à son fonctionnement et vous prodiguons des conseils sur l’optimisation du pipeline de développement.

Quelles sont les métriques DORA ?

Les métriques DORA ont été élaborées par une équipe spécialement consacrée à Google Cloud en 2020, au terme de six années de recherches intensives. Les métriques originales incluaient :

  • Fréquence de déploiement et délai d’exécution des changements (qui reflètent tous deux la réactivité de l’équipe).
  • Taux d’échec des modifications et délai de rétablissement du service (tous deux témoignent de la stabilité).

Un an plus tard, les chercheurs ont ajouté un cinquième indicateur – la fiabilité – pour répondre à l’évolution constante de DevOps.

La pandémie qui a frappé le monde en 2022 a entraîné une accélération de la révolution technologique dans les pays développés, de 6 % en moyenne, d’après le Fonds monétaire international. Les métriques ont montré leurs premiers résultats au fil du temps. C’est ainsi qu’en 2023, le cabinet de conseil McKinsey, un des trois principaux du secteur, a mis au point une méthode d’évaluation de la productivité du développement reposant sur DORA et sur d’autres indicateurs DevOps (SPACE). Les résultats obtenus par 20 entreprises des secteurs de la technologie, de la finance et de la pharmacie ont été plus que concluants :

  • Diminution de 20 à 30 % des défaillances signalées par les clients.
  • Amélioration de 20 % de l’expérience des employés.
  • Augmentation de 60 % de la satisfaction client.

Nous nous penchons aujourd’hui sur les indicateurs DORA dans le cadre de GitLab, une solution globale en matière de DevSecOps. En mars 2024, la plateforme a été reconnue comme l’une des meilleures de sa catégorie par G2, célèbre site d’évaluation de logiciels.

Fréquence de déploiement

La mesure de la fréquence de déploiement indique la fréquence à laquelle vos équipes publient du code en direct. Cette fréquence se mesure à l’heure, au jour, à la semaine, au mois ou à l’année, en fonction de la vue d’ensemble recherchée. Le suivi des performances est crucial, car il permet d’évaluer votre capacité à répondre aux nouvelles demandes des clients et à saisir les nouvelles opportunités du marché. Plus la fréquence est élevée, plus le cycle de réaction et les évolutions sont rapides.

GitLab enregistre les déploiements « terminés », autrement dit ceux qui se sont effectués correctement (sans erreur). Il se focalise sur le nombre moyen de déploiements effectués en environnement de production, identifiés par un « niveau de production » désigné ou des noms tels que « production » ou « prod ». Seuls les déploiements effectués dans ces environnements sont pris en compte dans la fréquence des déploiements.

Vous devez déterminer votre définition interne de la « réussite ». Cette définition s’applique-t-elle aux déploiements ciblant seulement 10 % de votre flux de trafic ou à ceux qui en ciblent la totalité ?

Délai d’exécution des modifications

Cet indicateur révèle le temps de mise en production d’une modification du code (ou commit). Il sert aussi à vérifier en permanence la santé de vos pipelines CI/CD ; si ce délai diminue avec le temps, votre équipe est devenue plus productive et livre les modifications nécessaires plus rapidement.

GitLab calcule les secondes séparant deux moments cruciaux : la validation d’une demande de fusion du code dans la branche principale et l’exécution parfaite du code en production, synonyme d’un déploiement réussi. Vous devez garder à l’esprit que le délai d’exécution des modifications exclut le temps nécessaire à l’écriture du code lui-même.

Le suivi de GitLab est disponible par défaut pour les délais de modification dans les déploiements comprenant une seule branche avec plusieurs étapes (comme le passage du développement à la phase de stabilisation, puis en production). Si votre chaîne de travail est plus complexe, et que chaque étape fait l’objet d’une demande de fusion distincte, GitLab les traitera comme des déploiements individuels, ce qui risque de faire grimper cette métrique.

Taux d’échec des modifications

Cette métrique vous montre à quelle fréquence les changements publiés conduisent à des échecs en production, afin de déterminer la qualité de votre code. Plus ce taux est élevé, plus vous devez revoir vos processus de déploiement ou étendre la portée des tests d’automatisation.

Pour calculer le taux d’échec des modifications, GitLab divise le nombre d’incidents survenus après chaque déploiement par le nombre total de déploiements en production. Par exemple, si vous avez déployé un nouveau code 20 fois en un mois et que des incidents sont survenus une fois par semaine, votre taux d’échec des modifications est de 20 % (4 incidents / 20 déploiements).

Temps de rétablissement du service

Plutôt explicite, cet indicateur évalue la rapidité de réaction aux incidents survenus en production. En cas de retard, il est conseillé de revoir vos plans d’urgence et de rétablissement après une panne.

GitLab enregistre la durée (en secondes) des incidents survenant dans les environnements de production. Autrement dit, chaque incident ne peut être causé que par un seul déploiement en production et, inversement, aucun déploiement en production ne doit déclencher plus d’un incident.

Vous n’utilisez pas encore GitLab ? Testez une licence autogérée pendant 30 jours. Aucun paiement nécessaire. Profitez de votre offre →

Comment améliorer vos performances grâce aux métriques DORA : une liste de suivi complète pour 2024

Pour l’instant, tout se résume à l’optimisation. En accord avec les recommandations de GitLab, nous vous proposons ci-dessous une liste d’actions à mener afin de tirer le meilleur parti de votre pipeline de déploiement grâce aux métriques DORA.

Accélérer le processus de livraison

  • Comparez la fréquence des déploiements entre les équipes et les projets et identifiez les opportunités de fiabilisation.
  • Divisez les fonctions majeures en unités plus petites et plus faciles à gérer afin de réduire le délai de mise en œuvre des modifications.
  • Mettez en œuvre des tests automatisés et la validation du code pour renforcer la qualité du déploiement et identifier les problèmes avant leur aggravation en pertes financières.
  • Analysez l’efficacité des pipelines CI/CD entre les équipes et les projets. Identifiez les blocages et optimisez les déploiements pour les accélérer.
  • Mettez à profit l’analyse de la chaîne de valeur de GitLab pour supprimer les lacunes et fluidifier le flux de travail dans son ensemble.

Améliorer votre stabilité et votre rétablissement

  • Comparez les temps de réponse des équipes aux interruptions de service et identifiez les domaines où la communication et la collaboration doivent être optimisées.
  • Augmentez votre champ de vision sur votre production afin de détecter plus rapidement les problèmes et de les résoudre ( réduisant ainsi le MTTR).
  • Mettez en place des flux de travail clairement définis pour remédier aux pannes et aux interruptions et accélérer les délais de résolution.

Concilier rapidité et qualité

  • Comparez la qualité et la stabilité du code entre les équipes et les projets. Tentez d’atteindre un juste équilibre entre la fréquence de déploiement et le délai d’exécution des modifications, sans compromettre la qualité.
  • Évaluez et améliorez le processus de révision du code pour le rendre plus efficace sans nuire à la rapidité du déploiement.

À propos de nous

Cloudfresh est un Partenaire GitLab (Services Sélect et Professionnels). Nous vous accompagnons dans les domaines de l’implémentation, de la migration, de la formation, de l’intégration, du conseil et de l’assistance.

Vous pouvez obtenir gratuitement une analyse de votre chaîne de valeur en remplissant le formulaire ci-dessous. Cette analyse réalisée par Cloudfresh vous apportera les éléments suivants  :

  • Une vue à 360 degrés de votre situation actuelle.
  • Une compréhension parfaite des objectifs de votre entreprise et de leur réalisation.
  • Une analyse de tous les obstacles à votre réussite.
  • Une analyse complète de votre chaîne de valeur.
  • Une analyse coûts-avantages prête à l’emploi (le cas échéant).

Nous pouvons aussi vous aider à définir les indicateurs nécessaires au suivi et à la compréhension des métriques DORA et des analyses plus générales de GitLab.

Contactez Cloudfresh