A Framework for Knowledge Management and Automated Constraint Monitoring
This paper describes an approach called Dynamic Monitoring with Integrity Constraints (DynaMICs) that consists of a specification language for defining constraints and tools that permit automated instrumentation of constraints, runtime monitoring that minimizes performance degradation, and tracing. The goal is to capture domain and system knowledge as constraints and to use the constraints to monitor software execution, providing evidence of correctness and assistance in identification of error sources. The paper presents a framework for managing knowledge and instrumenting programs to test the state of programs at runtime. In addition, it discusses the role that temporal logic, model checking and program-synthesis systems can play in developing and using DynaMICs.