Abstract. A formal framework for software development and analysis is presented, which aims at reducing the gap between formal specification and implementation by integrating the two and allowing them together to form a system. It is called monitoring-oriented programming (MOP), since runtime monitoring is supported and encouraged as a fundamental principle. Monitors are automatically synthesized from formal specifications and integrated at appropriate places in the program, according to user-configurable attributes. Violations and/or validations of specifications can trigger user-defined code at any points in the program, in particular recovery code, outputting/sending messages, or raising exceptions. The major novelty of MOP is its generality w.r.t. logical formalisms: it allows users to insert their favorite or domain-specific specification formalisms via logic plug-in modules. A WWW repository has been created, allowing MOP users to download and upload logic plugins. An experimental prototype tool, called Java-MOP, is also discussed, which currently supports most but not all of the desired MOP features.
Monitored-oriented programming (MOP) REF permits to execute runtime monitoring by means of annotating the code with formal property specifications.
A Formal Monitoring-Based Framework for Software Development and Analysis
In Proceedings of ICFEM’04, volume 3308 of LNCS
Computer Science