73 research outputs found

    Translating synchronous Petri Nets into PROMELA for verifying behavioural properties

    Get PDF
    For developing embedded systems, the design process may benefit in some contexts from the usage of formal methods, namely to find critical errors and flaws, before final design and implementation decisions are taken. The Synchronous and Interpreted Petri Net (SIP-net) modelling language is considered in this article to model embedded systems. This model of computation is based on safe Petri nets with guarded transitions and synchronous transitions firing, and also includes enabling and inhibitor arcs. The Spin tool, whose input language is PROMELA, is a verification system based on model checking techniques. This article presents a program to translate SIP-net models into PROMELA code and discusses in detail the adequacy of the created PROMELA specification for verification through model checking techniques.Fundação para a Ciência e a Tecnologia (FCT) - bolsa SFRH/BD/19718/200

    Towards an integrated tool support for the analysis of IOPT Nets using the Spin Model Checker

    Get PDF
    This paper presents a model translation to allow automatic simulation and verification of controller models for cyber-physical systems. The models are constructed using IOPT nets, a non-autonomous Petri nets class. Those models are then translated into Promela models to be executed by the Spin model checker, a widely used open-source software verification tool. Three illustrative examples are presented: one autonomous model and two non-autonomous models. As future work, it is foreseen the integration with the freely available IOPT-Tools framework

    Animation-based validation of reactive software systems using behavioural models

    Get PDF
    Tese de doutoramento em InformáticaDuring the development of software systems, validation is a crucial activity to guarantee that the software system ful lls the users' needs and expectations. A key issue to have a successful validation consists in adopting a process where users and clients can actively discuss the requirements of the system under development. A reactive system is expected to continuously interact with its environment. Usually, the interaction of a reactive system with its environment is supported by a set of nonterminating processes that operate in parallel. During the interaction, the reactive system must answer to high-priority events, even when the system is executing something else. Due to above characteristics, the behaviour of reactive systems can be very complex. The approach suggested in this thesis assumes that the requirements of reactive software systems are partially described by use case diagrams, and each use case is detailed by a collection of scenario descriptions. Within this approach, one can obtain, from a set of behavioural scenarios of a given system, an executable behavioural model that can support, when complemented with animation- and domain-speci c elements, a graphical animation for reproducing that set of scenarios for validation purposes. Animating the scenarios using graphical elements from the application domain ensures an e ective involvement of the users in the system's validation. The Coloured Petri nets (CPNs) modelling language is used as the notation to obtain the behavioural models, due to its natural support for mechanisms like concurrency, synchronisation, and resource sharing and its tool support. The obtained CPN model is guaranteed to be (1) parametric, allowing an easy modi cation of the initial conditions of the scenarios, (2) environment-descriptive, meaning that it includes the state of the relevant elements of the environment, and (3) animation-separated, implying that the elements related to the animation are separated from the other ones. We validate our approach based on its application to three case studies of reactive systems.Durante o desenvolvimento de sistemas de software, a validação é uma actividade crucial para garantir que o sistema de software satisfaz as necessidades e expectativas do utilizador. O sucesso na validação consiste na utilização de um processo onde os utilizadores e os clientes possam discutir de uma forma activa os requisitos do sistema que está a ser desenvolvido. Um sistema reactivo está continuamente em interacção com o seu ambiente, que é geralmente suportada por um conjunto de processos intermináveis que operam em paralelo. Durante a interacção, o sistema reactivo dever a responder aos eventos com alta prioridade, mesmo quando o sistema está a executar algo diferente. Devido às características anteriores, o comportamento dos sistemas reactivos pode ser muito complexo. A abordagem sugerida nesta tese assume que os requisitos de sistemas reactivos são em parte descritos por diagramas de casos de uso e que cada caso de uso é detalhado por uma colecção de descrições de cenários. Nesta abordagem, é possível obter, a partir de um conjunto de cenários de um dado sistema, um modelo comportamental que seja executável e que suporte, quando complementado com elementos específicos, uma animação gráfica que reproduza aquele conjunto de cenários para fins de validação. A animação dos cenários utilizando elementos gráficos do domínio da aplicação garante um envolvimento efectivo dos utilizadores na validação do sistema. A linguagem de modelação redes de Petri coloridas (CPNs) é usada como a notação para obter os modelos comportamentais, devido ao seu suporte natural a mecanismos como a concorrência, sincronização e partilha de recursos, e às suas ferramentas de suporte. Se as recomendações da abordagem proposta foram seguidas, temos a garantia que o modelo CPN: (1) parametriza as condições iniciais dos cenários, (2) contém uma descrição do ambiente, incluindo o estado dos seus elementos, e (3) separa os elementos relacionados com a animação dos outros elementos do modelo. A validação da nossa abordagem tem por base a sua aplicação a três casos de estudo de sistemas reactivos.Fundação para a Ciência e a Tecnologia (FCT) SFRH/BD/19718/200

    Design-time formal verification for smart environments: an exploratory perspective

    Get PDF
    Smart environments (SmE) are richly integrated with multiple heterogeneous devices; they perform the operations in intelligent manner by considering the context and actions/behaviors of the users. Their major objective is to enable the environment to provide ease and comfort to the users. The reliance on these systems demands consistent behavior. The versatility of devices, user behavior and intricacy of communication complicate the modeling and verification of SmE's reliable behavior. Of the many available modeling and verification techniques, formal methods appear to be the most promising. Due to a large variety of implementation scenarios and support for conditional behavior/processing, the concept of SmE is applicable to diverse areas which calls for focused research. As a result, a number of modeling and verification techniques have been made available for designers. This paper explores and puts into perspective the modeling and verification techniques based on an extended literature survey. These techniques mainly focus on some specific aspects, with a few overlapping scenarios (such as user interaction, devices interaction and control, context awareness, etc.), which were of the interest to the researchers based on their specialized competencies. The techniques are categorized on the basis of various factors and formalisms considered for the modeling and verification and later analyzed. The results show that no surveyed technique maintains a holistic perspective; each technique is used for the modeling and verification of specific SmE aspects. The results further help the designers select appropriate modeling and verification techniques under given requirements and stress for more R&D effort into SmE modeling and verification researc

    Formal Verification Techniques for Model Transformations: A Tridimensional Classification .

    Full text link

    Formal verification techniques for model transformations: A tridimensional classification

    Get PDF
    In Model Driven Engineering (Mde), models are first-class citizens, and model transformation is Mde's "heart and soul". Since model transformations are executed for a family of (conforming) models, their validity becomes a crucial issue. This paper proposes to explore the question of the formal verification of model transformation properties through a tridimensional approach: the transformation involved, the properties of interest addressed, and the formal verification techniques used to establish the properties. This work is intended for a double audience. For newcomers, it provides a tutorial introduction to the field of formal verification of model transformations. For readers more familiar with formal methods and model transformations, it proposes a literature review (although not systematic) of the contributions of the field. Overall, this work allows to better understand the evolution, trends and current practice in the domain of model transformation verification. This work opens an interesting research line for building an engineering of model transformation verification guided by the notion of model transformation intent

    A state/event-based model-checking approach for the analysis of abstract system properties.

    Get PDF
    AbstractWe present the UMC framework for the formal analysis of concurrent systems specified by collections of UML state machines. The formal model of a system is given by a doubly labelled transition system, and the logic used to specify its properties is the state-based and event-based logic UCTL. UMC is an on-the-fly analysis framework which allows the user to interactively explore a UML model, to visualize abstract behavioural slices of it and to perform local model checking of UCTL formulae. An automotive scenario from the service-oriented computing (SOC) domain is used as case study to illustrate our approach
    corecore