scispace - formally typeset
Proceedings ArticleDOI

Checking software component behavior using behavior protocols and spin

Reads0
Chats0
TLDR
This paper proposes a method for translation behavior protocols to Promela, which is consequently used as the input for the Spin model checker and can efficiently check for the behavior compatibility and LTL (Linear Temporal Logic) properties of cooperating software components.
Abstract
Using software components is a modern approach for building extensible and reliable applications. To ensure high dependability, a component application should undergo verification, e.g. model checking, to prove it has certain properties. The implementation of an application is usually too complex to be verified at a formal level; therefore, a model being an abstraction of the implementation is to be used. Behavior protocols [11] are a platform for modeling of software component behavior. In this paper, we propose a method for translation behavior protocols to Promela [7], which is consequently used as the input for the Spin model checker [7]. Having the Promela code describing the component behavior, one can efficiently check for the behavior compatibility and LTL (Linear Temporal Logic) properties of cooperating software components.

read more

Citations
More filters

Bridging formal models : an engineering perspective

TL;DR: The thesis presents different techniques that can be used to build formal behavioral models and describes a language transformation from the language Chi 2.0 language to the mCRL2 language to create models from system descriptions that specify concurrent behavior.
Journal ArticleDOI

Behavioural semantics for asynchronous components

TL;DR: This article expresses the semantics of hierarchical distributed components communicating asynchronously by requests, futures, and replies using the pNet intermediate language and formally specifies the complete process of the generation of a behavioural model for a distributed component system.
Journal ArticleDOI

Exogenous coordination of concurrent software components with JavaBIP

TL;DR: This work presents the JavaBIP framework, a component framework rooted in rigorous operational semantics that allows developers to think on a higher level of abstraction and clearly separate the functional and coordination aspects of the system behavior.
Dissertation

How to touch a running system: reconfiguration of stateful components.

Moritz Hammer
TL;DR: This work utilizes the formal description of the component model to provide an algorithm for reconfiguration that retains as much flexibility as possible, while avoiding most problems that arise due to concurrency.
Journal ArticleDOI

Verifying Protocol Conformance Using Software Model Checking for the Model-Driven Development of Embedded Systems

TL;DR: A tool implementing the approach using the Java PathFinder software model checker and the MDD tool IBM Rational RoseRT is described, and it is concluded that the approach is promising for supporting the modular development of embedded components in the context of industrial applications of MDD.
References
More filters
Book

The SPIN Model Checker: Primer and Reference Manual

TL;DR: The SPIN Model Checker as mentioned in this paper is used for both teaching software verification techniques, and for validating large scale applications, and it has been estimated that up to three-quarters of the $400 billion spent annually to hire programmers in the United States is ultimately spent on debugging.

Symbolic model checking: an approach to the state explosion problem

TL;DR: The symbolic model checking technique revealed subtle errors in this protocol, resulting from complex execution sequences that would occur with very low probability in random simulation runs, and an alternative method is developed for avoiding the state explosion in the case of asynchronous control circuits.
Proceedings ArticleDOI

Bandera: extracting finite-state models from Java source code

TL;DR: An integrated collection of program analysis and transformation components, called Bandera, that enables the automatic extraction of safe, compact finite-state models from program source code.
Book

Spin model checker, the: primer and reference manual

TL;DR: This is the most comprehensive reference guide to SPIN, written by the principal designer of the tool, and gives detailed advice on methods for tackling the most complex software verification problems.