Ever thought of, that a simple supermarket concept can eventually revolutionize the way how big software development company & manufacturing firms work today?
Well, this is what exactly happened and one of the most trusted Agile methodology – Kanban got invented.
Taiichi Ohno of Toyota realized that Supermarkets stocks only those items what it expects to sell in a given time, and customers take only those items what they need since the future supply of items is assured. He borrowed the same concept to control the production system in Toyota.
- So how Toyota implemented this? They manufactured “only the necessary products, at the necessary time, in necessary quantity”
- And how did this help them? This eliminated a lot of waste, inconsistencies, and henceforth, resulted in improved productivity.
Since Toyota employed Kanban signs for use in their production processes, this entire method came to be called as “Kanban system”.
What is Kanban?
It’s a Japanese word which means “visual card” or “signboard”. It simply means a board for visualizing the flow of work.
Over the years, Kanban has evolved as a tool which helps teams and organizations to visualize their work, identify and eliminate bottlenecks. This helps in achieving dramatic operational improvements in terms of throughput and quality.
- It is now a scheduling system used in Manufacturing to help companies improve their production process.
- Also, Kanban is now a framework used by Software teams practicing agile software development. “Kanban method” for Developers was pioneered by David J Anderson.
Kanban is a system that consists of a big board with story cards. The big board represents the state of the project at any point.
The Kanban Method, enhanced by David Anderson works on 3 fundamental guiding principles:
- Start with what you have now – that is your current process.
- Agree to pursue an evolutionary approach to change and improvement
- Respect the current roles and responsibilities of the team/organization.
Based on these guiding principles, the Kanban Development Method describes the following 5 core practices:
Make a visual model of your work and workflows that it follows. This will help you to trace, manage and find blockers for your work.
Limit Work-In-Progress (WIP)
Use a virtual system to limit the unfinished Work-in-progress. This way, you can keep your focus and avoid the need for constant reprioritizing of work.
Focus on flow. This will help you to optimize the present system, get a clear picture and predict any future problems
Make Management Policies Explicit
Create a transparent system, where everything is explicitly known to everyone in the team
Use Models and the scientific method to improve and evolve experimentally. This intends to implement a “guided” approach to evolution.
These practices as a whole strengthen Kanban to be a pull system instead of a push system. Unlike a “push” system, where work is given to every individual and put onto a huge “to-do” list, pull systems allow the person doing the work to pull in tasks as they are ready.
Pull system and WIP are the Foundation stones are the concept of Kanban.
Pull system and limiting WIP are important because if we keep pushing more and more tasks to people, they get overwhelmed, try to multitask and at the end are unable to do justice to their work and hence fails to meet deadlines.
By focusing on things that matter the most, they remain focused and deliver features that will have the maximum business impact.
But Why Kanban?
Because anyone can easily adapt to it.
It looks like a very simple system, (that is its beauty), but it is useful even for the most complex projects or tasks.
It can help you –
- Visualize the system and trigger better communication
- Identify bottlenecks & alleviate them
- Maintain a sustainable pace of your project
- Limit the amount of work at any stage
- Minimize waste states
Who can use Kanban?
Using a Kanban board is as easy as writing a sticky note and pasting it into a whiteboard. And hence, it’s useful for anyone and everyone who wants to solve tasks and projects in a simpler and more agreeable way. It fits and works for any project or industry.
Development, IT/ Ops, Staffing, Recruitment, Marketing and Sales, Procurement, Manufacturing are few industries that actively use Kanban.
Kanban for software teams –
In Agile software development, it’s a common practice to visualize and share project status by posting cards on a wall of the project room or by using an agile software. And hence, Kanban comes to be an obvious choice to support agile software development. It helps software developers to deliver software and services more smoothly, more frequently and at an optimized flow and throughput levels.
A typical Kanban board for software team consists of various cards related to requirements, bugs, development, testing, change request etc.
A typical Kanban board of a software development team
Though Physical boards are quite popular among some teams, Virtual boards are a crucial feature in any agile software development tool for their traceability, easier collaboration, and accessibility from multiple locations.
Kanban beyond software –
Given its roots in manufacturing, Kanban has a natural fit in non-IT/ Software business processes as well, with tremendous benefits to the organizations wanting to become lean and to deliver high-quality products and services.
It has the potential to fit in all types of companies and business functions such as HR, Marketing, Sales, Procurement and so forth. It is also applied in traditional project management situations such as constructions and engineering projects. A wide variety of organizations – staffing companies, recruitment organizations, advertising agencies, insurance companies and many others are looking to Kanban for improving their throughput and quality.
How Kanban Works?
“A picture is worth a thousand words” and this is the core concept of Kanban.
Visual impact has a great power and creates a working atmosphere that people want to invoke and try to involve themselves.
Let’s take up a simple example to understand how Kanban works –
Suppose you wish to host a house party and want to plan your entire event using Kanban.
Get a board
To start planning for your party, first of all, you will just need a whiteboard, some colorful sticky notes, and a pen. If you want, you can make use of any of the online tools also.
On the board, make columns for To-Do, Detailed Planning, and Execution.
Plan your “To-Do”
Breakdown all your tasks and add it to your board under To-Do list.
Whether it be inviting a guest, ordering food or decorating the house; jot down everything and add a card for each of these.
As you start working, move the card in your Detailed Planning list.
Start working independently on each of the cards. Start with inviting your guests and buying some food and drinks.
Make it “Done”
Done with inviting guests, ordering food, working on decoration, and everything? You are all set!
Once the work related to a card is done, move it to Execution Completed.
Using Kanban is this easy!