1

Codacy Product Showcase: April 2024

Group 370
2

Meet Codacy at QCon London 2024

Group 370
3

Spotlight Whitepaper by IDC on Importance of Automated Code Review Technologies

Group 370

How to determine your goals and metrics to adopt a data-informed culture

In this article:
Subscribe to our blog:

When you are thinking about your Engineering analytics, some common questions might cross your mind:

  • What should I be tracking?
  • What are other companies in my industry tracking?
  • What goals should each team be aiming for?

There is no single set of metrics that works for all teams. Processes and teams are all unique and have different goals; even teams within the same company may have diverging ideas of success. With those differences in mind, we’ve crafted a framework to help you find the right metrics for your company. 

Here, we will use this framework to help you define your metrics and clarify the relationship among them. That way, your team understands how their metrics connect to the overall company Engineering performance.

Types of Metrics

We refer to your most important metrics as the Key Metrics. The metrics that other teams or individuals spend their time on that help drive the key metrics are called Capability Metrics. Let’s see what’s the difference between them.

Key Metrics – What matters most to your business

Most engineering leaders have accepted the DORA metrics as the de facto standard for measuring high-level engineering performance. The DORA metrics provide a balanced analysis of both speed and quality. Smaller companies often simplify even further, focusing solely on tracking their speed.

The DORA metrics are designed to balance the trade-offs between speed and quality. For example, if you focus your attention on delivering faster, you’ll be able to assess if your improvement is coming at the expense of sacrificing the stability of your system or the quality of the end-user experience.

Despite being lagging metrics, the DORA metrics do a good job of quantifying the behaviors and practices that teams striving for high-performance seek to adopt. 

Another advantage of adopting the DORA metrics is the validated insight that companies that focused on these metrics achieved better business outcomes than those that didn’t.

The evidence presented in Accelerate is a triumph of research, tenacity, and insight, proving not just correlation but a causal link between good technical and management behaviors and business performance.”

Preface, Accelerate: The science of lean software and DevOps: Building and scaling high performing technology organizations

Capability Metrics

Capabilities are the practices that help achieve a high level of performance for the Key Metrics, and achieving these metrics ultimately helps the company’s overall health and performance. You can add as many levels of metrics as you’d like, as long as each level is related or acts as a check to the others.

Examples of Technical capabilities
Examples of Technical capabilities, from DORA’s research program

Capability metrics should either directly contribute to the Key Metrics or act as a check to ensure practices are growing in a healthy direction. 

For example, if a team’s Key Metric is Lead time for changes, working in small batches would be a good ability to start tracking. This capability is based on the premise that you can achieve shorter Lead times and faster feedback loops by breaking down work items into easier-to-deliver sizes. This is a consequence of Little’s law, which translates in that if team members are not busy, more work can flow through the process.

Technology leaders need to deliver software quickly and reliably to win in the market. For many companies, this requires significant changes to the way we deliver software. The key to successful change is measuring and understanding the right things, with a focus on capabilities—not on maturity.”

Accelerate: The science of lean software and DevOps: Building and scaling high performing technology organizations

Successfully adopting a data-informed culture

Once you’ve identified what is more impactful for your organization and set clear and achievable goals, it’s time to think about implementing a data-informed culture. Here are some principles to help you.

You become what you measure

Remember to be intentional when introducing a new capability and a new set of metrics to the team. Metrics are signals, and your team will interpret them as the direction you want them and your organization to take. 

Think big, start small

Make sure to plan ahead what you want to measure by defining why you are measuring and what improvement is achievable. 

Start with a reduced set of metrics, and test your approach with a subset of teams. Adopting too many metrics at once can create confusion, leading to scenarios where everyone has different ideas about where to spend their time.

Cooperation over control

Preemptively avoid resistance by making it clear to the team that you won’t use the metrics to evaluate or control individuals, but rather give them tools for improving the team as a whole.

Use an off-the-shelf tool

If you’d like to start measuring any of these metrics today, there are several open-source solutions to do so, but there are some unique advantages to using Pulse:

  • Peace of mind when collecting engineering metrics: we do the work for you, ensuring reliable metrics and continuous tracking.
  • No need to choose what to measure: no need to get caught in output or vanity metrics that are hurtful for your team in the long run; we research for you.
  • No committees to define how to measure: don’t get locked in discussions about the source of the data, where to instrument your workflow, or how to calculate each metric.

Empower your Engineering with the DORA metrics. Connect with GitHub to find out which capabilities impact your organization the most and start improving your Engineering health.

Track and measure the DORA metrics, and prioritize your team metrics all in one place.

Webinar: How to boost your Engineering Speed & Quality with the right Metrics.

Are you looking for ways to deploy faster and more efficiently without compromising code quality? 

Our team leads at Codacy and Pulse will show how you can make the most out of the engineering data already available to you, and empower you to measure all your engineering performance.

RELATED
BLOG POSTS

How to measure Change failure rate?
Change failure rate is one of the most interesting metrics you should use to evaluate your team’s quality and overall efficiency of your Engineering...
The importance of Changes & Reviews and Work in Progress metrics
To continuously improve and deliver better software development productivity, you must have the right data to make better decisions. Having the means...
How to measure Lead time for changes?
Lead time for changes is one of the most interesting metrics you should use to evaluate the efficiency of your Engineering performance.

Automate code
reviews on your commits and pull request

Group 13