Comparative Study for Software Effort Estimation by Soft Computing Models

  • Zainab Rustum Mohsin Department of Computer Science , College of Education For Pure Science , University of Thi-Qar , Thi-Qar, Iraq
Keywords: Software effort estimation, Soft Computing, ANFIS, ANN, COCOMO


Accurate estimation of software development effort has become a crucial for effective projects planning. It is a very challenging task for project teams to predict the development effort required in the initial phases of a software project. Software estimation prior to development process can decrease the risk and enhance the project's success rate. Although numerous traditional and machine learning models have been proposed for software effort estimation over the past decade, the level of accuracy is not satisfactory enough. The objective of this study is to assess the capability of using two different soft computing methods namely artificial neural networks (ANNs) and adaptive neuro-fuzzy inference system (ANFIS) to estimate the software effort. COCOMO dataset is used to test and train the proposed models. Mean magnitude of relative-error (MMRE) and correlation coefficient (R) were used as assessment criteria. It was concluded that both models can satisfactorily estimate software development efforts, but ANFIS model has outperformed the ANN model in two statistical indicators: MMRE and correlation R. It is recommended that ANFIS can be used as a predictive model for software effort estimation.



Albrecht, A. J., & Gaffney, J. E. (1983). Software function, source lines of code, and development effort prediction: a software science validation. IEEE Transactions on software engineering, 9(6), 639-648.

Baker, D. R. (2007). A hybrid approach to expert and model based effort estimation: Citeseer.

Boehm, B. (1981). Software engineering economics: Prentice-Hall, Englewood Cliffs, NJ.

Chiu, S. L. (1994). Fuzzy model identification based on cluster estimation. Journal of Intelligent & Fuzzy Systems, 2(3), 267-278.

Chiu, S. L. (1996). Selecting input variables for fuzzy models. Journal of Intelligent & Fuzzy Systems, 4(4), 243-256.

Edinson, P., & Muthuraj, L. (2018). Performance analysis of FCM based ANFIS and ELMAN neural network in software effort estimation. Int. Arab J. Inf. Technol., 15(1), 94-102.

Haykin, S. (1999). Neural Networks: A Comprehensive Foundation Prentice Hall: Upper Saddle River. NJ, USA.

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

Jang, J.-S. (1993). ANFIS: adaptive-network-based fuzzy inference system. IEEE transactions on systems, man, and cybernetics, 23(3), 665-685.

Jeon, J., & Rahman, M. S. (2008). Fuzzy neural network models for geotechnical problems.

Kamal, S., & Nasir, J. A. (2013). A fuzzy logic based software cost estimation model. International Journal of Software Engineering and Its Applications, 7(2), 7-18.

Karimi, A., & Gandomani, T. J. (2021). Software development effort estimation modeling using a combination of fuzzy-neural network and differential evolution algorithm. International Journal of Electrical & Computer Engineering (2088-8708), 11(1).

Kemerer, C. F. (1987). An empirical validation of software cost estimation models. Communications of the ACM, 30(5), 416-429.

Kim, J., & Kasabov, N. (1999). HyFIS: adaptive neuro-fuzzy inference systems and their application to nonlinear dynamical systems. Neural networks, 12(9), 1301-1319.

Kumar, K. V., Ravi, V., Carr, M., & Kiran, N. R. (2008). Software development cost estimation using wavelet neural networks. Journal of Systems and Software, 81(11), 1853-1867.

Mamdani, E. H., & Assilian, S. (1975). An experiment in linguistic synthesis with a fuzzy logic controller. International journal of man-machine studies, 7(1), 1-13.

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

Mohandes, M., Rehman, S., & Rahman, S. (2011). Estimation of wind speed profile using adaptive neuro-fuzzy inference system (ANFIS). Applied Energy, 88(11), 4024-4032.

Mohsin, Z. R. (2021a). APPLICATION OF ARTIFICIAL NEURAL NETWORKS IN PREDICTION OF SOFTWARE DEVELOPMENT EFFORT. Turkish Journal of Computer and Mathematics Education (TURCOMAT), 12(14), 4186-4202.

Mohsin, Z. R. (2021b). Investigating the Use of an Adaptive Neuro-Fuzzy Inference System in Software Development Effort Estimation. Iraqi Journal For Computer Science and Mathematics, 2(2), 18-24.

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

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

Nassif, A. B., Azzeh, M., Capretz, L. F., & Ho, D. (2016). Neural network models for software development effort estimation: a comparative study. Neural Computing and Applications, 27(8), 2369-2381.

Neural network toolbox user’s guide: for Use with MATLAB. (2009).

Putnam, L. H. (1978). A general empirical solution to the macro software sizing and estimating problem. IEEE Transactions on software engineering, 4(4), 345-361.

Rajaee, T., Mirbagheri, S. A., Zounemat-Kermani, M., & Nourani, V. (2009). Daily suspended sediment concentration simulation using ANN and neuro-fuzzy models. Science of the total environment, 407(17), 4916-4927.

Reddy, C. S., & Raju, K. (2009). An improved fuzzy approach for COCOMO’s effort estimation using gaussian membership function. Journal of software, 4(5), 452-459.

Rijwani, P., & Jain, S. (2016). Enhanced software effort estimation using multi layered feed forward artificial neural network technique. Procedia Computer Science, 89, 307-312.

Sugeno, M. (1985). An introductory survey of fuzzy control. Information sciences, 36(1-2), 59-83.

Takagi, T., & Sugeno, M. (1985). Fuzzy identification of systems and its applications to modeling and control. IEEE transactions on systems, man, and cybernetics, 15(1), 116-132.

Tofigh, A. A., Rahimipour, M. R., Shabani, M. O., & Davami, P. (2015). Application of the combined neuro-computing, fuzzy logic and swarm intelligence for optimization of compocast nanocomposites. Journal of Composite Materials, 49(13), 1653-1663.

Wittig, G. E., & Finnic, G. (1994). Using artificial neural networks and function points to estimate 4GL software development effort. Australasian Journal of Information Systems, 1(2).

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