Coverity

[Deutsch]

Coverity Prevent Analysis-Engine

Identify critical defects (C/C++)

  • Prevent source code analysis engines leverage the Software DNA Map to understand the various aspects of your code
  • The Prevent modular defect detection platform enables numerous modules (or checkers) to analyze your code base simultaneously to search for different categories of defects
  • Prevent preconfigured libraries describe the APIs and behaviors of the third-party libraries that are part of your product

After constructing the Software DNA Map, Prevent analyzes that map to build a complete understanding of your code. Prevent applies numerous, distinct analysis engines to understand the code in all executable forms. The analysis engines provide defect detecting checkers with the most accurate and precise representation of the source code possible for hunting defects.

A series of modules have been built on top of the analysis engines to identify defects in three main categories: Crash Causing Defects (memory errors, logic errors, pointer errors, etc.); Security Vulnerabilities; and Concurrency Defects. This modular analysis architecture allows Coverity to continually build additional modules targeted at specific categories of defects.

How Coverity Identifies Critical Software Defects

Prevent analysis engines enable the defect detecting checkers to have the most accurate and precise representation of the source code possible.

The Prevent for C/C++ Analysis Engines

Engine Benefit
Path Flow Engine Understands the control flow through each function in your code base by building a graph that represents all of the paths through that function.
Data Tracking Engine Responsible for understanding all of the integer and Boolean data that it collects from statements along each path in the program.
Statistical Engine Responsible for understanding behavioral characteristics of your code base as a whole.
Interprocedural Summary Engine A key innovation that enables Prevent to perform a whole program analysis that analyzes complex call chains at any depth across files and modules.
Type Flow Engine Used to improve the precision of the reported results in C++-specific analyses that rely on class hierarchy.
False Path Engine Responsible solving each branch condition to determine if it will be true, false, or unknown on the current path.
Acceleration Engine Stores information collected by each defect analysis during the traversal of each path; eliminating all redundant paths to find the maximum set of defects without traversing any unnecessary paths.
Data Propagation Engine Pulls together all of the summaries generated by the Interprocedural Summary Engine and all of the data tracked by the Data Tracking Engine which is key to Coverity’s unique context-sensitive interprocedural analysis capability
Incremental Analysis Engine Increases performance by caching analysis data so that subsequent analyses will only cover code that has changed.

To see the Coverity Analysis Engine in action on your code, please sign up for our free trial. We guarantee to find a number of important defects in your code.

Coverity Home page
Coverity Mainpage
Free trial Next
Next page


last updated: 12.02.2008

© 2004-2008 Coverity Inc.
Coverity Prevent and Coverity Extend are products and trademarks of Coverity, San Francisco (USA)
all other trademarks of this site are the property of their respective owners.