This tool helps you to reverse engineer UML Sequence Diagram for your java program at runtime. It works well with both complex java programs (that have multiple threads) and J2EE applications deployed on Application Servers.
XJML 1.0 is a platform for Verification and Validation of Java classes
XJML 1.0 actually can reads one Java class and its contract (written in XML) and then executes the next verification techniques:
1. Runtime Assertion Checking (RAC). Using JML4c and JML4rt tools.
2. Extended Static Checking (ESC). Using ESC/Java2.
3. Full Static Program Verification (FSPV). Using the Why platform (tested with Why 2.30 and Why3 0.71)
Runtime concurrency analysis for Java. Instruments your Java app at run time, and monitors field access, synchronization and locking, to verify concurrent access is safe.