Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Ensembling Harmony Search Algorithm with case-based reasoning for software development effort estimation

Published: 26 November 2024 Publication History

Abstract

Estimating software development effort is challenging in ensuring timely completion of projects and managing resources in software development companies. Inaccurate estimation of development efforts leads to significant financial losses and delays in the software project’s completion. Due to dynamic requirements, technological evolution, inadequate historical data, human factors, and project complexity, the developed models cannot achieve satisfactory accuracy. Case-based reasoning (CBR) is a technique that uses data from previous projects to estimate the effort of the new project by identifying and adapting solutions that were successful in similar contexts. However, the effectiveness of CBR depends on tuning its multiple parameters, such as how past similar projects are retrieved, reused, adapted, and retained. In this paper, the Harmony Search Algorithm (HSA) is used to identify the best combination of traditional CBR parameters (feature selection, similarity measures, and the k-value count of closest neighbors, feature weighting) to accurately estimate the development effort. This paper uses the HSA to optimize the parameters for CBR, enhancing the accuracy of the estimation. The proposed CBR-HSA approach is validated using thirteen public datasets from the PROMISE repository, NASA, SEERA, and a subset of the ISBSG dataset. It is evaluated using six reliable evaluation metrics. The results obtained are promising, particularly in accuracy, statistical significance, and computational time compared to some existing models.

References

