Artificial Neural Networks with Function Point Analysis for Software Development Effort Estimation.

  • Gerhard Wittig

Student thesis: Doctoral Thesis

Abstract

Reliable prediction of system size and development effort is a necessary prerequisite to effective project planning and control. Using artificial neural networks this thesis extends recent research in software development effort estimation.
Progress in effort estimation has been poor and accuracy has been disappointing. This is not attributable to a lack of effort or intellectual capability, but is an indication of the complexity of the problem. Interrelationships between various factors affecting development effort are complex, not fully understood, and have made development cost estimation difficult and sometimes inaccurate.
The value of neural network modelling techniques in performing complicated pattern recognition and non-linear estimation tasks has been demonstrated across an impressive spectrum of applications. This thesis reports on the ability and limitations of artificial neural networks in recognising and modelling the complex patterns of interrelationships between software development attributes and project effort.
The artificial neural network issues of network architecture and topology, various
parameter settings and scaling techniques, and the problems of generalisation and overfitting are addressed in the development of effort estimation models. Generally cascade networks with their ability to dynamically develop the near optimum network topology are used.
Limitations of project data were identified and the model development and analyses were conducted within these constraints. To assess the neural networks’ capability they were tested across several datasets. In addition to testing their ability of approximating a measurable function from one finite space to another, the networks’ estimation capability was also assessed with limited project data in the presence of noise and with few observations.
A large set of simulated project data was developed to overcome the problem of
limited observations. Cascade networks were assessed for their ability to accurately estimate development effort by modelling several development attributes which were responsible for a large range in development productivity. The effect on estimation accuracy of different size measures, as well as the inclusion of various development attributes is also tested on smaller datasets.
The ability of neural networks to accurately estimate development effort using the internationally recognised Australian Software Metrics Association project data was assessed. The effect of the inclusion of several cost drivers into the neural network model for improved estimation accuracy is demonstrated.
Advances in effort estimation are likely to be a slow and gradual process. This research project is seen as part of that long and difficult path.
Date of Award23 Sept 1995
Original languageEnglish
SupervisorGavin Finnie (Supervisor)

Cite this

'