The ultimate goal of agile methods is to provide delivering desired software accurately and as soon as possible to the customer. Agile methods do not mean too much at the point of quality. At this point, you can put the teachings of lean approach into use with Kanban system.
Kanban system can contribute to your project about the following points:
- Increases the visibility of the project flow (who is doing what, is there any problem blocking the data path)
- It allows software to be delivered to the customer in a faster and better quality format by limiting the work done at the same time.
- It allows you to notice immediately if there is a blockage in the flow of the project.
- It has a sparkle effect in resolving blockages.
WIP (Work in Progress) Limit and Little’s Law
Kanban system may be compared to a tail structure. It starts to work on new jobs coming from behind when it finishes the work done at that moment. At this point, in order to plan the future, we can calculate what WIP limit should be by using Little Law’s formula.
WIP limit may vary depending on the project and team. So, Kanban system can easily be applied to all projects. You can easily calculate what WIP limit will be by Little’s Law.
You can easily calculate the WIP limit in Kanban System if end time of the project is certain and if you know the average time you finished a job (e.g. a feature in a week)
If your project is going to take one year and you deliver a job about one week, you may set your WIP limit as 3.
Is it Necessary to Put Limit?
You need to focus on the goal in order to finish a job properly. Limiting the work provides focus, so this will accelerate the lead time of the requirements.
It happens to all of us, anything occurs if we try to do 10 jobs at the same time. The main reason of it is losing time while passing one job to another one (switching cost). To limit a work prevent a person jump from one job to another one and this will automatically helps to save time.
It also allows you to put out less defective (bug) products. According to a simple system, bugs are the biggest wastage. This (wastage) is the most important point that should be avoided in the projects.
Monitoring The Project in Terms of Kanban System
There are two popular types of graphics that I use;
- CFD (Cumulative Flow Diagram)
- Weekly Velocity Analysis
CFD chart as David Anderson represented in his book provides a clearer view compared to the standard “burn down” charts.
CFD (Cumulative Flow Diagram)
You can see in the chart that the amount of coded as indicated with light blue decreases and amount of completed as indicated with purple increases by time. The amount of completed coded follows a straight progress in a problematic project. CFD chart is a good indicator to understand in which case the project is.
Weekly Velocity Analysis
How many requirements finished in a week? This indicator is extremely important in measuring how accurate the project is.
Kanban System Gives You Time to Improve Yourself
It is not good to work on a job continuously. If CPU works at %100 continually, it will bring inefficiency rather than efficiency after a period of time. Creating free time for the project team will help to improve themselves. This allows them to finish the jobs more quickly.
Kanban System Prior to Kaizen
Problems will be noticed more quickly when you limit the work. Every noticed problem is the best opportunity for development (Kaizen). I propose you to review and apply Kanban System absolutely in order to understand the spirit of Kaizen.
- David Anderson -Kanban: Successful Evolutionary Change for Your Technology Business
- Henrik Kniberg – Lean from the Trenches: Managing Large-Scale Projects with Kanban
- Jez Humble – Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (Addison-Wesley Signature Series (Fowler))