Skip to main content
Log in

Preliminary performance study of a brief review on machine learning techniques for analogy based software effort estimation

  • Original Research
  • Published:
Journal of Ambient Intelligence and Humanized Computing Aims and scope Submit manuscript

Abstract

Analogy-based effort estimation is the major task of software engineering which estimates the effort required for new software projects using existing histories for corresponding development and management. In general, the high accuracy of software effort estimation techniques can be a non-solvable problem we named as multi-objective problem. Recently, most of the authors have been used machine learning techniques for the same process however not possible to meet the higher performance. Moreover, existing software effort estimation techniques are mostly affected by bias and subjectivity problems. Analogy based effort estimation (ABE) is the most extensively conventional technique because of its effortlessness and evaluation ability. We define five research questions are defined to get clear thoughts on ABE studies. Improvement of ABE can be done through supervised learning techniques and unsupervised learning techniques. Furthermore, the results can be knowingly affected by the different performance metrics in ABE configuration.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

References

  • Abnane I, Hosni M, Idri A and Abran A (2019) Analogy software effort estimation using ensemble KNN imputation. In: 2019 45th Euromicro Conference on software engineering and advanced applications (SEAA). IEEE, pp 228–235

  • Abulalqader FA, Ali AW (2018). Comparing Different Estimation Methods for Software Effort. In: 2018 1st Annual International Conference on information and sciences (AiCIS). IEEE, pp 13–22

  • Ahmed MA, Muzaffar Z (2009) Handling imprecision and uncertainty in software development effort prediction: A type-2 fuzzy logic based framework. Inf Softw Technol 51(3):640–654

    Google Scholar 

  • Alpaydin E (2004) Introduction to machine learning. The MIT Press, Cambridge

    MATH  Google Scholar 

  • Amazal FA, Idri A, Abran A (2014a) An analogy-based approach to estimation of software development effort using categorical data. In: 2014 Joint Conference of the International Workshop on Software Measurement and the International Conference on software process and product measurement. IEEE, pp 252–262

  • Amazal FA, Idri A, Abran A (2014b) Improving fuzzy analogy based software development effort estimation. In: 2014 21st Asia-Pacific Software Engineering Conference, 1: 247–254. IEEE.

  • Angelis L, Stamelos I (2000) A simulation tool for e±cient analogy-based cost estimation. Empir Softw Eng 5(1):35–68

    Google Scholar 

  • Attarzadeh I, Ow SH (2009) Software development effort estimation based on a new fuzzy logic model. Int J Comput Theory Eng 1(4):473

    Google Scholar 

  • Azzeh M, Neagu D, Cowling P (2008) Improving analogy software effort estimation using fuzzy feature subset selection algorithm. In: Proceedings of the 4th International Workshop on predictor models in software engineering, pp 71–78

  • Azzeh M, Neagu D, Cowling P (2009) Software effort estimation based on weighted fuzzy grey relational analysis. In: Proceedings of the 5th International Conference on predictor models in software engineering, Canada

  • Azzeh M, Neagu D, Cowling PI (2011) Analogy-based software effort estimation using Fuzzy numbers. J Syst Softw 84(2):270–284

    Google Scholar 

  • BaniMustafa A (2018) Predicting software effort estimation using machine learning techniques. In: 2018 8th International Conference on computer science and information technology (CSIT). IEEE, pp 249–256

  • Bardsiri VK, Jawawi DNA, Hashim SZM, Khatibi E (2012) Increasing the accuracy of software development effort estimation using projects clustering. IET Softw 6(6):461–473

    Google Scholar 

  • Bardsiri VK, Abang Jawawi DN, Khatibi E (2014) Towards improvement of analogy-based software development effort estimation: a review. Int J Softw Eng Knowl Eng 24(07):1065–1089

    Google Scholar 

  • Benala TR, Bandarupalli R (2016) Least square support vector machine in analogy-based software development effort estimation. In: 2016 International Conference on recent advances and innovations in engineering (ICRAIE). IEEE, pp 1–6

  • Bibi S, Stamelos I (2006) Selecting the appropriate machine learning techniques for the prediction of software development costs. In: Maglogiannis I, Karpouzis K, Bramer M (eds) Artificial intelligence applications and innovations, vol 204, pp 533–540

  • Boehm B, Clark B, Horowitz E, Westland C, Madachy R, Selby R (1995) Cost models for future software life cycle processes: Cocomo 2.0. Ann Softw Eng 1(1):57–94

    Google Scholar 

  • Boehm B, Abts C, Chulani S (2000) Software development cost estimation approachesÑa survey. Ann Softw Eng 10(1–4):177–205

    MATH  Google Scholar 

  • Bosu MF, Mensah S, Bennin K, Abuaiadah D (2018) Revisiting the conclusion instability issue in software effort estimation

  • Braga PL, Oliveira AL, Meira SR (2007) Software effort estimation using machine learning techniques with robust confidence intervals. In: 7th International Conference on hybrid intelligent systems (HIS 2007). IEEE, pp 352–357

  • Camacho D, Panizo-LLedot A, Bello-Orgaz G, Gonzalez-Pardo A, Cambria E (2020) The four dimensions of social network analysis: an overview of research methods, applications, and software tools. Inf Fusion 63:88–120

    Google Scholar 

  • Chinthanet B, Phannachitta P, Kamei Y, Leelaprute P, Rungsawang A, Ubayashi N, Matsumoto K (2016) A review and comparison of methods for determining the best analogies in analogy-based software effort estimation. In: Proceedings of the 31st Annual ACM Symposium on applied computing, pp 1554–1557

  • Chiu NH, Huang SJ (2007) The adjusted analogy-based software effort estimation based on similarity distances. J Syst Softw 80(4):628–640

    Google Scholar 

  • Corazza A, Di Martino S, Ferrucci F, Gravino C, Mendes E (2011) Investigating the use of Support Vector Regression for web effort estimation. Empir Softw Eng 16(2):211–243

    Google Scholar 

  • Darko A, Chan AP, Adabre MA, Edwards DJ, Hosseini MR, Ameyaw EE (2020) Artificial intelligence in the AEC industry: Scientometric analysis and visualization of research activities. Autom Construct 112:103081

    Google Scholar 

  • de Campos Souza PV, Guimaraes AJ, Araujo VS, Rezende TS, Araujo VJS (2019) Incremental regularized data density-based clustering neural networks to aid in the construction of effort forecasting systems in software development. Appl Intell 49(9):3221–3234

    Google Scholar 

  • Dragicevic S, Celar S, Turic M (2017) Bayesian network model for task effort estimation in agile software development. J Syst Softw 127:109–119

    Google Scholar 

  • Elish MO (2009) Improved estimation of software project effort using multiple additive regression trees. Expert Syst Appl 36(7):10774–10778

    Google Scholar 

  • El Bajta M (2015) Analogy-based software development effort estimation in global software development. In: 2015 IEEE 10th International Conference on global software engineering workshops. IEEE, pp 51–54

  • Ezghari S, Zahi A (2018) Uncertainty management in software effort estimation using a consistent fuzzy analogy-based method. Appl Soft Comput 67:540–557

    Google Scholar 

  • Faria P, Miranda E (2012) Expert judgment in software estimation during the bid phase of a project–an exploratory survey. In: Software Measurement and the 2012 Seventh International Conference on Software Process and Product Measurement (IWSM-MENSURA), 2012 Joint Conference of the 22nd International Workshop on. IEEE, pp 126–131

  • Grimstad S, Jørgensen M (2009) Preliminary study of sequence effects in judgment-based software development work-effort estimation. IET Softw 3(5):435–441

    Google Scholar 

  • Gupta S, Sikka G, Verma H (2011) Recent methods for software effort estimation by analogy. ACM SIGSOFT Softw Eng Notes 36(4):1–5

    Google Scholar 

  • Huang SJ, Chiu NH (2009) Applying fuzzy neural network to estimate software development effort. Appl Intell 30(2):73–83

    Google Scholar 

  • 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(3):898–909

    MATH  Google Scholar 

  • Huang J, Keung JW, Sarro F, Li YF, Yu YT, Chan WK, Sun H (2017) Cross-validation based K nearest neighbor imputation for software quality datasets: An empirical study. J Syst Softw 132:226–252

    Google Scholar 

  • Hussain I, Kosseim L, Ormandjieva O (2013) Approximation of COSMIC functional size to support early effort estimation in Agile. Data Knowl Eng 85:2–14

    Google Scholar 

  • Idri A, Zakrani A, Zahi A (2010) Design of radial basis function neural networks for software effort estimation. IJCSI Int J Comput Sci Issues 7(4):595–611

    Google Scholar 

  • Idri A, Abnane I, Abran A (2016) Missing data techniques in analogy-based software development effort estimation. J Syst Softw 117:595–611

    Google Scholar 

  • Idri A, Abnane I, Abran A (2018) Support vector regression-based imputation in analogy based software development effort estimation. J Softw Evol Process 30(12):2114

    Google Scholar 

  • Iqbal T, Qureshi S (2020) The survey: text generation models in deep learning. J King Saud Univ-Comput Inf Sci

  • Johnson RA, Wichern DW (2007) Applied multivariate statistical analysis, 6th edn. Prentice Hall

    MATH  Google Scholar 

  • Jørgensen M (2004) A review of studies on expert estimation of software development effort. J Syst Softw 70(1):37–60

    Google Scholar 

  • Jørgensen M (2016) Unit effects in software project effort estimation: Work-hours gives lower effort estimates than workdays. J Syst Softw 117:274–281

    Google Scholar 

  • Kadoda G (2000) Experiences using case-based reasoning to predict software project effort. In: International Conference on empirical assessment and evaluation in software engineering (Keele University, 2000)

  • Kamei Y, Keung J, Monden A, Matsumoto KI (2008) An over-sampling method for analogy-based software effort estimation. In: Proceedings of the Second ACM-IEEE International Symposium on Empirical software engineering and measurement, pp 312–314

  • Kaushik A, Singal N (2019) A hybrid model of wavelet neural network and metaheuristic algorithm for software development effort estimation. Int J Inf Technol, pp 1–10

  • Kaushik A, Soni AK, Soni R (2015) A hybrid approach for software cost estimation using polynomial neural networks and intuitionistic fuzzy sets. Int J Comput Appl Technol 52(4):292–304

    Google Scholar 

  • Khatibi V and Jawawi DN (2011) Software cost estimation methods: a review 1. J Emerg Trends in Comput Inf Sci

  • Kumar KV, Ravi V, Carr M, Kiran NR (2008a) Software development cost estimation using wavelet neural networks. J Syst Softw 81:1853–1867

    Google Scholar 

  • Kumar KV, Ravi V, Carr M, Kiran NR (2008b) Software development cost estimation using wavelet neural networks. J Syst Softw 81(11):1853–1867

    Google Scholar 

  • Kumari S, Pushkar S (2018) Cuckoo search based hybrid models for improving the accuracy of software effort estimation. Microsyst Technol 24(12):4767–4774

    Google Scholar 

  • Lamersdorf A, Münch J, Torre AFV, Sánchez CR, Rombach D (2014) Estimating the effort overhead in global software development. arXiv preprint arXiv:1401.2730

  • Le-Do TK, Yoon KA, Seo YS, Bae DH (2010). Filtering of inconsistent software project data for analogy-based effort estimation. In: 2010 IEEE 34th Annual Computer Software and Applications Conference. IEEE, pp 503–508

  • Leung HKN (2002) Estimating maintenance effort by analogy. Empir Softw Eng 7(2):157–175

    MathSciNet  MATH  Google Scholar 

  • Li JZ, Ruhe G (2008) Software effort estimation by analogy using attribute selection based on rough set analysis. Int J Softw Eng Knowl Eng 18(1):1–23

    Google Scholar 

  • Li J, Ruhe G, Al-Emran A, Richter MM (2007) A flexible method for software effort estimation by analogy. Empir Softw Eng 12(1):65–106

    Google Scholar 

  • Li YF, Xie M, Goh TN (2008) Bayesian inference approach for probabilistic analogy-based software maintenance effort estimation. In: 2008 14th IEEE Pacific Rim International Symposium on dependable computing. IEEE, pp 176–183

  • Lin JC, Chang CT and Huang SY (2011) Research on software effort estimation combined with genetic algorithm and support vector regression. In 2011 International Symposium on Computer Science and Society: 349–352.

  • Lu Y, Saeys W, Kim M, Peng Y, Lu R (2020) Hyperspectral imaging technology for quality and safety evaluation of horticultural products: a review and celebration of the past 20-year progress. Postharvest Biol Technol 170:111318

    Google Scholar 

  • Madari MJ, Bahrami H, Niazi M (2019) Improve software effort estimation using weighted KNN in new feature space. IJRDT 11(4):421–427

    Google Scholar 

  • Mair C, Kadoda G, Lefley M, Phalp KC, Schofield M, Shepperd S (2000) Webster, An investigation of machine learning based prediction systems. J Syst Softw 53(1):23–29

    Google Scholar 

  • Medrano R, Aznarte JL (2020) A spatio-temporal attention-based spot-forecasting framework for urban traffic prediction. Appl Soft Comput 96:106615

    Google Scholar 

  • Mehta P, Bukov M, Wang CH, Day AG, Richardson C, Fisher CK, Schwab DJ (2019) A high-bias, low-variance introduction to machine learning for physicists. Phys Rep 810:1–124

    MathSciNet  Google Scholar 

  • Mendes E (2008) The use of bayesian networks for Web effort estimation: further investigation. In: Proceedings of the 8th International Conference on Web Engineering, pp 203–216

  • Mendes E, Mosley N, Watson I (2002) A comparison of case-based reasoning approaches to Web hypermedia project cost estimation. In: Proceedings of the 11th International Conference on World Wide Web (WWW’02), pp 272–280

  • Michoski C, Milosavljević M, Oliver T, Hatch DR (2020) Solving differential equations using deep neural networks. Neurocomputing 399:193–212

    Google Scholar 

  • Mohanty R, Ravi V, Patra MR (2010) The application of intelligent and soft-computing techniques to software engineering problems: a review. Int J Inf Decis Sci 2(3):233–272

    Google Scholar 

  • 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

    Google Scholar 

  • Nagaraj K, Sharvani GS, Sridhar A (2018) Emerging trend of big data analytics in bioinformatics: a literature review. Int J Bioinform Res Appl 14(1–2):144–205

    Google Scholar 

  • Nassif AB, Capretz LF, Ho D (2012) Estimating software effort using an ANN model based on use case points. In: 2012 11th International Conference on machine learning and applications, 2: 42–47. IEEE.

  • Nassif AB, Azzeh M, Capretz LF, Ho D (2013) A comparison between decision trees and decision tree forest models for software development effort estimation. In: 2013 Third International Conference on communications and information technology (ICCIT). IEEE, pp 220–224

  • Nisar MW, Wang YJ, Elahi M (2008) Software development effort estimation using fuzzy logic A survey. In: Fifth International Conference on fuzzy systems and knowledge discovery, 1: 421–427

  • Nitze A, Schmietendorf A, Dumke R (2014) An analogy-based effort estimation approach for mobile application development projects. In: 2014 Joint Conference of the International Workshop on Software Measurement and the International Conference on software process and product measurement. IEEE, pp 99–103

  • 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(11):1155–1166

    Google Scholar 

  • Papatheocharous E, Andreou AS (2009) Classification and prediction of software cost through fuzzy decision trees. International Conference on enterprise information systems. Springer, Berlin, Heidelberg, pp 234–247

    Google Scholar 

  • Patra HP, Rajnish K (2018) Development of software effort estimation using a non-fuzzy model. Int J Comput Syst Eng 4(1):17–22

    Google Scholar 

  • Peixoto CEL, Audy JLN, Prikladnicki R (2010) Effort estimation in global software development projects: preliminary results from a survey. In: Global Software Engineering (ICGSE), 2010 5th IEEE International Conference on. IEEE, pp 123–127

  • Ponalagusamy R, Senthilkumar S (2011) Investigation on time-multiplexing cellular neural network simulation by RKAHeM (4, 4) technique. Int J Adv Intell Paradig 3(1):43–66

    Google Scholar 

  • Pospieszny P, Czarnacka-Chrobot B, Kobylinski A (2018) An effective approach for software project effort and duration estimation with machine learning algorithms. J Syst Softw 137:184–196

    Google Scholar 

  • 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

    Google Scholar 

  • Rao PS, Kumar RK (2015) Software effort estimation through a generalized regression neural network. In: Emerging ICT for Bridging the Future-Proceedings of the 49th Annual Convention of the Computer Society of India (CSI) Volume 1, pp 19–30. Springer, Cham

  • Reynolds J, Ahmad MW, Rezgui Y (2018) Holistic modelling techniques for the operational optimisation of multi-vector energy systems. Energy Build 169:397–416

    Google Scholar 

  • Saeed A, Butt WH, Kazmi F Arif M (2018) Survey of software development effort estimation techniques. In: Proceedings of the 2018 7th International Conference on software and computer applications, pp 82–86

  • Sarro F, Petrozziello A (2018) Linear programming as a baseline for software effort estimation. ACM Trans Softw Eng Methodol (TOSEM) 27(3):1–28

    Google Scholar 

  • Satapathy SM, Rath SK (2014) Class point approach for software effort estimation using various support vector regression kernel methods. In: Proceedings of the 7th India Software Engineering Conference, pp 1–10

  • Satapathy SM, Rath SK (2017) Empirical assessment of machine learning models for effort estimation of web-based applications. In: Proceedings of the 10th Innovations in Software Engineering Conference, pp 74–84

  • Shepperd M, Schofield C (1997) Estimating software project effort using analogies. IEEE Trans Softw Eng 23(11):736–743

    Google Scholar 

  • Sheta AF, Ayesh A, Rine D (2010) Evaluating software cost estimation models using particle swarm optimisation and fuzzy logic for NASA projects: a comparative study. Int J Bio-Inspir Comput 2(6):365–373

    Google Scholar 

  • Singh BK, Misra A (2012) Software effort estimation by genetic algorithm tuned parameters of modified constructive cost model for nasa software projects. Int J Comput Appl 59(9):22–26

    Google Scholar 

  • Stefanowski J (2006) An empirical study of using rule induction and rough sets to software cost estimation. Fundam Inf 71(1):63–82 (Special issue on theory and applications of soft computing (TASC04))

    MathSciNet  MATH  Google Scholar 

  • Tosun A, Turhan B, Bener AB (2009) Feature weighting heuristics for analogy-based effort estimation models. Expert Syst Appl 36(7):10325–10333

    Google Scholar 

  • Trendowicz A, Jeffery R (2014) Classification of Effort Estimation Methods. In: Software project effort estimation. Springer, Cham, pp 155–208

  • Walkerden F, Jeffery R (1999) An empirical study of analogy-based software effort estimation. Empir Softw Eng 4(2):135–158

    Google Scholar 

  • Wen J, Li S, Tang L (2009) Improve analogy-based software effort estimation using principal components analysis and correlation weighting. In: 2009 16th Asia-Pacific Software Engineering Conference, pp 179–186, IEEE

  • 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

    Google Scholar 

  • Whigham PA, Owen CA, Macdonell SG (2015) A baseline model for software effort estimation. ACM Trans Softw Eng Methodol (TOSEM) 24(3):1–11

    Google Scholar 

  • Zare F, Zare HK, Fallahnezhad MS (2016) Software effort estimation based on the optimal Bayesian belief network. Appl Soft Comput 49:968–980

    Google Scholar 

  • Zarei A, Asl BM (2020) Automatic classification of apnea and normal subjects using new features extracted from HRV and ECG-derived respiration signals. Biomed Signal Process Control 59:101927

    Google Scholar 

  • Zhang D, Tsai JJP (2003) Machine learning and software engineering. Softw Qual J 11(2):87–119

    Google Scholar 

  • Zhang W, Yang Y, Wang Q (2015) Using Bayesian regression and EM algorithm with missing handling for software effort prediction. Inf Softw Technol 58:58–70

    Google Scholar 

  • Zhang H, Ren JX, Kang YL, Bo P, Liang JY, Ding L, Kong WB, Zhang J (2017) Development of novel in silico model for developmental toxicity assessment by using naive Bayes classifier method. Reprod Toxicol 71:8–15

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to K. Harish Kumar.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kumar, K.H., Srinivas, K. Preliminary performance study of a brief review on machine learning techniques for analogy based software effort estimation. J Ambient Intell Human Comput 14, 2141–2165 (2023). https://doi.org/10.1007/s12652-021-03427-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12652-021-03427-y

Keywords

Navigation