Flow Metrics
Google research identifies the metrics that define an Elite level of DevOps performance, and McKinsey defines how this can be measured and accelerated through a ‘Developer Velocity Index‘.
Mik Kersten, Founder and CEO of Tasktop, has encoded the learning gained from his journey and evolution as a software developer into the principle of Value Stream Networks that can be implemented and managed through Flow Metrics.
There are four Flow Metrics that measure how value flows through a product’s value stream, calculated on four Flow Items – units of work that matter to a business: features, defects, debt, and risk. Any task or effort a software delivery organization undertakes can be categorized as one of these core Flow Items:
- Flow Velocity gauges whether value delivery is accelerating also referred to as throughput.
- Flow Time measures the time it takes for Flow Items to go from ‘work start’ to ‘work complete’, including both active and wait times.
- Flow Efficiency is the ratio of active time vs. wait time out of the total Flow Time and
- Flow Load monitors the number of Flow Items currently in progress (active or waiting) within a particular value stream.
Organisations need the ability to measure the entire system – end-to-end – to understand how value flows and where it is constrained, and most importantly, to correlate those metrics with desired business outcomes. This approach allows for continuous optimisation in the pursuit of delivering greater and greater value to the organisation, faster.
They describe the central challenge and the need for a new, better approach for capturing and reporting on productivity:
“While IT frequently collects and presents an abundance of technical metrics regularly, quite often they measure the process and not the outcome. Also referred to as ‘proxy metrics’, these metrics include things like story-points delivered, commits per project, test case coverage, build success rate, release duration, and deployments per day.
Good measures of a process are helpful to monitor the performance of a specific activity, but they usually don’t help IT and business leaders optimise the system’s performance as a whole, from customer request to delivery. Furthermore, optimising something that is not the system’s bottleneck is actually inefficient and counter-productive.”