2018•Unpublished venueRequires access

Probing into code analysis tools: A comparison of C# supporting static code analyzers

Rida Shaukat, Arooba Shahoor, Aniqa Urooj

Open publisher page 27 citations

Abstract

Essence of a software system lies in the quality of source code and the degree to which it follows the underlying coding standard. The widely-used code analysis techniques focus upon examining the programs without actually executing them. The major purpose is the detection of complex code constructs and the potential defects that result in the decrement in quality of the code. The code complexity is often assumed to inflate the maintenance cost and lead to the unexpected system behaviour. A number of code analyzing tools are available and currently many researches are being conducted to improve software quality, bring down software complexity without affecting its external behaviour. A brief review of the existing code analyzers is presented in this paper; however the major focus is upon the tools that analyze the source code written in C#. Researchers round the globe have identified that the potential problems in the source code are: code smells, code clones, anti-detect pattern etc that often lead to the increase in system complexity and hence amplification in the system response time. The code analyzing tools have their own significance depending upon the domain where they are being applied. Code analyzers are of extreme value especially in the mission critical systems, where the system efficiency is one of the factors for mission success. The methodology adopted for the purpose of review of the existing tools is that first of all, the purpose of tool is described, secondly, the personal findings, along with reviews from the clients and technology analysts regarding the tool are taken into account, thirdly, a sample C# application is chosen and the outputs from the tools for this sample are taken for analysis and comparison. Upon the basis of analysis, reviews and comparison, the relatively best tool among the 8 analyzed tools has been figured out.

About this research paper

What this paper is about

Essence of a software system lies in the quality of source code and the degree to which it follows the underlying coding standard. The widely-used code analysis techniques focus upon examining the programs without actually executing them. The major purpose is the detection of complex code constructs and the potential defects that result in the decrement in quality of the code. The code complexity is often assumed to inflate the maintenance cost and lead to the unexpected system behaviour. A number of code analyzing tools are available and currently many researches are being conducted to improve software quality, bring down software complexity without affecting its external behaviour. A brief review of the existing code analyzers is presented in this paper; however the major focus is upon the tools that analyze the source code written in C#. Researchers round the globe have identified that the potential problems in the source code are: code smells, code clones, anti-detect pattern etc that often lead to the increase in system complexity and hence amplification in the system response time. The code analyzing tools have their own significance depending upon the domain where they are being applied. Code analyzers are of extreme value especially in the mission critical systems, where the system efficiency is one of the factors for mission success. The methodology adopted for the purpose of review of the existing tools is that first of all, the purpose of tool is described, secondly, the personal findings, along with reviews from the clients and technology analysts regarding the tool are taken into account, thirdly, a sample C# application is chosen and the outputs from the tools for this sample are taken for analysis and comparison. Upon the basis of analysis, reviews and comparison, the relatively best tool among the 8 analyzed tools has been figured out.

Why it matters

OpenAlex reports 27 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

Essence of a software system lies in the quality of source code and the degree to which it follows the underlying coding standard. The widely-used code analysis techniques focus upon examining the programs without actually executing them. The major purpose is the detection of complex code constructs and the potential defects that result in the decrement in quality of the code. The code complexity is often assumed to inflate the maintenance cost and lead to the unexpected system behaviour. A number of code analyzing tools are available and currently many researches are being conducted to improve software quality, bring down software complexity without affecting its external behaviour. A brief review of the existing code analyzers is presented in this paper; however the major focus is upon the tools that analyze the source code written in C#. Researchers round the globe have identified that the potential problems in the source code are: code smells, code clones, anti-detect pattern etc that often lead to the increase in system complexity and hence amplification in the system response time. The code analyzing tools have their own significance depending upon the domain where they are being applied. Code analyzers are of extreme value especially in the mission critical systems, where the system efficiency is one of the factors for mission success. The methodology adopted for the purpose of review of the existing tools is that first of all, the purpose of tool is described, secondly, the personal findings, along with reviews from the clients and technology analysts regarding the tool are taken into account, thirdly, a sample C# application is chosen and the outputs from the tools for this sample are taken for analysis and comparison. Upon the basis of analysis, reviews and comparison, the relatively best tool among the 8 analyzed tools has been figured out.

Key concepts: Code review, Computer science, KPI-driven code analysis, Static program analysis, Source code, Software quality, Code (set theory), Code smell

Related papers

Back to paper searchBrowse research topicsOriginal source
Probing into code analysis tools: A comparison of C# supporting static code analyzers — Research Paper | ScholarLens