A Novel Hybrid Model to Increase the Accuracy of Case Based Reasoning Method in Software Development Effort Estimation

Document Type : Computer Article

Authors

Abstract

Nowadays the effort estimation of software development is crucial in Software projects management. Not only have the accurate estimate of cost help customers and investors, but also it will be effective in rational decision-making in the implementation and management of software projects. Various estimation models have been invented and used so far. Many of the current effort estimation approaches are adopted by collecting data from previous projects. Case-based reasoning (CBR) is one of the successful techniques of effort estimation in software projects. This method alone is not very accurate, a defect which can be corrected by creating hybrid models. In this paper, CBR was combined with two separate metaheuristic algorithms including particle swarm optimization (PSO) and the firefly algorithm to propose a new hybrid model. Then the performance of the proposed model was evaluated. According to the results of the proposed model on Cocomo, Albrecht and Maxwell datasets, the firefly algorithm showed an acceptable performance.

Keywords

Main Subjects


[1] Du, W.L., D. Ho, and L.F. Capretz, 2015. Improving software effort estimation using neuro-fuzzy model with SEER-SEM. arXiv preprint arXiv:1507.06917.
[2] Bawa, A., M.R. Chawla, and D. Karnal, 2012. Experimental analysis of effort estimation using artificial neural network. Int. J. Electron. Comput. Sci. Eng. 1(3): p. 1817-1824.
[3] Popović, J. and D. Bojić, 2012. A comparative evaluation of effort estimation methods in the software life cycle. Computer Science and Information Systems. 9(1): 456- 484.
 [4] Kad, S., Chopra, V., 2012, Software development effort estimation using soft computing, International Journal of Machine Learning and Computing, 2(5): p. 437-439.
