62 research outputs found

    Towards Sampling and Simulation-Based Analysis of Featured Weighted Automata

    Get PDF
    International audienceWe consider the problem of model checking Variability-Intensive Systems (VIS) against non-functional requirements. These requirements are typically expressed as an optimization problem over quality attributes of interest, whose value is determined by the executions of the system. Identifying the optimal variant can be hard for two reasons. First, the state-explosion problem inherent to model checking makes it increasingly complex to find the optimal executions within a given variant. Second, the number of variants can grow exponentially with respect to the number of variation points in the VIS. In this paper, we lay the foundations for the application of smart sampling and statistical model checking to solve this problem faster. We design a simple method that samples variants and executions in a uniform manner from a featured weighted automaton and that assesses which of the sampled variants/executions are optimal. We implemented our approach on top of ProVeLines, a tool suite for model-checking VIS and carried out a preliminary evaluation on an industrial embedded system design case study. Our results tend to show that sampling-based approaches indeed holds the potential to improve scalability but should be supported by better sampling heuristics to be competitive

    Statistical Model Checking of Human-Robot Interaction Scenarios

    Full text link
    Robots are soon going to be deployed in non-industrial environments. Before society can take such a step, it is necessary to endow complex robotic systems with mechanisms that make them reliable enough to operate in situations where the human factor is predominant. This calls for the development of robotic frameworks that can soundly guarantee that a collection of properties are verified at all times during operation. While developing a mission plan, robots should take into account factors such as human physiology. In this paper, we present an example of how a robotic application that involves human interaction can be modeled through hybrid automata, and analyzed by using statistical model-checking. We exploit statistical techniques to determine the probability with which some properties are verified, thus easing the state-space explosion problem. The analysis is performed using the Uppaal tool. In addition, we used Uppaal to run simulations that allowed us to show non-trivial time dynamics that describe the behavior of the real system, including human-related variables. Overall, this process allows developers to gain useful insights into their application and to make decisions about how to improve it to balance efficiency and user satisfaction.Comment: In Proceedings AREA 2020, arXiv:2007.1126

    THE CHOICE OF TECHNOLOGICAL SOLUTIONS FOR SOFTWARE DEVELOPMENT FOR DISTRIBUTED INFORMATION SYSTEMS

    Get PDF
    The choice of tools and programming technologies for creating information systems is a current trend. Each projected system needs you to define a set of criteria for the development environment used by li- braries and technologies. This article considers a choice of technological solutions using an example of the developed digital computing web platform of the Russian Academy of Education to provide information support to the activities of psychologists doing research, including population and longitudinal studies. The peculiarity of the system are: magnitude and significant development time requiring the implementa- tion and assurance of the guaranteed computing reliability of a wide range of digital tools used in psycho- logical research; maintenance of functioning in various conditions, in particular when carrying out mass research in schools with different characteristics of computing resources and communication channels; the possibility of scaling services; security and data privacy, as well as the use of technologies and pro- gramming tools that would ensure the compatibility and conversion of data with other means of process- ing psychological research. For the developed system, criteria were introduced for evaluating software technologies that take into account the features of the functioning and life cycle of a product, a specific example shows the selection of appropriate technological solutions. An important component in the de- velopment is the training of the development team for the technologies used. A system that implements the training program for selected technologies is given. The developed training system is used to reduce the time of inclusion in the development of new software developers, as the tasks are expanded

    A UTP semantics for communicating processes with shared variables and its formal encoding in PVS

    Get PDF
    CSP# (communicating sequential programs) is a modelling language designed for specifying concurrent systems by integrating CSP-like compositional operators with sequential programs updating shared variables. In this work, we define an observation-oriented denotational semantics in an open environment for the CSP# language based on the UTP framework. To deal with shared variables, we lift traditional event-based traces into mixed traces which consist of state-event pairs for recording process behaviours. To capture all possible concurrency behaviours between action/channel-based communications and global shared variables, we construct a comprehensive set of rules on merging traces from processes which run in parallel/interleaving. We also define refinement to check process equivalence and present a set of algebraic laws which are established based on our denotational semantics. We further encode our proposed denotational semantics into the PVS theorem prover. The encoding not only ensures the semantic consistency, but also builds up a theoretic foundation for machine-assisted verification of CSP# specifications.Full Tex

    Probabilistic Semantics for RoboChart A Weakest Completion Approach

    Get PDF
    We outline a probabilistic denotational semantics for the RoboChart language, a diagrammatic, domain-specific notation for de- scribing robotic controllers with their hardware platforms and operating environments. We do this using a powerful (but perhaps not so well known) semantic technique: He, Morgan, and McIver’s weakest completion semantics, which is based on Hoare and He’s Unifying Theories of Programming. In this approach, we do the following: (1) start with the standard semantics for a nondeterministic programming language; (2) propose a new probabilistic semantic domain; (3) propose a forgetful function from the probabilistic semantic domain to the standard semantic domain; (4) use the converse of the forgetful function to embed the standard semantic domain in the probabilistic semantic domain; (5) demonstrate that this embedding preserves program structure; (6) define the probabilistic choice operator. Weakest completion semantics guides the semantic definition of new languages by building on existing semantics and, in this case, tackling a notoriously thorny issue: the relationship between demonic and probabilistic choice. Consistency ensures that programming intuitions, development techniques, and proof methods can be carried over from the standard language to the probabilistic one. We largely follow He et al., our contribution being an explication of the technique with meticulous proofs suitable for mechanisation in Isabelle/UTP
    • …
    corecore