Assessment of code smell for predicting class change proneness using machine learning

Nakul Pritam, Manju Khari, Le Hoang Son, Raghvendra Kumar, Sudan Jha, Ishaani Priyadarshini, Mohamed Abdel-Basset, Hoang Viet Long

Research output: Contribution to journalArticlepeer-review

47 Citations (Scopus)


Assessment of code smell for predicting software change proneness is essential to ensure its significance in the area of software quality. While multiple studies have been conducted in this regard, the number of systems studied and the methods used in this paper are quite different, thus, causing confusion for understanding the best methodology. The objective of this paper is to approve the effect of code smell on the change inclination of a specific class in a product framework. This is the novelty and surplus of this work against the others. Furthermore, this paper aims to validate code smell for predicting class change proneness to find an error in the prediction of change proneness using code smell. Six typical machine learning algorithms (Naive Bayes Classifier, Multilayer Perceptron, LogitBoost, Bagging, Random Forest, and Decision Tree) have been used to predict change proneness using code smell from a set of 8200 Java classes spanning 14 software systems. The experimental results suggest that code smell is indeed a powerful predictor of class change proneness with multilayer perceptron being the most effective technique. The sensitivity and specificity values for all the models are well over 70% with a few exceptions.

Original languageEnglish
Article number8667419
Pages (from-to)37414-37425
Number of pages12
JournalIEEE Access
Publication statusPublished - 14 Mar 2019
Externally publishedYes


Dive into the research topics of 'Assessment of code smell for predicting class change proneness using machine learning'. Together they form a unique fingerprint.

Cite this