Value Stream Mapping for Software Development

 Part 2: Future State

December 1, 2022
By Darren Dolcemascolo

Last month, we talked about Current State Value Stream Mapping.  This month we will talk about the steps to creating a future state map, which can be considered a blueprint for improvement. 

After mapping the current state with your team, have your team brainstorm wastes observed in the current state.  You can use the 7 wastes/8 wastes framework as a guide.  The team should be identifying specific instances of waste.  In many cases a specific instance of waste may fall into multiple of the 7/8 categories of wastes.  That is completely normal.  Categorizing the waste is not what it imporant- rather, identifying the waste is.

 Here are 4 basic questions to consider as you map your future state value stream:

1.What is our takt time or service level? How often will performance to takt time / service level be checked?  Takt time is the rate or cadence at which we need to produce a product or provide a service to meet customer demand.  For example, if we need to output 1 feature per day, our takt time would be 1 day or perhaps our working time in 1 day.  (e.g., 7 hours or 420 minutes)  The next part of this question is how do we monitor performance to this takt time? We may want to track our status multiple times per day.  For example, we will check our performance to takt time twice per day to see if we have made as much progress as planned.  Are we ahead or behind?  If we are behind, we can make adjustments and begin identifying what is causing us to be behind. 

2. How do we connect the flow between steps?  In a value stream map, we typically have many handoffs.  How do we control the flow of work between these handoffs (or eliminate the handoffs altogether)?  Are there opportunities to standardize work to help us create flow?  Can/should we dedicate resources to specific tasks? If one person can handle multiple sequential tasks that previously were done across multiple functions, delays are eliminated. Can one person be cross-trained to perform several sequential tasks?  Very often, in knowledge work and any administrative work, creating flow and eliminating delays can be achieved through the reduction of handoffs.  If one person can perform multiple sequential tasks this can eliminate the waiting time that was previously between steps.

3.How will we level the workload? Leveling the workload to create a consistency in output every day is very important to achieve.  Examine the way the current state works.  Are there waves of work?  Unevenness in output?  We want to achieve a consistency by creating a regular cadence according to takt time?  Try to work in the smallest increments/batch sizes possible.

4.What process improvements are necessary to achieve the future state?  In order to create a level value stream with connected flow between the steps while meeting takt time, we typically need to make specific, targeted improvements.  Some of the tools we might use for improvement include creating standard or standardized work, Kanban systems, creating workcells, mistake proofing or poka yoke, set based concurrent engineering approaches, and visual management/metrics. 

After your team has brainstormed and discussed the right approach, draw your future state map and create a plan to achieve it.  Below is an example of a current and future state map based on a real-life case; the client was able to reduce Turnaround Time by about 50%.  We cover this case in detail as part of our Lean Software Development Certificate program. 




Click here to subscribe to our free e-newsletter Learning to Lean and receive up to three articles like this one each month.