Page 112 -
P. 112
CHAPTER 4 SOFTWARE PROCESS AND PROJECT METRICS 83
FIGURE 4.1 Product
Determinants
for software
quality and
organizational
effectiveness
(adapted from
Customer Business
[PAU94])
characteristics conditions
Process
People Technology
Development
environment
performing the umbrella activities and the generic software engineering activities
described in Chapter 2.
Grady [GRA92] argues that there are “private and public” uses for different types
of process data. Because it is natural that individual software engineers might be sen-
sitive to the use of metrics collected on an individual basis, these data should be pri-
vate to the individual and serve as an indicator for the individual only. Examples of
private metrics include defect rates (by individual), defect rates (by module), and errors
found during development.
The “private process data” philosophy conforms well with the personal software
process approach proposed by Humphrey [HUM95]. Humphrey describes the approach
in the following manner:
The personal software process (PSP) is a structured set of process descriptions, measure-
ments, and methods that can help engineers to improve their personal performance. It pro-
vides the forms, scripts, and standards that help them estimate and plan their work. It shows
them how to define processes and how to measure their quality and productivity. A funda-
mental PSP principle is that everyone is different and that a method that is effective for one
engineer may not be suitable for another. The PSP thus helps engineers to measure and
track their own work so they can find the methods that are best for them.
Humphrey recognizes that software process improvement can and should begin at
the individual level. Private process data can serve as an important driver as the indi-
vidual software engineer works to improve.
Some process metrics are private to the software project team but public to all
team members. Examples include defects reported for major software functions (that