Is Kanban a board? Why are there Scrum board and Kanban Board? How to implement the Kanban in your team? Read the following to find the answer.
What is Kanban?
Kanban means "signal card" in Japanese. It was first created as a simple planning system to control and manage work and inventory at each stage of production to the utmost and applied in Toyota production. With Kanban, Toyota achieved a production control system that is flexible and efficient in real-time and it increases productivity while reducing the cost of raw materials, semi-finished materials, and finished products.
Kanban, as an agile methodology i n software development, is to help teams work together more effectively. It is a pull scheduling system. A physical board is often used as a tool to visualize the work. A limit is set to manage the flow of work, so the team is not idle or overloaded. Then, how to implement the Kanban method in a team.
6 Practices of Kanban
Kanban does not have any predefined process for software development. The team can apply the elements of the Kanban to the existing workflow to expose the waste, uneven work, team overload, bottlenecks, defects and such in the system, as well as the risk of delay. Meanwhile, it gradually introduces the change of the process based on the problems found. Kanban is an empirical process. Below are six major practices,
- Visualize the workflow
In software development, work is quite abstract, for it does not have a physical form or can it touched. A Kanban board is used to visualize the work using a physical board and post-it notes. It is an intuitive way to see how works flow from one stage to another. A typical Kanban board looks like this,
The progress of work, how it flows, and what the risks are can be identified from reading the board.
- Limit WiP(work in progress)
WiP stands for Work in Progress. It is a key term in the Kanban method. Usually, people would think the number of WiP is the bigger, the better. However, any work in progress means that it is not completed. Therefore, it is a waste of time and effort. The final output is much valued, so to limit the work in progress is to make sure the work actually flows from "upstream" to "downstream" in a team and no blockage to affect the team productivity. Balance, a value of Kanban, is closely related to this practice.
Stop starting, start finishing. This is what limit WiPs means in Kanban practices.
- Manage flow
Lead-time is everything for managing the flow of work. It is the time from when the work is started till the end of the work done. Flow is the measurement of work is done in a steady and predictable mode. The staff and work are allocated reasonably.
- Make policies explicit
Transparency is valued in the Kanban method, so making policies simple and clear is a good way to improve team collaboration. As Kanban is a pull system, the team has to set the pull-criteria. Only when the work downstream is done, the upstream work can be started. It is like a pull system, rather than a push system. Then, fix the WiP limit which is immutable afterward. Other process rules can be set accordingly.
- Improve feedback loops
On a Kanban board, feedback is not displayed. Feedback is done via meetings which are cadences of Kanban. A brief introduction of Kanban cadences can be found HERE.
Having feedback loops is to improve the information transparency within the team and doing kaizen in-time. Kaizen is also a word from Japanese and applied in production. It simply means change for the good and shares the same value of continuous improvement in software development.
- Improve collaboratively, evolve experimentally
The first part of this practice, improve collaboratively, is how to drive the change in your team, while the second part, evolve experimentally, is how you implement the change. PDCA is often used by the Kanban community. It is a four-step iterative way to improve continuously. PDCA stands for plan-do-check-act. The team needs to do implement change together and cooperate.
More about Kanban
If you want to know the basics of Kanban, refer to Kanban: Stop Starting, Start Finishing.
If you want to know more about the Toyota Production System and Scrum, read Amoeba, TPS, Scrum and XP.
If you want to know the difference between Scrum and Kanban, read Scrum vs Kanban.
Reference
1. David J. Anderson and Andy Carmichael PhD. FBCS. Essential Kanban Condensed. First edition, digital version, 17 April, 2016.
2. Henrik Kniberg and Mattias Skarin. Kanban and Scrum - Making the Most of Both.
3. Patrick Steyaert. Essential Upstream Kanban. First digital version, 23 September, 2017.