Abstract
Software engineering’s primary task is analogy-centric effort estimation. In this, by utilizing the existent histories, the effort needed for new software projects was estimated for the respective development along with management. Generally, the Software Effort Estimation (SEE) methodologies’ higher correctness is a non-solvable issue, which was termed as a multi-objective problem. In recent days, Machine Learning (ML) methodologies are utilized by numerous authors for the same process; however, higher performance was not attained. Furthermore, bias and subjectivity issues are the complications faced by the prevailing SEE methodologies. For further improvement of effort estimation, we propose an accurate analogy based SEE (AA-SEE) created on hybrid optimization and ML techniques. The first contribution of the proposed AA-SEE technique is to introduce a multi-swarm coyote optimization (MSCO) algorithm to tune the hyper parameters for ML technique. Because, an accurate hyper parameters needed for effort estimation at the optimal level which reduce the prediction errors. The second contribution is to illustrate the teaching-learning based recurrent neural network (TL-RNN) for effort estimation. The proposed AA-SEE technique can be evaluate through different standard datasets are Albercht, Kitchenham, Maxwell, Deshernais, IKH, Telecom, ISBSG and NASA. Finally, the performance of proposed AA-SEE technique is associated with the existing state-of-art methodologies in footings of accuracy, MMRE, MdMMRE, BMMRE, MMER and MdMMER.













