An overview of the MOP runtime verification framework

Patrick O.Neil Meredith, Dongyun Jin, Dennis Griffith, Feng Chen, Grigore Roşu

Research output: Contribution to journalArticlepeer-review


This article gives an overview of the, monitoring oriented programming framework (MOP). In MOP, runtime monitoring is supported and encouraged as a fundamental principle for building reliable systems. Monitors are automatically synthesized from specified properties and are used in conjunction with the original system to check its dynamic behaviors. When a specification is violated or validated at runtime, user-defined actions will be triggered, which can be any code, such as information logging or runtime recovery. Two instances of MOP are presented: JavaMOP (for Java programs) and BusMOP (for monitoring PCI bus traffic). The architecture of MOP is discussed, and an explanation of parametric trace monitoring and its implementation is given. A comprehensive evaluation of JavaMOP attests to its efficiency, especially in comparison with similar systems. The implementation of BusMOP is discussed in detail. In general, BusMOP imposes no runtime overhead on the system it is monitoring.

Original languageEnglish (US)
Pages (from-to)249-289
Number of pages41
JournalInternational Journal on Software Tools for Technology Transfer
Issue number3
StatePublished - Jun 2012


  • Monitoring
  • Real time systems
  • Runtime verification
  • Testing

ASJC Scopus subject areas

  • Software
  • Information Systems


Dive into the research topics of 'An overview of the MOP runtime verification framework'. Together they form a unique fingerprint.

Cite this