You are on page 1of 21

Goals of Software Metrics

An accurate assessment of progress to date. Insight into the quality of the evolving software product. A basis for estimating the cost and schedule for completion with increasing accuracy over time.

Seven Core Metrics

Metrics Characteristics

They should be simple, objective, easy to collect, easy to interpret, and hard to misinterpret. Collection can be automated and nonintrusive. Assessment is continuous and nonsubjective.

They are useful to both management and engineering personnel for communicating progress and quality in a consistent format. Their fidelity improves across the life cycle.

Three Basic Management Metrics


Technical progress Financial status Staffing progress

Financial and staffing metrics are easy. They always have been easy. The real problem is to measure technical progress with objectivity.

Typical Project Progress

Three Progress Metrics


The progress can be seen as. Software architecture team:


Software development team: Software assessment team:

number of use cases demonstrated.

number of source lines of code under configuration management number of change orders closed Number of change orders opened Test hours executed Evaluation criteria met

Software management team:


Milestones completed.

Earned Value System

Staffing Profile

Staffing and Team Dynamics

Metric:
percent

staffed. versus attrition.

Metric: staffing momentum


additions

Glaring indicator of future trouble:


Unplanned

attrition. Usually due to personnel dissatisfaction with management, lack of teamwork, or high probability of failure to meet objectives.

Four Quality Indicators

Change traffic and stability


Provides

insight into stability, convergence toward stability, predictability of completion

Breakage and Modularity


Breakage:

extent of change needed. Modularity: average breakage trend over time.

Rework and Adaptability


Rework:

amount of effort needed to fix. Adaptability: rework trend over time.

Maturity
Average

time between faults.

Stability over Product Life Cycle

Modularity over Life Cycle

Adaptability over Life Cycle

Maturity over Life Cycle

Quality Indicator Characteristics


They are derived from the evolving products, not other artifacts. They provide insight into waste. They are dynamic for an iterative process. Focus is on trends and changes in time. Combination of current value and trends provide tangible indicators for effective management action.

Metrics Evolution over Life Cycle

Metrics Classes

Comment on Metrics

Metrics usually display the effects of problems, not the underlying causes of problems. Reasoning and synthesis are required for solution. Although measuring is useful, it doesnt do any thinking for the decision makers.
Value

judgments can not be make by metrics; they must be left to smarter entities such as software project managers.

However, metrics can provide data to help ask the right questions, understand the context, and make objective decisions.

Metrics Automation the Software Project Control Panel

On-line version of status of artifacts.


Display

panel that integrates data. A dashboard. Display for


project

manager (overall values) test manager (status of an upcoming release) Configuration Manager (change traffic) etc.

Software Project Control Panel

Summary for Project Control and Instrumentation


Progress toward project goals and quality of products must be measurable. The most useful metrics are extracted from the evolving artifacts. Management and quality indicators must be used continuously as project proceeds. Trends and status measures must be used together. Technical progress is the most difficult item to measure.

You might also like