Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The process of kanban, associated with the Toyota production system, incorporates the Japanese philosophy of Muda. Muda is the avoidance or elimination of waste and removing useless activities that do not provide value to the customer. The kanban process was developed by Taiichi Ohno to provide the Toyota production system with a practical approach to specific production and market conditions and to maintain a smooth production flow to promote continuous improvement. Kanban is a Japanese expression meaning signboard and was designed as a flow control system in manufacturing in which downstream process demand signals trigger upstream process activities. Although developed for the manufacturing sector to reduce waste in product production, the Kanban philosophy has been applied to software development activities. 

...

Kanban includes a visual workflow on a board divided into columns. Teams use a Kanban board to visualize work progress to facilitate product improvements, monitoring of processes, and effective workflow management. The Kanban board aims to improve the workflow by supporting the principles of limiting work in progress, creating value throughout the process, increasing throughput, and embedding quality within the process. Additionally, kanban boards provide a process to manage the workflow, balance throughput, and make processes explicit as work moves through the different states. Each state in the Kanban process has a clearly defined entry and exit point, providing the team and management with a visual representation of progress. Work requests are defined in the Kanban backlog to identify the work items the team needs to accomplish. In software development, stakeholders prioritize the importance, urgency, or value requests. Features or requests are selected and placed on the board. Each column on the Kanban board limits the amount of work in progress within the column or lane. Based on prioritization, work items are pulled through the workflow using defined stages such as “to do,” “in progress,” and “done.” Work items are tasks pulled only when required. Each stage limits the number of items (work in progress) to avoid the potential for bottlenecks. Limiting work in progress restricts the number of ongoing activities to avoid an excess of initiated tasks and unfinished work. The Kanban method allows a team to respond to market changes, reduce waste, increase quality, and improve predictabilityis an Agile project management methodology that is used to manage work in progress effectively. The word "Kanban" is of Japanese origin and translates as "visual sign" or "card." It originated in Toyota's manufacturing systems and was later adapted for software development and other knowledge work.

Here's an overview of the key principles and practices in the Kanban method:

  1. Visualize the Workflow: The main tool in Kanban is the Kanban board, a visual representation of the workflow. This board is divided into different stages of the process, such as "To Do," "In Progress," "Review," and "Done." Tasks are represented as cards that move from one column (or stage) to another as work progresses.

  2. Limit Work in Progress (WIP): To prevent overloading the team and to identify bottlenecks in the process, Kanban encourages limiting the number of tasks that are in progress at any given time. This limit can be adjusted as the team's capacity changes.

  3. Manage Flow: The goal in Kanban is to improve the "flow" of work — that is, the speed and efficiency with which tasks are completed. Metrics such as lead time (the time from the start of work on a task to its completion) and cycle time (the time from when work actually begins on a task to when it's finished) can be used to measure and manage flow.

  4. Make Policies Explicit: The rules and policies for how work should flow, how decisions should be made, and how different types of work should be handled are made explicit and visualized. This way, everyone understands the process, and it is easier to discuss and improve it.

  5. Implement Feedback Loops: Regular meetings and other forms of feedback are used to continuously improve the process. These can include daily standup meetings, retrospectives, and other types of review and feedback sessions.

  6. Improve Collaboratively, Evolve Experimentally (Kaizen): Continuous, incremental improvement is a key principle in Kanban. This improvement is driven by experimentation, feedback, and learning.

One of the advantages of Kanban is its flexibility. Unlike Scrum, for example, it doesn't prescribe specific roles or iteration lengths. Work items can be added to the backlog at any time, and there's no need to plan work for a whole sprint in advance. This makes Kanban particularly suitable for environments where priorities can change quickly.