InfoQ

Article

Visualizing Agile Projects using Kanban Boards

Posted by Kenji Hiranabe on Aug 27, 2007

Community
Agile
Topics
Teamwork ,
Agile Techniques ,
Collaboration
Tags
Lean ,
Planning ,
Management ,
Value & Metrics ,
Kanban

In Agile projects, it's a common practice to visualize and share project status in “big visible charts” on a wall of the project room. Lean systems also use such devices. "Kanban," in Japanese means, loosely translated, 'card or sign'. In a Lean production system, Kanban is a method which uses standard units or lot sizes with a single card attached to each. A new card is "pulled" into the system only when the work represented by an "in progress" card is completed..

RelatedVendorContent

Agile Development: A Manager's Roadmap for Success

The Agile Project Manager

Right Collaboration Architecture Drives Business Transformation

Learning to be a Good Product Owner: Foundation Skills

The Agile Checklist

Related Sponsor

VersionOne is recognized by Agile practitioners as the leader in Agile project management tools. Companies such as Adobe, BBC, CNN, Dow, HP, IBM, Sony and 3M have turned to VersionOne to help deliver greater value to their customers.

In this paper, I explore visualization methods found widely in agile projects these days, and then propose using Kanban Boards to organize three viewpoints (Time, Task, and Team) so that the whole team understands the current status of the project and can work in an autonomous, motivated and collaborative manner. Finally, I introduce a software tool “TRICHORD” that implements Kanban Boards to realize project visualization from the three viewpoints.
 

Visualization in Agile Projects

XP has a practice called “informative workspace” where you can see how the project is going on at a glance [Beck05]. A primitive way of doing this is just putting story cards or task cards on the wall. Other graphs and charts on the wall are sometimes called “information radiators” [Cockburn01] or “Visible Big Charts” [Jeffries04] and have become very common in today’s agile project room facilitaties. Below, I show examples of the visualizations found in agile teams in Japan.

The first example in Figure 1 is a Task Kanban Board named after the “Just-In-Time” (JIT) production method used in the TPS (Toyota Production System) [Poppendieck03, 07].


Figure 1: Task Kanban Board


A Kanban means a ticket describing a task to do. In TPS, it is used to realize Just-In-Time “pull” production control. In Figure 1, a Kanban Board shows the current status of all the tasks to be done within this iteration. The tasks are represented by cards (Post-It Notes), and the statuses are presented by areas on the board separated and labeled ToDo, Doing, and Done. This Kanban Board helps the team understand how they are doing well as well as what to do next and makes the team self-directing.

