Estudo empírico: detecção de Code Smells com aprendizado de máquinas DOI Open Access

Raimundo Alan Freire Moreira,

Lucas José Lemos Braz,

Fischer Jônatas Ferreira

et al.

Published: May 6, 2024

A detecção de code smells durante o processo desenvolvimento software é importante para melhorar a qualidade do e refatoração fundamental eliminar esses indícios problema. Este estudo avalia uma abordagem empírica que se baseia no treinamento cinco algoritmos aprendizado máquina detectar em sistemas software, utilizando métricas como parâmetros. Os resultados mostram tive um excelente desempenho smells, alcançando acurácia entre 93,7% 99,2%.

Code Smell Detection Using Ensemble Machine Learning Algorithms DOI Creative Commons

Seema Dewangan,

Rajwant Singh Rao,

Alok Mishra

et al.

Applied Sciences, Journal Year: 2022, Volume and Issue: 12(20), P. 10321 - 10321

Published: Oct. 13, 2022

Code smells are the result of not following software engineering principles during development, especially in design and coding phase. It leads to low maintainability. To evaluate quality its maintainability, code smell detection can be helpful. Many machine learning algorithms being used detect smells. In this study, we applied five ensemble two deep Four datasets were analyzed: Data class, God Feature-envy, Long-method datasets. previous works, stacking dataset results found acceptable, but there is scope improvement. A class balancing technique (SMOTE) was handle imbalance problem The Chi-square feature extraction select more relevant features each dataset. All obtained highest accuracy—100% for with different selected sets metrics, poorest accuracy, 91.45%, achieved by Max voting method Feature-envy twelve metrics.

Language: Английский

Citations

41

A Novel Approach for Code Smell Detection: An Empirical Study DOI Creative Commons

Seema Dewangan,

Rajwant Singh Rao,

Alok Mishra

et al.

IEEE Access, Journal Year: 2021, Volume and Issue: 9, P. 162869 - 162883

Published: Jan. 1, 2021

Code smells detection helps in improving understandability and maintainability of software while reducing the chances system failure. In this study, six machine learning algorithms have been applied to predict code smells. For purpose, four smell datasets (God-class, Data-class, Feature-envy, Long-method) are considered which generated from 74 open-source systems. To evaluate performance on these datasets, 10-fold cross validation technique is that predicts model by partitioning original dataset into a training set train test it. Two feature selection techniques enhance our prediction accuracy. The Chi-squared Wrapper-based used improve accuracy total methods choosing top metrics each dataset. Results obtained applying two compared. algorithms, grid search-based parameter optimization applied. 100% was for Long-method using Logistic Regression algorithm with all features worst 95.20 % Naive Bayes chi-square technique.

Language: Английский

Citations

50

Severity Classification of Code Smells Using Machine-Learning Methods DOI

Seema Dewangan,

Rajwant Singh Rao,

Sripriya Roy Chowdhuri

et al.

SN Computer Science, Journal Year: 2023, Volume and Issue: 4(5)

Published: July 29, 2023

Language: Английский

Citations

14

An Evaluation of Multi-Label Classification Approaches for Method-Level Code Smells Detection DOI Creative Commons
Pravin Singh Yadav,

Rajwant Singh Rao,

Alok Mishra

et al.

IEEE Access, Journal Year: 2024, Volume and Issue: 12, P. 53664 - 53676

Published: Jan. 1, 2024

(1) Background: Code smell is the most popular and reliable method for detecting potential errors in code. In real-world circumstances, a single source code may have multiple smells. Multi-label detection research study. However, limited studies are available on it, there need standardized classifier reliably identifying various multi-label smells that belong to method-level category. The primary goal of this study develop rule-based (2) Methods: Binary Relevance, Label Powerset, Classifier Chain methods utilized with tree based single-label algorithms, including some ensemble algorithms paper. chi-square feature selection technique applied select relevant features. proposed model trained using 10-fold cross-validation, Random Search cross-validation parameter tuning, different performance measures used evaluate model. (3) Results: achieves 99.54% best jaccard accuracy Decision Tree. Tree incorporating outperforms alternative approaches classification. Single-label classifiers produced better results after considering correlation factor. (4) Conclusion: This will facilitate scientists programmers by providing systematic software projects saving time effort during reviews problems simultaneously. After smell, can create more organized, easier-to-understand, trustworthy programs.

