Kanban is a Just-in-Time development management philosophy that falls under the umbrella of Agile development. The word Kanban is taken from a Chinese word that means billboard. The Kanban technique was pioneered in the lean manufacturing system at Toyota and was brought to software development by David J. Anderson. Anderson established six core principles of Kanban. Visualize the workflow with a board and cards to identify what is to be done and in what stage it is. The columns show the various stages in the development cycle. Limit WIP or Work in Progress is the basis of this pull system. For example many teams will limit a developer to one item to work in progress, therefore you limit your WIP by your number of developers. Manage flow through the pull system and monitor the work progression. Kanban is excellent at helping teams pinpoint bottlenecks in the system. Make polices explicit so the team knows how things should work and what is expected of them. Without the policies well known to the team members these can’t be improved. Implement feedback loops to facilitate the improvement of the policies detailed before. Evolve experimentally through continuous small incremental changes and using the scientific model to review the value of these changes.
The software development process is similar to a pipeline. The enhancement requests enter the pipeline and the completed enhancements come out of the pipeline. If there is a bottleneck in the system this will restrict the flow of the work through the system. Kanban can help you identify the bottleneck and make changes to alleviate the issue.
The limits are the critical difference between a kanban board and any other visual storyboard. Limiting the amount of work-in-progress (WIP), at each step in the process, prevents overproduction and reveals bottlenecks dynamically so that you can address them before they get out of hand.
from the Kanban Blog.
Kanban also removes the time-box element of Scrum. You work the story until it is complete. Also the user stories are larger and fewer than they might be in Scrum. In a Kanban system estimation is optional and many teams will leave it out. Team velocity is replaced by cycle time. (from Agile Product Design blog) Overall Kanban has a lot to offer teams that are doing software development and information technology work.
If you have enjoyed this please share this on social media and don’t forget to subscribe to our newsletter.