arXiv Analytics

Sign in

arXiv:1902.03222 [cs.SE]AbstractReferencesReviewsResources

Code Smell Detection using Multilabel Classification Approach

Thirupathi Guggulothu

Published 2019-02-08Version 1

Code smells are characteristics of the software that indicates a code or design problem which can make software hard to understand, evolve, and maintain. The code smell detection tools proposed in the literature produce different results, as smells are informally defined or are subjective in nature. To address the issue of tool subjectivity, machine learning techniques have been proposed which can learn and distinguish the characteristics of smelly and non-smelly source code elements (classes or methods). However, the existing machine learning techniques can only detect a single type of smell in the code element which does not correspond to a real-world scenario. In this paper, we have used multilabel classification methods to detect whether the given code element is affected by multiple smells or not. We have considered two code smell datasets for this work and converted them into a multilabel dataset. In our experimentation, Two multilabel methods performed on the converted dataset which demonstrates good performances in the 10-fold cross-validation, using ten repetitions.

Related articles:
arXiv:1907.00376 [cs.SE] (Published 2019-06-30)
On the Fault Proneness of SonarQube Technical Debt Violations: A comparison of eight Machine Learning Techniques
arXiv:1904.03031 [cs.SE] (Published 2019-04-05)
On the Feasibility of Transfer-learning Code Smells using Deep Learning
arXiv:1701.00108 [cs.SE] (Published 2016-12-31)
Parichayana: An Eclipse Plugin for Detecting Exception Handling Anti-Patterns and Code Smells in Java Programs