Do You Kanban?
December 21st, 2009
3Software development is hard.
In fact, 66% of software projects fail, according to The Standish Group, a globally respected research firm.
In 2001, 17 well known leaders in the software industry gathered in Utah to ski, I mean, to attempt to create a set of best practices for the software industry.
Their guidelines are called The Agile Manifesto:
• Individuals and interactions over processes and tools.
• Working software over comprehensive documentation.
• Customer collaboration over contract negotiation.
• Responding to change over following a plan.
Even though some of us in Border Stylo have never heard of this manifesto, it seems like intuitively we all follow those guidelines. In this brief blog post, I want to show you one aspect of our development process that relates to those values – our Kanban board.
Kanban is a technique that started in Japan after World War II and is part of the Lean philosophy for process improvement. Kanban is a great way to visualize processes and see the waste.
It can apply to any process in the company, not just development and it is proven to catalyze organizational process improvement.
The main idea behind Lean is to eliminate waste by making it visible.
Waste in software can be many things*:
• partially done work
• extra processes
• task switching
• waiting
• motion
• defects
• management activities
How are we using Kanban at Border Stylo?
Our team is located in the same room and is cross functional. The developers, designer and the product owner (or representative) collaborate constantly using a Kanban board.
Take a look at the picture below, staring David, our fierce designer:

Each column represents a step in our process. Backlog → in progress → waiting approval → done
The cards are organized by ROI (return on investment): the higher the card, the more value it has for our company.
Each color represents a type of activity:
Blue = Feature
Yellow = Bug
Purple = Design Task
Orange = Chore
A tilted card represents a ‘blocked’ task – this task is dependent on another task or something external before you can work on it. Employees that work from home should have a ‘sticky buddy’ – someone that takes care of his or her cards.
The Kanban board is changing whenever the process changes. A few days ago we added the ‘waiting approval’ column. We noticed there were too many yellow (bug) cards during the week before a major release. We realized the reason was because we didn’t let the product owner ‘play’ with the feature and approve it before we moved the card to the ‘Done’ column. From now on, bug and other issues will be caught earlier, which will reduce the bug count before releases.
The advantage of using a Kanban is the quick feedback you can get just by glancing at the board for a second:
• Enhance collaboration – since it’s visual in nature, the board is attractive for other people in the company. Suddenly other teams or executives can actually see items that they requested and are related to them. That’s why it is called a ‘pull system’. You don’t need to ‘push’ for status updates, just look at the board and get the insights you need.
• Identify quality of development – On the board above we have 30% bugs (8/24). As a team we can decide on a ratio that is acceptable, and if we go above that number we can have a discussion about the reason for an increase in the number of defects.
• Are we working on the most important tasks first? The two top most items are still in development, while many other lower priority tasks are already done. This is a bad sign that should alert the team and lead to (healthy) discussion about why less important tasks are being finished first.
• Identify bottlenecks – the ‘Waiting approval’ column is packed with cards. Our product owner can’t handle the volume of tasks we complete (did I mention that we are rock star developers?) There are several possible reasons for this situation, but the most important step is to first identify where the bottleneck is.
• Identify waste – if the ‘In Progress’ column is packed it means that developers are multitasking. This is one of the definitions of waste in software development. Each time a developer has to switch to another task he or she spends valuable time in getting ‘in the zone’ and are therefore less productive.
• Measure team’s velocity – each week we count the number of completed features and update our velocity.
• Release planning – since we know our velocity (how many features we complete on average in a given period of time), we can give our executives rough estimates for completing future parts of the product.
• Motivation – when you move physical cards toward the ‘Done’ column you really feel great! Comparing a real, physical board to a software based is like comparing jumping from a plane in Second Life to actually doing it in real life.
Wait, are you telling me you rely on sticky notes? What if the strong Santa Ana winds blow all of it away?
Enter Pivotal Tracker. Introduced by Daniel, our software developer extraordinaire and was adopted by other teams at Border Stylo.
![]()
This web-based tool is where we keep a digital representation of our Kanban board. It is easy to use and has no permission levels so everybody can create, start, and complete tasks. It will not generate fancy graphs or brew hot coffee, but it can calculate the velocity of a team and organize your tasks in a clear and simple way.
Here is David after 2 months of heavy Kanban usage!

*Mary and Tom Poppendieck’s book – ‘Lean Software Development: An Agile Toolkit’
Tagged with: Kanban, Software Development
Related Posts
Author
3 Comments Leave a comment
That was inspiring,
Great information about kanban.
Thanks for writing, most people don’t bother.
Nice article, Oren. Looks like you’re keeping things well ordered and productive in your new role! Very glad to see that.
Leave a comment
Allowed Tags
_emphasis_
*strong*
??citation??
-deleted text-
+inserted text+
^superscript^
~subscript~
@code@
Add code using a GIST
gist: gistid
This looks awesome — thanks for the post! I’ll definitely check it out.
Reply to comment