Software development effort estimation modeling using a combination of fuzzy-neural network and differential evolution algorithm

Amir Karimi, Taghi Javdani Gandomani

Abstract


Software cost estimation has always been a serious challenge lying ahead of software teams that should be seriously considered in the early stages of a project. Lack of sufficient information on final requirements, as well as the existence of inaccurate and vague requirements, are among the main reasons for unreliable estimations in this area. Though several effort estimation models have been proposed over the recent decade, an increase in their accuracy has been always a controversial issue and researchers' efforts in this area are still ongoing. This study presents a new model based on a hybrid of adaptive network-based fuzzy inference system (ANFIS) and differential evolution (DE) algorithm to obtain a more accurate estimation of software development effort that is capable of presenting a better estimate within a wide range of software projects compared to previous works. The proposed method outperformed other optimization algorithms adopted from the genetic algorithm, evolutionary algorithms, meta-heuristic algorithms, and neuro-fuzzy based optimization algorithms, and could improve the accuracy using MMRE and PRED (0.25) criteria up to 7%.

Keywords


Software development; Effort estimation; Neural network; Neuro-fuzzy inference system; Differential evolution algorithm

References


R. S. Pressman, Software Engineering: A Practitioner's Approach, 7th edition ed. New York: McGraw-Hill Science/Engineering/Math, 2009.

S. McConnell, Rapid development: taming wild software schedules. Pearson Education, 1996.

A. Idri and I. Abnane, "Fuzzy analogy based effort estimation: An empirical comparative study," in 2017 IEEE International Conference on Computer and Information Technology (CIT), 2017, pp. 114-121: IEEE.

A. Idri, M. Hosni, A. J. J. o. S. Abran, and Software, "Systematic literature review of ensemble effort estimation," vol. 118, pp. 151-175, 2016.

A. Zaid, M. H. Selamat, A. A. A. Ghani, R. Atan, and K. Wei, "Issues in software cost estimation," IJCSNS Int J of Computer Science and Network Security, vol. 8, no. 11, pp. 350-356, 2008.

F. A. Amazal, A. Idri, and A. Abran, "Improving fuzzy analogy based software development effort estimation," in 2014 21st Asia-Pacific Software Engineering Conference, 2014, vol. 1, pp. 247-254: IEEE.

M. Jorgensen and M. Shepperd, "A systematic review of software development cost estimation studies," IEEE Transactions on software engineering, vol. 33, no. 1, 2007.

S. G. MacDonell, M. J. J. J. o. S. Shepperd, and Software, "Combining techniques to optimize effort predictions in software project management," vol. 66, no. 2, pp. 91-98, 2003.

N. Mittas and L. Angelis, "Combining regression and estimation by analogy in a semi-parametric model for software cost estimation," in Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement, 2008, pp. 70-79: ACM.

V. K. Bardsiri, D. N. A. Jawawi, S. Z. M. Hashim, and E. Khatibi, "A PSO-based model to increase the accuracy of software development effort estimation," Software Quality Journal, vol. 21, no. 3, pp. 501-526, 2013.

P. Kumari and I. J. C. A. E. Singla, "Tuning of use case point (UCP) analysis Parameter using PSO," vol. 1, pp. 25-28, 2015.

H. Hota, R. Shukla, and S. Singhai, "Predicting Software Development Effort Using Tuned Artificial Neural Network," in Computational Intelligence in Data Mining-Volume 3: Springer, 2015, pp. 195-203.

P. Rijwani and S. J. P. C. S. Jain, "Enhanced software effort estimation using multi layered feed forward artificial neural network technique," vol. 89, pp. 307-312, 2016.

S. M. Satapathy, B. P. Acharya, and S. K. Rath, "Early stage software effort estimation using random forest technique based on use case points," IET Software, vol. 10, no. 1, pp. 10-17, 2016.

A. B. Nassif, M. Azzeh, L. F. Capretz, D. J. N. C. Ho, and Applications, "Neural network models for software development effort estimation: a comparative study," vol. 27, no. 8, pp. 2369-2381, 2016.

T. R. Benala and R. Mall, "DABE: Differential evolution in analogy-based software development effort estimation," Swarm and Evolutionary Computation, vol. 38, pp. 158-172, 2018.

V. Sharma and H. K. J. a. p. a. Verma, "Optimized fuzzy logic based framework for effort estimation in software development," 2010.

C. J. A. S. C. Lopez-Martin, "A fuzzy logic model for predicting the development effort of short scale programs based upon two independent variables," vol. 11, no. 1, pp. 724-732, 2011.

S. Kamal, J. A. J. I. J. o. S. E. Nasir, and I. Applications, "A fuzzy logic based software cost estimation model," vol. 7, no. 2, pp. 7-18, 2013.

S. Kad and V. J. R. C. A. I. J. o. E. S. Chopra, "Fuzzy logic based framework for software development effort estimation," vol. 1, pp. 330-342, 2011.

V. Agrawal and V. J. I. J. E. R. M. T. Shrivastava, "Performance evaluation of software development effort estimation using neuro-fuzzy model," vol. 4, pp. 193-199, 2015.

S. Nanda and B. Soewito, "Modeling software effort estimation using hybrid PSO-ANFIS," in 2016 International Seminar on Intelligent Technology and Its Applications (ISITIA), 2016, pp. 219-224: IEEE.

S. H. S. Moosavi and V. K. Bardsiri, "Satin bowerbird optimizer: A new optimization algorithm to optimize ANFIS for software development effort estimation," Engineering Applications of Artificial Intelligence, vol. 60, pp. 1-15, 2017.

C. F. Kemerer, "An empirical validation of software cost estimation models," Communications of the ACM, vol. 30, no. 5, pp. 416-429, 1987.

E. Kocaguneli, T. J. J. o. S. Menzies, and Software, "Software effort models should be assessed via leave-one-out validation," vol. 86, no. 7, pp. 1879-1890, 2013.




DOI: http://doi.org/10.11591/ijece.v11i1.pp%25p
Total views : 0 times


Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

ISSN 2088-8708, e-ISSN 2722-2578