Similar content being viewed by others
Data availability
Data sharing is not applicable to this article as no datasets were generated or analyzed during the current study.
Abbreviations
- AA-SEE:
-
Accurate Analogy Based Software Effort Estimation
- MSCO:
-
Multi-Swarm Coyote Optimization
- TL-RNN:
-
Teaching-Learning Based Recurrent Neural Network
- SEE:
-
Software Attempt Assessment
- DE:
-
Differential Evolution
- RT:
-
Regression Tree
- MLP-NN:
-
Multilayer Piston Neural Network
- MMRE:
-
Mean Magnitude of Relative Error
- COA:
-
Coyote Optimization Algorithm
- DTM:
-
Dangerous Training Machine
- CSDP:
-
Comparative Software Development Program
- COCOMO:
-
Constructive Cost Model
- MDELP:
-
Multi-Layer Dilation-Erosion-Linear Perceptron
- RC:
-
Regression Clustering
- SR:
-
Stepwise Regression
References
Azzeh M, Neagu D, Cowling PI (2011) Analogy-based software effort estimation using Fuzzy numbers. J Syst Softw 84:270–284. https://doi.org/10.1016/j.jss.2010.09.028
Benala TR, Mall R (2018) DABE: differential evolution in analogy-based software development effort estimation. Swarm Evol Comput 38:158–172. https://doi.org/10.1016/j.swevo.2017.07.009
Børte K, Ludvigsen SR, Mørch AI (2012) The role of social interaction in software effort estimation: unpacking the magic step between reasoning and decision-making. Inf Softw Technol 54:985–996. https://doi.org/10.1016/j.infsof.2012.03.002
Chiu NH, Huang SJ (2007) The adjusted analogy-based software effort estimation based on similarity distances. J Syst Softw 80:628–640. https://doi.org/10.1016/j.jss.2006.06.006
Choudhari J, Suman U (2012) Story points based effort estimation model for software maintenance. Proc Technol 4:761–765. https://doi.org/10.1016/j.protcy.2012.05.124
Dashti M, Gandomani TJ, Adeh DH, Zulzalil H, Md Sultan AB (2022) LEMABE a novel framework to improve analogy-based software cost estimation using learnable evolution model. PeerJ Comput Sci 7(1):1–24. https://doi.org/10.7717/peerj-cs.800
Effendi A, Setiawan R, Rasjid ZE (2019) Adjustment factor for use case point software effort estimation (study case: student desk portal). Proc Comput Sci 157:691–698
Elish MO (2009) Improved estimation of software project effort using multiple additive regression trees. Expert Syst Appl 36:10774–10778. https://doi.org/10.1016/j.eswa.2009.02.013
Ezghar S, Zahi A (2018) Uncertainty management in software effort estimation using a consistent fuzzy analogy-based method. Appl Soft Comput 67:540–557. https://doi.org/10.1016/j.asoc.2018.03.022
Garcia-Diaz N, Lopez-Martin C, Chavoya A (2013) A comparative study of two fuzzy logic models for software development effort estimation. Proc Technol 7:305–314. https://doi.org/10.1016/j.protcy.2013.04.038
Grimstad S, Jørgensen M, Moløkken-Østvold K (2006) Software effort estimation terminology: the tower of Babel. Inf Softw Technol 48:302–310. https://doi.org/10.1016/j.infsof.2005.04.004
Huang SJ, Chiu NH, Chen LW (2008) Integration of the grey relational analysis with genetic algorithm for software effort estimation. Eur J Oper Res 188:898–909. https://doi.org/10.1016/j.ejor.2007.07.002
Jørgensen M (2011) Contrasting ideal and realistic conditions as a means to improve judgment-based software development effort estimation. Inf Softw Technol 53:1382–1390. https://doi.org/10.1016/j.infsof.2011.07.001
Jørgensen M, Halkjelsvik T (2020) Sequence effects in the estimation of software development effort. J Syst Softw 159:1–11. https://doi.org/10.1016/j.jss.2019.110448
Kumar PS, Behera HS, Kumari A, Nayak J, Naik B (2020) Advancement from neural networks to deep learning in software effort estimation: Perspective of two decades. Comput Sci Rev 38:1–32. https://doi.org/10.1016/j.cosrev.2020.100288
Mensah S, Keung J, Bosu MF, Bennin KE (2018) Duplex output software effort estimation model with self-guided interpretation. Inf Softw Technol 94:1–13. https://doi.org/10.1016/j.infsof.2017.09.010
Moosavi SHS, Bardsiri VK (2017) Satin bowerbird optimizer: a new optimization algorithm to optimize ANFIS for software development effort estimation. Eng Appl Artif Intell 60:1–15. https://doi.org/10.1016/j.engappai.2017.01.006
Mustapha H, Abdelwahed N (2019) Investigating the use of random forest in software effort estimation. Proc Comput Sci 148:343–352. https://doi.org/10.1016/j.procs.2019.01.042
Oliveira AL, Braga PL, Lima RM, Cornélio ML (2010) GA-based method for feature selection and parameters optimization for machine learning regression applied to software effort estimation. Inf Softw Technol 52:1155–1166. https://doi.org/10.1016/j.infsof.2010.05.009
Pandey M, Litoriya R, Pandey P (2020) Validation of existing software effort estimation techniques in context with mobile software applications. Wirel Pers Commun 110:1659–1677. https://doi.org/10.1007/s11277-019-06805-0
Park H, Baek S (2008) An empirical validation of a neural network model for software effort estimation. Expert Syst Appl 35:929–937. https://doi.org/10.1016/j.eswa.2007.08.001
Phannachitta P (2020) On an optimal analogy-based software effort estimation. Inf Softw Technol 125:1–11. https://doi.org/10.1016/j.infsof.2020.106330
Praynlin E (2020) Using meta-cognitive sequential learning neuro-fuzzy inference system to estimate software development effort. J Ambient Intell Humaniz Comput 12(2):1–14. https://doi.org/10.1007/s12652-020-02652-1
Priya Varshini AG, Anitha Kumari K, Varadarajan V (2021) Estimating software development efforts using a random forest-based stacked ensemble approach. Electronics 10(10):1–19. https://doi.org/10.3390/electronics10101195
Qi F, Jing XY, Zhu X, Xie X, Xu B, Ying S (2017) Software effort estimation based on open source projects: case study of Github. Inf Softw Technol 92:145–157. https://doi.org/10.1016/j.infsof.2017.07.015
Santos LPD, Ferreira MGV (2018) Safety critical software effort estimation using COCOMO II: a case study in aeronautical industry. IEEE Lat Am Trans 16:2069–2078. https://doi.org/10.1109/TLA.2018.8447378
Sharma A, Kushwaha DS (2012) Estimation of software development effort from requirements based complexity. Proc Technol 4:716–722. https://doi.org/10.1016/j.protcy.2012.05.116
Silhavy P, Silhavy R, Prokopova Z (2019) Categorical variable segmentation model for software development effort estimation. IEEE Access 7:9618–9626. https://doi.org/10.1109/ACCESS.2019.2891878
Singal P, Kumari AC, Sharma P (2020) Estimation of software development effort: a differential evolution approach. Proc Comput Sci 167:2643–2652. https://doi.org/10.1016/j.procs.2020.03.343
Usman M, Petersen K, Börstler J, Neto PS (2018) Developing and using checklists to improve software effort estimation: a multi-case study. J Syst Softw 146:286–309. https://doi.org/10.1016/j.jss.2018.09.054
Vijay JF (2019) Enrichment of accurate software effort estimation using fuzzy-based function point analysis in business data analytics. Neural Comput Appl 31:1633–1639. https://doi.org/10.1007/s00521-018-3565-3
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:41–59. https://doi.org/10.1016/j.infsof.2011.09.002
Zare F, Zare HK, Fallahnezhad MS (2016) Software effort estimation based on the optimal Bayesian belief network. Appl Soft Comput 49:968–980. https://doi.org/10.1016/j.asoc.2016.08.004
Author information
Authors and Affiliations
Contributions
All authors contributed to the study conception and design. Material preparation, data collection and analysis were performed by K. Harish Kumar, Dr. K. Srinivas. The first draft of the manuscript was written by K. Harish Kumar and all authors commented on previous versions of the manuscript.
All authors read and approved the final manuscript.
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Ethical approval
This article does not contain any studies with human participants or animals performed by any of the authors.
Consent of publication
Not applicable.
Competing interests
The authors declare that they have no competing interests
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Kumar, K.H., Srinivas, K. An accurate analogy based software effort estimation using hybrid optimization and machine learning techniques. Multimed Tools Appl 82, 30463–30490 (2023). https://doi.org/10.1007/s11042-023-14522-x
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11042-023-14522-x