Visualising Work Item Aging in JIRA

Visualising Work Item Aging in JIRA

 m

We can manage the flow of work better by being more data-driven. One of the primary flow metrics to achieve this is Work Item Age.

The Definition of this metric from The Kanban Guide is 'The amount of elapsed time between when a work item started and the current time'.

Visualising this metric on our boards enables us to manage work currently in our system and provides signals to take action earlier so that the team can mitigate the risk of work taking longer than they initially anticipated.

Below are steps to show how to use out-of-the-box JIRA functionality to enable the visualisation of Work Item Aging in JIRA Kanban or Scrum boards.

Prerequisites

You will need to have JIRA admin or JIRA board admin permissions depending on what changes you may need to make as described in the steps below.

JIRA enables you to create your own workflow, where each workflow state also belongs to a JIRA Status Category.

Ensuring each workflow state is associated with the correct Status Category means a simplified JQL can be used to track the point when a work item is started.

The JIRA Status Categories are:

JIRA colour coding for Status Category workflow states

For the sake of clarity:

  • Any workflow states that are before the point when work on an item is actually started (e.g. Refinement or replenishment workflow) should be categorised in the To Do status category.
  • Workflow states representing activities to complete a ticket item should be categorised as In Progress
  • All completion workflow states (e.g. Done, Cancelled etc.) are categorised as Done

Below is a simple example workflow with correctly associated JIRA Status Categories

Showing work Item Aging in a JIRA board

Visualising Work Item Aging for items that are moved from the To Do workflow Status Category to In Progress

  1. From the JIRA Board Settings select the Card colours setting
  2. From the 'Colours based on' drop-down, select the Queries option
  3. Add the JQL below along with a colour representing the associated item age in days.

"statusCategory = "In Progress" AND statusCategoryChangedDate <= -11d"

(The number of days should be changed to what works for you)

An example configuration is shown below denoting what age each colour represents from the point the work item was moved to the 'In Progress' JIRA Status Category ...

  • Red - A work item age is 11 or more days ago
  • Orange - A work item age is 7 or more days ago
  • Yellow - A work item age is 3 or more days ago
  • Green - A work item age is less than 3 days ago (Please note that this JQL is slightly different than the others)

The order of the Queries is important. JIRA will find the first match starting from the top then stop.

Visualisation on a configured board

Using the JQLs above, the age colours for each card would be represented on a board as below.

Essentially, when a work item is moved from 'Selected for Development' (To Do Status Category) to 'In Progress' (or any workflow state in the In Progress status Category), the clock starts ticking.

Looking at the thin ticket colour line on the left of each ticket on the board, we can ascertain that:

  • PBI-6 was started less than 3 days ago (green)
  • PBI-5 was started 3 or more days ago but less than 7 days (yellow)
  • PBI-4 was started 7 or more ago but less than 11 days (orange)
  • PBI -3 was started 11 or more days ago and still has not been completed (red)

How to use the signals

The Kanban Guide definition for Service Level Estimation is 'The SLE is a forecast of how long it should take a single work item to flow from started to finished'. This is set and agreed upon by the team for the team.

To help actively manage our current work, the colour coding can represent signals so that we can start asking questions and taking action.

Using the Service Level Estimation as a reference to understand if work is likely to be completed within the expected single item time forecast.

e.g. If the team Service Level Expectation is 10 days with an associated probability, we can use the ticket colour change to orange beforehand as a signal to manage the work and ask questions about what may be slowing work on the ticket down such as:

  • Is more help needed?
  • Is it blocked?
  • Can we swarm on the ticket to complete it within our Service Level Expectation?
  • Is this work bigger than we first thought?
  • Can we break it down?

Additional Enhancements

  • Days in Column

Enabling the 'Days in column' option from the Board Settings -> Card Layout setting can give additional information on how long a work item has been in a specific workflow state. However, moving tickets back and forth on the board can blur this metric.

  • Quick Filters

The same JQLs can be added as board Quick Filters to easily see specific aged tickets and reduce the 'noise'.

E.g. Quick filter to only show work items that are 11 days or older.

More advanced/flexible option

Other useful variations on this approach include how to start the clock from a specific workflow state rather than from the Status Category change point.

Feel free to reach out if anyone is interested in how to do this.