Kanban

Kanban has proven to be a valuable tool for introducing and performing operations management in self-organizing service, development and maintenance teams throughout many organizations

The history of operations management started over 7,000 years ago. In 5,000 B.C. the priests of Sumer (today southern part of Iraq) invented a system for recording inventory and business transactions. This system was refined by the Egyptians who started using  planning, organization and control in large projects. 

Many, many, years later a Japanese businessman, Taiichi Ohno, defined the Toyota Production System, which became the foundation for Lean.  In 2003, Kanban for Software Development was defined as a way of combining the fundamentals of both Lean and Agile Software Development.  

Kanban provides means for performing operations management by visualizing workflow, reduce the piles of “ongoing work”, perform measurements and make it more apparent which processes to follow at any given point in time.

Kanban is focused on six core practices:

  1. Visualize work flow. The teams draw up a matrix on a board to represent the processes of the team. Each task is placed on the board and moved when status is changed.
  2. Limit Work-In-Progress. Each step in the teams processes has a dedicated area on the board. To facilitate a pull system in the team, an upper limit on the number of task in each zone is calculated. 
  3. Monitor and manage flow. Monitor and measure on the flow of the tasks on the board to improve the processes and increase the throughput. 
  4. Make policies explicit. Note down the criteria for each step of the teams processes and make them visible on the board. It’s vital to the teams knowledge sharing that all tasks conform to the defined policies.
  5. Implement feedback loops. It’s vital to keep a focus on improving the Kanban system. There are multiple ways of doing so, one is to have periodical retrospective meetings.
  6. Improve collaboratively, evolve experimentally. All changes to the board, processes, etc. should be decided collaboratively. Changes should happen atomically in order to be able to measure any improvements that may follow (good or bad). 

Steps 1,4,5 and 6 can be fully adopted with the operations teams no matter what your domain is. Steps 2 and 3 are a bit more tricky, but when implemented will give fully transparent operations management teams.

Key benefits of using Kanban as described by both maintenance and development teams in organisations that I have worked with:

  • Clear and visible prioritization of tasks
  • Daily overview of tasks
  • Excellent learning tool for new team members
  • Increased team spirit through knowledge sharing and celebration of finished tasks
  • Possibility to change prioritization of tasks “intraday”

More perspectives on Kanban can be found here.