By Jeff Keyes, VP of Product at Plutora
You may not have heard the term value stream before, but it is becoming a critical way for software companies to continue to improve their performance. And while most businesses didn’t start out as software companies, now almost every business can count itself under this umbrella – from the smallest startup to organisations with entire data centres to their name. Demands for new software or for the latest application update are commonplace, and businesses of all sizes are finding themselves in need of a productivity boost to keep up with customer needs.
Too often, striving for higher productivity in software delivery leads to well-intentioned initiatives that ultimately fall short of their goals. However, by focusing on value streams, organisations can systematically and sustainably improve the flow of value they can deliver to their customers and reach their objectives. Let’s take a look at this in more detail.
Value stream 101
First things first, it’s important to understand exactly what a value stream is.
It includes every activity from start to finish needed to deliver software products or services to customers. And in today’s customer-centric organisations, the value of software is always determined by the customer. Software products or services that continually deliver value to customers will, in turn, drive business value.
As an idea moves into development, through the build process and into testing, it must be increasing in value to the customer until it’s finally completed. Then, if the right steps have been taken, the full value of the effort is realised. However, because software development and delivery is complex in large organisations, it can be difficult to understand the value stream from end-to-end.
If an organisation manages software delivery in terms of value streams, it can begin to identify what steps add value to the application, and which create waste. This includes any delays, any defects and rework being created, and insights into how to remove that waste.
This starts with a value stream map, which details every step of the software value stream and brings all stakeholders into one session to capture all the activities and handoffs in the software delivery process. What you’re left with is an outline of all the activities that bring value to your software pipeline, and how they interconnect.
Map in hand, teams can then work to improve the quality of their software development. Whatever your organisation’s goals are, achieving them requires optimisation of multiple value streams. This process begins with measuring where you are and identifying ways in which you can improve. But without looking at the entire value stream, you will have incomplete data, and therefore can’t make the best judgements about where to put your efforts in.
Continuous measurement allows for continuous improvement
Value stream management (VSM) is where the magic happens. To manage value streams from end-to-end, operational silos between tools and teams need to be broken down. By converging toolchains throughout the portfolio with VSM platforms, teams can view the flow of work across the organisation in real-time. This unlocks the ability not only to measure what is in the value streams now, but how they got there, and any trends over time.
To measure workflow accurately, teams start by working with the DevOps metrics that capture the throughput and stability of their value streams. There are four key DevOps metrics, as defined by the Accelerate State of DevOps Report:
- Deployment frequency – How often code is deployed to production
- Lead time – How long it takes from code being committed, to code successfully running in production
- Mean time to repair (MTTR) – How long it takes to recover normal service when an incident occurs
- Change fail rate – The percentage of changes to production that result in poor service and require remediation
Once these DevOps metrics have been incorporated, teams can then integrate value stream metrics. The standard value stream metrics are:
- Lead time – The time from the customer’s perspective that it takes to deliver a capability – from commitment to the customer request to its release to end users.
- Cycle time – The time it takes for work Items to go from ‘work start’ to ‘work complete’, and can identify when value delivery is taking longer.
- Throughput – The number of work items of each type completed over a particular period of time.
- Flow efficiency – The ratio of active time vs. wait time out of the total Flow Time, highlighting when waste is increasing or decreasing.
- Work in progress – The number of work items currently in progress within a particular value stream so that teams can recognise over- and under-utilisation of value streams.
- Work profile – The proportion of each work item type completed over a specific time. This makes it easier to prioritise specific tasks to meet strict deadlines.
Most importantly, VSM empowers teams to constantly improve their software delivery so as to deliver more value to their customers. This includes increasing product quality and process improvement with every cycle. The insights gained from these measurements enable teams to consistently see exactly which parts of their software pipeline are lagging behind the others, and can work to resolve any issues in these areas.
Executive-level insights and actionable real-time visibility from VSM platforms deliver the insightful knowledge needed to fuel data-driven decision making that will ultimately enable better business outcomes. With value stream mapping and management, large organisations are finally realising the promised Agile and DevOps performance they’ve been seeking.