Originally published 1/1/2011. I have some additional information at the end to bring it up to date.
Throughout the Agile movement, one acronym that has
The irony of Agile's (
This is not necessarily bad. It presents both opportunities and challenges. But the risk of using pre-determined roles is
I find it odd that we denigrate BDUF while not even questioning whether BCUF is good. David Anderson created Kanban to avoid BCUF. Odd that Kanban has often
The Lean/Kanban alternative is to first understand your current process and to gradually change it. You do this by creating visibility into it using a Kanban board which represents the value stream. You discuss your policies to make them explicit. You manage your work in progress to do step by step improvements to your work flow.
I am not suggesting that BCUF is always bad. There are times I've used it when there is a well identified problem with a clear solution and almost universal buy-in. However, not looking at whether a BCUF approach should be taken is dangerous. It's one of my complaints about consultants who have only one tool in their arsenal and why at Net Objectives we have several (Lean, Kanban, Scrumban, Scrum, hybrids even).
BCUF can be expanded beyond the team. It is common practice when adopting Agile methods to do a pilot project. But this is also a kind of BCUF. We assume that the change here (at the pilot) is the correct thing to do without understanding the nature of our true challenge. See How Successful Pilots Often Actually Hurt an Organization (blog and 4 minute video).
To me, the question is never if something is bad, but rather when is something bad. This creates more learning. So, next time you start an Agile transition at the team or organizational level, ask yourself, is BCUF appropriate here?
Bringing this blog up to date.
A few years after this blog was written, the Disciplined Agile approach came into existence. It suggests that we need to look at the current situations companies are in. This includes their culture and what the best approach for the organization at hand is. This means not only to choose your way of working but to choose the way of implementing change.
One could also argue that always doing small change up front is also a problem. Sometimes started starting with a big change is what it takes to ensure the change will stick. Again, one has to have both a flexible approach and not insist on predetermined methods just because it's easier to train consultants to do this.