An approach to automatic detection of software failures in real-time systems

Tony Savor, Rudolph E. Seviora · 2002

Software supervision is an approach to automatic detection of software failures. A software supervisor observes the inputs and outputs of a target system. It uses a model of correct behavior, derived from the target system's requirements specification. Discrepancies between specified and observed behaviors are reported as failures. The tradeoff between the computational complexity of supervision and the latency of failure reporting is discussed in this paper. Supervisor computational complexity can be significantly reduced at the expense of increased failure reporting latency. For applications such as software testing, this is a practical tradeoff. Such a supervisor is called an out-of-time supervisor. This paper describes the data flows, algorithms, operation and evaluation of an out-of-time supervisor for communicating finite state machine based requirements specifications. A prototype supervisor was used to monitor the operation a small telephone exchange control program. For a fail...

Read the paper · More papers on PaperTik