The DevOps Research and Assessment (DORA) Metrics

You have probably heard that “DevOps accelerates the software development process” quite often, and that CI/CD involves “continuous”. But just how fast is fast? Are you delivering software in weeks or months, or could you be delivering in hours? You might not need to release your software in a matter of hours, but learning how to do it safely and efficiently? Now that sounds exciting, doesn’t it?

Organizations embracing DevOps often use various metrics to measure the success of their CI/CD pipelines, infrastructure automation, testing strategies, and overall development practices. The most popular ones are DORA metrics, which focus on evaluating software team performance through 4 key metrics (2021 DORA report). These metrics are divided into 2 main categories: throughput and stability, providing a comprehensive view of both the speed and reliability of software delivery.

Throughput

Throughput measures the velocity of changes that are being made. DORA assesses throughput using the following metrics:

  • Change lead time - this metric measures the time it takes for a code commit or change to be successfully deployed to production. It reflects the efficiency of your delivery pipeline.
  • Deployment frequency - this metric measures how often application changes are deployed to production. Higher deployment frequency indicates a more agile and responsive delivery process.

Stability

Stability measures the quality of the changes delivered and the team’s ability to repair failures. DORA assesses throughput using the following metrics:

  • Change fail percentage - this metric measures the percentage of deployments that cause failures in production, requiring hotfixes or rollbacks. A lower change failure rate indicates a more reliable delivery process.
  • Failed deployment recovery time - this metric measures the time it takes to recover from a failed deployment. A lower recovery time indicates a more resilient and responsive system.

As part of their evaluation, the DORA team also categorized software development teams into 4 performance tiers: low, medium, high, and elite. This ranking system offers a clear perspective on each team’s overall effectiveness and success .

MetricEliteHighMediumLow
Deployment frequencymultiple deploys per dayBetween once per week and once per monthBetween once per month and once every 6 monthsFewer than once per six months
Change lead timeLess than one hourBetween one day and one weekBetween one month and six monthsMore than six months
Failed deployment recovery timeLess than one hourLess than one dayBetween one day and one weekMore than six months
Change fail percentage0%-15%16%-30%16%-30%16%-30%

To achieve high or even elite performance in software delivery, it is crucial to adopt tool-agnostic methodologies and, more importantly, ensure that your team is equipped with the knowledge and skills to implement them effectively.