Abstract
The software industry is highly competitive, and hence, it is imperative to have an accurate method to estimate the effort needed in the key phases of software development. Accurate estimates ensure efficient allocation of human and machine resources for the project. This paper proposes a technique for software development effort estimation using deep belief network (DBN). For fine-tuning of DBN, Whale Optimization Algorithm (WOA) is used which mimics the social behaviour of humpback whales. The proposed technique DBN-WOA has been experimentally evaluated on four promise datasets—COCOMO81, NASA93, MAXWELL and CHINA. The results from DBN-WOA are compared with the results from fine-tuning of DBN with backpropagation (DBN-BP) and it is observed that the proposed technique outscores DBN-BP. The proposed approach is also empirically validated through a statistical framework.






Similar content being viewed by others
References
Benala TR, Dehuri S, Mall R (2012) Functional link artificial neural networks for software cost estimation. Int J Appl Evol Comput 3(2):62–82. https://doi.org/10.4018/jaec.2012040104
Boehm BW (1984) Software engineering economics. IEEE Trans Softw Eng 10(1):4–21. https://doi.org/10.1109/TSE.1984.5010193
Breuel TM, Ul-Hasan A, Al-Azawi MA, Shafait F (2013) High-performance OCR for printed english and fraktur using LSTM networks. In: 12th International conference on document analysis and recognition, Washington, DC, USA, pp. 683–687, https://doi.org/10.1109/ICDAR.2013.140
Burgess CJ, Lefley M (2001) Can genetic programming improve software effort estimation? A comparative evaluation. Inf Softw Technol 43(14):863–873
Calvet L, Juan AA, Serrat C, Ries J (2016) A statistical learning-based approach for parameter fine-tuning of metaheuristics. Stat Oper Res Trans 40(1):201–224
Ciregan D, Ueli M, Schmidhuber J (2012) Multi-column deep neural networks for image classification. In: IEEE conference on computer vision and pattern recognition, Providence, RI, USA, 2012, pp. 3642–3649, https://doi.org/10.1109/CVPR.2012.6248110
Dave VS, Dutta K (2014) Neural network based models for software effort estimation: a review. Artif Intell Rev 42(2):295–307
Di Martino S, Ferrucci F, Gravino C, Sarro F (2011) Using web objects for development effort estimation of web applications: a replicated study. Lect Notes Comput Sci 6759:186–201
Elish MO (2009) Improved estimation of software project effort using multiple additive regression trees. Expert Syst Appl 36(7):10774–10778. https://doi.org/10.1016/j.eswa.2009.02.013
Fan Y, Qian Y, Xie FL, Soong FK (2014) TTS synthesis with bidirectional LSTM based recurrent neural networks. In: 15th annual conference of the international speech communication association, Singapore, pp. 1964–1968
Fenton NE, Pfleeger SL (1997) Software metrics: a rigorous and practical approach. Boston, MA, USA: Second Ed. PWS
Fischer A, Igel C (2012) An introduction to restricted Boltzmann machines. Lect Notes Comput Sci 7441:14–36
Foss T, Stensrud E, Kitchenham B, Myrtveit I (2003) A simulation study of the model evaluation criterion MMRE. IEEE Trans Softw Eng 29:985–995
Gray AR (1999) A simulation-based comparison of empirical modelling techniques for software metric models of development effort. In: 6th international conference on neural information processing. Proceedings (Cat. No. 99EX378) 2. Perth, WA, Australia, pp. 526–531 https://doi.org/10.1109/ICONIP.1999.845649
Gupta P, Gupta S, Gandhi OP (2014) Annual maintenance budget estimation for a plant system: digraph model and matrix approach. J Qual Maint Eng 20(2):193–210
Hinton GE (2002) Training products of experts by minimizing contrastive divergence. Neural Comput 14(8):1771–1800
Jiang Z, Naudé P, Jiang B (2007) The effects of software size on development effort and software quality. Int J Comput Inf Sci Eng 1(10):2939–2943
Jorgensen M, Shepperd M (2007) A systematic review of software development cost estimation studies. IEEE Trans Softw Eng 33(1):33–53. https://doi.org/10.1109/TSE.2007.3
Kaushik A, Tayal DK, Yadav K, Kaur A (2016) Integrating firefly algorithm in artificial neural network models for accurate software cost predictions. J Softw: Evol Process 28(8):665–688
Kaushik A, Verma S, Singh HJ, Chhabra G (2017) Software cost optimization integrating fuzzy system and COA-Cuckoo optimization algorithm. Int J Syst Assur Eng Manag 8(2):1461–1471
Kaushik A, Tayal DK, Yadav K (2020) A comparative analysis on effort estimation for agile and non-agile software projects using DBN-ALO. Arab J Sci Eng 45:2605–2618
Kitchenham B, Mendes E (2009) Why comparative effort prediction studies may be invalid. In: 5th International conference on predictor models in software engineering, Vancouver British Columbia, Canada, pp. 1–5, https://doi.org/10.1145/1540438.1540444.
Kumar KV, Ravi V, Carr M, Kiran NR (2008) Software development cost estimation using wavelet neural networks. J Syst Softw 81(11):1853–1867. https://doi.org/10.1016/j.jss.2007.12.793
Miandoab EE, Gharehchopogh FS (2016) A novel hybrid algorithm for software cost estimation based on cuckoo optimization and k-nearest neighbors algorithms. Eng Technol Appl Sci Res 6(3):1018–1022
Mittas N, Papatheocharous E, Angelis L, Andreou AS (2015) Integrating non-parametric models with linear components for producing software cost estimations. J Syst Softw 99:120–134
Muzaffar Z, Ahmed MA (2010) Software development effort prediction: a study on the factors impacting the accuracy of fuzzy logic systems. Inf Softw Technol 52(1):92–109
Nassif AB, Ho D, Capretz LF (2013) Towards an early software estimation using log-linear regression and a multilayer perceptron model. J Syst Softw 86(1):144–160
Online document, 20 Famous Software Disasters. http://www.devtopics.com/20-famous-software-disasters/. Accessed 6 March 2019
Online document, Promise Software Engineering Repository. http://promise.site.uottawa.ca/SERepository/datasets-page.html. Accessed 615 March 2019
Panda A, Satapathy SM, Rath SK (2015) Empirical validation of neural network models for agile software effort estimation based on story points. Procedia Comput Sci 57:772–781
Prasad Reddy PVGD, Sudha KR, Rama Sree P, Ramesh SNSVSC (2010) Software effort estimation using radial basis and generalized regression neural networks. J Comput 2(5):87–92
Pressman RS (1997) Software engineering: a practitioner’s approach, 4th edn. McGraw-Hill, New York
Putnam LH (1978) A general empirical solution to the macro software sizing and estimating problem. IEEE Trans Softw Eng 4(4):345–361
Qin X, Fang M (2011) Summarization of software cost estimation. Procedia Eng 15:3027–3031
Rajpurohit J, Sharma TK, Abraham A, Vaishali A (2017) Glossary of metaheuristic algorithms. Int J Comp Inf Syst Ind Manage Appl 9:181–205
Rao PS, Kumar RK (2015) Software effort estimation through a generalized regression neural network. Adv Intell Syst Comput 337(1):19–30
Rijwani P, Jain S (2016) Enhanced software effort estimation using multi layered feed forward artificial neural network technique. Procedia Comput Sci 89:307–312
Sharma TK (2016). Application of shuffled frog leaping algorithm in software project scheduling. In Pratiksha S, Dipti S, & Millie P (Eds.), Problem solving and uncertainty modeling through optimization and soft computing applications (pp. 225–238). IGI Global
Sharma TK, Pant M (2014) Redundancy level optimization in modular software system models using ABC. Int J Intell Syst Appl 04:40–48
Sharma TK & Pant M (2017). Swarm intelligence in software engineering design problems. In: Ashish M. Gujarathi, Babu BV (Eds.), Evolutionary computation: techniques and applications (pp.163–194). Apple Academic Press Inc
Sharma TK, Pant M & Abraham A (2011). Dichotomous search in ABC and its application in parameter estimation of software reliability growth models. In: 3rd world congress on nature and biologically inspired computing salamanca, Spain, pp. 207–212, https://doi.org/10.1109/NaBIC.2011.6089460.
Seyedali M, Lewis A (2016) The whale optimization algorithm. Adv Eng Softw 95(C):51–67
Srivastava AK, Kumar G, Gupta P (2020) Estimating maintenance budget using monte carlo simulation. Life Cycle Reliab Saf Eng 9(1):77–89
Wen J, Li S, Lin Z, Hu Y, Huang C (2012) Systematic literature review of machine learning based software development effort estimation models. Inf Softw Technol 54(1):41–59
Xia W, Capretz LF, Ho D, Ahmed F (2008) A new calibration for function point complexity weights. Inf Softw Technol 50(7–8):670–683
Yang XS & Papa J (2016) Bio-inspired computation and applications in image processing. Academic Press
Funding
The author(s) received no financial support for the research, authorship, and/or publication of this article.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
All the authors declare that there are no conflicts of interest in publishing this paper.
Ethical approval
This article does not contain any studies with human participants and/or animals performed by any of the authors.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
About this article
Cite this article
Kaushik, A., Singal, N. & Prasad, M. Incorporating whale optimization algorithm with deep belief network for software development effort estimation. Int J Syst Assur Eng Manag 13, 1637–1651 (2022). https://doi.org/10.1007/s13198-021-01519-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13198-021-01519-8