Analysis Tool List

All commercial tools listed should have a free trial version or academic version available.

** Indicates extra credit is available for the first team to choose this tool (email the instructor).

Tool Name
Platform
Commercial/
Research
Comments
Eclat
Java
R
Automatically generates test inputs for a Java program
Purify C, C++, Java
C
Detects memory errors in C/C++ programs at runtime, or debugs garbage-collection related problems in Java
Java PathFinder Java
R
Model checker for Java programs, finds protocol-related errors
Zing C#
R**
Model checker for C# programs, finds protocol-related errors
BLAST C
R**
Model checker for C programs, finds protocol-related errors
BOOP C
R**
Model checker for C programs, modeled after SLAM.
Reflexion Models Java
R
A tool for reverse engineering programs
Rigi C
R
A tool for reverse engineering programs
Coverity (not yet available)
C, C++
C
Finds protocol-related errors, similar to a model checker
PMD Java
R
Finds design-related errors
JLint Java
R
Finds bugs in Java
Bandera Java
R**
Model checker for Java, finds protocol-related errors
Lackwit
R
Designed to aid reverse engineering or restructuring tasks
Splint (formerly LCLint) C
R
Finds security vulnerabilities and coding mistakes
EclipsePro Audit and Test
Java
C (already chosen)
EclipsePro Audit - Finds style violations and other Java issues (e.g. rules from Effective Java book)
EclipsePro Test - test generation and coverage tool
VeriSoft
C/C++ on Unix
R
Model checker for concurrent Unix programs
Lattix LDM
C/C++/Java
C**
Supports dependency analysis through Design Structure Matrices
FxCop
.Net
C**
Checks coding style and guidelines with an eye towards performance
Grammatech CodeSurfer/CodeSonar
C/C++
C (already chosen)
CodeSurfer - Sophisticated code browser that includes pointer analysis, call graphs, dependency chains, etc.
CodeSonar - Analysis for null dereferences, div by zero, buffer over/underruns, memory errors, format string vulnerabilities, etc.
The software, together with a temporary academic license, is available in the assignments section of Blackboard.


Other analysis tools to check out: