Loading

Kanban


What is Kanban

'Kanban' is a Japanese term which means a 'signboard' that signifies 'available capacity (to work)'. Kanban relates to the just-in-time technology, which outlines the scheduling system, that tells us what is to be produced , when and how much to produce it. Somewhere around 1940 and 1950, Toyota considered applying the Kanban logic in their Toyota Production System. The mind behind such an idea was that of an engineer named Taiichi Ohno. He thought of implementing Kanban, in order to standardise the flow of parts in their just-in-time production lines. 'Kanban' is basically an approach inspired from 'supermarket'. The team of engineers observed that the store clerks kept a stock of grocery items by their store's inventory, that is, according to the availability of the grocery items, and not as per their vendor's supply. The store clerks ordered more only when an item was about to sell out.

kanban1

The grocer's just-in-time process of delivery forced Toyota engineers to think over the methods they used, and gradually their focus shifted to the 'Kanban System'. This method enabled matching of inventory with demand, which in turn assured attainment of higher quality and throughput levels.

Kanban in Software Industry :

The entire software development process can be thought of as a queue or a pipeline. The structure is so because the software development process involves accepting feature requests entering from one end and an improved solution being delivered from the other.

The Kanban method is an approach applied to incremental models, evolutionary process. Simply stated, the Kanban simplifies our task of dealing with the ever changing needs/demands of our clients and to assign priority to each task. Hence Kanban can be understood as a framework applied in the agile environment. Based on our understanding so far, Kanban is an evolutionary process, so let's look into the principles that form the core of Kanban :

  • Visualise work with Kanban :The Kanban interface offers an excellent overview of the current work in a team environment, it helps to simplify communication which leads to enhanced productivity. Kanban has a board where one can set priority of their work.
  • Limiting Work-in-Process(WIP):Repetitive tasks are limited, as we get a better work flow structure through Kanban system. One can focus on finishing a task rather than beginning a new one. Delivering quality product is what we must aim at. There are priorities assigned for tasks- to do, in progress, code review, done, i.e, WIP limit for two members can be set for reviewing the code and so on.
  • Time tracking :A stopwatch timer facility is available that lets us track our tasks, else time can be tracked manually as well. Tracking time shall help us improve the productivity of work. It is a flexible mechanism to manage time efficiently.
  • Collaborate in real-time:Kanban offers a real-time mechanism that makes changes available to all the team members.
  • Analytics and reporting:One can create reports using Cumulative Flow and Cycle and Lead Time charts, facilitating a way to manage work flow. It has also got a Calender view with the help of which a person can handle deadlines.
  • Robust Integrations :Kanban can be integrated with various other systems like REST-based API with webhook support, allows import and export to excel and other applications alike, helps to add tasks by email, also integrates Outlook and Google Calender.

Conclusion :

What does a client demands, how do we manage their requests, are among the few questions that Kanban caters to in a dynamic environment. This system helps to refine our tasks in a very sorted manner. It has a widespread acceptance due to its simplicity and ease. Therefore Kanban fits perfectly in an agile work environment serving the right purpose.