Kanban is a popular method for managing tasks in Lean and Agile environments. It can be used at all levels, from individuals to teams and entire companies.
It’s often used synonymously with Kanban boards. However, Kanban also involves a way of thinking about tasks and progress that enhances use of the board.
Kanban and Just-in-Time
While Kanban is now used in many different industries, especially software development, it originated in manufacturing. Toyota first developed Kanban to support just-in-time practices around ordering materials for production.
Just-in-time inventory is a fairly simple concept: ensure that you have materials required to meet a demand, but not so much that you need to stockpile. This cuts down on warehousing and spoilage costs. It’s applicable to many industries, including IT and supermarket stocking.
An important distinction is that Kanban is a just-in-time scheduling tool, not an inventory management tool. You can use a board to track production processes and know when inventory will need to be ordered.
Principles of Kanban
Start with your existing workflow
Map out your team’s current workflow and use that to create your Kanban board. This is important, because Kanban should reflect reality, not ‘how we want things to look’.
Make small, incremental changes
There are two basic ways to change processes in a company: by overhauling everything at once and educating everyone in the new processes; or by making small changes regularly and letting everyone get used to the modified process. Kanban encourages the latter of the two.
Respect your current way of doing things
This includes looking at current processes, roles, responsibilities, and titles… and not immediately modifying them. When we move to a new methodology, it’s often tempting to change everything that’s ever caused irritation. Kanban instead encourages us to assume that those things exist for a reason, and to change as required, slowly.
Encourage leadership in everyone
Improvements in workflows really need to come from the team that’s performing those processes. Not management, not a single team leader. Everyone takes responsibility for identifying issues and coming with solutions to improve processes.
Visualize your workflow
Create a visual representation of your typical work process. It’s important to note that this is not your ideal work process. If you try to visualize the ideal, you’ll end up creating something that doesn’t reflect reality, and that defeats the whole purpose. Typically you’ll use a Kanban board for this.
Limit work in progress
This practice is one that’s most likely to cause headaches and pain for a team that’s recently transitioned. However, it’s also crucial. Limit the number of tasks that can be in a particular column at any one time. This helps to keep tasks flowing efficiently from one side to the other.
Manage the flow
Once you start using Kanban, you’ll typically find that you discover bottlenecks where tasks heap up. This is where flow management comes into play. Instead of just increasing the WIP limit, solve the bottleneck. Figure out why tasks are being stranded at this point. Is it a section of work that only one team member knows how to complete? Does the stage actually represent two or three actual steps in a process? Has your team neglected the stage in the past? Talk about the problem as a team and trial solutions as a team too.
Define each stage explicitly
Everyone in the team should know and understand what is required to move a task from one stage to the next. A good starting point is ‘definition of done’: what points must be ticked off before you can consider a task ‘done’? For example, in a software development environment, you might include:
- Code review completed and passed.
- Functional changes documented.
- Unit tests written.
- Automated tests modified.
- Build test passed.
- User testing passed.
Use feedback loops
Using feedback loops helps to keep information moving through a company. Kanban practices include a lot of feedback loops, like daily team stand-ups and delivery reviews. You might find that your team struggles with getting used to this constant feedback.
While it might seem demoralizing at first, a big part of Kanban is finding ways to improve. Every team will have inefficiencies in their workflows. That’s OK; it’s only human. Some of these will be cultural. As a team, recognize areas that need improvement. Then figure out ways to get better.
What is a Kanban Board?
A Kanban board contains tasks and columns. Typically these include:
- Backlog or To-Do.
- A column for each stage: for example, in a software development environment these might be Code, Document, Test, and Build.
Generally you’ll find that the columns on a Kanban board are laid out in the same orientation as the script you use for writing. In Western countries, this is typically left-to-right. In other countries that use right-to-left script, you might find that Kanban boards are also laid out right to left.
You should be able to move a task through the stages required without ever moving it backwards on the Kanban board. In other words, progress needs to be forward, not backward. You might need to experiment a little before coming up with a layout that suits your team’s working style.
While software versions abound, like Trello, many companies still use a physical board with post-it notes or cards. If using cards, these can be made reusable by covering them in plastic and writing on them with whiteboard markers.
Why Use a Kanban Board?
Kanban offers a quick, visual impression of how a sprint or project is progressing. That’s why the ‘don’t send a task backwards’ rule is usually so strict – it messes up that visual impression of progress.
A Kanban board also helps team members to grasp the full process that every task needs to go through. For example, in a traditional software company, various job titles are often separated quite strictly. Developers don’t know what technical writers need to do; testers don’t know the development process, etc. Using a Kanban board puts everyone on the same level.
How to Use a Kanban Board
At the start of a sprint or project, write every task on a card or post-it note. Add these tasks to the Backlog or To-Do column. Each person in the team picks a task, adds their name to it, and moves it to the next column.
While the rules vary depending on the type of methodology you’re employing, typically one person should only have one task assigned to them at a time. That’s the task they are working on at the moment. If they aren’t working on it, it should be unassigned so that anyone who’s free can take it over.
Kanban Boards and Levels of Organization
We mentioned earlier that you can use Kanban boards at all levels, from individual to company. As you can probably imagine, the level of information displayed needs to change as the level of organization changes. Here are some examples of Kanban tasks at each level in a business:
- Individual: Modify User_Create code; Modify User_Edit code; Write unit test; Document code changes for code review; Run build test.
- Team: Add new user fields to code; Test user creation and modification; Modify knowledge base.
- Department: Extend user account.
You can see that as the number of people decreases, the granularity of tasks increases. You get more detail the further down you go. Try to imagine every person’s detailed tasks on a company-wide Kanban board; it would be a huge mess.
How to Write a Kanban Card
There are two basic forms of Kanban card that you’re likely to come across. The first is the task card that you’ll typically find on a board like those we talked about above. The second is an inventory card. This is usually found in just-in-time inventory systems, and they can be used to signal a need for more of a certain item.
To write an inventory card, you need to include all details that someone would need to have so that they can order the product. This includes:
- Amount per order OR amount per production requirement
- Lead time (how long it will take for an order to be fulfilled)
- Person responsible for ordering
- Where the item is located.
Task cards often look quite different to inventory cards. However, their purpose is quite similar – to provide all the essential information to complete a job. Instead of re-ordering a product, though, a task card might involve any task in a team’s workflow. For example, in software development, you might have task cards for each coding, testing, and documentation job related to a new feature under development. A task card will include details like:
- Current owner
- Time estimate
Common Kanban Mistakes
Almost every team – if not every single team – that adopts Kanban is going to encounter bottlenecks at some point in the process. However, it’s important to realize that Kanban rarely creates these bottlenecks. It just highlights them as an issue, where previously the team has managed to ignore or gloss over them. At this point, many teams are tempted to increase their work-in-progress limits to get around the bottleneck problem. This is like putting an adhesive bandage on a slashed artery. It’s a very temporary ‘fix’ that doesn’t solve a thing. Instead, you need to analyze the cause of the bottleneck and fix that cause. It could be a skill shortage, a prioritization issue, or a ‘nobody wants to do that’ issue.
Workflow vs board
It’s easy to see what other companies are doing and decide that their board is what you want to follow. However, using an ideal board that doesn’t accurately reflect your team’s actual workflow will lead to a disconnect between reality and the board. Because the board is there to reflect the actual situation, this just creates a lot of mess and wasted time. Be honest. Create a Kanban board that documents your current process. You can modify the process and the board by small increments as you go.
Creating tasks incorrectly
There are some classic mistakes that people make in creating Kanban cards. Managers generally shouldn’t create task cards for their staff; teams should create their own tasks from job lists prioritized by management. Another common issue is making tasks too large or too small. As a rule of thumb, tasks should take between two hours and two days to complete. Any more or less, and the team should revisit how they create tasks.
ASQ Six Sigma Black Belt Kanban Questions
Question: A store uses signs at specific points in its storage area to indicate when products need to be ordered. This practice is an example of