Skip to content

Runtime verification system for Java, using AspectJ for instrumentation.

License

Notifications You must be signed in to change notification settings

turkmenf/javamop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaMOP Overview

Monitoring-Oriented Programming (MOP), is a software development and analysis framework which aims to reduce the gap between formal specification and implementation by allowing them together to form a system. In MOP, runtime monitoring is supported and encouraged as a fundamental principle for building reliable software: monitors are automatically synthesized from specified properties and integrated with the original system to check its dynamic behaviors during execution. When a specification is violated or validated at runtime, user-defined actions will be triggered, which can be any code: from information logging to runtime recovery.

JavaMOP is an instance of MOP for Java.

Installation

See INSTALL.md for installing JavaMOP from the binary release zip archive. To build JavaMOP from source code, download the source code and refer to src/README.md.

Usage

Refer to docs/Usage.md for detailed instructions on how to use JavaMOP.

JavaMOPAgent

A separate tool called javamopagent is provided to facilitate the monitoring of your program. Refer to [docs/JavaMOPAgentUsage.md] (docs/JavaMOPAgentUsage.md) for detailed instructions on how to use JavaMOPAgent.

About

Runtime verification system for Java, using AspectJ for instrumentation.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 99.7%
  • Other 0.3%