Screenshot: Example Control Chart
About the Control Chart
The Control Chart can show the cycle time (or lead time) for your product, version or sprint. It takes the time spent by each issue in a particular status (or statuses), and maps it over a specified period of time. The average, rolling average and standard deviation for this data is shown.
Here are some of the ways that you could use a Control Chart:
- Analyse your team's past performance in a retrospective
- Measure the effect of a process change on your team's productivity
- Provide external stakeholders with visibility of your team's performance
- For Kanban, use past performance to set targets for your team.
Viewing the Control Chart
To view the Control Chart for your board:
- Navigate to the desired board.
- Click Reports.
- Select Control Chart from the Reports dropdown at the top of the page.
Tip: Click How to read this chart at the top of the chart to view a short description of the Control Chart.
- Configure the chart as desired. The screenshot at the top of this page highlights the controls that you can use to configure the Control Chart.
If you are using Internet Explorer 8, the Control Chart will not work.
Printing the Control Chart
To print the report, view the report and use the print functionality for your browser. The report will fit to either A4 or Letter-sized pages in both portrait and landscape (note, there is a known issue printing in landscape using Chrome).
Understanding the Control Chart
Before you start using the Control Chart, you should get to know how it works. The following questions and answers cover the key functionailty of the Control Chart:
Cycle time is the time spent working on an issue — typically, the time taken from when work begins on an issue to when work is completed, but also includes any other time spent working on the issue. For example, if an issue is reopened, worked on, and completed again, then the time for this extra work is added to the cycle time.
The statuses used to calculate the cycle time depend on the workflow you are using for your project. You should configure the Control Chart to include the statuses that represent the time spent working on an issue (note, the Control Chart will attempt to select these statuses automatically).
For example, if you are using the JIRA , you may consider work to have started on an issue when it transitions to 'In Progress' and work to have completed when it transitions out of 'In Review' (to 'Done'). You would show this on the Control Chart by selecting 'In Progress' and 'In Review' as the Columns, as that would show the time that issues have spent in those two statuses.
Tip: you can also configure the Control Chart to show lead time data instead of cycle time data. Just select the statuses that represent the time spent on an issue; from the time it is raised until work was completed.
The rolling average (blue line on the chart) is issue-based, not time-based. For every issue shown on the chart, the rolling average (at that point in time) is calculated by taking the issue itself, X issues before the issue and X issues after the issue, then averaging their cycle times. 20% of the total issues displayed (always an odd number and a minimum of 5 issues) are used in the calculation.
For example, in the screenshot below, at the point of time where an issue (green dot) is shown, the rolling average is calculated as follows:
- Take the issue plus four issues before and four issues after (nine issues total).
- Average the cycle times for the nine issues.
- Map the blue line to the calculated average.
If the Timeframe is reduced to 'Past two weeks', the number of issues used would reduce, as there are less total issues available to use for the calculations.
This method produces a steady rolling average line that shows outliers better (i.e. rolling average doesn't deviate as sharply towards outliers). The rolling average line is also easy to understand, as the inflections are related to the positions of issues.
If you would like to know more about why the rolling average calculation is based on a percentage of the total issues, rather than a time period, see this document: Comparing different methods of calculating the rolling average on the Control Chart.
The blue shaded area of the control chart represents the standard deviation, that is, the amount of variation of the actual data from the rolling average.
The standard deviation gives you an indication of the level of confidence that you can have in the data. For example, if there is a narrow blue band (low standard deviation), you can be confident that the cycle time of future issues will be close to the rolling average.
As shown on the chart legend, each dot represents an issue or a group (cluster) of issues:
- The vertical placement of the dot represents the cycle time for the issue, i.e. the 'Elapsed Time'. For a cluster of issues, the dot is placed at the average cycle time for the issues.
- The horizontal placement indicates when the issue(s) transitioned out of the last status selected on the chart (in Columns). For example, if you are using the JIRA and have selected 'In Progress' and 'In Review' as the Columns on the Control Chart, the dots will indicate when the issue transitioned out of the 'In Review' status.
The summary statistics (average, median, min, max) are displayed at the top of the chart. The
h characters are used to represent weeks, days and hours respectively for these values.
1w— This is always equal to 7 days, regardless of what is configured for standard working days and non-working days.
1d— This is always equal to 24 hours.
For example, the max (cycle time) may be shown as
1w 2d 4h, which represents a period of 1 week + 2 days + 4 hours. This is (7+2)*24 hours, i.e. 216 hours.
If the maximum Elapsed Time value on the chart is less than 30 days, then a linear scale is used for the y axis. If it is 30 days or greater, than a cube-root power scale is used.
When you change the Timeframe, you may include issues with an elapsed time of greater than 30 days when you previously did not, or vice versa. This will change the scale, as described above.
Linear scale for Elapsed Time
Cube-root power scale for Elapsed Time
Tips and examples
Learn how to tweak your Control Chart to show the data you need with the following examples:
Tip 1: Remove unwanted outliers
The Control Chart can help you identify outliers. On closer examination, you may determine that certain outliers are invalid due to human error. For example, you may have a story that was started but stopped, then eventually dropped back to the backlog but not returned to the 'To Do' status. The time that the issue spent In Progress would incorrectly skew the data for your Control Chart.
To remove unwanted outliers from your Control Chart, add a label to each outlier issue (e.g. outlier) and create a Quick Filter with this JQL:
labels is EMPTY or labels not in (outlier). Configure your Control Chart to use this Quick Filter.
Example Control Chart with invalid outliers
Example Control Chart with invalid outliers removed (note the smaller scale for 'Elapsed Time')
Tip 2: Remove triage casualties
In a Control Chart, you generally want to track the issues that are resolved as 'Fixed'. Issues that are triaged and resolved as a duplicate, answered, tracked elsewhere, etc can skew the data, bringing the average cycle time down considerably.
To remove triage casualties from your Control Chart, create a Quick Filter with this JQL:
resolution in (Fixed). Configure your Control Chart to use this Quick Filter.
Example Control Chart including issues where the resolution is not 'Fixed'
Example Control Chart excluding issues where the resolution is not 'Fixed' (note the higher average cycle time)
Tip 3: Exclude current work
The Control Chart shows data for issues that have been in a selected column but are no longer in a selected column. This gives the cycle time (total elapsed time) for the issues. However, by default this will include issues which are still moving across the board.
To view the data for completed work only in your Control Chart, create a Quick Filter with this JQL:
status in (Resolved, Closed). Configure your Control Chart to use this Quick Filter.
Example Control Chart including all issues
Example Control Chart including issues where the status is 'Resolved' or 'Closed' only
Learn how to interpret a Control Chart with the following examples:
- The productivity of the team is increasing: indicated by the downward trend of the rolling average.
- The cycle time of future issues are likely to be close to the rolling average (2 days or less): indicated by the low standard deviation (narrow blue shaded area).
- The team's productivity is pretty consistent: indicated by rolling average being close to the average.
- There are obvious outliers on Tue 14 and Wed 15 (7 days and 10 days elapsed time respectively, compared 2 days on average) that should be investigated.
- Data is becoming more predictable over time.
If you encounter an issue that is not on this list, please raise it in our issue tracker.