Testing the correctness of tasking supervisors with TSL specifications

  • Authors:
  • D. Rosenblum;D. Luckham

  • Affiliations:
  • AT&T Bell Laboratories, 600 Mountain Avenue, Murray Hill, NJ;Computer Systems Laboratory, Stanford University, Stanford, CA

  • Venue:
  • TAV3 Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification
  • Year:
  • 1989

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes the application of behavior specifications to the testing of tasking supervisors, an important component of an implementation of a concurrent programming language. The goal of such testing is to determine whether or not a tasking supervisor correctly implements the semantics of its associated language. We have tested a distributed tasking supervisor for the Ada programming language by monitoring the execution behavior of Ada tasking programs that have been compiled and linked with the supervisor. This behavior is checked for consistency with an event-based formalization of the Ada tasking semantics expressed in the TSL specification language. The TSL Runtime System automatically performs all monitoring and consistency checking at runtime. Our approach improves upon other approaches to testing tasking supervisors, particularly the Ada Compiler Validation Capability (ACVC), and also an approach described by Klarund. In contrast with these other approaches, in our approach (1) we test only the behavior of the tasking supervisor, not the behavior of the test programs; and (2) any Ada tasking program may be employed as test data, because the TSL specifications we construct describe the semantics of Ada language statements, not the semantics of application programs.