Organization complexity is a waste farm
When people are pooled in specialized silos more process is required to get things done. Responsibility gets diffused and transaction and coordination costs go up because there are more handovers and sign-offs as work is passed around; more meetings are needed to keep people involved and informed, and it’s more difficult to gather people together; it’s more time consuming to chase people for responses. Work is stop-start. There’s little flow and lots of waste.
This setup is a common organization design in the drive for greater efficiency. Unfortunately it’s really great at increasing operational complexity, which works against both effectiveness and efficiency. The complexity requires people to do more work that doesn’t add value and it does a bloody good job at hiding the associated costs. These costs may be greater than any savings made through improved efficiency but it’s unlikely anybody actually knows for sure one way or the other. Worse, the complicated organization structure typically gets reflected in the architectural design of the software solutions produced. Conway’s Law basically.
John Seddon points out that managing costs causes costs go up. I think companies should be simplifying organization structure by dismantling silos and removing waste. One model we’ve used successfully is to have a value stream for each product or service, which has cross-functional capability that contains everything it needs to conduct business, from concept to production to operational support. The value stream is short because the people are collocated and sit together with their business peers. Together they behave like a small company that self-organizes for optimum delivery and minimum risk in response to customer feedback. We call it a product stream and we’ve been using it over the last 6 years at various clients on large projects and programs of work. Costs reduce when there is a focus on achieving end-to-end continuous flow and predictable delivery in response to customer demand. This is because features are released once they’re completed to realize early benefits rather than build up inventory, and iterative development enables emerging features to be continuously validated with users so that money is not invested in unwanted functionality.
I think a lot of Agile transformations are just tidying the waste rather than eliminating it. The whole pursuit of Agile at scale is misguided in my opinion and is just designing new complexity. Managers are busy trying to get teams to work together better across organization boundaries when they should be organizing people better.