Departmental Papers (CIS)

Date of this Version

June 1999

Document Type

Conference Paper


Copyright 1999 IEEE. Reprinted from 11th Euromicro Conference on Real-Time Systems (ecrts), 1999, p. 0114. Publisher URL:

This material is posted here with permission of the IEEE. Such permission of the IEEE does not in any way imply IEEE endorsement of any of the University of Pennsylvania's products or services. Internal or personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution must be obtained from the IEEE by writing to By choosing to view this document, you agree to all provisions of the copyright laws protecting it.


We describe the Monitoring and Checking (MaC) framework which provides assurance on the correctness of an execution of a real-time system at run-time. Monitoring is performed based on a formal specification of system requirements. MaC bridges the gap between formal specification, which analyzes designs rather than implementations, and testing, which validates implementations but lacks formality. An important aspect of the framework is a clear separation between implementation-dependent description of monitored objects and high-level requirements specification. Another salient feature is automatic instrumentation of executable code

The paper presents an overview of the framework. languages to express monitoring scripts and requirements, and a prototype implementation of MaC targeted at systems implemented in Java.



Date Posted: 16 February 2007

This document has been peer reviewed.