Many teams are currently in the early stages of adopting Salesforce DevOps, and naturally they want to keep a close eye on how their performance is measuring up. Without the ability to measure your progress, it’s impossible to keep track of which things your team is doing well — or not so well.
Measuring your performance also helps you to tell a powerful story about ROI — something that can be vital in proving the business value of DevOps. If you want to persuade the business to invest in DevOps and assign budget for tools and training, you need to show them the numbers that make your case.
The DORA metrics
Google’s DevOps Research and Assessment (DORA) team has been at the forefront of DevOps research since 2014, tracking and reporting on the performance of teams practicing DevOps. DORA seeks to understand the factors that help or hinder DevOps improvements.
Unsurprisingly, most teams reach for the DORA metrics to measure their DevOps performance. The majority of teams understand that these metrics are the most accurate way to assess their progress, and DORA have made it easy to do so by pinpointing four key metrics:
- Deployment Frequency: how often an organization successfully releases to production
- Lead Time for Changes: the amount of time it takes a feature to get into production
- Mean Time to Recover: the time it takes to recover from a failure in production
- Change Failure Rate: the percentage of deployments causing a failure in production
Deployment Frequency measures how often your team successfully releases to production. One of the main aims of DevOps is to release smaller deployments but more frequently. Using this DORA metric, teams can assess whether they’re managing to release more often.
While Deployment Frequency is about the rate of new releases, Lead Time for Changes is about the velocity of delivery. Lead Time measures the time it takes for committed code to reach production. The most efficient DevOps teams have a short lead time for changes.
The metric Mean Time to Recover refers to the average amount of time it takes for a team to get back on their feet after a failure. Since failures are never entirely avoidable, no matter how sophisticated your process, measuring your Time to Recover is more useful than tracking the number of issues that crop up. Building robust systems for rollback, monitoring production closely, and prioritizing recovery when there’s a failure will reduce your team’s Time to Recover.
Finally, Change Failure Rate is a calculation of the percentage of releases that resulted in rollbacks or any type of production failure. Change Failure Rate provides vital insight into how your team divides their time between testing, debugging and building new features. DevOps teams should strive for the lowest percentage possible for Change Failure Rate, since a lower number suggests better quality work and more stable deployments.
The benefits of using the DORA metrics
If your team falls in the low performer category with any metric, successfully implementing more automated processes is the key — and that’s both a cultural and technical challenge. Further DevOps adoption will accelerate your deployments, increase release velocity, and reduce downtime and errors. All of this means you’re serving your end users better.
The benefits of using DORA metrics are two-fold: you can track your team’s progress, and they’re an excellent tool to explain the business value of DevOps. Both of these things together demonstrate the overarching benefit of DevOps: allowing developers, business stakeholders, and end users to collaborate more easily, and ensuring continuous improvements in the agility, velocity, resilience of your team’s development and release process.
How Salesforce teams can track their performance using the DORA metrics
If you’re already using Gearset, you’re in luck — we recently released a Reporting API which allows you to benchmark your Salesforce DevOps performance with DORA metrics. The Reporting API lets you extract data from Gearset that shows how your team is doing in terms of the DORA metrics, helping you to assess your DevOps maturity accurately.
Gearset can provide you with this data thanks to Pipelines which you’ll need to be using in order to benefit from the Reporting API. Using the Reporting API means you can take your team’s DORA metrics and analyze the data in your preferred dashboard tool — such as Tableau, Geckoboard, Google Data Studio, or Microsoft Power BI.
As well as seeing the headline figures for the DORA metrics, you and your team will likely want to dig into the data, so you can do your own analysis of the resilience and velocity of your release process. With this in mind, for each metric Gearset exposes two API endpoints, one providing the raw data which can be used to calculate the metric, and another which presents aggregate information required to directly plot the DORA metric on a line graph.
Using the Reporting API feature
To begin using our Reporting API feature, you’ll need to get an API access token first, which will be used for authentication. Depending on the DORA metric, you’ll need to gather either your pipeline ID or environment ID. Then you’re ready to create a request using the Gearset API dynamic documentation.
Let’s take a look at getting the Lead Time metric, as an example. Head to the Lead Time for Changes section, and click on the Try it out button. Fill in the ID and the time frame to query, and click Execute. This will send off a request to the Reporting API to analyze this metric. Once executed it presents the curl command that was used (so you can use it elsewhere) and the response. This can be copied or downloaded. You can follow this process to get the other three DORA metrics. For all of the metrics apart from Deployment Frequency, you’ll need to be using Pipelines.
See for yourself
If you want to see a demo of the Reporting API using a Tableau dashboard, and learn more about the DORA metrics, watch the recording of our launch webinar now.
Ready to report?
If you have the automation tier of Gearset, then you’re all set to make full use of the Reporting API to assess your DevOps performance. Remember that you’ll need to be using Pipelines to get the full benefit of the Reporting API. We’re always looking for feedback, so get in touch via our live chat or email us at [email protected] if you have any. We’d be particularly interested to hear if it would be useful to see this kind of dashboard in Gearset as well.
If you’re still wondering about DevOps and how it drives the improvements measured by the DORA metrics, head to our enterprise page to learn how a complete DevOps platform can help you make the most of Salesforce.