Skip to end of metadata
Go to start of metadata

Kanban is a methodology that constrains the amount of work that can be assigned to a particular workflow state at any one time. This helps teams to optimise their lead time (or cycle time) — that is, the average time taken to complete a task.

  • Many agile development teams find that Kanban is particularly well suited to bugfix or maintenance releases, where incoming tasks are triaged and then actioned according to their priority. As soon as there are enough completed tasks to constitute significant value, a minor version is created and released.
  • Devops teams, or agile delivery teams, often use Kanban. These teams set a definition of done that includes the delivery of value to the customer.

This tutorial will walk you through the process of setting up your Kanban environment, and continuously monitoring it so as to make your cycle time as short — and predictable — as possible.

On this page:

1) Visualise your workflow

Visualising your existing process and workflow is essential to understanding what the team is currently working on.

  1. You will need to create (or choose) a board that displays your project(s). See Creating a Board.
  2. If you are using a customised workflow, you will need to set up suitable columns to map to your workflow statuses. See Tutorial - Adding a Column to a Board.
  3. Display the current work on a JIRA Wallboard and bring transparency to the team's activities (see Screenshot 1).

2) Limit the work in progress

Specifying columns constraints allows a team to limit the amount of work-in-progress, as WIP directly affects your cycle time (see Screenshot 2). The team will have visibility into when a constraint has been busted, and can then take corrective action.

  1. Go to your board and select Tools > Configure.
  2. Click the 'Columns' tab, then for the relevant column click either the 'Min' box (yellow) or the 'Max' box (red). Type the new value and press the 'Enter' key. (For more details, see Configuring Columns.)
    (tick) As a starting point, you may want to set a 'Max' value of 6 for the 'In Progress' column.

3) Work on Issues

On a daily basis,

  1. Go to the Kanban board on your preferred board (see Using the Active sprints or Kanban board).
  2. Choose the highest ranked issue in the To Do column and drag them to the In Progress column. (See Transitioning an Issue.)
  3. As you complete each issue in the In Progress column, drag it to the Done column. (See Screenshot 3.)

4) Measure the Cycle Time

At regular intervals,

  1. Go to your preferred board.
  2. Select Reports > Control Chart (see Viewing the Control Chart). This will show you the average length of time that it took to complete each issue — that is, your cycle time. See Screenshot 4.
    (tick) If you want to see the average length of time that issues spent in a particular status, filter the issues to show only specific columns by using the Refine option in the top right of the report.

By visualising a team's workflow and limiting work-in-progress you reduce waste, facilitate a better flow of work across the board, and deliver value to customers faster.

Screenshot 1: a board displayed on a Wallboard



Screenshot 2: CFD showing how WIP affects your cycle time

Kanban CFD


Screenshot 3: Transitioning an issue

Kanban process

 

Screenshot 4: Control Chart showing the mean and actual time taken to complete issues


 

7 Comments

  1. You should probably update this documentation as it is currently misleading:

    "The team will be notified when a constraint has been busted, and can then take corrective action." 

    Since "notified" has a very distinct meaning in JIRA it makes it sound like you are able to have an email notification sent when this action occurs.  Maybe the documentation should say something like "The team will have visibility into when a constraint has been busted"?

    1. Thanks for your suggestion, now updated.

  2. Question:  We are trying to set WIP for a column - but include in this calculation an EXCLUSION of items that are flagged as "on hold" which would give us the ability to track total work in progress across in a particular stage of work - but MINUS a swimlane of items that are "on hold" for some reason or another.

     

    Is there any documentation on how to tweak WIP calculations to EXCLUDE some data like this?

  3. HI Benjmin, we are using the kanban board, and for control chart report, you can refine what status you want to report on.

  4. We had our developers write a grease monkey script to do this.  when something is flagged (impediment) we dont count it against wip. JIRA cannot do this by itself 

  5. Is there a way to see time logged on (single)issue at a specific column in the Kanban board? I can view the average, but to understand which member of the team is the most productive and who lags behind I need to compare exact amount of time logged on specific column for specific issue.