Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Software effort estimation using convolutional neural network and fuzzy clustering

Published: 07 May 2024 Publication History

Abstract

Adopting an efficient software process model is critical for building high-quality software applications. An important factor impacting the software development process is an accurate estimate of human effort required to complete the software project. While machine learning methods were historically used to develop estimation models, there has been little investigation into the potential of deep convolutional neural networks (DCNNs) for improving software effort estimation. One of the biggest obstacles in using DCNN for this purpose is the common nature of software datasets, which often consist of vectorized samples rather than matrices. To defeat this obstacle and reduce vagueness in software attribute measurement, this study uses Fuzzy theory to generate an appropriate two-dimensional datapoint representation. The fuzzy clustering is commonly used to split dataset samples into separate clusters, which can help to generate Fuzzy membership functions. This approach makes it easier to generate a two-dimensional array representation for each data sample based on the membership values, allowing it to be used as input to the DCNN model. The efficiency of the proposed model was thoroughly evaluated using PROMISE benchmark datasets. The findings based on mean absolute errors and standardized accuracy show that our proposed model produced very good performance with low error rates and outperformed several current state-of-the-art effort estimation models. Nonetheless, further research is needed to determine the impact of different cluster numbers and features on the performance of our model. In conclusion, this study emphasizes the possibility for incorporating DCNN into software effort estimates and highlights the viability of utilizing fuzzy modeling and clustering techniques to enhance the data representation of software datasets.

References

