Originally published on DevOps.com
A well-known failure mode for business process automation is to automate a broken process. The same goes for tooling up Value Stream Management (VSM). If you have an overly complex value stream, immobilized with dependencies; a clumsy way to move work from ideation to engineering; or disagreements over who has power over the plan, then trying to tool up your value stream, to make it visible, is a waste of time and money.
First, form engineering teams capable of delivering business value, and form program or product owner teams to feed backlog to those engineering teams. You may need a portfolio or strategy team to set prioritization across all of the programs. If you must matrix manage your teams, ensure that the business, not engineering, is the strong side of the matrix.
Such an engineering team should be able to take a chunk of business value, a small epic, and develop, test, and deliver it with very few if any dependencies on other teams. How you define business value in this case should be very close to how the customer would define value. It’s okay to have some component teams or service teams provide value to multiple other teams, but organize to have few of those because dependencies kill agile.
Done well, your portfolio team can have a kanban of epics in which the status of those epics is clear, instead of complicated. This is because there are few teams involved in building those epics. The portfolio team will be able to see epics move frequently… they should all slide over a column every month or three. You don’t need a sophisticated value stream management console because it’s so simple. Whatever tool they have their epics in will most likely have a cumulative flow diagram (CFD) and info on Lead Time, Flow Time, and Cycle Time for the epics. That’s the level at which they need to manage, and all the info they need is (more often) able to be in a single tool.
It’s the same all the way down: at the program and delivery team level as well. When features map to sprint goals and when velocity is stable and dependencies are few, each engineering team can understand their own process. They can manage their own value stream with whatever simple tool they happen to be using at that level.
To achieve higher levels of velocity, agility and predictability, companies need to connect people, process and tools effectively. Integration has its place, even in messed up situations. It can be a useful tactic to help deal with a complex and hard to understand value stream, but integration and value stream management platforms will not automatically fix your situation. That’s because value stream management is human.
Be realistic. Be human.
ConnectALL — The pragmatic value stream management company.
Andrew Fuqua is the ConnectALL SVP of Products. He joined ConnectALL after a long-standing career as an Enterprise Transformation Consultant. Andrew has an extensive career of 30 plus years of varied experience — held positions in consulting, management, product management, and development. Andrew is an active contributor to the Agile community, an established speaker, influencer and a published author.