127 research outputs found

    Formal Verification of Plastic User Interfaces Exploiting Domain Ontologies

    Get PDF
    This paper presents a formal model to check the interaction plasticity on a user interface (UI). An interaction is seen as an implementation (achievement) of a user task by means of interaction devices and modes of a given platform. The interaction plasticity is the ability of UI to support several interactions to perform the same task. In this work, two task models, containing different sets of interactions, are observed to check if they describe interactions that perform the same task. Each task model is represented by a labelled state-transitions system (lts). Due to the use of different interaction modes and devices, the obtained lts have different set of labels. Weak bi-simulation relationship is revisited to handle these transition systems by defining a relation on labels. This relation is borrowed from an ontology of interaction modes and devices. Model checking techniques are set up to automatically establish such a bi-simulation. A case study is used to illustrate how the approach works

    Towards correct Evolution of Conversation Protocols

    Get PDF
    Distributed software systems change dynamically due to the evolution of their environment and/or requirements, their internal designing policies, and/or their specification bugs which must be fixed. Hence, checking system changes must be run continuously. Such systems are usually composed of distributed software entities (called peers) interacting with each other through message exchanges, and this is to fulfil a common goal. The goal is often specified by a conversation protocol (CP), i.e. sequences of sent messages. If there exists a set of peers implementing CP, then CP is said to be realisable. In this paper, we propose a stepwise approach for checking whether an evolution, i.e. adding and/or removing messages and/or peers, can be applied to a CP that was realisable before updating it.We define a set of correct evolution patterns and we suggest an algebra of CP evolution. Our approach ensures that CP evolution preserves the realisability condition

    A correct-by-construction model for asynchronously communicating systems

    Get PDF
    The design and verification of distributed software systems is often hindered by their ever-increasing complexity and their asynchronous operational semantics. This article considers choreography specifications for distributed systems to reduce that complexity. We use labelled state-transitions systems as ground model for both choreographies and the corresponding distributed systems. Based on Event-B method, we propose a stepwise correct-by-construction model to build asynchronous distributed systems which a priori realise their choreographies. We rely on a sufficient and necessary realisability condition and we apply several refinement steps w.r.t. that condition to generate the distributed peers. The first refinement returns peer behaviours obtained by synchronous projection. The previously computed system is then refined into its asynchronous version using unbounded FIFO buffers. We prove, thanks to invariant preservation, that a sequence of exchanged messages is preserved at each refinement step. We provide a formalised proof of a realisability algorithm for deterministic choreographies. Besides that, our contribution is twofold: the approach is a priori and the problackposed solution scales up to any number of peers communicating with each other

    Étude et comparaison de scénarios de développements formels d'interfaces multi-modales fondés sur la preuve et le raffinement.

    Get PDF
    International audienceLes architectures d'un système interactif reposent sur la séparation du noyau fonctionnel de l'interface utilisateur du logiciel. Le développement de ces deux modules implique l'utilisation de techniques et d'approches différentes. La validation du système interactif peut être une étape complexe puisque ces modules sont développés séparément. Dans le cadre du projet RNRT Verbatim*, l'étude de différents scénarios de développement formels des systèmes interactifs multi-modaux, a été menée en utilisant la méthode B dans sa version "B événementiel". Cet article présente une partie des résultats de cette étude. Le raffinement est mis en œuvre pour structurer les développements et la preuve pour établir les propriétés. Il s'intéresse principalement à la liaison (lors de leur composition) entre les deux modules d'un système interactif que sont le noyau fonctionnel et l'interface utilisateur. Quatre scénarios de développement différents, représentant formellement cette liaison, sont étudiés et comparés. Cette comparaison est réalisée sur la base du nombre d'obligations de preuve générées et relatives aux propriétés décrites dans les spécifications. Une étude de cas décrivant un système interactif multi-modal, illustrant ces scénarios et leur comparaison est utilisée tout au long de cet article

    Validation et Vérification Formelles de Systèmes Interactifs Multi-Modaux Fondées sur la Preuve.

    Get PDF
    International audienceCet article s'intéresse à la validation et à la vérification formelles d'IHM Multi-Modales (IHM3). Il décrit une partie des résultats obtenus dans le cadre du projet RNRT VERBATIM, dont l'objet est la VERification Biformelle et l'Automatisation du Test des Interfaces Multimodales. Ce projet s'intéresse, entre autres, à la mise en œuvre d'une technique formelle fondée sur la preuve : la méthode B événementiel. Nous discutons les apports de cette technique pour la conception d'IHM3, en particulier, sa capacité à exprimer et à vérifier des propriétés de la famille CARE. Notre approche utilise et propose de formaliser des notations et techniques semi-formelles issues du domaine des IHM

    2e Conférence Francophone sur les Architectures Logicielles - CAL 2008

    No full text
    International audienc

    Modélisation et vérification formelles de compositions de services (Une approche fondée sur le raffinement et la preuve)

    No full text
    La possibilité de composer des services préexistants pour offrir des fonctionnalités plus complexes est l'un des apports principaux des architectures SOA. Ce processus de composition de services, en particulier les services Web, est généralement défini par une chorégraphie ou une orchestration de services atomiques. Ces compositions sont vues comme un système états-transitions exprimant le protocole de communication entre les services participants. Les langages de description de Workflows de services, exprimant ces compositions, souffrent de l'absence de sémantique formelle et de la présence d'ambiguïtés dans la définition de leurs constructeurs au sein des standards définissant ces langages. Les outils associés à ces langages n'offrent pas la possibilité de vérifier et de valider formellement le comportement et les propriétés des services composés obtenus. Cette thèse s'intéresse à la modélisation et à la vérification formelles de la composition de services web décrite avec le standard BPEL en utilisant la méthode B Evénementiel. L'approche proposée modélise les parties statique et dynamique de BPEL et se base sur le raffinement pour la structuration du développement d'un processus BPEL. La technique de la preuve de théorème est utilisée pour l'établissement des propriétés. Un lien un-à-un est garanti entre les éléments de BPEL et leur correspondant B Evénementiel. Cette correspondance offre un assistance aux développeurs pour l'amélioration de la qualité du processus BPEL. Cette approche a été implémentée dans l'outil BPEL2B.The ability to compose existing services to provide more complex functionality is one of the main benefits of SOA architecture. This services compositions process, especially Web services, is generally defined by a choreography or an orchestration of atomic services. These compositions are seen as a states-transitions systems expressing the communication protocol between the participating services. Services Workflows description languages, expressing these compositions, suffer from the lack of formal semantics and the presence of ambiguities in their constructors definitions in standards defining these languages. The associated tools do not offer the possibility to formally verify and validate the behaviour and the obtained services compositions properties. This thesis focuses on modelling and formal verification of the Web services composition described with the BPEL standard using the B event method. The proposed approach models the static and dynamic parts of BPEL and is based on refinement for structuring the BPEL process development. The theorem proving technique is used for setting properties. One-to-one link is guaranteed between the BPEL elements and their B Event corresponding. This correspondence provides assistance to developers to improve the quality of the BPEL process. This approach has been implemented in the BPEL2B tool.POITIERS-BU Sciences (861942102) / SudocSudocFranceF

    Stepwise Development of Formal Models for Web Services Compositions: Modelling and Property Verification.

    No full text
    International audienceWith the development of the web, a huge number of services available on the web have been published. These web services operate in several application domains like concurrent engineering, semantic web, system engineering or electronic commerce. Moreover, due to the ease of use of the web, the idea of composing these web services to build composite ones defining complex workflows arose. Even if several industrial standards providing specification and/or design XML-oriented languages for web services compositions description, like BPEL, CDL, OWL-S, BPMN, the activity of composing web services remains a syntactically based approach. Due to the lack of formal semantics of these languages, ambiguous interpretations remain possible and the validation of the compositions is left to the testing and deployment phases. From the business point of view, customers do not trust these services nor rely on them. As a consequence, building correct, safe and trustable web services compositions becomes a major challenge. It is well accepted that the use of formal methods for the development of infor-mation systems has increased the quality of such systems. Nowadays, such methods are set up not only for critical systems, but also for the development of various infor-mation systems. Their formal semantics and their associated proof system allow the system developer to establish relevant properties of the described information sys-tems. This talk addresses the formal development of models for services and their com-position using a refinement and proof based method, namely the Event B method. The particular case of web services and their composition is illustrated. We will focus on the benefits of the refinement operation and show how such formalization makes it possible to formalise and prove relevant properties related to composition and adaptation. Moreover, we will also show how implicit semantics carried out by the services can be handled by ontologies and their formalisation in such formal develop-ments. Indeed, once ontologies are formalised as additional domain theories beside the developed formal models, it becomes possible to formalise and prove other prop-erties related to semantic domain heterogeneity

    Stepwise development of formal models for web services compositions. Modeling and property verification

    No full text
    Version étendueWith the development of the web, a huge number of services available on the web have been published. These web services operate in several application domains like concurrent engineering, semantic web, system engineering or electronic commerce. Moreover, due to the ease of use of the web, the idea of composing these web services to build composite ones defining complex workflows arose. Even if several industrial standards providing specification and/or design XML-oriented languages for web services compositions description, like BPEL, CDL, OWL-S, BPMN or XPDL have been proposed, the activity of composing web services remains a syntactically based approach. Due to the lack of formal semantics of these languages, ambiguous interpretations remain possible and the validation of the compositions is left to the testing and deployment phases. From the business point of view, customers do not trust these services nor rely on them. As a consequence, building correct, safe and trustable web services compositions becomes a major challenge
    corecore