[1]
Alqasrawi Y, Azzeh M, and Elsheikh Y Locally weighted regression with different kernel smoothers for software effort estimation Sci Comput Program 2022 214 102744
[2]
Tawosi V, Sarro F, Petrozziello A, and Harman M Multi-objective software effort estimation: a replication study IEEE Trans Softw Eng 2022 48 8 3185-3205
[3]
Minku LL A novel online supervised hyperparameter tuning procedure applied to cross-company software effort estimation Empir Softw Eng 2019 24 5 3153-3204
[4]
Xia T, Shu R, Shen X, and Menzies T Sequential model optimization for software effort estimation IEEE Trans Softw Eng 2022 48 6 1994-2009
[5]
Phannachitta P On an optimal analogy-based software effort estimation Inf Softw Technol 2020 125 106330
[6]
Azzeh M and Nassif AB Analyzing the relationship between project productivity and environment factors in the use case points method J Softw: Evolut Process 2017
[7]
Keung J, Kocaguneli E, and Menzies T Finding conclusion stability for selecting the best effort predictor in software effort estimation Autom Softw Eng 2013 20 4 543-567
[8]
Kocaguneli E, Menzies T, and Keung JW On the value of ensemble effort estimation IEEE Trans Software Eng 2012 38 6 1403-1416
[9]
Kassaymeh S, Alweshah M, Al-Betar MA, Hammouri AI, and M. A. Al-Ma’aitah, Software effort estimation modeling and fully connected artificial neural network optimization using soft computing techniques Cluster Comput 2023
[10]
Pal N, Yadav MP, and Yadav DK Appropriate number of analogues in analogy based software effort estimation using quality datasets Cluster Comput 2023
[11]
Pantoni RP, Mossin EA, and Brandão D Task effort fuzzy estimator for software development INFOCOMP J Comput Sci 2008 7 2 84-89
[12]
Minku LL (2021) Multi-stream online transfer learning for software effort estimation: Is it necessary?. In: Proceedings of the 17th international conference on predictive models and data analytics in software engineering.
[13]
Azzeh M, Nassif AB (2013) Fuzzy Model Tree for early effort estimation. In: 2013 12th international conference on machine learning and applications.
[14]
Kocaguneli E, Menzies T, Keung J, Cok D, and Madachy R Active Learning and effort estimation: finding the essential content of software effort estimation data IEEE Trans Softw Eng 2013 39 8 1040-1053
[15]
Rao KE, Rao GA, and Rao E “Retraction Note: ensemble learning with recursive feature elimination integrated software effort estimation: a novel approach Evolut Intell 2020 14 151-162
[16]
Kocaguneli E, Menzies T, Bener AB, and Keung JW Exploiting the essential assumptions of analogy-based effort estimation IEEE Trans Software Eng 2012 38 2 425-438
[17]
de Morais RA (2021) Deep learning based models for software effort estimation using story points in agile environments.
[18]
Phan H, Jannesari A (2022) Story point effort estimation by text level graph neural network. Accessed 31 Mar 2023. [Online]. Available: https://arxiv.org/abs/2203.03062v2
[19]
Kassem H, Mahar K, and Saad AA Story point estimation using issue reports with deep attention neural network e-Inf Softw Eng J 2023 17 1 230104
[20]
Marapelli B, Carie A, Islam SM ((2020) RNN-CNN model: A bi-directional long short-term memory deep learning network for story point estimation. In: CITISIA 2020 5th international conference on innovative technologies in intelligent systems and industrial applications.
[21]
Choetkiertikul M, Dam HK, Tran T, Pham T, Ghose A, and Menzies T A deep learning model for estimating story points IEEE Trans Softw Eng 2019 45 7 637-656
[22]
Zadeh LA Toward a theory of fuzzy information granulation and its centrality in human reasoning and fuzzy logic Fuzzy Sets Syst 1997 90 2 111-127
[23]
Bezdek JC, Ehrlich R, and Full W FCM: the fuzzy c-means clustering algorithm Comput Geosci 1984 10 2–3 191-203
[24]
Liu M, Shi J, Li Z, Li C, Zhu J, and Liu S Towards better analysis of deep convolutional neural networks IEEE Trans Vis Comput Graph 2017 23 1 91-100
[25]
Khan A, Sohail A, Zahoora U, and Qureshi AS A survey of the recent architectures of deep convolutional neural networks Artif Intell Rev 2020 53 8 5455-5516
[26]
Kumar PS, Behera HS, Kumari A, Nayak J, and Naik B Advancement from neural networks to deep learning in software effort estimation: perspective of two decades Comput Sci Rev 2020 38 100288
[27]
Kocaguneli E, Menzies T, and Keung JW Kernel methods for software effort estimation: effects of different kernel functions and bandwidths on estimation accuracy Empir Softw Eng 2013 18 1 1-24
[28]
Azzeh M and Nassi AB Analogy-based effort estimation: a new method to discover set of analogies from dataset characteristics IET Softw 2015
[29]
Jose Thiago JTH and Oliveira ALI Ensemble effort estimation using dynamic selection J Syst Softw 2021 175 110904
[30]
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).
[31]
Zhang J and Chen L Clustering-based undersampling with random over sampling examples and support vector machine for imbalanced classification of breast cancer diagnosis Comput Assist Surg 2019 24 sup2 62-72
[32]
Azzeh M and Nassif AB A hybrid model for estimating software project effort from use case points Appl Soft Comput J 2016 49 981-989
[33]
Sarno R, Sidabutar J (2015) Improving the accuracy of COCOMO's effort estimation based on neural networks and fuzzy logic model. In: 2015 International Conference on Information & Communication Technology and Systems (ICTS) Accessed 07 Sep 2023. [Online]. Available: https://ieeexplore.ieee.org/abstract/document/7379898/
[34]
Menzies T, Chen Z, Hihn J, and Lum K Selecting best practices for effort estimation IEEE Trans Softw Eng 2006 32 11 883-895
[35]
Azzeh M and Nassif AB Project productivity evaluation in early software effort estimation J Softw: Evolut Process 2018
[36]
Kaushik A, Kaur P, and Choudhary N Stacking regularization in analogy-based software effort estimation Soft comput 2022 26 3 1197-1216
[37]
Jørgensen M and Halkjelsvik T Sequence effects in the estimation of software development effort J Syst Softw 2020 159 110448
[38]
Azzeh M, Nassif AB, and Minku LL An empirical evaluation of ensemble adjustment methods for analogy-based effort estimation J Syst Softw 2015
[39]
Minku LL and Yao X Ensembles and locality: insight on improving software effort estimation Inf Softw Technol 2013 55 8 1512-1528
[40]
Gallego JJC, Rodríguez D, Sicilia MÁ, Rubio MG, and Crespo AG Software project effort estimation based on multiple parametric models generated through data clustering J Comput Sci Technol 2007 22 3 371-378
[41]
Azzeh M, Nassif AB, and Martín CL Empirical analysis on productivity prediction and locality for use case points method Softw Qual J 2021 29 2 309-336
[42]
Kaur P and Singh R A proposed framework for software effort estimation using the combinational approach of fuzzy logic and neural networks Int J Hybrid Inf Technol 2015 8 10 73-80
[43]
Amazal FA and Idri A Estimating software development effort using fuzzy clustering-based analogy J Softw: Evolut Process 2020
[44]
Nassif AB, Azzeh M, Idri A, and Abran A Software development effort estimation using regression fuzzy models Comput Intell Neurosci 2019
[45]
Azzeh M, Neagu D, Cowling P (2008) Adjusting analogy software effort estimation based on fuzzy logic. In: ICSOFT 2008-Proceedings of the 3rd international conference on software and data technologies
[46]
Xie XL and Beni G A validity measure for fuzzy clustering IEEE Trans Pattern Anal Mach Intell 1991 13 08 841-847
[47]
Menzies B, Caglayan B, Kocaguneli E, Krall J, Peters F. The PROMISE repository of empirical software engineering. PROMISE. https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=The+PROMISE+Repository+of+empirical+software+engineering+data+&btnG= (Accessed 27 Dec 2020)
[48]
Azzeh M, Nassif AB, Elsheikh Y, and Angelis L On the value of project productivity for early effort estimation Sci Comput Program 2022 219 102819
[49]
Kocaguneli E and Menzies T Software effort models should be assessed via leave-one-out validation J Syst Softw 2013 86 7 1879-1890

Cited By

View all
  • (2025)Ensembling Harmony Search Algorithm with case-based reasoning for software development effort estimationCluster Computing10.1007/s10586-024-04858-w28:2Online publication date: 1-Apr-2025

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Neural Computing and Applications
Neural Computing and Applications  Volume 36, Issue 23
Aug 2024
588 pages

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 07 May 2024
Accepted: 12 April 2024
Received: 03 May 2023

Author Tags

  1. Effort estimation
  2. Machine learning
  3. Deep learning
  4. Fuzzy logic

Author Tag

  1. Information and Computing Sciences
  2. Artificial Intelligence and Image Processing
  3. Computer Software
  4. Information Systems

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 17 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2025)Ensembling Harmony Search Algorithm with case-based reasoning for software development effort estimationCluster Computing10.1007/s10586-024-04858-w28:2Online publication date: 1-Apr-2025

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media