Thursday, January 29, 2009

Reflections on Blue-White-Red and Kanban

Writing that last blog entry on my introduction of Kanban also led me to reflect a bit on my Blue-White-Red Agile method.

I’ve long felt Blue-White-Red was largely derived from XP, thats what the developers were excited about. I called it Blue-White-Red because it was a cut down XP, I was introducing the ideas incrementally. Also, the word “extreme” frightened the managers and “pair programming” frightened most developers.

In the last few years I seen more and more Scrum in BWR. At the time I “invented” it I hadn’t read much about Scrum books so maybe it is surprising how much like Scrum it looks. But, big but, I think this also goes to show how little difference there is between XP and Scrum. I’d have to go back and read the original XP book to be sure but it seems to me the main difference is XP’s emphasis on engineering practices (TDD, refactoring, etc.) while Scrum emphasis the project management bit (just without the project manager).

The other influence was Lean. I’d started reading about lean sometime around 2000. In fact I wrote about “Thinking Beyond Lean” in the April 2002 issue of Overload. I’d also been exposed to a lot of lean on my MBA course.

I distinctly remember telling people the white board was a “Kanban board” and when people asked “What if I have too many cards to put see the board?” | telling them “That is a sign you have too much work on the go” - I was attempting a crude form of work in progress limits.

So what would I recommend to teams in future?

Well as always it depends. But I’m going to favour Kanban. I think Scrum (and BWR) still have their place, they are more suited to environments were large project specifications exist up front. In addition, Scrum has the advantage when the organization needs to see external validation and BWR has the advantage because there is less baggage. There is less written about it.

That last bit might seem a little off but I mean it. The fact that it is less well knows means it brings fewer assumptions, fewer stories about how it failed and perhaps a cleaner sheet. Kanban has many of those advantages today but I don’t expect it to last, success will remove them.