2023Unpublished venueRequires access

An Analysis on Detection and Visualization of Code Smells

J. Prabhu, Thejineaswar Guhan, Mayur Rahul, Pritish Gupta, M. Sandeep Kumar

Open publisher page 1 citations

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.

About this research paper

What this paper is about

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.

Why it matters

OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available 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.

Key concepts: Code smell, Computer science, Code refactoring, Static program analysis, Python (programming language), Source code, Code review, Software quality

Related papers

Back to paper searchBrowse research topicsOriginal source
An Analysis on Detection and Visualization of Code Smells — Research Paper | ScholarLens