Abstract
We present CoMA (Conformance Monitoring by Abstract State Machines), a specification-based approach and its supporting tool
for runtime monitoring of Java software. Based on the information obtained from code execution and model simulation, the conformance
of the concrete implementation is checked with respect to its formal specification given in terms of Abstract State Machines.
At runtime, undesirable behaviors of the implementation, as well as incorrect specifications of the system behavior are recognized.
The technique we propose makes use of Java annotations, which link the concrete implementation to its formal model, without
enriching the code with behavioral information contained only in the abstract specification. The approach fosters the separation
between implementation and specification, and allows the reuse of specifications for other purposes (formal verification,
simulation, model-based testing, etc.).
[read the copyright and download the pdf file] [DOI]