avatarStu Cavill

Summary

The article outlines 11 key metrics for improving software delivery productivity, emphasizing the importance of measurement for enhancement.

Abstract

The article delves into the pursuit of productivity within software development, highlighting the absence of a "silver bullet" solution and the necessity of refining various interconnected processes. It introduces 11 metrics, such as Sprint Burndown, Velocity, and Value Delivered per Iteration, which are crucial for tracking progress, forecasting work, and ensuring the delivery of value to customers. These metrics are not only for tracking performance but also for fostering team accountability, engagement, and satisfaction. The article suggests that by utilizing tools like Jira or Azure DevOps, teams can gain insights into their development processes, adapt methodologies,

Photo by Isaac Smith on Unsplash

11 Metrics to Help Keep a Finger on the Pulse of Software Delivery

An old adage states, “You can’t improve what you can’t measure”, and nothing could be truer when it comes to boosting a team’s productivity

Companies are on the hunt for the secret to productivity — the art of increasing the amount of useful outputs from quantifiable inputs. The world of software development is one of which where countless leaders seeking this Holy Grail. Unfortunately, they either fall short trying or lay one hand upon it to realise it doesn’t resemble what they’d originally set out to find.

I too am still looking to unlock the secrets of productivity but what I have learnt so far is that there is no silver bullet or shortcuts to achieve it.

I’ve come to believe that enhancing productivity is the side-effect of incrementally refining the building blocks of several interrelated processes and subsystems. By focusing on aspects such as predictability, accountability, employee engagement & wellbeing, transparency, and quality; the much sought after goal of productivity becomes attainable.

But how do you know when you are on the tipping point of making an impact upon productivity? By utilising select metrics that are both curated and owned by software delivery teams, insight into progress can be tracked. A spotlight is cast across the metaphorical playing field, the causality of each variance in the process can be assessed and the impact upon productivity explicable.

By focusing on aspects such as predictability, accountability, employee engagement & wellbeing, transparency, and quality; the much sought after goal of productivity becomes attainable.

This article looks to introduce you to these metrics; some familiar and possibly some not so well-known.

For the sakes of this article, I refer to Jira as my weapon of choice to track the metrics but I’ve found Azure DevOps works perfectly well also.

Sprint Burndown

What is the metric?

  • Tracks completion of work throughout a Sprint
  • Measured by plotting the remaining effort left each day

How do we measure it?

  • Captured by setting each subtask with an estimate
  • As each subtask is completed the remaining effort is reduced
  • Burndown is automatically plotted as this happens

Why do we measure it?

  • Helps teams understand if they are under or over forecasting
  • Steep drops in the burn highlights when work hasn’t been broken down into granular pieces

Epic & Feature Burndown

What is the metric?

  • Track progress of development over a larger body of work compared to Sprint burndown
  • Shows the amount of effort left to complete per epic or feature

How do we measure it?

  • Plotted by collating issues related to a particular feature in an epic
  • As each issue is completed within an epic this is shown as work completed in the epic burn
  • As more work is added to an epic this is also highlighted in the epic burn chart

Why do we measure it?

  • Sprint burndown charts alone do not give enough visibility of on-time delivery of project
  • Highlights scope creep
  • Can indicate when teams aren’t shipping incremental releases

Velocity

What is the metric?

  • Average amount of work completed each Sprint
  • Measured in story points

How do we measure it?

  • Captured in Jira from teams estimations of issues in Backlog Refinement
  • As each issue is added to a Sprint Jira plots the committed work
  • As issues are completed during the Sprint Jira plots the work completed against work committed

Why do we measure it?

  • Useful for forecasting how much work a team can complete
  • Issues with erratic variance can highlight issues with team estimations or prediction of commitment
  • Consistent velocity could demonstrate a team is running well or can increase their commitment

Actual Items Completed vs. Committed Items

What is the metric?

  • Displayed on the same chart as velocity
  • Used to understand the number of stories the team managed to complete against their predicted target

How do we measure it?

  • Captured in the same way as velocity

Why do we measure it?

  • Helps teams review if they are overestimating
  • Can highlight where teams who consistently achieve their predicted target may not be committing enough
  • Can help a team understand if their estimations are accurate

Technical Debt Management

What is the metric?

  • Known problems, issues or bugs delivered during Sprint
  • Measured by number of bugs but this can be expanded

How do we measure it?

  • Using bugs issue types in Jira we can report on the number of bugs added during a Sprint

Why do we measure it?

  • Helps the team review development process to ensure that fewer bugs are deployed into the quality assurance environment
  • Can highlight areas where existing unit tests are not covering all paths

Team Enthusiasm & Satisfaction

What is the metric?

  • Major component in a successful Scrum team
  • Indicator of the morale and happiness of the team at the end of each Sprint

How do we measure it?

  • Satisfaction survey taken in each Retrospective / end of Sprint

Why do we measure it?

  • Help the team reflect on their adoption of Scrum
  • Surfaces possible issues with process if team motivation is low

Retrospective Process Improvement

What is the metric?

  • Review of the actions committed and completed that were taken from the last Retrospective

How do we measure it?

  • Any actions captured in a Retrospective should either have a deadline set or be committed to a future Sprint
  • These can then be measured by their delivery time

Why do we measure it?

  • Demonstrates the teams ability to revise its development processes to make the next Sprint more effective and enjoyable
  • Highlights where issues have been found but corrective action has not been taken

Team’s Adherence to Existing Methodology

What is the metric?

  • Ensures that the Scrum team follows the rules and standards set for your Agile processes

How do we measure it?

  • Measured as a count of infractions to the standards during the Sprint Retrospective

Why do we measure it?

  • It is important that all teams adhere to standards and governance set — deviations to the process can be made as long as it’s a conscious decision agreed upon by the team
  • Can prevent teams moving into low satisfaction
  • Highlights potential failure points early on so corrective action can be taken

Value Delivered per Iteration

What is the metric?

  • Measures the value a team delivers at the end of each Sprint

How do we measure it?

  • Using a value field of the Issue in Jira
  • A report can be pulled from Jira of a count of value for each Sprint

Why do we measure it?

  • Downward trends can highlight when to stop working on a particular product
  • Early indicator to show that team could be moved onto a higher value project

Time to Market

What is the metric?

  • Length of time it takes for a project to provide value to the customer
  • Can be measured by revenue or delivery of feature to customer

How do we measure it?

  • Can be measured by setting milestones for epics or features to be delivered in Jira

Why do we measure it?

  • As an Agile team it is important to show the iterative benefit delivered to customers
  • Late ROI can indicate estimation issues or team not iteratively deploying features

Capital Redeployment

What is the metric?

  • Compares the cost of future development against the potential value of that work

How do we measure it?

  • The value of the remaining requirements is compared to the actual and opportunity costs combined

Why do we measure it?

  • Can indicate when to redeploy a development team onto a new project if the costs outweigh the potential value gain

With these metrics being tracked, you and your software delivery team should be on the path to unearthing productivity gains.

One final word of advice to encourage your team in the adoption of these metrics — ensure that these figures remain under the ownership of your team and not that of senior management. They are there to help the team to observe and analyse their own performance. It’s far too easy for these metrics to be misconstrued outside of the context of your team leading to a counter-productive hit to the team’s delivery.

If there’s any useful metrics that I’ve not covered, I’d love to hear about them in the discussion thread below.

Productivity
Agile
Scrum
Teamwork
Leadership
Recommended from ReadMedium