12 Making process predictions


A. Törn - Contents - - Previous chapter - Next chapter - - Previous page - Next page

12.1 Good estimates

Figure 12.1 illustrates some of the predictions that guide us through the software life cycle. Predictions must be close enough to the real values in order to be helpful.

Because software project work is dependent on several factors out of our control the effort needed to complete a project actually is not a single number but varies according to some probalility distribution.

An estimate of the effort is the median of this distribution, see Figure 12.2. For this distribution we can expect that in 90 % of all cases the effort in months will lay in the interval [8, 16]. The variation is dependent on the maturity of the development process. This means that the quality of the estimate might be low even if the estimation accuracy is good.

A measure of estimation accuracy is the relative error RE

RE = (A - E) / A

wher E is the estimate, and A is the realized value. The mean relative error for n projects is

-RE = (RE1+ ... +REn) / n
The magnitude of the relative error is MRE = abs(RE), and the mean magnitude of relative error is

-MRE = (MRE1+ ... +MREn) / n
Conte, Dunsmore, and Shen suggest that an acceptable value of -MRE is a value less or equal 0.25. They use this notion to define a mesure of prediction quality by defining an estimation technique to be acceptable if PRED(0.25) is at least 0.75, where

PRED(q) = k / n

and k is the number of projects whose -MRE is less than or equal to q.