Skip to main content
Log in

A soft computing framework for software effort estimation

  • Original Paper
  • Published:
Soft Computing Aims and scope Submit manuscript

Abstract

Accurate software estimation such as cost estimation, quality estimation and risk analysis is a major issue in software project management. In this paper, we present a soft computing framework to tackle this challenging problem. We first use a preprocessing neuro-fuzzy inference system to handle the dependencies among contributing factors and decouple the effects of the contributing factors into individuals. Then we use a neuro-fuzzy bank to calibrate the parameters of contributing factors. In order to extend our framework into fields that lack of an appropriate algorithmic model of their own, we propose a default algorithmic model that can be replaced when a better model is available. One feature of this framework is that the architecture is inherently independent of the choice of algorithmic models or the nature of the estimation problems. By integrating neural networks, fuzzy logic and algorithmic models into one scheme, this framework has learning ability, integration capability of both expert knowledge and project data, good interpretability, and robustness to imprecise and uncertain inputs. Validation using industry project data shows that the framework produces good results when used to predict software cost.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

Abbreviations

A ik :

Fuzzy set associated with the kth rating level for contributing factor i

ARF i :

Adjusted rating value for contributing factor i

E :

Total weighted squared relative errors for all projects

EM i :

Effort multiplier

FM i :

Numerical value for contributing factor i

FMP ik :

Parameter value associated with the kth rating level for contributing factor i

IINC(F):

Index set of increasing contributing factors

IDEC(F):

Index set of decreasing contributing factors

M o :

Software output metric

M on :

Estimated value of Mo for project n

M odn :

Desired (actual) value of Mo for project n

N :

Number of contributing factors

N AM2 :

Number of non-rating variables in the algorithmic model

N i :

Number of rating levels for contributing factor i

NN:

Total number of project data points

NFB:

Neuro-fuzzy bank

NFB i :

ith element of the neuro-fuzzy bank

P=(PNFB, PPNF, PAM2):

The parameter vector including all adjustable parameters in our soft computing framework

\( P_{{\text{NFB}}} = ({\text{FMP}}_{11} ,{\text{FMP}}_{12} , \ldots ,{\text{FMP}}_{1N_1 } , \ldots ,{\text{FMP}}_{N1} ,FMP_{N2} , \ldots ,{\text{FMP}}_{{\text{NN}}_N } ) \) :

The parameter vector in the neuro-fuzzy bank

P PNF :

Parameter vector in the preprocessing neuro-fuzzy subsystem

P AM2 :

NAM2 parameter vector in the algorithmic model

PFP ik :

Parameter value associated with the kth fuzzy if-then rule in PNFIS

PNF, PNFIS:

Preprocessing neuro-fuzzy inference system

RF i :

Rating value for contributing factor i

SCF:

Soft computing framework

SF i :

Scale factor

Size:

The size of software project

w n :

Weight of project n

\(X = ({\text{RF}}_1 ,{\text{RF}}_{2,} \ldots ,{\text{R}}F_N ,V_1 ,V_2 , \ldots ,V_{N_{{\text{AM}}2} } )\) :

Input vector consisting of contributing factors and non-rating variables

X n :

Vector value of X for project n

References

  • Boehm BW (1981) Software engineering economics. Prentice Hall, Englewood Cliffs

    Google Scholar 

  • Boehm BW et al (2000) Software cost estimation with COCOMO II. Prentice Hall, Englewood Cliffs

    Google Scholar 

  • Chulani S (1999) Bayesian analysis of software cost and quality models. Doctoral dissertation, Department Computer Science, University of Southern California

  • Gray A, MacDonell S (1997) A comparison of techniques for developing predictive models of software metrics. Inf Softw Technol 39(6):425–437

    Google Scholar 

  • Ho D (1996) Experience report on COCOMO and the costar tool from Nortel’s Toronto laboratory. In: 11th international forum on COCOMO and software cost modeling, Los Angeles

  • Idri A, Abran A, Kjiri L (2000) COCOMO cost model using fuzzy logic. In: 7th international conference on fuzzy theory and technology

  • Idri A, Khoshgoftaar TM, Abran A (2002) Can neural networks be easily interpreted in software cost estimation? In: IEEE international conference on fuzzy systems. pp 1162–1167

  • Jang RJS (1993) ANFIS: adaptive-network-based fuzzy inference system. IEEE Trans Syst Man Cybern 23:665–685

    Google Scholar 

  • MacDonell S, Gray A (1997) A comparison of modeling techniques for software development effort prediction. In: International conference on neural information processing and intelligent information systems. Springer, pp 869–872

  • Maxwell KD (2002) Applied statistics for software engineers. Prentice Hall, Englewood cliffs

    Google Scholar 

  • Maxwell KD, Forselius P (2000) Benchmarking software development productivity. IEEE Softw 17(1):80–88

    Google Scholar 

  • Panlilio-Yap N, Ho D (1994) Deploying software estimation technology and tools: the IBM SWS Toronto Lab experience. In: 9th international forum on COCOMO and software cost modeling, Los Angeles

  • Pedrycz W (2002) Computational intelligence and visual computing: an emerging technology for software engineering. Soft Comput 7:33–44

    Google Scholar 

  • Putnam L, Myers W (1992) Measures for excellence. Yourdon Press, Englewood Cliffs

    Google Scholar 

  • Ryder J (1998) Fuzzy modeling of software effort prediction. In: IEEE conference on information technology. pp 53–56

  • Shepperd M, Schofield M (1997) Estimating software project effort using analogies. IEEE Trans Softw Eng 23(12):736–743

    Google Scholar 

  • Takaki T, Sugeno M (1985) Fuzzy identification of systems and its application to modeling and control. IEEE Trans Syst Man Cybern 15:116–132

    MATH  Google Scholar 

  • Wittig G, Finnie G (1997) Estimating software development effort with connectionist models. Inf Softw Technol 39:469–476

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Danny Ho.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Huang, X., Ho, D., Ren, J. et al. A soft computing framework for software effort estimation. Soft Comput 10, 170–177 (2006). https://doi.org/10.1007/s00500-004-0442-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00500-004-0442-z

Keywords

Navigation