DocumentCode :
1171495
Title :
SeSFJava harness: service and assertion checking for protocol implementations
Author :
Elsharnouby, Tamer ; Shankar, A. Udaya
Author_Institution :
Dept. of Comput. Sci., Univ. of Maryland, College Park, MD, USA
Volume :
22
Issue :
10
fYear :
2004
Firstpage :
2035
Lastpage :
2047
Abstract :
Many formal specification languages and associated tools have been developed for network protocols. Ultimately, formal language specifications have to be compiled into a conventional programming language and this involves manual intervention (even with automated tools). This manual work is often error prone because the programmer is not familiar with the formal language. So our goal is to verify and test the ultimate implementation of a network protocol, rather than an abstract representation of it. We present a framework, called services and systems framework (SeSF), in which implementations and services are defined by programs in conventional languages, and mechanically tested against each other. SeSF is a markup language that can be integrated with any conventional language. We integrate SeSF into Java, resulting in what we call SeSFJava. We present a service-and-assertion checking harness for SeSFJava, called SeSFJava harness, in which distributed SeSFJava programs can be executed, and the execution checked against services and any other correctness assertions. The harness can test the final implementation of a concurrent system. We present an application to a data transfer service and sliding window protocol implementation. SeSFJava and the harness has been used in networking courses to specify and test transmission control protocol-like transport protocols and service.
Keywords :
Java; formal languages; formal specification; program testing; transport protocols; SeSFJava harness; data transfer service; formal specification languages; markup language; network protocol implementation; service-and-assertion checking; services and systems framework; sliding window protocol; software testing; transmission control protocol; transport protocols; Application software; Computer languages; Formal languages; Formal specifications; Java; Markup languages; Programming profession; Software testing; System testing; Transport protocols; 65; Computer networks; formal languages; formal specifications; software testing; temporal logic; transport protocols;
fLanguage :
English
Journal_Title :
Selected Areas in Communications, IEEE Journal on
Publisher :
ieee
ISSN :
0733-8716
Type :
jour
DOI :
10.1109/JSAC.2004.836012
Filename :
1362714
Link To Document :
بازگشت