Tech Focus Thu 23rd March, 2017
Flow is king in Agile Product Delivery
The concept of ‘Flow’ is both simple and deep, and the concept manifests itself in fields as diverse as Psychology, Engineering and Astrophysics. But how can we ‘see’ Flow in Agile Product Delivery?
When applied to Agile Product Delivery, Flow is revealed by the sharing of data, information and knowledge to achieve a common understanding.
One common method to achieve this is Kanban (a Japanese word for “visual signal” or “card”), which leverages the benefits of visual management. It exploits research that suggests the brain prefers a visual display over text:
- The brain processes visual information 60,000 times faster than text
- Visual information forms about 90% of the data that comes to our brains
With Kanban, an overall picture of business value is conveyed by the density and distribution of physical cards on the board, which represent business value. And the movement of physical cards across the board is what signals Flow.
Kanban fosters evolution, not revolution.
It represents three principles that avoid emotional resistance to change:
- Visualising work: Creating a visual model of work and workflow helps to visualise the flow of business value. As a result, bottlenecks, blockers and queues can be exposed to improve collaboration with learning and problem solving.
- Limit Work in Progress: If you do not limit your work-in-progress (WIP), then there is no Flow. Every piece of WIP adds backpressure to the system so that bottlenecks can be identified. If bottlenecks are not identified, how can you fix them?
- Focus on Flow: By using WIP, agreed team principles and behaviours can improve the Flow of work across the system. The challenge is to identify, visualise and manage different Flows.
Three examples of Flow
We adopted Kanban at scale with a recent client, working on an energy trading desktop application. The project was large and complex, the team was similarly large (18 talented individuals), and the whiteboard was large too.
Over the first three months of adoption, we visualised and managed three separate Flows, in response to prioritisation changes. The emergence of each separate Flow was gradual, and each one really helped the team to gain clarity around the new context.
I hope it’ll be useful to anyone interested to set out how each one worked. In the following illustrations, let’s use these colours to illustrate user stories and bugs:
Theme: Product hardening
Flow density: Multiple swim lanes
Bug/story distribution: Primarily bugs
After transitioning to Kanban, we first managed the tail end of a Product hardening period that had already lasted a few months. The Flow of work consisted of client support, feature improvements and technical debt tasks. Every day, the Product Owner tagged work items with numbers 1-4 for the team to pull in the correct order:
Stakeholders standing in front of the large whiteboard could rapidly gauge status and gather the overall context. Before this, there was no visibility of business value delivered per work stream, nor weight distribution across the different work streams. Further digital visualisation (in the form of pie charts and Cumulative Flow Diagrams) helped to efficiently manage the closure of this Product hardening period.
Theme: Expedite feature completion
Flow Density: Primarily one swim lane
Bug/story distribution: Plenty of both
After the Product hardening period, our new focus was to expedite the completion of a large feature that had been in development for a few months. To signal the urgency, we made some changes to our Kanban board:
- We assigned outstanding feature work items to the top ‘expedite’ swim lane
- We closed the tap on the other swim lanes (unless prioritisation was required).
The effect was profound. After two days, everyone understood the context of the new Flow: unless there’s a dire need to work on something else, we need to swarm to get this feature out the door ASAP.
Two weeks later, we released the feature to production – on time – to be showcased at a major European conference. Time for a celebration (and an opportunity to open the tap once again, for new work items!).
Theme: Delivery of multiple quarterly features
Flow Density: Primarily one swim lane
Colour distribution: New colour coded cards, per squad
In preparation for quarterly feature development, we reconfigured the team into separate squads, based on product domain knowledge and skills. It was expected that the majority of the work would flow through one swim lane – ‘new features’:
Early on, we identified that the queue limit column (WIP = 4) should not be a constraint for the ‘new features’ swim lane. Squads needed the flexibility to pull in work items previously prioritised by the Product Owner in the ‘’READY’ column. After much discussion, the consensus was that the Product Owner would use the queue limit column only for non-new feature swim lanes.
We also improved visualisation, by introducing new colour coded physical cards for each squad. This was critical to add clarity in two ways:
- Visualise squad Flow status for an upcoming milestone
- Help prioritise which squad was best positioned (from the perspective of Flow status, technical skills and domain knowledge) to pick up an expedited work item
Within the same Quarter, the whiteboard configuration evolved further to assigning a swim lane per squad.
Three flows, three uses
We learned from each of the Flows demonstrated above. Flow 1 (Product hardening phase) had the biggest visual impact, and the largest whiteboard distribution. It helped to efficiently convey context of business value.
Flow 2 (expedite feature completion) most clearly demonstrated the concept of Flow. By literally forcing Flow through a single swim lane we focused our effort and made a hard deadline.
Finally, Flow 3 (delivery of multiple quarterly features) showcased just how visually adaptable Kanban is – a key strength. The team was able to reconfigure the whiteboard with a swim lane per squad without impacting average cycle time.
If you too are convinced that Flow is king, I’d love to see any other Flow themes you have experienced on your boards. You can find me @elastictribe on Twitter, or the network as a whole @EqualExperts.