Show simple item record

dc.contributor.authorYadav, Pravin Singh
dc.contributor.authorRao, Rajwant Singh
dc.contributor.authorMishra, Alok
dc.contributor.authorGupta, Manjari
dc.date.accessioned2024-10-30T09:44:50Z
dc.date.available2024-10-30T09:44:50Z
dc.date.created2024-10-29T13:59:29Z
dc.date.issued2024
dc.identifier.citationEngineering Applications of Artificial Intelligence. 2024, 139 (A).en_US
dc.identifier.issn0952-1976
dc.identifier.urihttps://hdl.handle.net/11250/3161517
dc.description.abstractCode smells are software flaws that make it challenging to comprehend, develop, and maintain the software. Identifying and removing code smells is crucial for software quality. This study examines the effectiveness of several machine-learning models before and after applying feature selection and data balancing on code smell datasets. Extreme Gradient Boosting, Gradient Boosting, Adaptive Boosting, Random Forest, Artificial Neural Network (ANN), and Ensemble model of Bagging, and the two best-performing Boosting techniques are used to predict code smell. This study proposes an enhanced approach, which is an ensemble model of the Bagging and Boosting classifier (EMBBC) that incorporates feature selection and data balancing techniques to predict code smells. Four publicly available code smell datasets, Blob Class, Data Class, Long Parameter List, and Switch Statement, were considered for the experimental work. Classes of datasets are balanced using the Synthetic Minority Over-Sampling Technique (SMOTE). A feature selection method called Recursive Feature Elimination with Cross-Validation (RFECV) is used. This study shows that the ensemble model of Bagging and the two best-performing Boosting techniques performs better in Blob Class, Data Class, and Long Parameter List datasets with the highest accuracy of 99.21%, 99.21%, and 97.62%, respectively. In the Switch Statement dataset, the ANN model provides a higher accuracy of 92.86%. Since the proposed model uses only seven features and still provides better results than others, it could be helpful to detect code smells for software engineers and practitioners in less computational time, improving the system's overall performance.en_US
dc.language.isoengen_US
dc.publisherElsevieren_US
dc.rightsNavngivelse 4.0 Internasjonal*
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/deed.no*
dc.titleEnsemble methods with feature selection and data balancing for improved code smells classification performanceen_US
dc.title.alternativeEnsemble methods with feature selection and data balancing for improved code smells classification performanceen_US
dc.typeJournal articleen_US
dc.typePeer revieweden_US
dc.description.versionpublishedVersionen_US
dc.source.pagenumber1-21en_US
dc.source.volume139en_US
dc.source.journalEngineering Applications of Artificial Intelligenceen_US
dc.source.issueAen_US
dc.identifier.doi10.1016/j.engappai.2024.109527
dc.identifier.cristin2315797
cristin.ispublishedtrue
cristin.fulltextoriginal
cristin.qualitycode1


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record

Navngivelse 4.0 Internasjonal
Except where otherwise noted, this item's license is described as Navngivelse 4.0 Internasjonal