There are three fundamental sets of management metrics: technical progress, financial status, and staffing progress. By examining these perspectives, management can generally assess whether a project is on budget and on schedule. Financial status is very well understood; it always has been. Most managers know their resource expenditures in terms of costs and schedule. The problem is to assess how much technical progress has been made. Conventional projects whose intermediate products were all paper documents relied on subjective assessments of technical progress or measured the number of documents completed. While these documents did reflect progress in expending energy, they were not very indicative of useful work being accomplished.
The management indicators recommended here include standard financial status based on an earned value system, objective technical progress metrics tailored to the primary measurement criteria for each major team of the organization, and staffing metrics that provide insight into team dynamics.
The various activities of an iterative development project can be measured by defining a planned estimate of the work in an objective measure, then tracking progress (work completed over time) against that plan (Figure 13-1). Each major organizational team should have at least one primary progress perspective that it is measured against. For
Figure 13-1. Expected progress for a typical project with three major releases the standard teams discussed in Chapter 11, the default perspectives of this metric would be as follows:
• Software architecture team: use cases demonstrated
• Software development team: SLOC under baseline change management, . SCOs closed
• Software assessment team: SCOs opened, test hours executed, evaluation criteria met
• Software management team: milestones completed 13.2.2 Budgeted Cost and Expenditures
To maintain management control, measuring cost expenditures over the project life cycle is always necessary. Through the judicial use of the metrics for work and progress, a much more objective assessment of technical progress can be performed to compare with cost expenditures. With an iterative development process, it is important to plan the near-term activities (usually a window of time less than six months) in detail and leave the far-term activities as rough estimates to be refined as the current iteration is winding down and planning for the next iteration becomes crucial.
Tracking financial progress usually takes on an organization-specific format. One common approach to financial performance measurement is use of an earned value system, which provides highly detailed cost and schedule insight. Its major weakness for software projects has traditionally been the inability to assess the technical progress (% complete) objectively and accurately. While this will always be the case in the engineering stage of a project, earned value systems have proved to be effective for the production stage, where there is high-fidelity tracking of actuals versus plans and predictable results. The other core metrics provide a framework for detailed and realistic quantifiable backup data to plan and track against, especially in the production stage of a software project, when the cost and schedule expenditures are highest.
Modern software processes are amenable to financial performance measurement through an earned value approach. The basic parameters of an earned value system, usually expressed in units of dollars, are as follows:
• Expenditure plan: the planned spending profile for a project over its planned schedule. For most software projects (and other labor-intensive projects), this profile generally tracks the staffing profile.
• Actual progress: the technical accomplishment relative to the planned progress underlying the spending profile. In a healthy project, the actual progress tracks planned progress closely.
• Actual cost: the actual spending profile for a project over its actual schedule. In a healthy project, this profile tracks the planned profile closely.
• Earned value: the value that represents the planned cost of the actual progress.
• Cost variance: the difference between the actual cost and the earned value. Positive values correspond to over-budget situations; negative values correspond to under-budget situations.
• Schedule variance: the difference between the planned cost and the earned value. Positive values correspond to behind-schedule situations; negative values correspond to ahead-of-schedule situations.
Figure 13-2 provides a graphical perspective of these parameters and shows a simple example of a project situation.
The main purpose of the other core metrics is to provide management and engineering teams with a more objective approach for assessing actual progress with greater accuracy. Of all the parameters in an earned value system, actual progress is by far the most subjective assessment. Because most managers know exactly how much cost they have incurred and how much schedule they have used, the variability in making accurate assessments of financial health is therefore centered in the fidelity of the actual progress assessment.
To better understand some of the strengths and weaknesses of an earned value system, consider the development of this book, which was similar in many ways to the development of software. Actual progress could easily be tracked by the current state of each chapter, weight-averaged by the number of pages planned for that chapter.
Was this article helpful?
What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.