Plutora Blog - Digital Transformation, Release Management, Value Stream Management
What is Value Stream Management and Why it’s so ImportantReading time 17 minutes
Software delivery is only becoming more complex. At the same time, it continues to be ever more important, as it is a necessary core competency for organizations across industries, no matter their product or service. Organizations can’t stop at simply becoming a software company, they need to be a high performing one. And taking on this challenge can be complicated. This is because today’s CIOs have a mandate to create more business value with fewer resources. However, too often, the headlong pursuit of higher productivity in software delivery leads to well-intentioned initiatives that ultimately fall short of their goals. It is not a small task to align business objectives with IT work, accelerate the software delivery process, and improve software quality. In many ways, it is still uncharted territory. For example, it is still a struggle just to measure improvement on the DevOps journey. Without a clear roadmap for achieving these gains, many organizations’ software delivery factories become chaotic and pressure-filled.
That’s where value stream management comes in. Value streams are everything in the software delivery lifecycle (SDLC) from idea to production needed to deliver software products or services to customers. Focusing on value streams makes the value delivered to the customer the cornerstone of software product development. After all, software products and services that delight customers are what fuel the growth of organizations today. But to manage value streams, organizations need to first gain end-to-end visibility and control of the multiple, interconnected value streams throughout their portfolio. This type of management has several objectives that can be achieved with the right solutions:
- Break down operational silos by connecting multiple processes, teams, and tools
- Leverage real-time metrics
- Enable cross-team collaboration
- Ensure governance is embedded into SDLC processes
- Coordinate and automate workflows.
Together, value stream management enables organizations to deliver higher quality software faster to their customers while reducing risk.
Systematically improve your digital transformation journey while scaling Agile and DevOps across the enterprise.Learn More
Being a high performing software company is more than the tools put in place. While standing up a CICD (continuous integration / continuous delivery) pipeline is essential, this infrastructure only creates the potential for a strong software delivery process and superior DevOps performance. What delivers on that potential is having a strong, customer-centric product development cycle that seamlessly brings together the efforts of product owners, release or development managers, risk and compliance teams, as well as engineering teams. When done well, a strong end-to-end SDLC enables organizations to continuously improve and become a great software company.
But how do you know if your software delivery factory is efficiently delivering value to your customer? Is it moving in the right direction? How can you improve it? Many digital transformations fail or stall because they can’t answer these questions.
They either can’t measure anything, and so can’t identify how to improve, or they simply can’t align software development and delivery efforts with business strategy. The practice of value stream management is meant to answer these questions and help to overcome these common pitfalls. Value stream management involves taking a look at all the steps in the software delivery process from idea to production – the value stream – and then identifying silos, bottlenecks, and other inefficiencies in the flow of work to the customer receiving the product. With this information and perspective, enterprises can start to systematically optimize their software delivery processes and realize their digital transformation goals.
What is a software value stream
A software value stream includes every activity – from idea to production – needed to deliver software products or services to customers. Ultimately the value of software products is determined by the customer. Software products or services that continually deliver value to customers will, in turn, drive business value. To optimize the return on investment and the ability to delight customers, each step in the value stream should be creating “value” in the customer-centric definition of the term. This means that as an idea moves into development, through the build process and into testing, it must be increasing value to the customer until it’s finally delivered. Then, if you’ve done it right, the full value of the effort is realized. However, because software development and delivery is complex in large organizations, it can be difficult to map the value stream from end-to-end. Or to even know what your value streams are.
Built on the lean manufacturing principles that revolutionized productivity in manufacturing in the latter half of the 20th century, value stream management brings lean thinking to software development. If an organization manages software delivery in terms of value streams, it can identify what steps are value-adding, and which create waste to begin to optimize the flow of work through the value stream. This includes where there are delays, where there are more defects and rework being created, and insights into how to remove that waste. That’s why you begin with a current state value stream map. A value stream map enumerates every step of the software value stream. Because it has often not previously been documented, value stream mapping begins by bringing stakeholders from across the value stream into one session to capture all the activities and handoffs in the software delivery process.
How value stream-thinking builds on current ways of working
Once you have created your value stream map you can begin to work with your software development and delivery workflow from end-to-end. Whatever your organization’s goals are, achieving them requires the optimization of the value stream. Product quality, implementing DevOps, executing SAFe, even increasing release velocity, all require an optimization of value streams to succeed. Process improvement begins with measuring where you are and identifying opportunities to work toward where you want to go. Without looking at the entire value stream, you will have incomplete data. You will have to rely on proxy metrics to understand what’s going on, such as story point velocity, and not be able to directly improve on what’s holding you back from becoming a high performing software organization.
What is value stream management
Three key organizational characteristics drive the need for value stream management.
- Most organizations are complex and made up of many value streams that often interact with each other. This creates dependencies on things like shared services and resources.
- Digital transformation and disruption are driving a transition from waterfall to agile ways of working. As part of this we are continuously searching for improvement opportunities that require us to be able to easily measure and gain insights from what we are doing.
- Governance guides us to do the right things and make them auditable, and as regulations continue to increase, so does the cost of compliance.
Value Stream Management:
• Is the process and automation that enables people to manage dependencies across a complex organization
• Provides insights into how to break those dependencies to optimize flow
• Supports the transition to agile ways of working
• Enables automated, continuous compliance and auditability
For value stream management to work, an organization has to invest across people, process and tools so it’s imperative that these investments are justified. Value stream management enables teams to be truly data-driven. It drives value stream thinking which seeks to optimize the flow of work from idea to value realization, accelerating the time to value. Value stream thinking aims to put valuable improvements into customers’ hands as fast as possible. Optimizing the value streams (including their associated products or services) that teams are working with also means an organization can realize value outcomes as early as possible.
Value stream management platforms (VSMPs) provide a way to monitor and measure team and organizational progress and improvements over extended periods of time. By automating these metrics for every team and providing insights into where bottlenecks are and where waste is, these platforms guide interventions for improvement. To achieve this, they integrate with DevOps toolchains to provide traceability of Product Backlog Items from idea to value realization, allowing for the calculation of cycle time or value flow.
Implementing a VSMP will provide organizations with real-time visibility into their value stream that they can leverage for continuous inspection. It also means that leadership has an organization-wide performance heat map to help them direct their efforts to support discovery and improvement in teams.
As organizations continue to transition from a waterfall, silo-based working model to one built on autonomous teams delivering value incrementally, a key change is needed to financial models. As people focus on their product or value stream, project-based funding ceases to make sense. This requires more than a change in technology because technology teams have traditionally been order takers, and the purse strings held by ‘the business’.
However, as teams become autonomous and use VSMPs to measure their value stream, the funding model can be shifted. With VSMPs, the teams are able to measure both their cost of operating and the value that they are creating. The ratio of cost to value is essentially a profit and loss (P&L) for each team. This real-time, decentralized P&L information can drive the conversation around changing funding models to more agile ones, such as capacity-based-funding models.
Value stream management is the next evolution in software development
Value stream management is all about delighting customers by delivering software products that create value for them. Value stream management achieves this through a systemic approach to software product development that makes becoming a software juggernaut accessible to any organization. The complete view of the value stream captures every aspect of the software delivery process. This gives value stream managers, release managers, DevOps managers, product managers, and leadership the problem-solving tools necessary to continuously improve software development.
Forrester defines value stream management as “A combination of people, process, and technology that maps, optimizes, visualizes, and governs business value flow (including epics, stories, work items) through heterogeneous enterprise software delivery pipelines. Value stream management tools are the technology underpinnings of the VSM practice.” – Elevate Agile-Plus-DevOps with Value Stream Management, Forrester Research
Value stream management platforms operate with an integration model that converges toolchains into a common data model that delivers end-to-end visibility and traceability across the value stream. Enterprises no longer need to translate data from one tool to another in a spreadsheet to understand what is going on in the system as a whole. Instead, the deep insights that come from analyzing a wide and diverse data set using the same terms are now accessible, allowing organizations to make data-driven decisions and to innovate faster.
Measuring work flowing through value streams
To manage value streams from end-to-end, operational silos between tools and teams must first be broken down. By converging toolchains throughout the portfolio with value stream management platforms, teams can view the flow of work across the organization in real-time. This unlocks the ability not only to measure what is in the value streams now, but how they got there, and trends over time. This can swing engineering and product teams from having little to no insight into their processes to an overwhelming amount of real-time performance metrics. Value stream management platforms make this navigable through business intelligence features that allow teams to focus on the most important metrics and track them in real-time.
Teams start by working with the DevOps metrics that capture the throughput and stability of their value streams. These metrics are used as indicators of the health of your value stream and how it is changing over time. Here are the four key DevOps metrics as defined by the Accelerate State of DevOps Report.
- Deployment frequency – How often code is deployed to production in a team’s value stream
- Lead time – How long it takes from code committed to code successfully running in production for the team’s value stream
- Mean time to repair – How long it takes to restore service when a service incident or a defect that impacts users occurs (e.g., unplanned outage or service impairment) within the team’s value stream
- Change fail rate – The percentage of changes to production that result in degraded service (e.g., lead to service outage) and subsequently require remediation (e.g., require a hotfix, rollback, etc) within the team’s value stream
After incorporating the DevOps metrics into your processes, you can begin to integrate flow metrics. These metrics build on the concept of the flow item to provide insight into what is happening within the value stream itself. A flow item is a unit of work that matters to the business: feature, defect, risk, or debt.
There are six Value Stream Flow Metrics, each looking at a different aspect of your value stream. Together they evaluate how work flows through your value stream so you can understand how your planning, release and investment decisions are improving and protecting your value delivery and how you are progressing on your DevOps journey. The Value Stream Metrics, as defined by Gartner in “Analyze Value Stream Metrics to Optimize DevOps Delivery” include:
- Flow Velocity – Flow Velocity is the number of Flow Items of each type completed over a particular period of time – also referred to as throughput and indicates whether value delivery is accelerating
- Flow Distribution – Flow Distribution measures the ratio of the four Flow Items completed over a particular window of time. This helps prioritize specific types of work during specific time frames to meet the desired business outcome.
- Flow Time – Flow Time measures the time it takes for Flow Items to go from ‘work start’ to ‘work complete’, including both active and wait times, and can identify when the time to value or cycle time is getting longer.
- Flow Efficiency – Flow Efficiency is the ratio of active time vs. wait time out of the total Flow Time. It can help identify when waste is increasing or decreasing in your processes.
- Flow Load – Flow Load measures the number of Flow Items currently in progress (active or waiting) within a particular value stream. This monitors over and under-utilization of value streams, which can lead to reduced productivity.
As you decrease your cycle time and lead time, your throughput will begin to increase. But how do you know you’re improving your value stream and not just forcing through a release? One indicator that you’re forcing work through your value stream is your work in progress (WIP). This measures how much work is active in your value stream. There are only so many work items that your developers can work on at any given time. And beyond that threshold, queues will start to form.
When there’s too much WIP, your teams will lose efficiency by constantly having to switch context between work items. Research shows that multitaskers can experience a 40% drop in productivity. So an increase in WIP is a sign that you may be pushing more work items through your value stream than it can effectively support. That’s where flow efficiency comes in. Flow efficiency gives you the percentage of time that a work item is actively being worked on during development. If you try to increase your throughput without increasing your flow efficiency, you’ll end up increasing your WIP. And that will end up increasing your time to value, not shortening it. Improving your flow efficiency allows you to increase your throughput by eliminating the times that work items wait for the next team member to work on them.
But even if you’re not forcing through too many work items in a release, you may be trying to deliver more features in a release than is sustainable. That’s why the Value Stream Flow Metrics break work down into two functional and two nonfunctional categories. With the work breakdown you’re able to see if a release only includes features and is not addressing defects, technical debt, or managing risk.
If you see one month you’ve only delivered features, it’s a safe bet that next month you will have to deliver mostly defects. Again, a healthy value stream is a sustainable one, and you want to find a balance of the four types of work items (features, defects, risk, and technical debt) so you can be consistent every release.
Value stream governance and workflow automation and orchestration
Value stream management is much more than metrics. To be able to continually deliver software products and services that delight your customers, you need to act on business intelligence insights and implement improvements while managing risk. Value stream management platforms take advantage of the converged toolchain and unified value stream to empower development teams to do just that.
Automating governance and enabling continuous compliance
With converged toolchains, value stream management platforms can provide managers the ability to embed governance into the existing SDLC. This means that governance checklists adapt to the SDLC and become automated using existing tools. For example, value stream management will ensure that testing and stakeholder reviews are completed and passed before continuing through the SDLC. This elevates software delivery into a state of continuous compliance as everyone involved will automatically adhere to the governance requirements defined in the value stream management platform.
Redefining what’s possible in release planning and orchestration
Release management is too often bogged down with spreadsheets that need to be manually updated to capture the state of a release. Spending all day tracking down data points does not help create value for customers. Instead, with value stream management platforms, release managers are able to access the state of work within and across value streams in real-time. This allows release managers to put their effort towards improving the value stream through release planning and scoping, assessing release risk, and improving the efficiency of the SDLC through automation and efficient orchestration.
Streamlining test environment management
Again, value stream management is all about being able to better deliver value to the customers. This means eliminating waste throughout the SDLC, including test environment management. Test environment managers constantly receive booking requests for specifically configured environments. Instead of using their time to handle these requests and discover conflicts, value stream management platforms centralize booking requests and test environment scheduling automatically. This allows test environment managers to focus on generating value in the SDLC by creating and configuring test environments instead of sorting through hundreds or thousands of requests.
Value stream management enables continuous improvement
Above all, value stream management empowers teams to continuously improve their software delivery factories to be able to deliver more value to their customers. This includes being able to incrementally increase product quality and process improvement with every sprint. Through executive level insights and actionable real-time visibility, value stream management platforms, like Plutora, deliver the detailed knowledge needed to fuel data-driven decision making that will improve business outcomes. It is with value stream management that large organizations are finally being able to realize the promised Agile + DevOps performance they’ve been seeking.
Get Started with value stream management
It’s easy for organizations to get started with value stream management. It begins by creating a value stream map, identifying the desired business outcomes, and implementing a value stream management platform. The implementation process is straightforward as value stream management platforms like Plutora integrate directly with your existing tools. As a founding member of the Value Stream Management Consortium, Plutora is committed to helping businesses to deliver more value to their customers.
Learn more about getting started with value stream management in our ebook: Mastering Software Delivery with Value Stream Management; or read our comprehensive guide to Value Stream Management, featuring key essentials, core challenges, and tips from the experts.