arrow
返回

Code smell detection and identification in imbalanced environments

delete2021-03-01
delete21
PRE
AI
S
Sofien Boutaib
S
Slim Bechikh *
F
Fabio Palomba *
M
Maha Elarbi
M
Mohamed Makhlouf
DOI:10.1016/j.eswa.2020.114076delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Context: Code smells are sub-optimal design choices that could lower software maintainability. Objective: Previous literature did not consider an important characteristic of the smell detection problem, namely data imbalance. When considering a high number of code smell types, the number of smelly classes is likely to largely exceed the number of non-smelly ones, and vice versa. Moreover, most studies did address the smell identification problem, which is more likely to present a higher imbalance as the number of smelly classes is relatively much less than the number of non-smelly ones. Furthermore, an additional research gap in the literature consists in the fact that the number of smell type identification methods is very small compared to the detection ones. Research gap: The main challenges in smell detection and identification in an imbalanced environment are: (1) the structuring of the smell detector that should be able to deal with complex splitting boundaries and small disjuncts, (2) the design of the detector quality evaluation function that should take into account data imbalance, and (3) the efficient search for effective software metrics' thresholds that should well characterize the different smells. Furthermore, the number of smell type identification methods is very small compared to the detection ones. Method: We propose ADIODE, an effective search-based engine that is able to deal with all the above-described challenges not only for the smell detection case but also for the identification one. Indeed, ADIODE is an EA (Evolutionary Algorithm) that evolves a population of detectors encoded as ODTs (Oblique Decision Trees) using the F-measure as a fitness function. This allows ADIODE to efficiently approximate globally-optimal detectors with effective oblique splitting hyper-planes and metrics' thresholds. We note that to build the BE, each software class is parsed using a particular tool with the aim to extract its metrics' values, based on which the considered class is labeled by means of a set of existing advisors; which could be seen as a two-step construction process. Results: A comparative experimental study on six open-source software systems demonstrates the merits and the outperformance of our approach compared to four of the most representative and prominent baseline techniques available in literature. The detection results show that the F-measure of ADIODE ranges between 91.23 % and 95.24 %, and its AUC lies between 0.9273 and 0.9573. Similarly, the identification results indicate that the F-measure of ADIODE varies between 86.26 % and 94.5 %, and its AUC is between 0.8653 and 0.9531.
Keyword:
Code smells detection
Smell type identification
Imbalanced data classification
Oblique decision tree
Evolutionary algorithm
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Expert Systems with Applications 封面图
Expert Systems with Applications
IF:
7.5
论文数:
2.9W
被引数:
10.2W

机构

U
University of Salerno
学者数:
1.2W
论文数: 1.1W
被引数: 1.2W
U
universite de tunis
学者数:
1.1K
论文数: 987
被引数: 1
K
Kedge Business School
学者数:
541
论文数: 947
被引数: 1.4K
学者 查看更多机构
引用论文

引用论文

err分享
err收藏
Metals and organic species associated with fine and coarse aerosol particles in an electronic waste recycling plant
err2023-02-06
err0
PREAI
errGiulia Pazzi; Francesca Buiarelli; Patrizia Di Filippo; Donatella Pomata; Carmela Riccardi; Franco Lucarelli; Fabio Giardi; Elisa Sonego; Roberta Galarini; Stefano Lorenzetti; Laura Goracci; Giulia Simonetti
err分享
err收藏
The impact of class imbalance in classification performance metrics based on the binary confusion matrix
err2019-07-01
err590
errOAAI
errLuque, Amalia; Carrasco, Alejandro; Martin, Alejandro; de las Heras, Ana
err分享
err收藏
BDTEX: A GQM-based Bayesian approach for the detection of antipatterns
err2011-04-01
err143
PREAI
errKhomh, Foutse; Vaucher, Stephane; Gueheneuc, Yann-Gael; Sahraoui, Houari
err分享
err收藏
A survey of many-objective optimisation in search-based software engineering
err2019-03-01
err70
PREAI
errRamirez, Aurora; Raul Romero, Jose; Ventura, Sebastian
err分享
err收藏
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
err分享
err收藏
学者 查看更多内容