In a recent, well written but smallish study, a team of researchers from Finland have tried to find where KanBan has benefits. In their setup, teams of master students were instructed to use KanBan in their software development projects and then interviewed about their subjective perception of the benefits of KanBan. For a full description of their research methods, please read the original article.
What the researchers did find was at least some support for the following effects of KanBan:
- Only needed documentation is produced.
- Problems, as visualized on the KanBan board, are found and tackled immediately.
- Communication and feedback is “rapid and plenty”.
- The method is intuitive and easily embraced.
- Approval is simpler, done by the responsible person.
- Developers select their own work from the pool in an efficient manner.
Naturally, I have some comments about some of these statements.
Making problems visible is a good way to make them go away. Just like trolls are turned to stone by sunlight, many problems are solved or reduced by the simple expedient of showing them to the world. But KanBan shows problems one way and not in other ways. Does it show the most important problems?
In my experience, faking progress is a sure way to fail with any agile method. You can keep promoting your work items to the next step in the process regardless of their actual quality but when you try to deliver to the customer it just won’t work. So, yes, visualization is good but you have to be careful that you visualize the true status and not your dreams.
I started doing KanBan for the first time in a project where we had a lot of external pressure on the team. By visualizing the actual status and progress of the work and making it very clear to external stakeholders what each team member was focusing on we were able to divert a lot of pressure from the team.
That the method is so intuitive is really one of the major advantages of KanBan. Read / listen to the Business 901 blog / podcast on how a teacher is using KanBan for pre-school children! The clear visualization and intuitiveness also helps with stakeholder communication.
Again, approving only what should be approved is essential. It is important that the persons responsible for approvals do not succumb to political / hierarchical pressure to approve sub-standard work in order to keep to a time schedule or something like that or else the whole project might fail to deliver the required quality.
These are real benefits of using KanBan. If you have not considered using it in your project yet, perhaps you should? If you are already doing Scrum it is simply a matter of reconfiguring your board and adding some extra lanes and constraints.