[5] Kashyap, D., Misra, A.K., 2013, An approach for software effort estimation using fuzzy numbers and genetic algorithm to deal with uncertaint, Computer Science &  Information Technology (CS & IT), p.57-66.
[6] Sheta, A., Rine, D., Ayesh, A., 2008, Development of software effort and schedule estimation models using soft computing techniques, IEEE Transaction: p. 978-1.
[7] Clemmons, R.K., 2006, Project estimation with use case points, The Journal of  Defense  Software Engineering, p. 18-22 .
[8] Peschi, B., 2009, Recommending effort estimate method for software project management, Web Intelligence and Intelligent Agent Technologies, p. 77-80.
[9] AZ Adem, N., M Kasirun, Z., 2010, Automating function point analysis based on the functional and the non-functional requirement text, Computer and Automation Engineering, 5: p.664-669.
[10] Kumari, S., Pushkar, SH., 2013, Performance analysis of the software cost estimation methods: A review, International Journal of Advanced Research in Computer Science and Software Engineering, 3(7):p. 229-238.
[11] Suri, P.K., 2012, Comparative analysis of software effort estimation techniques,    International Journal of Computer Application, 48(21):p. 1-8.
[12] Parkash, J., 2014, Cocomo ii model parameter optimization using pso and effort estimation, Journal of Information Technology & Mechanical Engineering, 1(4): p.1-11.
[13] Bardsiri, A.K. and S.M. Hashemi., 2014, Software Effort Estimation: A Survey of Well-known Approaches. International Journal of Computer Science Engineering (IJCSE). 3(1): p. 46-50
[14] Khatibi V, Jawawi DN. 2010; Software Cost Estimation Methods: A Review,Journal of Emerging Trends in Computing and Information Sciences, 1(2): p.21-29.
[15] Chattopadhyay, S., et al., 2013. A Case‐Based Reasoning system for complex medical diagnosis. Expert Systems, 30(1): p. 12-20
[16] Azzeh, M. 2011, Adjusted case-based software effort estimation using bees optimization algorithm. in International Conference on Knowledge-Based and Intelligent Information and Engineering Systems. Springer, V.6882 p. 315-324
[17] Finnie GR, Wittig GE, Desharnais J-M. A,1997 comparison of software effort estimation techniques: using function points with neural networks, case-based reasoning and regression models. Journal of Systems and Software; 39(3):p.281-9.
[18] sanjari, M.J., 2013, A new support vector model-based imperialist competitive algorithm for time estimation in new product development projects, Robotics and Computer-Integrated Manufacturing, 29(1): 157-168.
[19] Khatibi, V., A.N. jawawi, D., 2011, Software cost estimation methods: a review ,Journal of Emerging Trends in Computing and Information Sciences, 2(1): 21-29.
[20] Khatibi Bardsiri, A. and S.M. Hashemi, 2016.  A differential evolution‐based model to estimate the software services development effort. Journal of Software: Evolution and Process, 28(1): p. 57-77
[21] Cherng Lin, J., Tzeng, H.Y.,  2010,  Applying particle swarm optimization to estimate software effort by multiple factors software project clustering , IEEE, Computer Symposium International, p.1039 – 1044.
[22] Ashegi Dizaji,  Z., Ahmadi,  R.,  Gholizadeh, H.,  Soleimanian Gharehchopogh, F., 2014, A bee colony optimization algorithm approach for software cost estimation,  International Journal of Computer Applications, 104(12): p.41-44.
[23] Živadinović, Ph.D., Dragan Maksimović, Z., Damnjanović, A., Vujčić, S., Serbia, Z., 2011, Methods of effort estimation in software engineering, International Symposium Engineering Management And Competitiveness, p.417-422.
[24] Soleimanian Gharehchopogh, F., Asheghi Dizaji, Z.,  2014, A new approach in software cost estimation with hybrid of bee colony and chaos optimizations algorithms,  Magnt Research Report, 2(6): p. 1263-1271.
[25] Khatibi, V., A.N. Jawawi, D., Mohd Hashim, S.Z., Khatibi, E., 2012, A pso-based model to increase the accuracy of  software development effort estimation, Software Qual J , 21: p.501-526.
[26] Nasiri, B. and M. Meybodi, 2012, Speciation based firefly algorithm for optimization in dynamic environments. International Journal of Artificial Intelligence. 8(S12): p. 118-132
[27] Kwiecień, J. and B. Filipowicz, 2012. Firefly algorithm in optimization of queueing systems. Bulletin of the Polish Academy of Sciences: Technical Sciences, 60(2): p. 363-368
[28] Attarzadeh, I., Hock Ow, S., 2009, Proposing a new high performance model for software cost estimation, International Conference on Computer and Electrical Engineering, 2: p. 112-119.
[29] Chattopadhyay, S., et al. 2013, A Case‐Based Reasoning system for complex medical diagnosis. Expert Systems, 30(1): p. 12-20
[30] Finnie, G.R., G.E. Wittig, and J.-M. Desharnais, A, 1997 comparison of software effort estimation techniques: using function points with neural networks, case-based reasoning and regression models. Journal of Systems and Software. 39(3): p. 281-289
[31] Ketata,  R.,  Bellaaj,  H., Chtourou,  M., Amer, M.B., 2007, Adjustment of membership functions, generation and reduction of fuzzy rule base from numerical data, Malaysian Journal of Computer Science, 20(2):p. 147-169.
[32] Hamdy, A., 2012, Fuzzy logic for enhancing the sensitivity of cocomo cost model, Journal of  Emerging Trends in Computing and Information Sciences, 3(9): p.1292-1297.
[33] Krishnanand, K. and D. Ghose, 2009. Glowworm swarm optimization for simultaneous capture of multiple local optima of multimodal functions. Swarm intelligence, 3(2): p. 87-124
[34] Yang, X.-S., 2010, Engineering optimization: an introduction with metaheuristic applications. John Wiley & Sons,INC, Publication
[35] Adriano, L.I. O., 2010, GA-based method for feature selection and parameters optimization for machine learning regression applied to software effort estimation, Information and Software Technology, 52(11): p.1155-1168.
[36] Dan, Z. 2013, Improving the accuracy in software effort estimation: Using artificial neural network model based on particle swarm optimization. in Service Operations and Logistics, and Informatics (SOLI) ,2013 IEEE International Conference on, p.180-185.
[37] Khatibi Bardsiri, A., S.M. Hashemi, and M. Razzazi, 2016, GVSEE: a new global model to estimate software services development effort. Journal of the Chinese Institute of Engineers: v. 39 , p. 1-12.
[38] Madhusudan, T., J.L. Zhao, and B. Marshall, 2004. A case-based reasoning framework for workflow model management. Data & Knowledge Engineering, 50(1): p. 87-115
[39] Kocaguneli, E., et al., 2012.  Exploiting the essential assumptions of analogy-based effort estimation. IEEE Transactions on Software Engineering, 38(2): p. 425-438
[40] Idri A, azzahra Amazal F, Abran A. 2015, Analogy-based software development effort estimation: A systematic mapping and review. Information and Software Technology; 58: p. 206–230
[41] Bardsiri, A.K., S.M. Hashemi, and M. Razzazi, 2015. Statistical Analysis of The Most Popular Software Service Effort Estimation Datasets. Journal of Telecommunication, Electronic and Computer Engineering (JTEC), 7(1): p.8.96-7
[42] Elsheikh, y., Alseid, M., Azzeh, M., 2014, An optimized analogy-based project effort estimation, International Journal of Advanced Computer Science and Applications, 5(4): p. 6-11.
[44] Meysam Mousavi ,  S., Tavakkoli-Moghaddam,  R.,  Vahdani ,  B., Hashemi , H., sanjari, M.J., 2013, A new support vector model-based imperialist competitive algorithm for time estimation in new product development projects, Robotics and Computer-Integrated Manufacturing, 29(1): p.157-168.
[45] خطیبی بردسیری, ع., س.م. هاشمی, and م. رزازی, ارائه یک مدل جدید جهت تخمین تلاش لازم برای توسعه سرویس های نرم افزاری. مدل سازی در مهندسی, 2017. 15(49): p. 20-20.