Software sizing problems in software engineering metrics

  • Authors:
  • Edward G. Rodgers

  • Affiliations:
  • Department of Systems Science, University of West Florida, Pensacola, Florida

  • Venue:
  • CSC '88 Proceedings of the 1988 ACM sixteenth annual conference on Computer science
  • Year:
  • 1988

Quantified Score

Hi-index 0.00

Visualization

Abstract

Effort estimation models such as COCOMO (COnstructive COst MOdel) or COPMO (COoperative Programming MOdel) typically use KDSI (thousands of delivered source instructions) as the primary input variable to determine person-months and development time for software development projects. Such models have the general form [BOE81], [CON86]: E = @@@@ where n = number of modules E = effort, in man-months (MM) S = software sizing estimate (KDSI) a,b = development mode constants c1 = complexity multipliers based upon project conditionsA great deal of research has been conducted on effort model validation using databases of actual performance for a variety of projects, but little research has been reported on improving the quality of the original sizing estimates.PERT-type LOC (lines of code) sizing estimates have been suggested which utilize the activity-time mean and variance estimation equations used in PERT networks to estimate the mean and variance of module size for a sub-divided software product [BOE81]. These equations have been used in project management for almost thirty years, but were the subject of a great deal of criticism regarding their theoretical foundation, especially regarding the assumption of such a narrowly constrained Beta distribution [CLA62], [GRU62], [MAC64].Research has shown that more reliable estimates of the moments of PERT-type distributions, especially of the variance, may be obtained by using percentile estimates rather than “end-point” estimates for the optimistic and pessimistic values. Fifth and ninety-fifth percentile estimates lead to moment calculations which are robust to variations in the shape of the distribution [MOD68]. It has also been found that these percentile estimates correspond more closely to the actual estimates obtained when asking for end points.Variations to the PERT estimation equations which use these percentile estimates for module size instead of the standard end-point estimates are recommended: S1 = (a′1 + 4m1 + b′1) /6 &sgr;21 = (b′1 -a′1)2/10.2 where S1 = mean module size in KDSI &sgr;21 = variance of module size a′ = 5th-percentile module size m = most likely module size b′ = 95th-percentile module sizeOverall project size and variance would follow the typical PERT approach by summing the module mean and variance over the entire software product: S = @@@@ V = @@@@The project standard deviation could then be used to compute an upper confidence interval of S for model input to determine the desired level of confidence in the forecasted effort.An example of software sizing in the COCOMO environment is demonstrated using the revised PERT equations. Effort forecasts calculated with these estimates are compared with the results using standard PERT sizing. Recommendations for additional research in improving effort forecasting are also presented.