Friday, July 3, 2009

Common Agile Metrics

One of the questions that often arise is in regards to Agile metrics. What metrics should we capture for our Agile or Scrum teams? The answer varies based on the goals of the team, project, and organization. With that said, below are some of the most commonly used metrics for Scrum teams.

For teams using an iterative Agile process, like Scrum, the most common metrics revolve around story points. Commonly, Scrum iterations (sprints) are comprised of a set of user stories with each user story given an estimate in story points.

At the iteration level, the team commits to the stories they can complete in the iteration. The sum of the story points for these stories is the projected velocity for the iteration. Once the iteration is completed, the sum of the story points for all of the completed user stories is the team’s actual velocity for the iteration.

Teams may also decompose stories into tasks and these tasks can be assigned estimates as well. These estimates may be hours to complete, due date, or any other applicable unit of measure. This decomposition and task level estimation is optional; I recommend this level of granularity to be based upon the needs of the team and project.

Metrics for the Project

For a project that has a set beginning and end state, the project team can initially spend a bit of time creating all of the high level user stories and providing initial story point estimates. Once this is done, the team has an initial summary total of story points for the project.

Table 1 displays the metrics covered at the project level.

· Baseline Story Point represent the remaining story points at the start of the iteration

· Story Point Updates represent story points that are added or removed to the overall project during the iteration

· Story Points Completed represent the story points completed for the iteration

· Cumulative Story Points Delivered represent total story points delivered to date

· Story Points Remaining represent the remaining story points at the end of the iteration

· Ideal Pace represent the pacing of the project based upon the story points remaining and estimated velocity of the team. In this example, I show it as it was at the start of the project, however, this should be updated often. Updating at the end of each iteration is ideal.

Table 1 - Project Metrics

IterationBaseline Story PointsStory Point UpdatesStory Points CompletedCumulative Story Points DeliveredStory Points RemainingIdeal Pace
0120000012001200
11200196606013361125
213362107513514711050
3147122672021426975
41426-78752771273900
5127338883651223825
6122330794441174750
71174-10682526986675
89862290616918600
9918-50100716768525
10768-1092808666450
116662595903596375
1259640981001538300
13538-301081109400225
14400-401191228241150
15241-23105133311375
16113-1598143100

Figure 1 displays the Project Burn Up and Project Burn Down chart for the same project. The Burn Up line displays the story points completed. The Burn Down line displays story points remaining. For organization that are familiar with EVM type tracking, these Burn Up and Burn Down values can often be translated to EVM measures.

Figure 1 - Project Burn Up and Burn Down Chart

chart

Metrics for the Iteration

The Iteration Burn Up and Iteration Burn Down chart is similar to the Project Burn Up and Project Burn Down charts, but the iteration chart tracks the work at an iteration level. In Figure 2 we are tracking the iteration based on hours completed and hours remaining. We can see that at the end of the iteration, there was 94 hours work of work that was not completed.

Figure 2 - Burn Up / Burn Down Chart in Hours

chart1

Metrics for Team Performance

For a Scrum team, some of the key goals include:

1. Achieving a high completion percentage (actual velocity / projected velocity),

2. Stabilizing velocity

3. Eventually increasing velocity (after 1 and 2)

Figure 3, Figure 4, and Table 2 display metrics captured from an actual Scrum team. These metrics are also useful for on-going teams or projects that do not have a set end state.

Figure 3 – Team Completion Percentage

complete

Figure 4 - Measure of Velocity over Time

velocity

Table 2 - Team Statistics per Iteration

team

Measuring Business Initiatives and Value

To measure work on business initiatives, we can summarize story point allocation based on initiative (see Figure 4). This allows the business sponsor to identify where the effort was spent on their project.

Table 3 - Second Quarter Work Breakdown

Story PointsPercentage
Foundational7822%
Maintenance93%
Optimization16848%
New Product9828%

Additionally, the business teams can also assign business points, similar to story points. Whereas story points measure the complexity of a story to implement, the business points measure the business value of a story once it is implemented. This display of value and effort can help the business determine implementation priority and goals.

Table 4 - Second Quarter Work Breakdown

Story Points

Business Points

Comment

Feature 1

40

8

High effort, lower value

Feature 2

20

13

High effort, decent value

Feature 3

4

8

Low effort, mid value

Feature 4

13

40

Mid effort, high value

Feature 5

5

20

Low effort, high value

No comments:

Post a Comment