What is Kanban?
Kanban is one of the approaches for Agile Implementation which was first used and developed by Taiichi Ohno. Taiichi Ohno was working as an Industrial Engineer at the Japanese company “Toyota”.
It is an approach which uses a visual system for managing the work as it moves forward. While it was developed by Taiichi Ohno for the manufacturing work, it was not until 2004 when David J. Anderson used this method for the IT Software Development and since then it has become one of the most popular agile development approaches.
Kanban Board in Agile is used to visualize the workflow.
Working with Kanban/Kanban Process
It comes with 4 basic set of principles which helps identify and fix the bottlenecks in the process and reduce any waste and efforts of time:
1. Visualize work (Kanban Board)
It requires that any workflow must be outlined in such a way that can be easily visualized. By adhering to this, it becomes easy to identify the blockers, bottlenecks, finished work, current work progress, upcoming work, and many more things.
2. Limit work in Progress
One of the main aspects of this is to keep moving the work efficiently from beginning till the closure with as little lag and waste as possible. There is “work in progress” column in Kanban workflow board where the team mutually defines the limit of the work. The work is pulled from the previous column to the current column i.e. “Work in progress” only if the total count of the work under the current column is less than its defined limit. This helps in reducing any lags between upcoming works and ongoing work.
3. Focus on flow
As we know, we have different phases as a part of the Software Development Life cycle such as requirement gatherings, analysis, testing, development, review, maintenance, etc. It becomes extremely important to look at the flow of the work that is undertaken. The above principles allow us to focus on the flow of the work. This flow enables the team to visualize any bottlenecks to address.
4. Continuous Improvement
When a Kanban approach is successfully implemented to a project, it keeps on looking for the scope of improvements to the delivered project. If it finds any, it modifies the product by including the improvement and then delivers it again. This could be a never-ending process which makes Kanban one of the best Agile approaches.
A Kanban board could be a physical board or a display board that you can visualize through a computer screen. Kanban Board is a solution that helps you to organize the work list with the help of its Kanban Principles. A Kanban Board is having different columns such as to Do list, In Progress list, completed list, etc. which are fully governed by Kanban Principles which have seen above. All the columns have the names of the tasks that are colored with different marks and each color has the meaning
Hence, a Kanban Board is having the following three main sections:
- ToDo (Also called backlog)
- In Progress
Implementing Multiple WIP Columns for any section
Usually, the in-progress section is divided into more than one column to accommodate all subsections or phases of works that come under in progress section. For example, “In Progress” can be split into different columns with names such as Analysis, Development, testing in order to better accommodate work for each phase.
Implementing WIP Limits and splitting WIP columns
As we have seen in “Kanban principles”, setting the limit for the “In Progress” column was one of its core principles. The work is pulled from the previous column to the current column i.e. “Work in progress” only if the total count of the work under the current column is less than its defined limit. For example, in the below figure, we have set the WIP limit as 3 for the “Doing” subcolumn of In Progress column. For example, if the number of work packets decreases below 3 and one work packet is moved to the ready state, one work packet will be pulled from the sprint backlogs and again the Doing sub column will have a total of three work packets which is the defined WIP limit.
It is always recommended to split the WIP limit into two sub-columns as is shown:
For example, the work packets in the design module once get completed, it is now ready to be passed to the development section. This approach helps the teams to create better project strategies and enables clear visualization and a picture of the ongoing project.
Following are some of the benefits given.
1. Versatility: This approach is extremely visible and an eye-opener for project teams. All the workflow inside the Kanban board communicates with through each other with the help of visible signals. As it is universally accepted, it can be used and implemented by almost every team which makes is a very versatile approach to use.
2. Continuous Improvement: When a Kanban approach is successfully implemented to a project, it keeps on looking for the scope of improvements to the delivered project. If it finds any, it modifies the product by including the improvement and then delivers it again
3. Reduces bottlenecks and roadblocks: The In Progress column of Kanban helps team visualize and detect and bottlenecks and issues of the project and it helps them fix it.
4. Continuous Delivery: It is known for it’s just in time delivery as it focuses on a continuous delivery approach by keeping on moving work packets from one stage to the other.
5. Visual Metrics: It allows easy transparency and continuous improvement of the project lifecycle with its elegant visual metrics.
6. Robust Team: This approach empowers the team to make a more agile decision as the Kanban system is almost owned by the entire team and they make progress as the project moves forward.
In this article, we started with a brief introduction and history of Kanban which was followed by the core principles that make any Kanban model a purely agile and successful one. We then saw a couple of approaches for Kanban Implementation and we learned about the benefits of using a Kanban system.
This has been a guide to What is Kanban?. Here we discussed the basic concept, Kanban Board, Working, along with some Benefits respectively. You can also go through our other suggested articles to learn more –