Skip to main content
Kent Academic Repository

Efficient Detection of Errors in Java Components Using Random Environment and Restarts

Parizek, Pavel and Kalibera, Tomas (2010) Efficient Detection of Errors in Java Components Using Random Environment and Restarts. In: Tools and Algorithms for the Construction and Analysis of Systems 16th International Conference. Lecture Notes in Computer Science . Springer, Berlin, Germany, pp. 182-196. ISBN 978-3-642-12001-5. E-ISBN 978-3-642-12002-2. (doi:10.1007/978-3-642-12002-2_37) (The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided) (KAR id:30681)

The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided.
Official URL:
http://dx.doi.org/10.1007/978-3-642-12002-2_37

Abstract

Software model checkers are being used mostly to discover specific types of errors in the code, since exhaustive verification of complex programs is not possible due to state explosion. Moreover, typical model checkers cannot be directly applied to isolated components such as libraries or individual classes. A common solution is to create an abstract environment for a component to be checked. When no constraints on component's usage are defined by its developers, a natural choice is to use a universal environment that performs all possible sequences of calls of component's methods in several concurrently-running threads. However, model checking of components with a universal environment is prone to state explosion. In this paper we present a method that allows to discover at least some concurrency errors in component's code in reasonable time. The key ideas of our method are (i) use of an abstract environment that performs a random sequence of method calls in each thread, and (ii) restarts of the error detection process according to a specific strategy. We have implemented the method in the context of Java components and the Java PathFinder model checker. We have performed experiments on non-trivial Java components to show that our approach is viable.

Item Type: Book section
DOI/Identification number: 10.1007/978-3-642-12002-2_37
Uncontrolled keywords: determinacy analysis; Craig interpolants; model check; Java program; Java class; sequence environment
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: T. Fundraising
Date Deposited: 21 Sep 2012 09:49 UTC
Last Modified: 16 Nov 2021 10:08 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/30681 (The current URI for this page, for reference purposes)

University of Kent Author Information

Kalibera, Tomas.

Creator's ORCID:
CReDIT Contributor Roles:
  • Depositors only (login required):

Total unique views for this document in KAR since July 2020. For more details click on the image.