By Brian Lucas
This one is for everyone who struggles to change the dogmatic processes that the ignorant employ in a futile attempt to control what they don’t truly understand.
Yes, I am shouting! OK, maybe I am not being as charitable as Rupertus would like, but the circumstances are mitigating. Because once again, I have been asked the question of Scrum vs Lean vs Kanban vs Crystal vs XP vs DSDM -ARRGH!!! Agile by its very nature places an emphasis on the goal and not the means to achieve that goal. “Agile is at its root – adaptation in furtherance of accomplishment.” If you are dogmatically following a process, even a specific agile process, instead of adapting your activity to successfully achieve the goal; you are NOT agile!
I once had an argument while serving on a round table dais with a Kanban proponent over my definition of the use of Kanban in an agile method. He replied primly that I was not using the “correct” definition of Kanban. For the sake of argument, I defined the three elements that Kanban was designed to eliminate:
1) MUDA which is not creating value for the customer, in other words WASTE
2) MURA which is any variation leading to unbalanced situations, in other words UNEVENNESS
3) MURI which is any activity of unreasonable stress or effort, in other words OVERBURDEN
I asked my erstwhile colleague, what benefit a discussion of these Japanese terms had to our discussion other than being generic truisms for any activity. I then reminded him, KANBAN is a Japanese word that means “sign”. What could possibly be wrong with my emphasis on the visual aspect of Kanban? I certainly was not saying it was the ONLY definition or benefit. At that point, we actually reached an agreement.
A Kanban is used to control work in progress (WIP) in a manufacturing line. The concept has been applied to software development in several different ways. Kanban is sometimes erroneously contrasted with Scrum. The problem most people make is one of strict interpretation of the process and not understanding Kanban in terms of the needs of an agile effort.
So Kanban is not a replacement for agile. It is a supplemental method for managing work in progress that provides a simple and ubiquitous communication vehicle to all stakeholders and team members. Communication is a vitally important key in smooth agile execution. The Kanban method is a terrific way to keep iterations on track and everyone synced up. Kanbans (driven by simple, nifty software applications) should be everywhere on desktops, laptops, tablets and smartphones.
Most importantly, they should be on a big screen TV in your scrum meeting room. I favor electronic methods of communication for their efficiency, but the psychological aspect of having a large, electronic status board shouting the progress (or lack thereof) can be an incredible motivator. I have personally observed the simple addition of a Kanban board turn a failing agile project around in less than a month.
So PLEASE do not get locked into a dogmatic process! Keep your eyes, ears and minds open at all times for something that can help you make your work more productive and your life easier. Even if the idea is not 100% right for you, ADAPT it and remember to keep agile!