Static Code Analysis

Static Code Analysis Overview

What is Static Code Analysis?

Static Code Analysis (also called static analysis or source code analysis) is a way to debug software code before the program is executed. The code is automatically compared to coding rules and industry standards to ensure compliance. Static code analysis occurs in the creation phase, before testing begins.


Static code analysis analyzes the structure of the code, looking for code errors, malicious software, and other security flaws such as back doors. These tools frequently allow developers to hone in on portions of the code that might be problematic, rather than simply finding flaws.

How does Static Coding differ from Dynamic Coding?

The goal of both static coding and dynamic coding is to discover coding errors. The difference is where this discovery takes place. Static coding uncovers errors before testing the software, whereas dynamic coding uncovers errors during the testing phase, including any errors that the static code analysis failed to uncover.


Dynamic code analysis analyzes how code interacts with other components, such as application servers and SQL databases to ensure the code is secure. Most developers choose to implement both kinds of testing to ensure the most robust code.

Benefits of Static Code Analysis

Static code analysis is not 100% accurate and sometimes returns false positives or false negatives. However, it has numerous benefits, including:

  • Relative accuracy - catch many more errors than by manual analysis

  • Efficient way to uncover errors

  • Speed to discover errors

  • Comprehensiveness of testing

  • Decreases risk of high impact error after software release

  • Ability to uncover errors that aren’t usually detected during dynamic testing

Static Code Analysis Features & Capabilities

Most static code analysis software on the market today offers the following features:

  • Multiple programming language support

  • Various security and industry standard libraries

  • Code standardization

  • Reporting and analytics dashboards

  • Some offer third party integrations, including Github and Jenkins

Pricing Information

The price of static code analysis software ranges from free to several thousand per year. There are several open source static code analysis solutions on the market. For those needing more robust solutions, more programming languages, and support, expect to pay between $10 and $65 per user per month. Enterprise level users will need to obtain a custom quote based on the number of users and scans anticipated per month.


Static Code Analysis Products

(1-19 of 19) Sorted by Most Reviews

PyCharm
92 ratings
31 reviews
Top Rated
PyCharm is a Python IDE which also contains static code testing capabilities.
Veracode
41 ratings
26 reviews
Veracode is an application security platform that performs five types of analysis; static analysis, dynamic analysis, software composition analysis, interactive application security testing, and penetration testing. Veracode offers on-demand expertise and aims to help companies fix security defects.
SonarQube
19 ratings
5 reviews
SonarQube (formerly Sonar) is an open source application security solution.
Codacy
2 ratings
2 reviews
Codacy automates code reviews and monitors code quality on every commit and pull request reporting back the impact of every commit or pull request, issues concerning code style, best practices, security, and many others. It monitors changes in code coverage, code duplication and code complexity. Sav…
Checkmarx
8 ratings
1 reviews
Checkmarx, an Israeli headquartered company with US offices, provides a suite of application security software delivered via the Checkmarx Software Security Platform. Individual modules and capabilities include Checkmarx Static Application Security Testing, Checkmarx Software Composition Analysis, C…
Semmle
The Semmle analytics platform analyzes development data—source code, version history, development costs, team location. Semmle was acquired by GitHub in September 2019.
Parasoft Development Testing Solutions
Parasoft's Development Testing Solutions (formerly represented as the DTP platform) includes static code analyses solutions for C/C++, Java, and .NET, as well as security oriented testing solutions (SAST).
Codebeat
Codebeat is a static code analysis tool that is integrated with the Github, Bitbucket, and GitLab repositories. It provides automated code review and allows developers to merge with confidence.
Seerene
Seerene in Potsdam offers their software analytics platform as a digital boardroom for software management that provides real-time, understandable, objective insights into software development processes and activities for decision makers. This way, the software development gets monitored, analyzed, …
Sonatype DepShield
Sonatype DepSheild atomatically identifies vulnerabilities within open source dependencies and is available free.
Embold (formerly Gamma)
Embold Technologies (formerly Acellere) in Frankfort offers Embold (formerly Gamma), a static code analysis and peer code review tool for developers.
ProGuard
Belgian company Guardsquare offers the ProGuard optimizer for Java bytecode. It makes Java and Android applications up to 90% smaller and up to 20% faster. ProGuard also provides minimal protection against reverse engineering by obfuscating the names of classes, fields and methods.
GitPrime
GitPrime is a software and software developer analytics platform, which aggregates historical git data into easy to understand insights and reports, to help make engineering teams more successful. GitPrime is now owned and supported by Pluralsight (acquired May 2019).
Kiuwan Code Security
Kiuwan Code Security, from Idera company Kiuwan, automatically scans code to identify and remediate vulnerabilities. Compliant with the most stringent security standards, such as OWASP and CWE, Kiuwan Code Security covers all important languages and integrates with leading DevOps tools.
BlueOptima
BlueOptima's analytics platform is designed to empower software developers and their companies to create better software in the most time- and cost-efficient way. BlueOptima provides insight based on objective software developer productivity metrics: Actual Coding Effort.
GuardRails
GuardRails orchestrates open-source, and commercial security tools by integrating them into an existing development workflow. GuardRails curates each security rule of the security tools to keep the noise low and only report high-impact and relevant security issues.Installing and configuring security…
Findbugs
FindBugs is an open source program which uses static analysis to look for bugs in Java code. It is free software, distributed under the terms of the Lesser GNU Public License, and was developed (and its brand is trademarked by) the University of Maryland.
Amazon CodeGuru
Amazon CodeGuru is a developer tool that provides recommendations for improving code quality and identifying an application’s most expensive lines of code, performing automated code reviews and application performance recommendations. When Amazon CodeGuru Reviewer is enabled on a source code reposit…
WhiteHat Sentinel
Sentinel, from WhiteHat Security headquartered in Santa Clara, California, is an application security and testing platform. Individual components provide software composition analysis, static code analysis, license checking and vulnerability scanning, and support for mobile application security test…