|
|
Use Metrics to Manage Management Metrics |
|
|
16-Point Plan Metrics Overview
Most software metrics are designed to give a manager an accurate
picture of where they are and what is going on in the software
development. And, while predicting the future is a notoriously
difficult undertaking, some metrics can provide advance warnings
about what lies ahead. While it seems obvious that a good manager
should prefer using quantitative information to relying on gut-instincts
for making management decisions, curiously, this is not always
true in the case of software metrics. When managers are questioned
about their reluctance to use software metrics, they will often
complain that the metrics are too complex, too expensive to collect,
not measuring the right things, or presenting an inaccurate picture
of the situation. The guidance provided here is designed to help
you avoid those difficulties with your software metrics program. |
|
|
The Keys to Setting Up a Successful Software Metrics Program The keys to setting up a successful software metrics program, then, are:
With this guidance in mind, let's turn to selecting the proper
metrics. |
|
|
Deciding on the Metrics to Collect
Use of this checklist will help ensure the collection of an
efficient suite of software development metrics that directly
relates to management goals. Periodic review of existing metrics
against this checklist is recommended. |
|
|
Managing from Metrics With the metrics decided upon, a database for the metrics
information must be created. Metrics are not useful if they can
not be easily reviewed, analyzed for trends, compared to each
other, and displayed in a variety of manners. If you are going
through the expense of collecting metrics, don't short -change
yourself in the area of making the metrics useful, but be sure
to take advantage of free metrics tools available where they
are appropriate (example sources of tools include: Example of How to Use Metrics
Establishing trigger values and providing predetermined management
levels to be involved focuses the use of metrics and directs
management attention to deal with the most significant problems.
Following a process like this makes efficient use of metric information. |
|
|
Minimum Set of 16- Point Plan Metrics Often, a single metric can be used to measure progress in several management issues of concern. Other times it requires several different metrics to adequately measure a single area of management concern. The following sections will provide a recommended minimum set of software project metrics that will provide a top-level overview of project status and progress, as well as provide early identification of emerging problems. The minimal set of metrics includes the following list of eight measurement areas, most of which consist of a single metric, but some of which include several tightly related metrics. These measurement areas are:
Figure 1 provides a mapping of these metrics into the three major areas of the 16-Point Plan. ![]() Application of the 16-Point Plan metrics provides all project
stake holders a common and quantitative means to monitor risk
and project success in a timeframe that which will help the manager
to avoid or minimize project impacts and costs of corrective
action. Practice Measures 1. Earned Value Measurement Earned value techniques measure progress against a plan. There
are more than a dozen metrics normally computed by earned -value
systems, but the two most practical, high-level progress indicators
are the Cost Performance Index (CPI) and the Schedule Performance
Index (SPI) (both current and cumulative). These metrics measure
the percentage performance in achieving your plan's milestones
and cost targets. The Defense Systems Management College (www.dsmc.dsm.mil)
is a good source of information about establishing earned -value
systems. 2. Staffing The second high-level measurement area in the minimal set
of metrics relates to staffing. There are a few key indicators
that will provide information that will give advance warning
about staffing problems. These are key staff percentage utilization,
staffing profile, and turnover. "Unfilled positions"
is sometimes substituted for staffing profile. There will always be turnover in a software organization.
Some turnover is good. Normal industry turnover rates change
with market conditions, locale, and type of software being developed.
Turnover can cause project disruption, requiring training of
new employees, disruption of learning curves, and inefficient
re-start of tasks. Projects should always allow for an expected
turnover rate in their plan. When the turnover rate significantly
exceeds the expected turnover rate, it should be a major cause
of concern for the program. 3. Schedule Compression Schedule compression is often an indicator of a flawed plan.
Excessive schedule compression indicates an expectation of performance
far exceeding that which has been experienced in the past. It
should be noted that, on very rare occasions, programs have been
successful with high levels of schedule compression, but this
event is so rare that abnormal schedule compression should be
considered as advance notice that the planned schedule will not
be achieved. 4. Requirements Management System requirements define user needs and expectations. Software
requirements bridge the gap between the system-level requirements
and the software design. Requirements traceability links system
requirements to derived requirements for hardware and software
modules, helping ensure that system requirements are implemented.
Requirements analysis is often the least understood and most
difficult part of the software life cycle. Two key indicators
provide a top-level overview of the requirements management effectiveness
of the program: requirements completeness and requirements churn. 5. Structured Peer Review Action Item Age The defect profile chart provides a quick summary of the time in the development cycle when the defects were found and the number of defects still open. It is a cumulative graph. An example is provided below.
Test Adequacy Summary
These metrics, however, provide only the top-level view of a project. Good project management requires the addition of metrics directly related to a management issue that you wish to address. Section 1 provided a method to do this and provided guidance on the selection of appropriate metrics. |