Language: Английский

Citations

6

A survey on machine learning techniques applied to source code DOI Creative Commons
Tushar Sharma, Maria Kechagia, Stefanos Georgiou

et al.

Journal of Systems and Software, Journal Year: 2023, Volume and Issue: 209, P. 111934 - 111934

Published: Dec. 19, 2023

The advancements in machine learning techniques have encouraged researchers to apply these a myriad of software engineering tasks that use source code analysis, such as testing and vulnerability detection. Such large number studies hinders the community from understanding current research landscape. This paper aims summarize knowledge applied for analysis. We review belonging twelve categories corresponding techniques, tools, datasets been solve them. To do so, we conducted an extensive literature search identified 494 studies. our observations findings with help Our suggest analysis is consistently increasing. synthesize commonly used steps overall workflow each task employed. identify comprehensive list available tools useable this context. Finally, discusses perceived challenges area, including availability standard datasets, reproducibility replicability, hardware resources. Editor's note: Open Science material was validated by Journal Systems Software Board.

Language: Английский

Citations

13

Machine Learning-Based Methods for Code Smell Detection: A Survey DOI Creative Commons
Pravin Singh Yadav,

Rajwant Singh Rao,

Alok Mishra

et al.

Applied Sciences, Journal Year: 2024, Volume and Issue: 14(14), P. 6149 - 6149

Published: July 15, 2024

Code smells are early warning signs of potential issues in software quality. Various techniques used code smell detection, including the Bayesian approach, rule-based automatic antipattern identification utilizing B-splines, Support Vector Machine direct, SMURF (Support Machines for design detection using relevant feedback), and immune-based strategy. learning (ML) has taken a great stride this area. This study includes studies applying ML algorithms from 2005 to 2024 comprehensive manner survey provide insight regarding smell, frequently applied, metrics. Forty-two pertinent allow us assess efficacy on selected datasets. After evaluating various based open-source project datasets, evaluated additional threats obstacles such as lack standardized definitions, difficulty feature selection, challenges handling large-scale The current only considered few factors identifying smells, while study, several contributing included. Several examined, approaches, dataset languages, metrics presented. provides produce better results fills gap body knowledge by providing class-wise distributions algorithms. Machine, J48, Naive Bayes, Random Forest models most common detecting smells. Researchers can find helpful anticipating taking care development implementation issues. findings which highlight practical implications quality improvement, will help engineers fix problems during ensure

Language: Английский

Citations

4

Ensemble methods with feature selection and data balancing for improved code smells classification performance DOI Creative Commons
Pravin Singh Yadav,

Rajwant Singh Rao,

Alok Mishra

et al.

Engineering Applications of Artificial Intelligence, Journal Year: 2024, Volume and Issue: 139, P. 109527 - 109527

Published: Oct. 28, 2024

Language: Английский

Citations

4

An Empirical Study on Feature Extraction Using Ensemble Deep Learning for Code Smell Detection DOI
Ruchika Malhotra, Bhawna Jain,

Marouane Kessentini

et al.

Smart innovation, systems and technologies, Journal Year: 2025, Volume and Issue: unknown, P. 573 - 585

Published: Jan. 1, 2025

Language: Английский

Citations

0

Data preprocessing for machine learning based code smell detection: A systematic literature review DOI
Fábio do Rosario Santos, Ricardo Choren Noya

Information and Software Technology, Journal Year: 2025, Volume and Issue: unknown, P. 107752 - 107752

Published: April 1, 2025

Language: Английский

Citations

0

The impact of feature selection and feature reduction techniques for code smell detection: A comprehensive empirical study DOI
Zexian Zhang, Lin Zhu, Shuang Yin

et al.

Automated Software Engineering, Journal Year: 2025, Volume and Issue: 32(2)

Published: May 16, 2025

Language: Английский

Citations

0