Coverity Static Analysis
Ease of Use and FlexibilityCoverity Static Analysis is suitable for enterprise deployments, scaling to large, complex codebases (10 million+ lines of code), with no impact on the central build environment. Coverity Static Analysis also enables local analysis to clean your code before check-in.
Desktop Analysis
Coverity Static Analysis can easily be used within your own development environment. Developers using Eclipse and Visual Studio IDEs can analyze, triage, and repair their defects prior to checking in code to the nightly build.
Customizable Analysis
Fine tune your analysis by modifying either the number of checkers deployed, or the settings specific to an individual checker. The ability to configure Coverity Static Analysis for a particular code block, or application, allows you to select the level of performance most appropriate for your application, and leads to more accurate and reliable results.
Coverity Static Analysis Software Development Kit (SDK)
Formerly known as Extend, the Coverity Static Analysis SDK allows you write custom checkers to meet the unique needs of your codebase.
Writing Coverity Custom checks only requires C and C++ programming skills. Once you compose an extension, it integrates directly into the Coverity analysis engine which executes the checks across your entire code base.
Sample Checks:
- Disable interrupts locally rather than globally
- Enforce custom security polices
- Use memory mapped I/O rather than copying
- Enforce naming conventions
- Get all properties of parent classes
- Enforce that arrays for callers be null-terminated
- Use of global variables
- Find all arguments that are passed by reference
- Report assignments to the iteration variable inside a while loop
 :
Customized Static Analysis in 3 Steps
1. Define a rule
Begin creating a check by defining a sequence of source code actions along a path that could trigger a defect. Coverity Static Analysis includes a simple library of macros and templates for performing highly complex analysis functions.
2. Specify pattern matches
Specify a pattern match against the line and artifact in the source code. At the simplest level, matches can be textually based, such as a function name. However, nearly any type of pattern can be expressed as an Extend rule, so very complex defects can also be captured.
3. Integrate into GUI
Coverity Static Analysis provides a standard set of customizable routines for creating error messages and enabling GUI integration.
|