Reachability Analysis and Testing of Asynchronous Message-Passing Programs

dc.contributor.advisorKuo-Chung Tai, Committee Chairen_US
dc.contributor.advisorS. Purush Iyer, Committee Memberen_US
dc.contributor.advisorArne A. Nilsson, Committee Memberen_US
dc.contributor.advisorMladen A. Vouk, Committee Memberen_US
dc.contributor.authorLei, Yuen_US
dc.date.accessioned2010-04-02T19:22:11Z
dc.date.available2010-04-02T19:22:11Z
dc.date.issued2002-09-04en_US
dc.degree.disciplineComputer Scienceen_US
dc.degree.leveldissertationen_US
dc.degree.namePhDen_US
dc.description.abstractAn asynchronous message-passing program consists of concurrent processes that interact with each other by the exchange of messages. Many network protocols and distributed applications are asynchronous message-passing programs. This dissertation investigates techniques to ensure correctness of asynchronous message-passing programs. Reachability analysis has been a successful approach to verifying concurrent programs. Existing reachability analysis techniques for asynchronous message-passing programs assume causal communication, which means that messages sent to a destination are received in the order they are sent. In the first part of this dissertation, we propose a new reachability analysis approach, called blocking-based simultaneous reachability analysis (BSRA), for asynchronous message-passing programs based on any communication scheme. We describe an algorithm for generating BSRA-based reachability graphs and show that this algorithm guarantees the detection of deadlocks. Empirical results indicate that BSRA significantly reduces the number of states in reachability graphs. The second part of this dissertation deals with a new concept of testing concurrent programs, namely reachability testing. Let P be an asynchronous message-passing program, and X an input of P. Assume that every execution of P with X terminates. Reachability testing of P with X is to execute, in a systematic manner, all possible synchronization sequences (or SYN-sequences) of P with X such that the correctness of P with X can be determined. The main challenge of reachability testing is to derive race variants of SYN-sequences. We develop a formal approach to computing race variants of SYN-sequences consisting of send and receive events. We describe an efficient reachability testing algorithm for asynchronous message-passing programs. In the third part of this dissertation, we propose a new test generation strategy, called In-Parameter-Order (or IPO), for pairwise testing. Pairwise testing requires that for each pair of input parameters of a system, every combination of valid values of these two parameters be covered by at least one test case. For a system with two or more input parameters, the IPO strategy generates a pairwise test set for the first two parameters, extends the test set to generate a pairwise test set for the first three parameters, and continues to do so for each additional parameter. We present IPO-based test generation algorithms. We describe an IPO-based test generation tool and show some empirical results.en_US
dc.identifier.otheretd-04232002-210706en_US
dc.identifier.urihttp://www.lib.ncsu.edu/resolver/1840.16/5907
dc.rightsI hereby certify that, if appropriate, I have obtained and attached hereto a written permission statement from the owner(s) of each third party copyrighted matter to be included in my thesis, dissertation, or project report, allowing distribution as specified below. I certify that the version I submitted is the same as that approved by my advisory committee. I hereby grant to NC State University or its agents the non-exclusive license to archive and make accessible, under the conditions specified below, my thesis, dissertation, or project report in whole or in part in all forms of media, now or hereafter known. I retain all other ownership rights to the copyright of the thesis, dissertation or project report. I also retain the right to use in future works (such as articles or books) all or part of this thesis, dissertation, or project report.en_US
dc.subjectPairwise Testingen_US
dc.subjectSoftware Testingen_US
dc.subjectSoftware Verificationen_US
dc.subjectReachability Testingen_US
dc.subjectReachability Analysisen_US
dc.subjectConcurrent Systemsen_US
dc.titleReachability Analysis and Testing of Asynchronous Message-Passing Programsen_US

Files

Original bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
etd.pdf
Size:
476.67 KB
Format:
Adobe Portable Document Format

Collections