The Kanban method is a new technology used to efficiently manage the software development process. The Kanban method originates from Toyota's "in-time Production" (Jit=just-in-time) system. Although production software is a creative activity that differs from mass-produced cars, the principles behind production line management still apply.
A software development process can be thought of as a tap water pipeline, where feature requirements come from one end and improved software emerges from the other.
Inside the pipeline, there are a variety of processes, some informal temporary processes, some very formal stages of the process. In this article, we assume a simple phased process: (1) Analysis requirements, (2) Development Code, (3) test software is running normally.
The impact of the bottleneck
Bottlenecks in the pipeline can limit the flow of work. The overall throughput of the pipeline is limited to the bottleneck throughput.
Use our development pipeline for example: If testers can only test 5 features per week, and developers and analysts can produce 10 features per week, the throughput for the entire pipeline is only 5 features per week, as testers play a bottleneck role.
If analysts and developers do not know that testers are bottlenecks, the more the testers will have to work.
The effect is that the pre-set time increases. And, as in inventory, work in the pipeline will hold up the money invested, the distance from the market, and the gradual loss of value over time.
Ultimately, quality is affected. In order to keep up with the progress, the testers began to cut corners. The final bug is released into the product, causing problems for the user, affecting future pipeline capacity.
On the other hand, if we know where there is a bottleneck, we can redeploy resources to disarm it. For example, the analyst can help with the test and the developer starts the automated test.
But how do we know where the bottleneck is in the known process? And what happens when the bottleneck moves?
Kanban methods can dynamically display bottlenecks
The Kanban method is hard to imagine, but hard to imagine. The simplest form of kanban system consists of a large white board hanging on a wall with many cards or instant stickers, which are placed in columns and have a number above each column.
The reason why you can find these bottlenecks is that limiting the number of artifacts (work-in-progress, WIP) will show bottlenecks.
The card represents the work item, the column represents the development process, and the card moves from the first step to the last step. The number at the top of each column is used to limit the maximum number of cards that can be placed in each column.
The limits of the Kanban board are different from any other visual storyboards. Limiting WIP in each step of the process can prevent overproduction and dynamically show bottlenecks so that you can find them before they reach an unmanageable level.
Sample Example
The following whiteboard shows a situation where developers and analysts are being prevented from doing any new work until the tester has vacated a card location and pulled the next work item into the test step. Developers and analysts will then start looking for ways to help testers reduce their burdens.
Note that we've split some columns into two columns to illustrate what's going on and what's been done and ready to be pulled away by the downstream process. You can also use a few different ways to lay out your whiteboard. This is a relatively simple way to do this. The limit at the top of the column contains both "doing" (in progress) and "done" (completed) columns.
Once the tester has completed a test of the feature, the card is removed and a card position is idle in the "Test" column.
Now, the empty location of the "Test" column can be added with a card in the "Done" column. At this point, the "Development" column will be idle out of a card position, the next card can be pulled in the "Analysis" column, the other columns also.
Reproduced in original: http://www.cnblogs.com/lchrennew/p/what-is-kanban.html
What is a Kanban method?