  Fault-proneness is an indication of programming errors that decreases
software quality and maintainability. On the contrary, code smell is a symptom
of potential design problems which has impact on fault-proneness. In the
literature, negative impact of code smells on fault-proneness has been
investigated. However, it is still unclear that how frequency of each code
smell type impacts on the fault-proneness. To mitigate this research gap, we
present an empirical study to identify whether frequency of individual code
smell types has a relationship with fault-proneness. More specifically, we
identify 13 code smell types and fault-proneness of the corresponding smelly
classes in the well-known open source systems from Apache and Eclipse
ecosystems. Then we analyse the relationship between their frequency of
occurrences based on the correlation. The results show that Anti Singleton,
Blob and Class Data Should Be Private smell types have strong relationship with
fault-proneness though their frequencies are not very high. On the other hand,
comparatively high frequent code smell types such as Complex Class, Large Class
and Long Parameter List have moderate relationship with fault-proneness. These
findings will assist developers to prioritize code smells while performing
refactoring activities in order to improve software quality.
