Automated Construction of Reasonable Environment for Java Components

  • Authors:
  • Pavel Parizek;Jiri Adamek;Tomas Kalibera

  • Affiliations:
  • Distributed Systems Research Group, Department of Software Engineering, Charles University in Prague;Distributed Systems Research Group, Department of Software Engineering, Charles University in Prague;Distributed Systems Research Group, Department of Software Engineering, Charles University in Prague

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

In software component verification, one of the challenges is model checking of isolated components. The environment of an isolated component is unknown, and therefore a part of an input to a model checker is missing. This problem can be addressed via automated generation of an artificial environment - component and its environment form a complete program that can be verified using common model checkers. Focusing on concurrency errors in Java components, we propose to automatically generate a reasonable artificial environment that makes efficient detection of concurrency errors with Java PathFinder possible. Such an environment executes in parallel those component's methods that interact via concurrency constructs of Java and thus likely contain concurrency errors. We employ static code analysis to identify sets of methods to be executed in parallel and a metric to order the sets according to the degree of interaction. Benefits of the technique are illustrated on results of experiments performed on real-life Java components.