How to effectively measure performance and quality in software delivery?

Kamil Żurawski
2 min readMay 19, 2020

Nowadays one of the keys to successful businesses based on software is code quality and delivery time. Applications became more and more complex and decentralized. Engineers are split into tiny teams focused on different parts of the whole system. How we can correctly measure those parameters in these conditions? Today I will introduce you into one of the good ways to achieve it — DORA metrics.

DORA (DevOps Research and Assessments) is a company focus on providing assessments and surveys of organizations to see if you are a high performing IT organization or where you might need help and attention to become even better. Based on their experience, after six years of gathering surveys from different customers across the whole world, they created DORA metrics which we can split into two groups throughput performance and stability performance metrics. Each group contains two parameters, which might be assessed by answering simple questions.

1. Throughput performance

Deployment Frequency (DF) how often does your organization deploy code to production or release it to end-users?

Mean Lead Time for changes (MLT)how long does it take to go from code commit to code successfully running on production?

2. Stability performance

Mean Time to Recovery (MTTR) — how long does it generally take to restore service when a service incident occurs (e.g., unplanned outage, service implement)?

Change Failure Rate (CFR) what percentage of changes results either in degraded service or subsequently requires remediation (e.g., service outage, rollback, requires a hotfix, fix forward, patch)?

Below you can find a table which will assess organization performance based on given answers:

Cross fingers that your company is Elite in the given performance index.

How does it look like in industry leaders?

  • By May 2011, Amazon was deploying new software to production servers an average of 11.6 seconds. In the busiest hour, 1,079 new deployments were sent into the production environment.
  • Amazon’s implementation of a new load balancer ensured that only one out of every 100,000 deployments resulted in an outage on the Amazon website.
  • Etsy now deploys over 60 times per day.

Thanks for your attention, hope so that you found here something valuable for you.

--

--

Kamil Żurawski

Principal Developer in StepStone, trainer in the field of architecture and business-oriented programming, after-hours passionate about ultra mountain marathons