More than a year ago I wrote an article about how important “capacity management” was in agile teams. To be clearer the point was really…realistic capacity management.
At the time, I’d just come off a coaching roll where I’d encountered quite a few organizations that were pushing their teams too hard. Not slightly over their capacity, but two, three, four or more times their healthy capacity. And this created some distinct side effects:
- Employee satisfaction and morale was down and attrition was up. And they didn’t just loose their average people, they were losing their best people;
- Product quality was usually in a crisis mode and customer trust was continuously eroding;
- Organizational trust was broken because the teams were being pushed beyond any reasonable level;
- Leadership increasingly made promises to customers that they couldn’t keep; like writing bad checks;
- And they were on a downward spiral as poor quality and poor morale continuously impacted plans and productivity. Churn was rampant (hot fixes, customer escalations, chasing new $$$, changing priority, etc.)
I’m certainly not implying that everyone does this. But many do.
And after some careful thought, I’ve finally come up with an approach or technique to combat this problem. Let me share it with you and you can try it on for size…
A novel approach
First – Trust your team’s estimates. Perhaps ask curious questions or explore a bit, but ultimately trust their judgment when it comes to their software estimation. Period!
Second – No matter what you THINK your capacity is, admit that you really don’t know and that your assumptions are mostly wrong.
Third – Take your existing perception of your organizations software development capacity and cut it by 80%. That is, prioritize your roadmaps, backlogs, feature lists, and your customer commitments down to 20% of your current plans.
Using Pareto, make it the most valuable, most revenue generating, most important 20% certainly. But you only have 20% - so use it wisely!
Fourth – Now communicate in 360 degrees your new commitment to 20% - to your teams, to your stakeholders and investors, to your customers, and to yourself. THIS is now your capacity.
Fifth – Instead of pushing your teams to do more, encourage them to tell you when they have extra capacity and you’ll fill it. So institute a PULL-model instead of a PUSH-model. The end state is that you’re listening to your teams and deriving your sense of realistic capacity from then. And you’ll be committing to more as long as your teams can deliver more.
This leads to your leading the organization by crisp decision-making based on your realistic capacity (no Ruby Slippers) allowed.
I remember an old-time phrase that we used when making commitments to our clients. It was – “under promise and over deliver”. I think this applies quite nicely today and within agile contexts.
It also recognizes the common behavior of well-formed agile teams of over delivering or “stretching” when they realize they have any extra capacity. In reality, there is little reason for us to push so hard on teams if they’re going to deliver as much as they can sprint over sprint.
Now I wonder how many folks will take on my 20% challenge? I’ll bet it’s close to their existing actual capacity, but the truth often hurts.
Stay agile my friends,
Note: I’m using the Pareto Principle or 80:20 Rule in this advice. You can read a bit more about it here.