An Analysis on Detection and Visualization of Code Smells
J. Prabhu, Thejineaswar Guhan, Mayur Rahul, Pritish Gupta, M. Sandeep Kumar
Abstract
J. Prabhu, Thejineaswar Guhan, Mayur Rahul, Pritish Gupta, M. Sandeep Kumar
Abstract
The term code smell indicates potential menacing practices in the source code of the software. It does not imply that the software will result in compilation errors or not produce the expected output. Still, the attributes such as performance, productivity, and software maintainability might have serious concerns, directly impacting the software code quality. The analysis is divided into 3 topics: Machine-Learning based code smell detection techniques, Code smell behavior on multiple computer languages, and the Comparison of the latest code smell detection tools. This paper provides an up-to-date review of the recent developments in code smell detection algorithms regarding Machine-Learning techniques. The study covers various aspects, from common findings of code smells in Machine-Learning based projects to detection of code smells in the API documentation. It is observed that the majority of the publications have focused on code smell characteristics over the Java environment. So, for our analysis, we choose to survey Scala, SQL, C#, Python, and JavaScript to understand the unexplored path better. Code Smell Detection tools follow various unique detection techniques and list the smell types identified for the developer to refactor. Subsequently, we conducted a comparative study on the few latest publications on detection tools compared and tabulated for their merits and demerits. This paper presents, which leads to improved software productivity comprehensive review of detection techniques and behavioral aspects of code smell which, when coupled with the detection tools.
OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
The term code smell indicates potential menacing practices in the source code of the software. It does not imply that the software will result in compilation errors or not produce the expected output. Still, the attributes such as performance, productivity, and software maintainability might have serious concerns, directly impacting the software code quality. The analysis is divided into 3 topics: Machine-Learning based code smell detection techniques, Code smell behavior on multiple computer languages, and the Comparison of the latest code smell detection tools. This paper provides an up-to-date review of the recent developments in code smell detection algorithms regarding Machine-Learning techniques. The study covers various aspects, from common findings of code smells in Machine-Learning based projects to detection of code smells in the API documentation. It is observed that the majority of the publications have focused on code smell characteristics over the Java environment. So, for our analysis, we choose to survey Scala, SQL, C#, Python, and JavaScript to understand the unexplored path better. Code Smell Detection tools follow various unique detection techniques and list the smell types identified for the developer to refactor. Subsequently, we conducted a comparative study on the few latest publications on detection tools compared and tabulated for their merits and demerits. This paper presents, which leads to improved software productivity comprehensive review of detection techniques and behavioral aspects of code smell which, when coupled with the detection tools.
Key concepts: Code smell, Computer science, Code refactoring, Static program analysis, Python (programming language), Source code, Code review, Software quality