Value Stream Management: Navigating the Stream of Continuous Delivery”
Introduction to Value Stream Management (VSM)
Objectives and Benefits of VSM
VSM seeks to improve organizational performance by optimizing the flow of value to the customer. It relies on the principle that customers who receive the things they want and need when they want them will be loyal and refer their contacts to the product or service provided.
There is a duality in VSM between flow and realization:
FLOW is the journey of work from idea to value realization
REALIZATION is the fulfillment of desired outcomes for customer experience
VSM makes it possible to:
Know how long it takes for customers to receive valuable experiences
Trace work through the DevOps toolchain and access meaningful data
Gain insights into how to accelerate that flow and see improvements
Have insight-driven conversations and make insights-based decisions
Collaborate on the end-to-end product or service lifecycle
Estimate and measure the value delivered from the work done
The key principle of VSM is that if we can satisfy customer demand for value outcomes at optimum speed, their delight results in the consumption of the product and services and referrals that lead to organizational success. Harnessing VSM enables businesses to outcompete.
How VSM Works: An Overview
- Architecting and building DevOps toolchains that document and record the flow of work from ideation to value realization
- Connecting these toolchains end-to-end so that work can be traced from the moment it’s conceived until its end-of-life; products are long-lived, the impact of enhancements must be measured over time
- Using insights-driven platforms to find where flow improvements can be made and to measure the impact of optimization experiments through continuous inspection and adaptation
Key Terms in VSM
Business Value: In management, an informal term that includes all forms of value that determine the health and well-being of the firm in the long run.
Change Lead Time: A measure of the time from a request for a change to the delivery of the change.
Continuous Delivery Pipeline: A continuous delivery pipeline refers to the series of processes that are performed on product changes in stages. A change is injected at the beginning of the pipeline. A change may be new versions of code, data, or images for applications. Each stage processes the artifacts resulting from the prior stage. The last stage results in deployment to production.
Continuous Delivery Pipeline Stage: Each process in a continuous delivery pipeline. These are not standard. Examples are Design: determine implementation changes; Creation: implement an unintegrated version of design changes; Integration: merge.
Continuous Flow: Smoothly moving people or products from the first step of a process to the last with minimal (or no) buffers between steps.
Current State Map: A form of value stream map that helps you identify how the current process works and where the disconnects are.
Cycle Time: A measure of the time from the start of work to ready for delivery.
Deming Cycle: A four-stage cycle for process management, attributed to W. Edwards Deming. Also called Plan-Do-Check-Act (PDCA).
DevOps Toolchain: The tools needed to support a DevOps continuous development and delivery cycle from idea to value realization.
Digital Transformation: The adoption of digital technology by a company to improve business processes, value for customers, and innovation.
Flow: How people, products, or information move through a process.
Future State Map: A form of value stream map that helps you develop and communicate what the target end state should look like and how to tackle the necessary changes.
Hand Offs: The procedure for transferring the responsibility of a particular task from one individual or team to another.
Hypothesis Backlog: A collection of requirements expressed as experiments.
Insights-Driven: An insight-driven organization embeds analysis, data, and reasoning into the decision-making process, every day.
Key Performance Indicator (KPI): Key performance indicators are the critical indicators of progress toward an intended result, providing a focus for improvement, and on what matters most.
Lean: Production philosophy that focuses on reducing waste and improving the flow of processes to improve overall customer value.
Lean Enterprise: An organization that strategically applies the key ideas behind lean production across the enterprise.
Lean IT: Applying the key ideas behind lean production to the development and management of IT products and services.
Metric: Something that is measured and reported upon to help manage a process, IT service, or activity.
Objectives and Key Results (OKRs): Objectives and key results is a goal-setting framework used by individuals, teams, and organizations to define measurable goals and track their outcomes.
Organization Model: For DevOps and VSM, an approach that is not a dominator hierarchy but instead a Distributed Autonomous Organization (DAO).
Outcome: Intended or actual results.
Outcome Mapping: A methodology for planning, monitoring, and evaluating development initiatives in order to bring about sustainable change.
Processing Time: The period during which one or more inputs are transformed into a finished product by a manufacturing or development procedure.
Project to Product: Changing ways of working from a large batch, waterfall project led approach, to a small batch, agile product (or value stream) approach.
Stream-Aligned Team: A team aligned to a single, valuable stream of work; this might be a single product or service, a single user story, or a single user persona.
The Three Pillars of Empiricism: Three pillars uphold every implementation of empirical process control: transparency, inspection, and adaptation.
Theory of Constraints: Methodology for identifying the most important limiting factor (i.e., constraint) that stands in the way of achieving a goal and then systematically improving that constraint until it is no longer the limiting factor.
Time to Insight Actioned: The time between having an idea, delivering it to the customer, learning, and actioning the insight from that learning.
Time to Learning: The time between conceiving an idea and learning how it was received based on customer feedback.
Time to Market: The period of time between when an idea is conceived and when it is available to customers.
Time to Value: The measure of the time it takes for the business to realize value from a feature or service.
Touch Time: In a lean production system the touch time is the time that the product is actually being worked on, and value is being added.
Value Stream: All of the activities needed to go from a customer request to a delivered product or service.
Value Stream Map: Visually depicts the end-to-end flow of activities from the initial request to value creation for the customer.
Value Stream Mapping: A lean tool that depicts the flow of information, materials, and work across functional silos with an emphasis on quantifying waste, including time and quality.
Value Stream Management Platform: Software that manages value streams.
Wait Time: The amount of time wasted on waiting for work (e.g., waiting for development and test infrastructure, waiting for resources, waiting for management approval).
Waste: Any activity that does not add value to a process, product, or service.
Work in Progress (WIP): Any work that has been started but has not been completed.
Key Concepts in VSM
Once the value stream’s current state is mapped and the team starts imagining the future state, the real value kicks in as the long-term vision sparks into life and the team builds a hypothesis backlog of the incremental steps that will take them there. But monitoring progress is hard. It can’t mean frequent, people-intensive exercises that take people away from their daily work for extended periods of time. Value stream data needs to be available in real-time, all the time. Providing teams with tools that move from data to insights saves them more time, time that they can spend on working on new capabilities that deliver more customer value.
Teams must be able to see where they are expending their effort on:
Creating value-adding experiences for customers
Improving the delivery system for customers
The End-to-End Value Stream
It’s more helpful to think of the value stream as a continuous cycle than a linear set of processes. A value stream starts with ideation and completes, or renews itself, when the value is realized in the hands of the customers. A digital value stream can be divided into five parts at a high level:
Work is recorded in portfolio and product backlog tools here. The primary goals are to ensure new work initiatives align with the organizational purpose and vision, to break the work down into small pieces, refine and prioritize it in line with customer feedback. Collectively, the industry hasn’t done a great job of connecting this planning part of the value stream to the rest of it; this changes with value stream management as we make the work items traceable from the moment they are conceived and recorded.
Here, the idea is brought to life in the software. It’s built in the IDE, probably using artifacts from a repository or new ones that are placed in the repository. Key DevOps principles come into play here. Firstly, version control which provides the single source of truth for the teams. VSM’s priority is to accelerate and optimize value delivery speed. Defects interrupt flow so anything that eliminates waste like delays caused by errors is part of VSM. Similarly, trunk-based development is designed to continually integrate, build and test software so that ‘merge hell’ is avoided and issues are picked up and remedied at the earliest opportunity in the cycle (the later they go, the harder, slower, and more expensive they are to fix).
Continuous integration by definition includes unit, integration, and user acceptance testing but there are non-functional tests (NFTs) to consider before we are ready for delivery too, such as performance and security. Additionally, many teams and organizations have complex route-to-live with many and shared environments which require extra care to manage system and team inter-dependencies, something VSM excels at.
In an ideal world, our small, autonomous piece of code passes its tests and is automatically deployed to live and available to customers. In most organizations, transitioning from waterfall and project-based ways of working to agile and DevOps ways of working, dependencies mean releases need to be coordinated across teams and checklists need to be completed. VSM manages all of this and records how long it takes so teams can identify where they can automate, change ways of working, and system architectures to reduce the time it takes to complete this non-value adding activity.
Finally, the new code or feature is available to customers. But work doesn’t stop here. Now it’s time to go back to the user stories in the backlog, ideally written as experiments with an outcome hypothesis. What the teams need is feedback, explicit or data/insights based that tells them how the change has impacted customer experience and how this informs their choices about what to do next. Their decisions, assuming they aren’t ‘do nothing more’ feed into the ideation cycle and round we go again.