140 ◾ Simple Statistical Methods for Software Engineering
An example of value generated by these metrics is available in a case study
by Martin Iliev [2]. Coupling metrics lead to “good encapsulation, high level of
abstraction, good opportunity for reuse, easy extensibility, low development costs
and low maintenance costs.” Further, cyclomatic complexity metrics lead to “low
maintenance costs, collective code ownership, easy to test and produce good code
coverage results.” Martin Iliev has established a firm business case for these metrics.
From the above example, it may be seen that metrics are agile because of
the way they are used and the value they create and not because of their
internal characteristics.
In yet another case, Frank Maurer and Sebastien Martel [3] study productivity
in extreme programming in OO projects using the following four metrics:
1. LOC/effort
2. Methods/effort
3. Classes/effort
4. (Bugs + features)/effort
ey present evidence for improvement in productivity after introducing XP
using the four metric data, a fairly obvious use of agile metrics to find ROI of pro-
cess improvement. It may be noted that they have considered the metric productiv-
ity instead of velocity in this case study.
Case Study: Earned Value Management
in the Agile World
BUCs in agile projects remind us of the earned value graph (EVG) in conventional
projects. BUC and EVG look alike. e similarity runs deeper. Earned value man-
agement is widely accepted as a best practice in project management and is cov-
ered well in Project Management Body of Knowledge. Managing milestones makes a
manager agile in sharp contrast with one who chooses to manage at the task level.
ere are typically about eight milestones in a project, and all the project manager
had to do is to monitor earned value, planned value, and cost at every milestone
and connect the dots and plot EVG. As milestones pass by, the project manager is
able to predict future performance by seeing trends. A BUC does exactly that. We
use sprints instead of milestones. Value is measured in terms of finished and tested
stories.
e implementation of EVM in agile projects is explained by John Rusk [4],
who observes, “Agile and EVM are a natural fit for each other.”
Anthony Cabri and Mike Griffith [5] explore EVM usage in agile projects, cre-
ate examples of BUCs, and tackle the issue of changing scope with EVM.