An analog wall clock showing the time 12:20

|Byte-size

Stop guestimating — measure development KPIs

What do software engineering teams that achieve exceptional operational performance have in common?


By Stephan Schulze

Which KPIs do you set for your software development cycle? Do you measure anything at all?

Having no data points is like trying to navigate through thick fog. When you have no clue where you are and no idea where you’re going, you risk going in circles or, even worse, backward.

A person standing in the middle of the woods, surrounded by fog
Where do you go from here? (Photo by Haydan As-soendawy@Pexels)

The book Accelerate (a must-read by Dr. Nicole Forsgren, Jez Humble, and Gene Kim) analyzed four metrics that companies use to measure software delivery performance:

  1. Deployment Frequency: How often do you successfully deploy to production?
  2. Lead Time: How long until a commit gets into production?
  3. Change Failure Rate: What’s the percentage of deployments that fail in production?
  4. Mean Time To Restore (MTTR): How long does it take to resolve an incident?

In its latest Accelerate State of DevOps report, DORA (DevOps Research and Assessment) uses its four-metrics benchmark to test software teams’ performance. Those classified as Elite Performers that achieve exceptional operational performance have a few things in common:

  • Deploy multiple times a day.
  • Maintain Lead Time and MTTR of less than an hour.
  • Achieve a maximum Change Failure Rate of 15%.

I also examine how these numbers are distributed to identify gaps and opportunities for improvement. A typical example is how some commits take weeks to reach production while others are deployed within minutes, which might indicate potential issues in your process.

Check out my LinkedIn post for more insights from the community.