Figure 2 is another type of Kanban Board, called “Feature Kanban Board”. (Highsmith just calls this a “Feature Card Whiteboard Layout”, but I categorize it as a Kanban Board. [Highsmith04]


Figure 2: Feature Kanban Board

The horizontal axis of this chart is a timeline and vertical areas in the timeline represent releases and each card posted to the areas represents one feature that will be implemented in the release. Contrary to the first example which is usually used within the development team, this Feature Kanban provides a high-level overview of the product’s road map so it should be shared with the whole extended team, including customers, marketing staff and management.

Also, the “Parking Lot Chart” in Figure 3 is used to provide a top-level digested summary of project status (not to be confused with a “Parking Lot List,” a tool facilitators use to capture unresolved issues). It is first described in Feature Driven Development (FDD) [Palmer02], and is widely used in agile projects today. It is sometimes also called a “Project Dashboard”.


Figure 3: Parking Lot Chart

Another type of visualization in Figure 4 is called a Burndown Chart.


Figure 4: Burndown Chart


It is first described in Scrum [Schwaber01] to show the remaining backlog, and has now spread to most agile projects [Cockburn04], [Cohn05]. It captures the current status as well as the rate of progress of completing the remaining tasks.


The last interesting visualization in Figure 5 is called Niko-niko Calendar (or Smiley Calendar), a Japanese creation, showing team member’s mood for each day.
Everyone puts a smiley mark onto their own calendar after the day’s work, before leaving the team room [Sakata06]. It looks at the project from the viewpoint of member’s mental health and motivation.


Figure 5: Niko-niko Calendar (or Smiley Calendar)
 

Kanban Board as Main Information Radiator

To summarize, the visualization tools mentioned are:

  • Kanban Boards. Use a card as a token (Kanban) of a task, story, feature and stick them to a timeline (board). There are several levels of granularities.
     
  • Burndown Charts. Count the number of Kanbans (backlog tasks) and track it in a timebox to show the trend of work accomplished. There are also several levels of granularities.
     
  • Parking lot Charts. Summarize the top-level project status.
     
  • Calendars. Other than Niko-niko calendars, there are a lot of variations of using calendars to show project status or plan.

Note that between Kanban Boards, Burndown Charts, and Parking Lot Charts, Kanban Boards have the most detailed information. Burndown Charts and Parking Lot Charts can be drawn using the information of daily changing Kanban Boards. So hereafter I’ll discuss Kanban Boards as the main information radiators, and Burndown Charts and Parking lot Charts as sub-tool which summarize Kanbans visually.
 

Organizing Kanbans from Three Viewpoints

Looking closely at Kanban Boards, you can find three things expressed on them – time, task, and team. Here I try to organize Kanbans from these three viewpoints.


Figure 6 Breakdown of Time and Task

1. Time

In agile projects, time of a project is first broken into “Releases” and each release into “Iterations”, and each iteration into “Days”.

  • A release is typically 1- to 6-months long and is the most coarse-grained timebox. It is a sync point of the whole team so everyone in the whole team should be interested in it.
  • An iteration is the second level timebox. It is typically 1- to 4-week long and development teams use it as a major working, tracking and improvement cycle.
  • And every day is the most fine-grained timebox, the team gets together in a stand-up meeting to share project status and problems.

2. Task

There are also three levels of granularity for Tasks. Here I call the top level “Features” and each feature is broken down into “Stories”, and each story into the lowest level “Tasks”.

  • A Feature is a function useful and meaningful to users.
  • A Story is a testable piece of a Feature, also described in the words of users.
  • And a Task is a work unit of a Story, commonly described in terms used by developers.

3.Team

A project team consists of people working toward the same goal. Typically, a manager, customers, developers, business analysts, users, testers and other stakeholders should be members of the team. The whole team should share information on time and tasks to achieve the project goal.
 

Kanban Board Maps Task to Time
for the Team

Here I’d like to define a Kanban Board as a mapping between tasks and time for the team. Note that “time” and “task” both have a three-level breakdown structure, and the higher the breakdown levels are, the higher the level of management that should be involved with it. So, it is reasonable to set up Kanbans in combination of Release-Feature, Iteration-Story and Daily-Task as shown in Table 1, although there are many possible other combinations of time and task.


Table 1 Kanban combination of Time and Task

A “Feature Kanban” is good at giving the whole team a high-level view of the project. And it goes with a Parking Lot Chart to show the top level status.

A “Story Kanban” is at the middle level, the most widely and carefully seen in each iteration by the team, and it may be supported by an iteration Burndown Chart.

A “Task Kanban” is at the lowest level, showing the current changing status daily, which may be supported by a daily Burndown Chart.


Figure 7: Overview –
Three viewpoints and Kanban Board as a mapping of Task to Time
 

TRICHORD

We have been developing an agile project management tool named “TRICHORD.” TRI refers to the three viewpoints (Time, Task, and Team) and CHORD means harmony.

It operates as a workplace to share project status across the whole team, providing the three levels of Kanban Boards – Feature Kanban (Release-Feature), Story Kanban (Story-Iteration), and Task Kanban (Daily-Task) – as described in Table 1. A Feature Kanban is supported by a Parking Lot Chart, Story and Task Kanbans are supported by Burndown Charts. 


Figure 8 TRICHORD (Kanban Boards with Burndown Charts, Parking Lots)

In addition, TRICHORD has a Niko-Niko Calendar service to share the team's mood. It also works as a simple “twitter”-like SNS communication center in the projects.


Figure 9 TRICHORD Niko-Niko Calendar

TRICHORD is implemented on the Eclipse RCP (Rich Client Platform), and optionally works with Trac (issue tracking system). 
 

Acknowledgements

Many thanks to Mary Poppendieck, who reviewed this paper thoroughly and provided lots of advice and suggestions.
 

References

[Sakata06] Akira Sakata, “Niko-niko calendar”, 2006
http://www.geocities.jp/nikonikocalendar/index_en.html
[Beck05] Kent Beck, “Extreme Programming Explained 2nd “, 2005 Addison-Wesley
“Informative workspace” is a practice of XP.
[Cockburn01] Alistair Cockburn, “Agile Software Development”, 2001 Addison-Wesley
The word “information radiator” is first used.
[Cockburn04] Alistair Cockburn, “Crystal Clear”, 2004 Addison-Wesley
“Burndown/up chart” is discussed as a powerful technique.
[Cohn05] Mike Cohn, “Agile Estimating and Planning”, 2005 Prentice Hall
“Burndown chart” is most deeply discussed.
[Jeffries04] Ron Jeffries, "Big Visible Chart", 2004
http://www.xprogramming.com/xpmag/BigVisibleCharts.htm
[Poppendieck03] Mary and Tom Poppendieck, “Lean Software Development”, 2003 Addison-Wesley
[Poppendieck07] Mary and Tom Poppendieck, “Implementing Lean Software Development”, 2006 Addison-Wesley
Explains Kanban in TPS and how it works as a pull process mechanism.
[Schwaber01] Ken Schwaber, et al. “Agile Software Development with SCRUM”, 2001 Prentice Hall
[Highsmith04] Jim Highsmith, “Agile Project Management”, 2004 Addison-Wesley
Here, Feature Kanban is called Feature breakdown structure and feature planning on whiteboard.
[Palmer02] Stephen R. Palmer et al., Practical Guide to Feature-Driven Development, 2002, Prentice Hall
First introduced Parking Lot Chart
 

About the Author


Kenji Hiranable is the CEO of Change Vision, Inc. He is the creator of JUDE, a UML and MindMap editor software, and has translated the books Lean Software Development, XP Installed, Agile Project Management, and other XP/Agile books into Japanese. Kenji thinks of software development as a form of communication game, and is always searching for better ways that makes it more productive, collaborative, and fun.  Further information on TRICHORD is available at trichord.change-vision.com .

Tracking relative to budgeted/available hours by John Rusk Posted Aug 28, 2007 11:32 PM
Kanban Yahoo Group by Kenji HIRANABE Posted Sep 2, 2007 7:48 AM
Re: Kanban Yahoo Group by Deborah Hartmann Posted Sep 2, 2007 2:17 PM
TRICHORD has been released English Available Version. by Hiroki Kondo Posted Sep 11, 2007 1:06 AM
Re: TRICHORD has been released English Available Version. by Kenji HIRANABE Posted Sep 11, 2007 10:23 AM
Excellent article by Bonnie Aumann Posted Oct 28, 2008 6:55 PM
Kanban should be real,touchable by zhang yongji Posted Mar 16, 2009 8:00 PM
Re: Kanban should be real,touchable by Alen Balja Posted Dec 21, 2009 9:46 PM
a board based on a sharepoint blog by Bogdan Nedelcu Posted Dec 30, 2009 7:46 AM
  1. Back to top

    Tracking relative to budgeted/available hours

    Aug 28, 2007 11:32 PM by John Rusk

    Burndown (or burn up) charts can easily be suplemented to add tracking against budgeted hours. That way, they track not just the work completed, but also the effort required to complete it. Details here: www.agilekiwi.com/agile_charts.htm

  2. Back to top

    Kanban Yahoo Group

    Sep 2, 2007 7:48 AM by Kenji HIRANABE

    David Andersen gave me a comment on Parking Lot.

    ----
    Hi Kenji,

    I liked the paper you gave me to read. I wanted to make a comment about the parking lot diagram. It was first introduced on the original FDD project in Singapore and was first documented in Peter Coad's 1999 book, UML Modeling in Color in Chapter 6, the chapter written by Jeff De Luca.

    David
    ----

    And he started up a new Yahoo Group about Kanban Boards.


    www.agilemanagement.net/Articles/Weblog/Kanbani...

  3. Back to top

    Re: Kanban Yahoo Group

    Sep 2, 2007 2:17 PM by Deborah Hartmann

    Looks like there's significant interest in Anderson's Kanban yahoo group, his site says "it's acquired members 80 members in only a few days," and he's looking for leads on who else is doing this kind of work.

  4. Hi, I'm a member of TRICHORD Team.
    We have released English Available Version on Sep.11,2007.
    If you are interested in TRICHORD,Please visit our Site.

  5. The above URL is wrong, should be;
    trichord.change-vision.com/en/index.html

  6. Back to top

    Excellent article

    Oct 28, 2008 6:55 PM by Bonnie Aumann

    I realize I am demonstrating confirmation bias here, but I really like this article's description of the connection between release, iteration and task boards. I look forward to testing out the TRICHORD software - the biggest problem I've had with existing solutions was this lack of hierarchy and association.

  7. Back to top

    Kanban should be real,touchable

    Mar 16, 2009 8:00 PM by zhang yongji

    Real kanban carry much information。I prefer its exposure. It is also a furniture for your team.

  8. Back to top

    Re: Kanban should be real,touchable

    Dec 21, 2009 9:46 PM by Alen Balja

    Ha ha ha, first time I hear about this Kanban and I just realized I've been doing this all along. To Do, Doing, Done - I had three color stickies Red, Yellow, Green. When green was pasted on the feature, that meant - SHIP! Smileys, another thing, I had thumbs up, thumbs down and neutral to emotionally tag events. Good stuff.

  9. Back to top

    a board based on a sharepoint blog

    Dec 30, 2009 7:46 AM by Bogdan Nedelcu

    A blog could be a easy storage for kanban cards, as posts. Categories can be used as areas of Kanban. Add some javascript and a visual representation is also available. Find here some inspiration

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.