arrow
Return

SmellyCode++: Multi-Label Dataset for Code Smell Detection

delete2025-07-12
delete0
delete
OA
AI
N
Nawaf Alomari *
A
Amal Alazba
H
Hamoud Aljamaan
M
Mohammad Alshayeb
DOI:10.1038/s41597-025-05465-zdelete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Context: Code smells indicate poor software design, affecting maintainability. Accurate detection is vital for refactoring and quality improvement. However, existing datasets often frame detection as single-label classification, limiting realism. Objective: This paper develops a multi-label dataset for code smell detection, integrating textual features and numerical metrics from open-source Java projects. Method: We collected code from 103 Java projects, parsed it into Abstract Syntax Trees (ASTs), extracted features, and annotated samples based on prior studies. Data cleaning, unification, and merging techniques were applied to support four code smells: God Class, Data Class, Feature Envy, and Long Method. Results: The dataset comprises 107,554 samples with multi-label annotations, improving detection realism. Evaluation shows F1 scores of 95.89% (Data Class), 94.48% (God Class), 88.68% (Feature Envy), and 88.87% (Long Method). Conclusion: This dataset aids advanced studies on code smell detection, particularly for fine-tuning LLMs. Future work can expand it to other languages and additional smells, enhancing diversity and applicability.
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Scientific Data cover
Scientific Data
IF:
6.9
Papers:
3.9K
Citations:
3.8W

Organization

I
Information and Computer Science Department
Scholars:
34
Papers: 15
Citations: 0
D
Department of Information Systems
Scholars:
82
Papers: 60
Citations: 0
Cited Papers

Cited Papers

MLCQ
err2020-04-17
err0
PREAI
errLech Madeyski; Tomasz Lewowski
errShare
errSave
On the diffuseness and the impact on maintainability of code smells
err2018-05-27
err0
PREAI
errFabio Palomba; Gabriele Bavota; Massimiliano Di Penta; Fausto Fasano; Rocco Oliveto; Andrea De Lucia
errShare
errSave
Multi-label learning for identifying co-occurring class code smells
err2024-05-27
err0
PREAI
errHadj-Kacem, Mouna; Bouassida, Nadia
errShare
errSave
Comparing and experimenting machine learning techniques for code smell detection
err2015-06-06
err277
PREAI
errFontana, Francesca Arcelli; Mantyla, Mika V.; Zanoni, Marco; Marino, Alessandro
errShare
errSave
The Qualitas Corpus: A Curated Collection of Java Code for Empirical Studies
err2010-11-01
err0
errOAAI
errEwan Tempero; Craig Anslow; Jens Dietrich; Ted Han; Jing Li; Markus Lumpe; Hayden Melton; James Noble
errShare
errSave
errShare
errSave
An exploratory study of the impact of antipatterns on class change- and fault-proneness
err2011-08-06
err291
PREAI
errKhomh, Foutse; Di Penta, Massimiliano; Gueheneuc, Yann-Gael; Antoniol, Giuliano
errShare
errSave
researcher View more