Tugçe Ugurlu Altuntas, S. Emre Alptekin



Software Development Effort Estimation by Using Neural Networks - A Case Study



The software industry is growing rapidly and gaining importance all over the world. Nearly all companies and institutions from various industries have software projects to develop new applications and platforms. As required with every project, accurate effort estimation has become a crucial problem for the companies, especially for project managers. Since 1970s different methods and models have been developed for estimating software projects’ efforts. The first milestone model was COCOMO, which is a constructive method proposed in the late 1970s. Many different models followed, the most popular and usable models being Function Point and Use Case Point. After 2000s, due to advances in technology, Artificial Neural Networks has gained in importance especially among the problem domains that benefit from data analysis and self-learning. Software development effort estimation also share similar characteristics as there is typically old projects’ data on hand that should help foresee new projects’ efforts. Therefore, in this paper we build a software estimation model by using neural network methodology. The features for the network were chosen as a result of an extensive survey. The applicability of the methodology is demonstrated via real-life software project data provided by one of the largest banks in Turkey.


Software development effort estimation, neural networks, back propagation algorithm


[1] Project Management Institute, A Guide to the Project Management Body of Knowledge, PMBOK Guide, fifth edition, 2013.

[2] J. Leinonen, Evaluating Software Development Effort Estimation Process in Agile Software Development Context, Master’s Thesis, University of Oulu, 2016.

[3] S. Chandrasekaran, S. Gudlavalleti, and S. Kaniyar, Achieving Success in Large, Complex Software Projects, McKinsey and Company, Digital McKinsey Article, July 2014.

[4] J.G. Borade, and V. Khalkar, Software Project Effort and Cost Estimation Techniques, International Journal of Advanced Research in Computer Science and Software Engineering, Vol. 3(8), 2013, pp.730-739. [5] R. Mulcahy, Rita Mulcahy's PMP Exam Prep, Rita Mulcahy, eight edition, 2013.

[6] M. Jorgensen, and M. Shepperd, (2007). A Systematic Review of Software Development Cost Estimation Studies, IEEE Transactions on Software Engineering, Vol. 33(1), 2007, pp.33- 53.

[7] B. Boehm, C. Abts, and S. Chulani, Software Development Cost Estimation Approaches – A Survey, Annals of Software Engineering, Vol. 10(1), 2000, pp.177-205.

[8] K. Usharani, V. Vignaraj Ananth, and D. Velmurugan, A Survey on Software Effort Estimation, International Conference on Electrical, Electronics, and Optimization Techniques, ICEEOT 2016, Chennai, India, 2016, pp. 505-509.

[9] A. Hira, S. Sharma, and B. Boehm, Calibrating COCOMO® II for Projects with High Personnel Turnover, International Conference on Software and Systems Process, ICSSP '16, ACM, New York, NY, USA, 2016, pp.51-55.

[10] A. Cockburn, Writing Effective Use Cases, Addison-Wesley, 2001.

[11] G. Gabrani, and N. Saini, Effort Estimation Models Using Evolutionary Learning Algorithms for Software Development, Symposium on Colossal Data Analysis and Networking, CDAN'16, Indore, India, 2016, pp.1-6.

[12] G.R. Finnie, and G.E. Wittig, A Comparison of Software Effort Estimation Techniques: Using Function Points with Neural Networks, CaseBased Reasoning and Regression Models. Journal of Systems and Software, Vol. 39 (3), 1997, pp.281-289.

[13] S. Aljahdali, A.F. Sheta, and N.C. Debnath, Estimating Software Effort and Function Point Using Regression, Support Vector Machine and Artificial Neural Networks Models, 12th International Conference of Computer Systems and Applications, Marrakech, Morocco, 2015, pp.1-8.

[14] D.E. Rumelhart, G.E. Hinton, and R.J. Williams, Learning Internal Representations by Error Propagation, Parallel Distributed Processing: Explorations in the Microstructures of Cognition, Vol. 1, MIT Press, Cambridge, MA, 1986, pp.318-362.

[15] C.J. Lokan, An empirical analysis of function point adjustment factors, Information and Software Technology, Vol. 42 (9), 2000, pp.649–659.

[16] J. Baik, The Effects of Case Tools on Software Development Effort, Doctoral dissertation, University of Southern California, 2000.

[17] S. Agatonovic-Kustrin, and R. Beresford, Basic concepts of artificial neural network (ANN) modelling, Journal of Pharmaceutical and Biomedical Analysis, Vol. 22, 2000, pp.717– 727.

[18] D.J.C. MacKay, Bayesian Interpolation, Neural Computation, Vol. 4(3), 1992, pp.415-447.

[19] F. Burden, and D. Winkle, Bayesian Regularization of Neural Networks, Artificial Neural Networks Methods and Applications of the series Methods in Molecular Biology, Vol. 458, 2009, pp.23-42.

[20] K. Hirschen, and M. Schafer, Bayesian Regularization Neural Networks for Optimizing Fluid Flow Processes, Computer Methods in Applied Mechanics and Engineering, Vol. 195(7-8), 2006, pp.481-500.

Cite this paper

Tugçe Ugurlu Altuntas, S. Emre Alptekin. (2017) Software Development Effort Estimation by Using Neural Networks - A Case Study. International Journal of Computers, 2, 115-122


Copyright © 2017 Author(s) retain the copyright of this article.
This article is published under the terms of the Creative Commons Attribution License 4.0