Predicting (Individual) Software Productivity

  • Authors:
  • Watts S. Humphrey;Nozer D. Singpurwalla

  • Affiliations:
  • Carnegie-Mellon Univ., Pittsburgh, PA;George Washington Univ., Washington, DC

  • Venue:
  • IEEE Transactions on Software Engineering
  • Year:
  • 1991

Quantified Score

Hi-index 0.01

Visualization

Abstract

A method for projecting software productivity with reasonable accuracy which uses the statistical techniques of time series analysis is described. The measure of productivity is the development time required per line of code. In making productivity projections, the key issue is the need to achieve a balance between forecasting stability and responsiveness to changing conditions. An integrated moving average process of order one, using exponential smoothing of all the previous observations, is judged appropriate for software productivity analysis, particularly where there are limited data available or where conditions are sufficiently varied to make much of the available data inapplicable. Empirical evidence suggests that most commonly encountered time series can be reasonably well described by such methods. The methods for computing the weights used for exponential smoothing are described, as are the means for determining prediction intervals, or measures of forecast uncertainty. This data analytic approach uses historical data alone, unlike structural methods where learning curves as well as prior data are used to define the predictive process.