[#]: collector: (lujun9972)
[#]: translator: ( )
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: subject: (6 steps to optimize software delivery with value stream mapping)
[#]: via: (https://opensource.com/article/18/12/optimizing-delivery-value-stream-mapping)
[#]: author: (Dominika Bula https://opensource.com/users/dominika)

6 steps to optimize software delivery with value stream mapping
======
Learn how VSM can help you streamline processes, boost efficiency, and better meet customer expectations.
![](https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/checklist_hands_team_collaboration.png?itok=u82QepPk)

Do your efforts to improve software development fall short due to confusion and too much debate? Does your organization have a clear picture of what is achievable, and are you sure you’re moving in the right direction? Can you determine how much business value you've delivered so far? Are the bottlenecks in your process known? Do you know how to optimize your current process?

If you are looking for a tool that will help you answer these questions, consider integrating [value stream mapping][1] and [lean concepts][2] into the way you deliver software.

### What is value stream mapping (VSM)?

Popularized in the ‘90s by James Womack and Daniel Jones, value stream mapping is a lean enterprise technique that is currently used by many organizations. In short, the value stream is the sequence of activities that are performed by the organization to deliver customer requests. Value stream mapping helps determine what is valuable and what doesn’t bring value by identifying activities that matter to your customer. The ultimate benefit of using VSM is a better understanding of how to improve your current development process to generate more value and impact.

### 6 steps to optimizing software delivery

  1. **Select the process**

Any process can be modeled as a sequence of activities. For example, a [system development life cycle][3] is a value stream consisting of product specification, design, development, deployment, operation and maintenance, and finally, disposition. In this example, product design can be viewed as a value stream segment.

  2. **Identify the parties involved in the project**

Select a project sponsor and team. Keep in mind that each area of the process should be represented. Holistic thinking helps identify and set expectations, which in turn reduces resistance to change.

  3. **Create the current state map**

Creating the current state map helps establish a better understanding of how work is currently done. Documenting your current process is key to success at this stage. The goal is to identify the specific items that flow through your value stream.

  4. **Challenge the current thinking**

Make sure that what you are doing adds value—if there are actions in your process that do not add value, stop doing them. Look at the [software development waste types][2] for ideas. Mary Poppendieck and Tom Poppendieck identify these and transfer them from manufacturing to software engineering in their book, [Lean Software Development: An Agile Toolkit][4]. The waste types are:

  * Partially done work
  * Extra processes
  * Extra features
  * Task switching
  * Waiting
  * Motion
  * Defects
  * Management activities


  5. **Generate the future state map and execute improvements**

Think of what can be done to reduce or ideally eliminate the identified wastes.

While working on the future state map, follow the principle that humans should do only what they can do best, and the rest should be [automated][5]. The future state design should aim to eliminate hands-on work and deliver completed software projects in less time with higher quality.

Talk about the changes, let people ask questions—this will help reduce resistance to change. As you start executing improvements, remember that value stream mapping is an evolutionary process, and you might need to adjust the original plan. The value stream should be continuously improved; it will not be perfect the first time.

  6. ****Measure benefits****

Karen Martin and Mike Osterling identify key performance metrics for software delivery in their book, [Value Stream Mapping][6]:

  * Total lead time: the total time it takes to deliver on a customer request

  * Total process time: the total work effort required by all functions on the timeline critical path of the value stream

  * Activity ratio: the degree of flow in the value stream

  * Compounded effect: the quality of output across the value stream


Well-executed value stream mapping not only improves the way work gets delivered, but it also provides a transformational opportunity for your organization and a tool to facilitate a shift in mindsets and behaviors.

### What to read next

--------------------------------------------------------------------------------

via: https://opensource.com/article/18/12/optimizing-delivery-value-stream-mapping

作者：[Dominika Bula][a]
选题：[lujun9972][b]
译者：[译者ID](https://github.com/译者ID)
校对：[校对者ID](https://github.com/校对者ID)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出

[a]: https://opensource.com/users/dominika
[b]: https://github.com/lujun9972
[1]: https://en.wikipedia.org/wiki/Value_stream_mapping
[2]: https://en.wikipedia.org/wiki/Lean_software_development
[3]: https://en.wikipedia.org/wiki/Systems_development_life_cycle
[4]: https://www.oreilly.com/library/view/lean-software-development/0321150783/
[5]: https://xkcd.com/1205/
[6]: https://mhebooklibrary.com/doi/book/10.1036/9780071828949
