Bayesian Regularization based Neural Network Tool for Software Effort Estimation

Rapid growth of software industry leads to need of new technologies. Software effort estimation is one of the areas that need more concentration. Exact estimation is always a challenging task. Effort Estimation techniques are broadly classified into algorithmic and non-algorithmic techniques. An algorithmic model provides a mathematical equation for estimation which is based upon the analysis of data gathered from previously developed projects and Non-algorithmic techniques are based on new approaches, such as Soft Computing Techniques. Effective handling of cost is a basic need for any Software Organization. The main tasks for Software development estimation are determining the effort, cost and schedule of developing the project under consideration. Underestimation of project done knowingly just to win contract results into loses and also the poor quality project. So, accurate cost estimation leads to effective control of time and budget during software development. This paper presents the performance analysis of different training algorithms of neural network in effort estimation. For sake of ease, we have developed a tool in MATLAB and at last proved that Bayesian Regularization [20] gives more accurate results than other training algorithms.

[1]  Taghi M. Khoshgoftaar,et al.  Can neural networks be easily interpreted in software cost estimation? , 2002, 2002 IEEE World Congress on Computational Intelligence. 2002 IEEE International Conference on Fuzzy Systems. FUZZ-IEEE'02. Proceedings (Cat. No.02CH37291).

[2]  Tzvi Raz,et al.  Factors affecting duration and effort estimation errors in software development projects , 2007, Inf. Softw. Technol..

[3]  Barry W. Boehm,et al.  Cost models for future software life cycle processes: COCOMO 2.0 , 1995, Ann. Softw. Eng..

[4]  Colin J Burgess,et al.  Can genetic programming improve software effort estimation? A comparative evaluation , 2001, Inf. Softw. Technol..

[5]  Simon Haykin,et al.  Neural Networks: A Comprehensive Foundation , 1998 .

[6]  Yong-Ji Wang,et al.  Software Development Effort Estimation Using Fuzzy Logic - A Survey , 2008, 2008 Fifth International Conference on Fuzzy Systems and Knowledge Discovery.

[7]  Douglas Fisher,et al.  Machine Learning Approaches to Estimating Software Development Effort , 1995, IEEE Trans. Software Eng..

[8]  Barry W. Boehm,et al.  Software development cost estimation approaches — A survey , 2000, Ann. Softw. Eng..

[9]  José Demisio Simões da Silva,et al.  Comparison of Artificial Neural Network and Regression Models in Software Effort Estimation , 2007, 2007 International Joint Conference on Neural Networks.

[10]  Roheet Bhatnagar,et al.  Comparing some neural network models for software development effort prediction , 2011, 2011 2nd National Conference on Emerging Trends and Applications in Computer Science.

[11]  Joseph M. Mellichamp,et al.  Software Development Cost Estimation Using Function Points , 1994, IEEE Trans. Software Eng..

[12]  Barbara A. Kitchenham,et al.  Effort estimation using analogy , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[13]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[14]  Daryl Essam,et al.  Software project effort estimation using genetic programming , 2002, IEEE 2002 International Conference on Communications, Circuits and Systems and West Sino Expositions.

[15]  Nasser Tadayon Neural network approach for software cost estimation , 2005, International Conference on Information Technology: Coding and Computing (ITCC'05) - Volume II.

[16]  Bart Baesens,et al.  Data Mining Techniques for Software Effort Estimation: A Comparative Study , 2012, IEEE Transactions on Software Engineering.

[17]  Chris F. Kemerer,et al.  An empirical validation of software cost estimation models , 1987, CACM.

[18]  D. Ross Jeffery,et al.  Function Points in the Estimation and Evaluation of the Software Process , 1990, IEEE Trans. Software Eng..