Deterministic execution testing of concurrent Ada programs

  • Authors:
  • R. Carver;K. C. Tai

  • Affiliations:
  • Department of Computer Science, Box 8206, North Carolina State University, Raleigh, NC;Department of Computer Science, Box 8206, North Carolina State University, Raleigh, NC

  • Venue:
  • TRI-Ada '89 Proceedings of the conference on Tri-Ada '89: Ada technology in context: application, development, and deployment
  • Year:
  • 1989

Quantified Score

Hi-index 0.00

Visualization

Abstract

An execution of a concurrent program P exercises a sequence of synchronization events, called a synchronization sequence or a SYN-sequence. This non-deterministic execution behavior creates a problem during the testing phase of P: when testing P with input X, a single execution is insufficient to determine the correctness of P with input X.In this paper, we show how to accomplish deterministic execution testing of a concurrent Ada program according to a given SYN-sequence. We first define the format of a SYN-sequence which provides sufficient information for deterministic execution. Then we show how to transform a concurrent Ada program P into a slightly different program P* (also written in Ada) so that an execution of P* with (X,S) as input, where X and S are an input and SYN-sequence of P respectively, determines whether or not S is feasible for P with input X and produces the same result as P with input X and SYN-sequence S would, provided that S is feasible. Tools for transforming concurrent Ada programs for deterministic execution testing are described.