Métriques & KPIs DevOps
Comment mesurer l'impact et la performance de vos implémentations DevOps.
🚀 Les 4 Métriques DORA
Les quatre métriques de performance les plus importantes selon le rapport DORA (DevOps Research & Assessment).
1. Deployment Frequency
Combien de fois déployez-vous en production ?
2. Lead Time for Changes
Temps entre commit et déploiement en prod ?
3. Mean Time to Recovery
Temps pour se rétablir d'une défaillance ?
4. Change Failure Rate
% de déploiements causant des incidents ?
📊 Métriques de Vélocité & Débit
🎯 Story Points / Sprint
Points de complexité complétés par sprint.
Objectif : Stabilité et prédictibilité
Alerte : Variation > 50% = planification insuffisante
Exemple : Équipe A = 40 pts/sprint ± 5 pts (stable) ✅
✅ Cycle Time
Temps du démarrage à la complétion d'une tâche.
Objectif : Réduire la file d'attente
Cible : < 5 jours pour story classique
Amélioration : Parallélisation + moins de dépendances
⚡ Throughput
Nombre de stories complétées par période.
Objectif : Augmenter le débit
Risque : Ne pas augmenter sans améliorer qualité
Formule : Throughput = Stories / Sprint
🔄 Burn Down
Progression du travail vs temps (idéalement une ligne droite).
Bon signe : Courbe régulière
Mauvais signe : Plat puis chute brusque
Action : Ajuster capacité ou scope
🛡️ Métriques de Qualité & Fiabilité
🐛 Defect Escape Rate
Bugs trouvés en production vs total bugs.
Cible : < 5% (90% catching avant prod)
Amélioration : Meilleure test coverage + review
Impact : Moins de incidents, meilleur uptime
📈 Test Coverage
% du code couvert par tests automatisés.
Cible : > 80% coverage
Structure : 70% unit + 20% intégration + 10% E2E
Alerte : Coverage > 90% = over-testing possible
⏱️ System Availability (Uptime)
Pourcentage de disponibilité du service.
99.0% = 7.2h downtime/mois (basique)
99.9% = 43m downtime/mois (standard web)
99.99% = 4.3m downtime/mois (e-commerce)
📊 Service Level Objective (SLO)
Cible de performance promise (ex: 95% requêtes < 200ms).
Composantes : Disponibilité + latence + erreurs
Error Budget : % de temps où SLO peut être violé
Utilisation : Décider si on peut déployer risqué
👥 Métriques de Productivité Équipe
⏱️ Context Switching
Combien de fois l'équipe change de tâche ?
Impact : Chaque switch = 15-25 min perdues
Cible : Max 1-2 switch par jour
Amélioration : Tickets mieux définis + moins d'interruptions
🚨 On-Call Satisfaction
Qualité de vie en on-call (sondage NPS).
Cible : > 7/10
Problèmes : Trop d'alertes, runbooks absentes, manque de sleep
Amélioration : Automation + alerting intelligent
📚 Documentation Freshness
% de documentation actualisée (vs code).
Cible : > 90% synchronized
Mesure : Docs < 6 mois depuis dernier update
Risque : Outdated docs = onboarding lent
🎓 Knowledge Transfer
Combien de personnes connaissent chaque système ?
Risque : Si < 2 personnes = "Bus Factor"
Cible : > 3 personnes par système critique
Action : Pair programming + documentation
📡 Métriques de Monitoring & Alerting
🎯 Alert Volume
Nombre total d'alertes générées par jour.
Problème : > 100 alertes/jour = trop (alert fatigue)
Cible : < 20 critical alerts/jour
Solution : Dédupliquer, corréler, seuils intelligents
⚠️ False Positive Rate
% d'alertes sans incident réel.
Cible : < 10%
Impact : > 30% = équipe ignore les alertes
Amélioration : ML-based alerting, thresholds dynamiques
⏰ Mean Time to Alert (MTTA)
Temps entre problème et première alerte.
Cible : < 1 minute pour critical
Amélioration : Proactive monitoring (logs, traces)
vs Reactive : Attendre l'utilisateur = MTTR x3+
📊 Dashboard Refresh
Combien d'équipes utilisent les dashboards au quotidien ?
Cible : > 90%
Mauvais signe : Si < 50% = dashboards non pertinents
Amélioration : Dashboards décidables (action claire)
💰 Métriques de Coût & Infrastructure
💵 Cost per Deployment
Coût d'infrastructure par déploiement.
Amélioration DevOps : -40% à -60%
Via : Automation, less waste, better utilization
Mesure : Cloud spend / deployments par mois
🖥️ Resource Utilization
% d'utilisation CPU/RAM vs capacité totale.
Cible : 60-75% utilization
< 50% = gaspillage (surdimensionné)
> 85% = risque (pas d'headroom pour pics)
⚡ Infrastructure-as-Code Coverage
% d'infrastructure définie dans code.
Cible : > 95%
Bénéfice : Reproductibilité, version control, DR
Sans IaC : Snowflake servers, impossibilité de scale
🔄 Mean Time to Provision
Temps pour créer nouvel environnement.
Sans automation : Jours à semaines
Avec IaC : Minutes à heures
Impact : Permet testing en prod-like, DR testing
🎯 Comment Implémenter Ces Métriques
Choisir les 5-7 métriques clés
Ne pas tout mesurer. Focus sur celles qui correspondent à vos business goals (vélocité, qualité, coût).
Définir baselines et cibles
Mesurer état actuel, définir cibles réalistes (amélioration 10-20% par trimestre).
Automatiser la collection
Scripts, APIs, intégration avec outils (git, CI/CD, monitoring). Ne pas faire manuel = inexact.
Publier dashboards
Visible à toute l'équipe. Updates temps-réel. Évite réunions interminables sur "c'est quoi les chiffres?"
Analyser & itérer
Rétrospectives mensuelles. "Qu'est-ce qui a amélioré la métrique?" Cultiver data-driven decisions.
Éviter de gamifier
Ne pas mettre en place KPIs sans contexte. Exemple : maximiser deployments = bad code en prod.