A New Approach to Deterministic Execution Testing for Concurrent Programs

Byeong Man KIM

IEICE TRANSACTIONS on Information and Systems   Vol.E84-D    No.12    pp.1756-1766
Publication Date: 2001/12/01
Online ISSN: 
Print ISSN: 0916-8532
Type of Manuscript: PAPER
Category: Software Engineering
concurrent program testing,  deterministic execution testing,  synchronization error,  event independence,  partial order methods,  

Full Text: PDF>>
Buy this Article

Deterministic execution testing has been considered a promising way for concurrent program testing because of its ability to replay a program's execution. Since, however, deterministic execution requires that a synchronization event sequence to be replayed be feasible and valid, it is not directly applicable to a situation in which synchronization sequences, being valid but infeasible, are taken into account. Resolving this problem is very important because a program may still meet its specification although the feasibility of all valid sequences is not satisfied. In this paper, we present a new approach to deterministic execution for testing concurrent systems. The proposed approach makes use of the notion of event independence and constructs an automation which accepts all the sequences semantically equivalent to a given event sequence to be replayed. Consequently, we can allow a program to be executed according to event sequences other than the given (possible infeasible) sequence if they can be accepted by the automation.