Model Checking of Software Components: Combining Java PathFinder and Behavior Protocol Model Checker
2006 30th Annual IEEE/NASA Software Engineering Workshop (2006)
Apr. 24, 2006 to Apr. 28, 2006
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/SEW.2006.23
Pavel Parizek , Charles University, Czech Republic
Frantisek Plasil , Charles University, Czech Republic; Academy of Sciences of the Czech Republic
Jan Kofron , Charles University, Czech Republic; Academy of Sciences of the Czech Republic
Although there exist several software model checkers that check the code against properties specified e.g. via a temporal logic and assertions, or just verifying low-level properties (like unhandled exceptions), none of them supports checking of software components against a high-level behavior specification. We present our approach to model checking of software components implemented in Java against a high-level specification of their behavior defined via behavior protocols , which employs the Java PathFinder model checker and the protocol checker. The property checked by the Java PathFinder (JPF) tool (correctness of particular method call sequences) is validated via its cooperation with the protocol checker. We show that just the publisher/listener pattern claimed to be the key flexibility support of JPF (even though proved very useful for our purpose) was not enough to achieve this kind of checking.
software components, behavior protocols, model checking, cooperation of model checkers
P. Parizek, F. Plasil and J. Kofron, "Model Checking of Software Components: Combining Java PathFinder and Behavior Protocol Model Checker," 2006 30th Annual IEEE/NASA Software Engineering Workshop(SEW), Columbia, Maryland, 2006, pp. 133-141.