Code sniffer: a risk based smell detection framework to enhance code quality using static code analysis
by Ahmad Tahmid; Md. Nurul Ahad Tawhid; Sumon Ahmed; Kazi Sakib
International Journal of Software Engineering, Technology and Applications (IJSETA), Vol. 2, No. 1, 2017

Abstract: To maintain software and enhance its code quality, code smell, i.e., undesired design flaws need to be detected. However, as the system size increases, manual smell detection becomes difficult. In this paper, a static code analysis framework, named code sniffer, is proposed to detect code smells with predicting their risk severity. This has been calculated using code metrics, and defined as low, moderate and high. The system consists of three main components: parser extracts a syntax tree from the given source code to identify the code structure. The syntax tree is searched against the syntax of class and method. Analyser searches found classes and methods against various code syntax to identify key features like line of code (LOC), number of properties (NOP), etc. In smell and risk detector, code smells, risky code segments and their severity are detected as a set of quantitative values (using LOC, NOP, etc.) using which classes and methods are judged. A comparative case study of this risk based static analyser is performed with a dynamic analyser, FxCop, and the comparison results support each other.

Online publication date: Tue, 03-Oct-2017

The full text of this article is only available to individual subscribers or to users at subscribing institutions.

Existing subscribers:
Go to Inderscience Online Journals to access the Full Text of this article.

Pay per view:
If you are not a subscriber and you just want to read the full contents of this article, buy online access here.

Complimentary Subscribers, Editors or Members of the Editorial Board of the International Journal of Software Engineering, Technology and Applications (IJSETA):
Login with your Inderscience username and password:

    Username:        Password:         

Forgotten your password?

Want to subscribe?
A subscription gives you complete access to all articles in the current issue, as well as to all articles in the previous three years (where applicable). See our Orders page to subscribe.

If you still need assistance, please email