Day 42 — Agile series 4/7: “Kanban”

Roger Tsai & Design
Daily Agile UX
Published in
6 min readApr 11, 2019

Do you ever feel that you’re constantly being chased by the Sprint deadline in a Scrum team? Have you ever wished that you can design/develop a feature from end to end, rather than working on independent user stories that are fractions of different things? If you were frustrated by one of the situations above, Kanban might be the right answer for you.

Image source: https://www.atlassian.com/agile/kanban/boards

The last 2 days I wrote about Scrum and Lean, the two most popular Agile frameworks in software development. Today, I’d like to introduce Kanban, a tool and methodology that brings more color, not only to Agile software development, but for any types of project management. In this article, I’ll cover the following topic:

  • What is “Kanban”
  • Why is it helpful
  • How to adopt the method
  • Compare to Scrum
A simple Kanban board will cover: 1. what needs to be done, 2. what’s being done, and 3. what’s done. Image source: SmartSheet

What is Kanban

Kanban, Japanese word for “advertising board”, is one of the most popular tools in software product development. Whether you’re using Scrum, Lean, or other method, Kanban board (figure below) is a great tools to help you understand the workflow and monitor the progress.

A two-sentence history

Kanban is also one of the many methods (just like “Lean Manufacturing”) created/included in Toyota’s TPS car manufacturing system. The success stories and case studies were later adopted/transformed into one the most popular software development tools/frameworks.

The Work Flows~~~

To understand and use the Kanban, it’s a visualized workflow the “flows” from left to right on a board (see figure below). In the beginning of the project, every small piece of work is written on a card. and put them all on the first column (the To-Do, or Backlog column). When the team starts working on these small-chunk of work piece by piece (or card by card in this case), team members move the cards they are work onto the corresponding stages/columns.

Project team members will tackle each work item card by card, and moving the card from left to right. Image source: digite

The main ideas of Kanban

There are 3 main characteristics about Kanban:

  • It’s a tool to help any types of project team to organize work and monitor efficiency through visualizing the workflow status.
  • The key elements on the Kanban board is the scope of work that’s broken down work into manageable smaller pieces .
  • It limits the amount of work allowed in each stages (columns) so that the the team is always in a healthy and sustainable way to deliver.
Kanban method limits amount of work in each stage (column). Image source: Software Process and Management

Why is Kanban Helpful

Through experimenting different types of software development frameworks and tools, we learned that one of the key factors is the process transparency. Kanban helps bring the transparency to the whole team, not just the individual contributors like designers/developers, but also product managers, business team and other stakeholders (e.g. legal, compliance, risk, etc.) The transparency is great for three reasons:

  1. Everyone can see the progress, therefore eliminate the fear of uncertainty and reduce conflict
  2. The visualized workflow board also help others (e.g. stakeholders, partners) understand delivery velocity therefore help manage stakeholders’ expectation
  3. It motivate people to focus on work because they see clearly what card is moving and what card is not

Other benefit

There are other known benefit of adopting Kanban, such as:

  • Project team are not mentally tided to a fixed cycle, which tends to affect their performance stability (e.g. being lazy in the first couple days in a Sprint, then rush before the Sprint deadline)
  • Great responsiveness when priorities change, especially when it changes frequently
  • Ensure quality delivery by limiting the the amount of work being done
  • Compared to other framework, it’s a simplified process which means it’s easy to adopt, and easy to maintain
Kanban encourage team work and bring transparency to both project team and stakeholders. Image source: TechBeacon

How to Adopt Kanban

Here’s a simplified 6-step process to quickly adopt Kanban tool:

  1. Breakdown work into smaller size user stories or tasks
  2. Write them down into cards and put them on the 1st column of the board
  3. Based on the user stories or tasks, discuss with team what are the required stages/columns are
  4. Once the team start working on the project tasks, moving those cards to the corresponding columns
  5. Create a ritual/routines (e.g. daily standup) to discuss the progress, issues, velocity with team members
  6. Revise the task amount limit in each column based on team velocity

Advanced tips

  1. If needed, prioritize the total work, and identify the effort of each with T-shirt sizing technique
  2. If it’s a large size project, create multiple “swimlanes” (see figure below) to better organize the board and prioritize the work
  3. On the back of each card, write down the background info of the task as a quick reminder of what this task is and how it fits into the broader picture

Resource

Kaban Cheat Sheet: https://www.eylean.com/blog/wp-content/uploads/2017/05/Kanban-Cheat-Sheet.png

Image source: https://www.slideshare.net/agilemanager/kanban-largescalensn2012

Comparing to Scrum

For people who are using Scrum framework, they might identify similarity of the “moving cards on a board” part. However, there are some major differences between Scrum and Kanban as listed below:

  1. Overhead: Scrum is process driven framework, which is heavy on rituals, routines, and management. Dedicated Scrum Master is the key for Scrum team to be successful. Kanban, however, is a lighter weight framework, which is easy to understand and adopt, and almost any team member can uses it without dedicated professional’s help.
  2. Cadence: Scrum has a clear cadence (1-N week Sprint), which could be a double edge sword. Kanban is light on scheduling but heavier on self-governance. In other words, the flexibility of Kanban allows people to succeed, but if the team is not motivated enough to focus on speedy delivery, there’s not much of a built-in governance model in Kanban to remediate slow delivery
  3. Iteration: The clear-cut Sprint cycle in Scrum helps team to deliver in time, but sometimes the clear cut might slice the meaningful delivery into meaningless fractions. Kanban, on the other hand, has the flexibility for team to build end-to-end features/ journey without specific time constraints.
Image source: WorkFront

Summary

  1. Kanban’s visualized board brings transparency and collaboration opportunities to both project team and stakeholders;
  2. Strict with the capacity intake, but loose about delivery timeline, makes Kanban a good tool to adopt when the project priorities are volatile;
  3. The simplicity and flexibility makes Kanban easy to adopt and easy to change based on different project needs. However, it doesn’t provide tighter project control, and relies on highly effective self-organized team to make it work.

Do you have any pro tips of using Kanban that you want to share? I’d like to learn from you.

ABC. Always be clappin’.

To see more

All Daily Agile UX tips

--

--