P6Spy is an open source framework for applications to intercept and optionally modify database statements. The P6Spy distribution includes P6Log, which intercepts and logs the database statements of any application that uses JDBC. This application is particularly useful for developers to monitor the SQL statements produced by EJB servers, enabling the developer to write code that achieves maximum efficiency on the server. P6Spy is designed to be installed in minutes and requires no code changes.
Platform Independent Petri Net Editor (PIPE) creates and analyses Petri Nets quickly, efficiently, and effectively. A key design feature is the modular approach adopted for analysis, enabling new modules to be written easily and powerfully, using built-in data layer methods for standard calculations. Six analysis modules are provided, including Invariant Analysis, State-Space Analysis (deadlock, etc.), and Simulation Analysis and Classification. PIPE adheres to the XML Petri net standard (PNML). The file format for saving and loading Petri Nets is extensible through the use of XSLT, the default being PNML.
Sparse is a semantic parser of source files. It's neither a compiler (although it could be used as a front-end for one) nor a preprocessor (although it contains a preprocessing phase). It is meant to be a small, simple, easy to use library. Its function is to create a semantic parse tree for some arbitrary user for further analysis. It's not a tokenizer, nor is it a generic context-free parser. Context (semantics) is what it's all about: figuring out not just what the grouping of tokens are, but what the types are that the grouping implies.
Spike PHPCoverage is a tool for measuring and reporting code coverage provided by the test suite of a PHP application. It can instrument and record the line coverage information for any PHP script at runtime. It also provides an extensible reporting mechanism with a standard HTML report implemented out of the box. The default report displays the summary information about the code coverage for an application and also shows the detailed information about a file including which lines were actually executed and with what frequency. It is possible to specify the directories and files that should be included and/or excluded from a coverage measurement.
Daikon is an implementation of dynamic detection of likely invariants. An invariant is a property (such as "x=2*y+5" or "this.next.prev = this" or "myarray is sorted by <") that holds at a certain point or points in a program. Invariants are often seen in assert statements, documentation, and formal specifications. Invariants can be useful in program understanding and a host of other applications. Daikon runs a program, observes the values that the program computes, and then reports properties that were true over the observed executions. It can detect properties in Java, C, C++, Perl, and IOA programs, in spreadsheet files, and in other data sources.