How can software development teams utilise Agile metrics?
There’s an old adage: ‘What gets measured gets done.’
Even so, metrics are a contentious subject in Agile software delivery, with some Agile practitioners contending that Agile metrics are a bad thing. They argue that, at best, Agile metrics can be gamed and manipulated by teams and, at worst, may instil a negative culture of ‘Big Brother ‘-ness, which can be detrimental to Agile team wellbeing.
However, this negative view of Agile metrics is very much on the decline – with most more mature Agile DevOps organisations recognising the core role that Agile metrics play if carefully selected and therefore adopted enthusiastically by Agile teams.
So what are the Top 5 Agile metrics that engage both teams and managers alike and avoid the pitfalls outlined above?
Criteria for choosing our Top 5 Agile metrics
We have chosen the following criteria to select our Top 5 Agile metrics:
- Firstly and most importantly, the Agile metrics were chosen to track the core underlying objective of Agile software delivery – “the early and continuous delivery of valuable software” (Agile Manifesto Principle Number 1);
- second, the metrics selected are valuable to teams and managers alike – indeed, teams must adopt Agile metrics to drive their own Agile continuous improvement (as per Principle 12 in the Manifesto);
- the metrics are meaningful when considered at the team level and when aggregated across teams;
- and finally, the Agile metrics are simple to understand and if tracked, very quickly drive significant improvement in Agile software delivery effectiveness.
Our Top 5 Agile metrics
In no particular order, here are our Top 5 Agile metrics that make an immediate impact on your Agile software delivery.
Cycle Time is a basic measure of your organisation’s Agility in that it measures your velocity, or the time taken to develop an increment of software. Unlike the more comprehensive Agile metric of Lead Time (which measures the length of the entire end-to-end delivery process), Cycle Time is easier to measure as it looks only at the time taken (within a scrum team) to take a Ticket from the backlog, code and test that Ticket – in preparation for integration and deployment to live.
As per Figure 2 below, the Cycle Time metric view allows teams to understand the time spent on each Ticket status within the development cycle. Analytics tools that offer to filter enable analysis by Status, Issue Type, or Epic (and any other standard or custom Ticket field), all plotted over any time range required.
Deployment Frequency is another fundamental measure of an organisation’s agility (when viewed alongside the other critical metrics described here).
A core objective of Agile delivery is the ability to develop and deploy live small software increments rapidly. Deployment Frequency is an Agile metric that tracks that base competence and is a powerful Agile metric around which to focus effort at all levels in the delivery organisation at the early stages of an Agile transformation.
Delivered Story Points
Delivered Story Points is often considered a problematic Agile metric due to the potential inconsistencies in the calculation of story points and how much effort they represent. However, as a basic measure of output and how that is changing over time, it is a powerful Agile metric around which to align.
There may be concerns about teams ‘gaming’ the metric with story point inflation, but as with all Agile metrics, they should be viewed in context by experienced folks who know the teams well. If this is the case, they can still give an excellent view of how the delivery organisation is progressing over time.
Escaped Defects is a simple but effective Agile metric of overall software delivery quality. It can be tracked in several ways, but most involve tracking defects by criticality/priority, as per the example below.
When these four simple Agile delivery metrics are viewed together, the Agile DevOps practitioner can get a well-balanced view of how their Agile DevOps maturity is progressing.
Importantly, the Agile metrics can be tracked over time, making sure that an improvement in one metric (e.g. Cycle Time) does not lead to a detrimental effect on another metric (e.g. Escaped Defects).
In addition, the relationship between Cycle Time and Deployment Frequency can be closely watched. Very often, teams can reduce their Cycle Time, but this does not translate into quicker value delivery due to bottlenecks in the integration and deployment process.
Our final Agile metric in our Top 5 is Flow Efficiency. Flow Efficiency looks at the proportion of time Tickets spend in an ‘active’ versus ‘inactive’ status) and is a great Agile metric for teams.
The Flow Efficiency analysis (see Figure 7 below) enables Team Leads to isolate and analyse each ‘inactive’ status in the workflow and consider if there is scope to reduce or eliminate it. The analysis shows the relative size of each ‘inactive’ status opportunity in terms of time spent in the inactive state and the volume of Tickets affected.
Typical opportunities to remove inactive bottlenecks include time spent with Tickets awaiting definition (e.g. Sizing) and Tickets awaiting QA. Where waits for QA are considered excessive, Delivery Managers can reconsider QA resource allocation regarding individual teams.
Plandek works by mining data from toolsets used by delivery teams (such as Jira, Git, CI/CD tools and Slack) to provide end-to-end delivery metrics/analytics to optimise software delivery predictability, risk management and process improvement.
Plandek is a global leader in this fast-growing field, recognised by Gartner as a top nine global vendor in their DevOps Value Stream Management Market Guide (published in Sept 2020).
Plandek is based in London and works with clients globally to apply predictive data analytics and machine learning to deliver software more effectively.