Burn down chart

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
A sample burn down chart for a completed iteration, showing remaining effort and tasks for each of the 21 work days of the 1-month iteration.

A burn down chart is a graphical representation of work left to do versus time. The outstanding work (or backlog) is often on the vertical axis, with time along the horizontal. That is, it is a run chart of outstanding work. It is useful for predicting when all of the work will be completed. It is often used in agile software development methodologies such as Scrum. However, burn down charts can be applied to any project containing measurable progress over time.

Outstanding work can be represented in terms of either time or story points.[1]

Reading burn down charts

File:Burn down chart.png
A project burn down chart[2]

A burn down chart for a completed iteration is shown above and can be read by knowing the following.

X-Axis The project/iteration timeline
Y-Axis The work that needs to be completed for the project. The time or story point estimates for the work remaining will be represented by this axis.
Project Start Point This is the farthest point to the left of the chart and occurs at day 0 of the project/iteration.
Project End Point This is the point that is farthest to the right of the chart and occurs on the predicted last day of the project/iteration
Ideal Work Remaining Line This is a straight line that connects the start point to the end point. At the start point, the ideal line shows the sum of the estimates for all the tasks (work) that needs to be completed. At the end point, the ideal line intercepts the x-axis showing that there is no work left to be completed. Some people take issue with calling this an "ideal" line, as it's not generally true that the goal is to follow this line. This line is a mathematical calculation based on estimates, and the estimates are more likely to be in error than the work. The goal of a burn down chart is to display the progress toward completion and give an estimate on the likelihood of timely completion.
Actual Work Remaining Line This shows the actual work remaining. At the start point, the actual work remaining is the same as the ideal work remaining but as time progresses, the actual work line fluctuates above and below the ideal line depending on this disparity between estimates and how effective the team is. In general, a new point is added to this line each day of the project. Each day, the sum of the time or story point estimates for work that was recently completed is subtracted from the last point in the line to determine the next point.

Measuring performance

Actual Work Line is above the Ideal Work Line If the actual work line is above the ideal work line, it means that there is more work left than originally predicted and the project is behind schedule.
Actual Work Line is below the Ideal Work Line If the actual work line is below the ideal work line, it means that there is less work left than originally predicted and the project is ahead of schedule.

The above table is only one way of interpreting the shape of the burn down chart. There are others.[3]

Removing variability in time estimates

One issue that may be noticed in burn down charts is that whether or not the Actual Work line is above or below the Ideal Work line depends on how accurate the original time estimates are. This means that if a team constantly overestimates time requirements, the progress will always appear ahead of schedule. If they constantly underestimate time requirements, they will always appear behind schedule. This issue is corrected by incorporating an efficiency factor into the burn down chart. After the first iteration of a project, the efficiency factor can be recalculated to allow for more accurate estimates during the next iteration. Some templates automatically calculate the efficiency as a project progresses. This can be used to identify areas/phases where inaccurate estimates consistently occur.[4]

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.

Further reading