Code smells can be subjectively interpreted, the results provided by detectors are usually different, the agreement in the results is scarce, and a benchmark for the comparison of these results is not yet available. The main approaches used to detect code smells are based on the computation of a set of metrics. However code smell detectors often use different metrics and/or different thresholds, according to their detection rules. As result of this inconsistency the number of detected smells can increase or decrease accordingly, and this makes hard to understand when, for a specific software, a certain characteristic identifies a code smell or not. In this work, we introduce WekaNose, a tool that allows to perform an experiment to study code smell detection through machine learning techniques. The experiment's purpose is to select rules, and/or obtain trained algorithms, that can classify an instance (method or class) as affected or not by a code smell. These rules have the main advantage of being extracted through an example-based approach, rather then a heuristic-based one.
Azadi, U., Arcelli Fontana, F., & Zanoni, M. (2018). Machine learning based code smell detection through WekaNose. In ICSE '18 Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings (pp.288-289). 345 E 47TH ST, NEW YORK, NY 10017 USA : IEEE Computer Society.
|Citazione:||Azadi, U., Arcelli Fontana, F., & Zanoni, M. (2018). Machine learning based code smell detection through WekaNose. In ICSE '18 Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings (pp.288-289). 345 E 47TH ST, NEW YORK, NY 10017 USA : IEEE Computer Society.|
|Carattere della pubblicazione:||Scientifica|
|Presenza di un coautore afferente ad Istituzioni straniere:||No|
|Titolo:||Machine learning based code smell detection through WekaNose|
|Autori:||Azadi, U; Arcelli Fontana, F; Zanoni, M|
ARCELLI FONTANA, FRANCESCA [Membro del Collaboration Group] (Corresponding)
ZANONI, MARCO [Membro del Collaboration Group]
|Data di pubblicazione:||2018|
|Nome del convegno:||ACM/IEEE International Conference on Software Engineering, ICSE 2018|
|Serie:||PROCEEDINGS - INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING|
|Appare nelle tipologie:||02 - Intervento a convegno|