Time-boxed Value Stream

For large organizations, projects are often characterized of being:

  • Involve people from various departments with separate reporting structure.
  • Involve contractors from multiple vendors.
  • Introduce technology which is unfamiliar to the employees.
  • General disagreement or even lack of appreciation of the project approach.
  • Multiple chiefs and puzzled doers.
  • Software development is sub-component of the project.

Scrum advocates transparency by making the Definition of Done (DoD) agreed on and shared with all groups. The Value Stream (VS) represents the end-to-end trip for transforming the input into a valued outcome. The client request is “Done” when the VS reaches exit state, for example passed client acceptance test. This exit state can differ based on the request on hand and accordingly we break-down the DoD according to request type. In other-words, we should have multiple VS to be able to address each request type.

Back to large organizations, the construction and implementation of VS can serve to address the issues above by:

  • increasing appreciation among doers from different groups,
  • providing management visibility to how value is created,
  • increasing respect as people began to realize the importance of others in creating value, and
  • improving craftsmanship as each participant in every step would require continuous training.

The VS in Scrum should be continuously improved using retrospective as the forum. This very activity improves collaboration. Having the doers improving the VS amplifies self-organization and can encourage people to accept doing work for other process steps. This possibly can improve how team sign-off on tasks instead of being assigned to it by authority figure.

Between start and end of the sprint the value is generated and the VS provides insights on the process mechanics. Management and people involvement are enhanced and trust is built.

For VS which can take multiple sprints we could increase the sprint length or iterate. Iterate means apply the value stream on a sub-set of the request which provides essential value to the client while keep improving the fidelity of the produced value during future sprints. This takes us back to requirement decomposition and slicing so that we can implement the whole VS within the sprint time-box.

Enriching the previous understanding in large organizations can be challenging because we need to align the slices with business needs so that management can appreciate and therefore support the project. For me this is critical to the success of Scrum implementation.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s