DORA (DevOps Research and Assessment) metrics are a set of software development metrics that help measure and improve the performance of software development teams, enabling them to deliver high-quality software faster and more reliably.
The book Accelerate by Nicole Forsgren, Jez Humble & Gene Kim provides a de-facto standard on how to measure development efficiency, supported by clear scientific findings. It identifies four key metrics that are collectively known as DORA metrics and support software delivery performance, namely:
- Lead Time - how long does it take to go from code committed to code successfully running in production
- Deployment Frequency - how often your software team deploy changes to production
- Change Fail Percentage - what percentage of changes to production (software releases and configuration changes) fail
- Mean Time to Recovery (MTTR) - how long it takes to resolve an error or rollback a faulty change in production
By balancing tempo (Lead Time, Deployment Frequency) with stability metrics, it is ensured that increased speed does not result in suffering quality.
Don't let top-down KPIs ruin your engineering culture
KPIs are often related to control. Yet, you can only optimize what you can measure.
To enable the DORA metric calculation, your team needs to be present in the VSM workspace, along with its team members and the services it owns.
Furthermore, release and incident data need to be provided, either via the Github integration or the custom events API.
The metrics are calculated on a per-team basis, visible on a separate tab for the team.
Adding team members to your team is another requirement as this makes it possible to match individual commits and releases to the team.
Creating services from GitHub repositories or other sources, and linking them to the owning team is the final step to calculate your metrics.
DORA Metrics are calculated on the fly each time new change, release and incident events are received and the requirements mentioned above are met. In case the events for services/members that do not exist in VSM are received, no metric can be calculated. In this case, the events are still stored and the metrics will be calculated, when the matching services, teams and members are added.
There are two ways how to receive data for metric calculation: Out-of-the-Box Integrations and Custom Events API
When using our out-of-the-box GitHub integration, the corresponding change and release events are automatically generated.
To add release, change and incident data from sources other than Github, VSM provides a custom events API. The documentation can be found here: DORA Custom Events API
Updated about 2 months ago