Large batches obscure your bottlenecks
July 6, 2022Are things moving slowly, but you don't know why? Reduce your batch size.
Imagine your team is having a difficult time releasing software. Perhaps your developers have written several new, high-demand features, and fixed a few bugs. But now the release is stuck in the QA phase, with daily back-and-forth as the testers find new bugs, and developers struggle to fix them (all the while trying to work on new features for the next release, too).
This was exactly the situation I found myself in when I recently started working with a new team.
Nobody on the team had a clear sense of what was wrong. In fact, they had been asking for more developers to join the team, on the theory that the backlog was growing faster than they could produce code. Not the best idea, for reasons I’ve recently discussed.1, 2, 3
Jump ahead to this week’s team retrospective.
They now have a visible queue of pull requests waiting for their turn on the staging environment for QA.
Now it’s obvious where we need to focus our effort: We need to reduce or eliminate the bottleneck around QA and the staging environment.
When you’re not sure what your bottleneck is, it’s often the result of trying to do too many things at once. Cutting back your batch size often serves to make the bottlenecks more visible.
A GitFlow story
A team I recently started working with has been using GitFlow. Until last week.
Slow stable releases or fast unstable releases?
The real choice: Big pile of poo, or small, managable piles of poo?
What if we re-engineerd our airports so that we could offer single-piece flow for every passenger?