This paper presents a formal behavioural specification framework together with its applications in different contexts for specifying and verifying the correct behaviour of distributed Fractal components. Our framework allows us to build behavioural models for applications ranging from sequential Fractal components, to distributed objects, and finally distributed components. Our models are able to characterise both functional and non-functional behaviours, and the interaction between the two concerns.Finally, this work has resulted in the development of tools allowing the non-expert programmer to specify the behaviour of his components, and automatically, or semi-automatically verify properties of his application. Key-words:Behavioural Models, Transition Systems, Distributed Components, Hierarchical Components, Fractal, Verification, Verification Platform * INRIA Sophia-Antipolis, I3S, Univ. de Nice Sophia-Antipolis, CNRS, France, (first.last)@sophia.inria.fr Modèles comportementaux pour les systèmes de composants répartis FractalRésumé : Cet article présente un modèle formel pour la spécification comportementale, ainsi que son applicationà différents contextes, permettant de spécifier et de vérifier le comportement de composants répartisà la Fractal. Notre méthode permet de construire des modèles comportementaux pour des applications allant des composants Fractal sèquentiels, aux objets répartis, jusqu'aux composants répartis. Nos modèles sont capables de représenterà la fois les comportements fonctionnels et les aspects non-fonctionnels, ainsi que l'interaction entre les deux. Par ailleurs, ce travail a donné lieu au développement d'outils logiciels permettantà un utilisateur non-expert de spécifier le comportement de ses composants, et de vérifier, automatiquement ou semiautomatiquement, leurs propriètès. Mots-clés : Modèles comportementaux, Systèmes de transitions, Composants répartis, Composants hiérarchiques, Fractal, Vérification, Plateforme de vérification Behavioural Models for Distributed Fractal Components 3 I IntroductionComponent models provide a structured programming paradigm allowing a better re-usability of programs by the fact that both provided/required services and application structure are expressed statically in the composition. This takes even more importance as the structure of distributed components acts as an abstraction for the component distribution. However, this architectural description is not always sufficient. Indeed, in order to be able to safely compose "off the shelf" or even dynamically discovered components, a form of specification language is required. Such a specification can only rely on the existence of some well defined semantics for the underlying programming language or middleware.Among the existing component models, Fractal [10] provides the following crucial features: the explicit definition of provide/required interfaces for expressing dependencies between components; a hierarchical structure allowing to build components by composition of smaller component...
Abstract. Distributed Java applications use remote method invocation as a communication means between distributed objects. The ProActive library provides high level primitives and strong semantic guarantees for programming Java applications with distributed, mobile, secured components. We present a method for building finite, parameterized models capturing the behavioural semantics of ProActive objects. Our models are symbolic networks of labelled transition systems, whose labels represent (abstractions of) remote method calls. In contrast to the usual finite models, they encode naturally and finitely a large class of distributed object-oriented applications. Their finite instantiations can be used in classical model-checkers and equivalence-checkers for checking temporal logic properties in a compositional manner. We are building a software tool set for the analysis of ProActive applications using these methods.
This paper describes the Process Algebra Compiler (PAC), a front-end generator for process-algebragbased verification tools. Given descriptions of a process algebra's concrete and abstract syntax and semantics as structural operational rules, the PAC produces syntactic routines and functions for computing the semantics of programs in the algebra. Using this tool greatly simplifies the task of adapting verification tools to the analysis of systems described in different languages; it may therefore be used to achieve source-level compatibility between different verification tools. Although the initial verification tools targeted by the PAC are MAUTO and the Concurrency Workbench, the structure of the PAC caters for the support of other tools as well.
Software components are a valuable programming abstraction that enables a compositional design of complex applications. In distributed systems, components can also be used to provide an abstraction of locations: each component is a unit of deployment that can be placed on a di erent machine. In this article, we consider this kind of distributed components that are additionally loosely coupled and communicate by asynchronous invocations. Components also provide a convenient abstraction for verifying the correct behaviour of systems: they provide structuring entities easing the correctness veri cation. This article aims at providing a formal background for the generation of behavioural semantics for asynchronous components. We use the pNet intermediate language to express the semantics of hierarchical distributed components communicating asynchronously by a request-reply mechanism. We also formalise two crucial aspects of distributed components: recon guration and one-to-many communications. This article both demonstrates the expressiveness of the pNet model and formally speci es the complete process of the generation of a behavioural model for a distributed component system. The behavioural models we build are precise enough to allow veri cation by nite instantiation and model-checking, but also to use veri cation techniques for in nite systems. Key-words: Behavioural speci cation, software components, asynchronous communications, futures Les composants logiciels fournissent une abstraction de programmation intéres-sante pour la conception modulaire d'applications complexes. Dans les systèmes répartis, les composants peuvent également être utilisés pour fournir une abstraction de la localisation des processus: chaque composant est une unité de déploiement qui peut être placée sur une machine di érente. Dans cet article, nous considérons ce type de composants distribuées, faiblement couplés et communiquant par des appels asynchrones.Les composants fournissent également une abstraction commode pour véri er le bon comportement des systèmes: ils fournissent un concept structurant qui facilite la véri cation de ses propriétés. Cet article vise à fournir un support formel pour la génération de la sémantique comportementale des composants asynchrones. Nous utilisons le formalisme intermédiaire pNet pour exprimer la sémantique des composants hiérarchiques distribués communiquant de manière asynchrone par un mécanisme de requêtes. Nous formalisons également deux aspects fondamentaux des composants distribués: la recon guration et les communications de groupe. Cet article d'une part démontre l'expressivité du modèle pNet et d'autre part spéci e formellement le processus complet de la génération du modèle comportemental d'un système de composants distribués. Les modèles de comportement que nous construisons sont su samment précis pour permettre la véri cation par instanciation nie et model-checking, mais aussi pour utiliser des techniques de véri cation de systèmes in nis.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.