[1]
Brooks FC The Mythical Man-Month 1975 Chapel Hill Addison-Wesley
[2]
Wen J, Li S, Lin Z, Hu Y, and Huang C Systematic literature review of machine learning based software development effort estimation models Inf. Softw. Technol. 2012 54 1 41-59
[3]
Alqasrawi Y, Azzeh M, and Elsheikh Y Locally weighted regression with different kernel smoothers for software effort estimation Sci. Comput. Program. 2022 214
[4]
Huang J, Li Y-F, and Xie M An empirical analysis of data preprocessing for machine learning-based software cost estimation Inf. Softw. Technol. 2015 67 108-127
[5]
Manchala P and Bisi M TSoptEE: two-stage optimization technique for software development effort estimation Clust. Comput. 2024 27 7 8889-8908
[6]
Molokken, K., Jorgensen, M.: A review of software surveys on software effort estimation. In: 2003 International Symposium on Empirical Software Engineering, 2003 (ISESE 2003), Proceedings, pp. 223–230. IEEE (2003)
[7]
Boehm B, Abts C, and Chulani S Software development cost estimation approaches—a survey Ann. Softw. Eng. 2000 10 1 177-205
[8]
Rai P, Kumar S, and Verma DK Prediction of software effort in the early stage of software development: a hybrid model IEEE Can. J. Electr. Comput. Eng. 2021 44 3 376-383
[9]
Mahmood Y, Kama N, Azmi A, Khan AS, and Ali M Software effort estimation accuracy prediction of machine learning techniques: a systematic performance evaluation Softw. Pract. Exp. 2022 52 1 39-65
[10]
Azzeh M A replicated assessment and comparison of adaptation techniques for analogy-based effort estimation Empir. Softw. Eng. 2012 17 90-127
[11]
Trendowicz, A., Jeffery, R.: Software Project Effort Estimation. Foundations and Best Practice Guidelines for Success, Constructive Cost Model-COCOMO, vol. 12, pp. 277–293. Springer, Cham (2014)
[12]
Azzeh M and Nassif AB A hybrid model for estimating software project effort from use case points Appl. Soft Comput. 2016 49 981-989
[13]
Galorath DD and Evans MW Software Sizing, Estimation, and Risk Management: When Performance is Measured Performance Improves 2006 New York Auerbach Publications
[14]
Best RJ An experiment in Delphi estimation in marketing decision making J. Mark. Res. 1974 11 4 447-452
[15]
Azzeh M, Alkhateeb A, and Bou Nassif A Software effort estimation using convolutional neural network and fuzzy clustering Neural Comput. Appl. 2024 36 14449-14464
[16]
Jorgensen M and Shepperd M A systematic review of software development cost estimation studies IEEE Trans. Softw. Eng. 2006 33 1 33-53
[17]
Sharma, S., Vijayvargiya, S.: Applying soft computing techniques for software project effort estimation modelling. In: Nanoelectronics, Circuits and Communication Systems: Proceeding of NCCS 2019, pp. 211–227. Springer, Singapore (2021)
[18]
Priya Varshini A and Anitha Kumari K Software effort estimation using stacked ensemble technique and hybrid principal component regression and multivariate adaptive regression splines Wirel. Pers. Commun. 2024 134 4 2259-2278
[19]
Fadhil AA, Alsarraj RG, and Altaie AM Software cost estimation based on dolphin algorithm IEEE Access 2020 8 75279-75287
[20]
Azzeh, M., Elsheikh, Y.: Learning best k analogies from data distribution for case-based software effort estimation. arXiv preprint (2017). arXiv:1703.04567
[21]
Malhotra R and Khan K A novel software defect prediction model using two-phase grey wolf optimisation for feature selection Clust. Comput. 2024 27 12185-12207
[22]
Pal SK and Shiu SC Foundations of Soft Case-Based Reasoning 2004 Hoboken Wiley
[23]
Finnie GR, Wittig GE, and Desharnais J-M A comparison of software effort estimation techniques: using function points with neural networks, case-based reasoning and regression models J. Syst. Softw. 1997 39 3 281-289
[24]
Shepperd M and Schofield C Estimating software project effort using analogies IEEE Trans. Softw. Eng. 1997 23 11 736-743
[25]
Stamelos I, Angelis L, Morisio M, Sakellaris E, and Bleris GL Estimating the development cost of custom software Inf. Manag. 2003 40 8 729-741
[26]
Kolodner JL An introduction to case-based reasoning Artif. Intell. Rev. 1992 6 1 3-34
[27]
Kocaguneli E and Menzies T Software effort models should be assessed via leave-one-out validation J. Syst. Softw. 2013 86 7 1879-1890
[28]
Kaushik A, Kaur P, Choudhary N, and Priyanka P Stacking regularization in analogy-based software effort estimation Soft Comput. 2022 26 3 1197-1216
[29]
Kaushik A, Singal N, and Prasad M Incorporating whale optimization algorithm with deep belief network for software development effort estimation Int. J. Syst. Assur. Eng. Manag. 2022 13 4 1637-1651
[30]
Idri A, Amazal F, and Abran A Analogy-based software development effort estimation: a systematic mapping and review Inf. Softw. Technol. 2015 58 206-230
[31]
Bardsiri VK, Abang Jawawi DN, and Khatibi E Towards improvement of analogy-based software development effort estimation: a review Int. J. Softw. Eng. Knowl. Eng. 2014 24 07 1065-1089
[32]
Kaushik A, Sheoran K, Kapur R, Bhutani N, Singh B, and Sharma H SENSE: software effort estimation using novel stacking ensemble learning Innov. Syst. Softw. Eng. 2024
[33]
Yedida, R., Krishna, R., Kalia, A., Menzies, T., Xiao, J., Vukovic, M.: Lessons learned from hyper-parameter tuning for microservice candidate identification. In: 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 1141–1145. IEEE (2021)
[34]
Tawosi V, Sarro F, Petrozziello A, and Harman M Multi-objective software effort estimation: a replication study IEEE Trans. Softw. Eng. 2021 48 8 3185-3205
[35]
Manchala, P., Bisi, M.: Ensembling teaching-learning-based optimization algorithm with analogy-based estimation to predict software development effort. In: 2022 13th International Conference on Computing Communication and Networking Technologies (ICCCNT), pp. 1–7. IEEE (2022)
[36]
Benala TR and Mall R DABE: differential evolution in analogy-based software development effort estimation Swarm Evol. Comput. 2018 38 158-172
[37]
Manchala P, Bisi M, and Agrawal S BAFS: binary artificial bee colony based feature selection approach to estimate software development effort Int. J. Inf. Technol. 2023 15 6 2975-2986
[38]
Xu LD Case based reasoning IEEE Potentials 1994 13 5 10-13
[39]
Jaiswal A, Yigzaw KY, and Öztürk P F-CBR: an architecture for federated case-based reasoning IEEE Access 2022 10 75458-75471
[40]
Chandrashekar G and Sahin F A survey on feature selection methods Comput. Electr. Eng. 2014 40 1 16-28
[41]
Ali W and Malebary S Particle swarm optimization-based feature weighting for improving intelligent phishing website detection IEEE Access 2020 8 116766-116780
[42]
Hameed S, Elsheikh Y, and Azzeh M An optimized case-based software project effort estimation using genetic algorithm Inf. Softw. Technol. 2023 153
[43]
Geem ZW, Kim JH, and Loganathan GV A new heuristic optimization algorithm: harmony search Simulation 2001 76 2 60-68
[44]
Geem ZW Optimal cost design of water distribution networks using harmony search Eng. Optim. 2006 38 03 259-277
[45]
Lee KS and Geem ZW A new meta-heuristic algorithm for continuous engineering optimization: harmony search theory and practice Comput. Methods Appl. Mech. Eng. 2005 194 36–38 3902-3933
[46]
Al-Betar MA and Khader AT A harmony search algorithm for university course timetabling Ann. Oper. Res. 2012 194 3-31
[47]
Manjarres D, Landa-Torres I, Gil-Lopez S, Del Ser J, Bilbao MN, Salcedo-Sanz S, and Geem ZW A survey on applications of the harmony search algorithm Eng. Appl. Artif. Intell. 2013 26 8 1818-1831
[48]
Geem, Z.: Optimal cost design of water distribution networks using harmony search Dissertation, Korea University (2000)
[49]
Das, A.K., Nayak, J., Naik, B., Dutta, S., Pelusi, D. et al.: Computational Intelligence in Pattern Recognition Proceedings of CIPR 2020, vol. 1. Springer, Singapore (2021)
[50]
Mensah S, Keung J, Bosu MF, and Bennin KE Duplex output software effort estimation model with self-guided interpretation Inf. Softw. Technol. 2018 94 1-13
[51]
Kitchenham, B., Mendes, E.: Why comparative effort prediction studies may be invalid. In: Proceedings of the 5th International Conference on Predictor Models in Software Engineering, pp. 1–5 (2009)
[52]
Menzies, T., Caglayan, B., Kocaguneli, E., Krall, J., Peters, F., Turhan, B.: The promise repository of empirical software engineering data. http://promisedata.googlecode.com. West Virginia University. Department of Computer Science (2012)
[53]
Mustafa EI and Osman R A random forest model for early-stage software effort estimation for the Seera dataset Inf. Softw. Technol. 2024 169
[54]
I. Limited: Isbsg10 (2012).
[55]
Shah MA, Jawawi DNA, Isa MA, Younas M, Abdelmaboud A, and Sholichin F Ensembling artificial bee colony with analogy-based estimation to improve software development effort prediction IEEE Access 2020 8 58402-58415
[56]
Rhmann W, Pandey B, and Ansari GA Software effort estimation using ensemble of hybrid search-based algorithms based on metaheuristic algorithms Innov. Syst. Softw. Eng. 2022 18 2 309-319
[57]
Shepperd M and MacDonell S Evaluating prediction systems in software project estimation Inf. Softw. Technol. 2012 54 8 820-827
[58]
Myrtveit I and Stensrud E Validity and reliability of evaluation procedures in comparative studies of effort prediction models Empir. Softw. Eng. 2012 17 23-33
[59]
Wilcoxon, F.: Individual comparisons by ranking methods. In: Breakthroughs in Statistics: Methodology and Distribution, pp. 196–202. Springer, New York (1992)
[60]
Azzeh M, Neagu D, and Cowling PI Analogy-based software effort estimation using fuzzy numbers J. Syst. Softw. 2011 84 2 270-284
[61]
Tomczak M and Tomczak E The need to report effect size estimates revisited. An overview of some recommended measures of effect size Trends Sport Sci. 2014 1 21 19-25
[62]
Manchala P and Bisi M Diversity based imbalance learning approach for software fault prediction using machine learning models Appl. Soft Comput. 2022 124
[63]
Moosavi SHS and Bardsiri VK Satin bowerbird optimizer: A new optimization algorithm to optimize anfis for software development effort estimation Eng. Appl. Artif. Intell. 2017 60 1-15
[64]
Cohen, J.: Statistical Power Analysis for the Behavioral Sciences, rev. ed. Lawrence Erlbaum Associates, Hillsdale (1977)
[65]
Idri A, Abnane I, and Abran A Evaluating Pred(P) and standardized accuracy criteria in software development effort estimation J. Softw. Evol. Process 2018 30 4 1925
[66]
Malhotra R and Khanna M Threats to validity in search-based predictive modelling for software engineering IET Softw. 2018 12 4 293-305

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Cluster Computing
Cluster Computing  Volume 28, Issue 2
Apr 2025
1617 pages

Publisher

Kluwer Academic Publishers

United States

Publication History

Published: 26 November 2024
Accepted: 24 October 2024
Revision received: 21 October 2024
Received: 27 June 2024

Author Tags

  1. Software development effort estimation (SDEE)
  2. Case-based reasoning (CBR)
  3. Harmony Search Algorithm (HSA)
  4. Parameters optimization

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Feb 2025

Other Metrics

Citations

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media