19 research outputs found

    Executable formal specifications of complex distributed systems with CoreASM

    Get PDF
    Formal specifications play a crucial role in the design of reliable complex software systems. Executable formal specifications allow the designer to attain early validation and verification of design using static analysis techniques and accurate simulation of the runtime behavior of the system-to-be. With increasing complexity of software-intensive computer-based systems and the challenges of validation and verification of abstract software models prior to coding, the need for interactive software tools supporting executable formal specifications is even more evident. In this paper, we discuss how CoreASM, an environment for writing and running executable specifications according to the ASM method, provides flexibility and manages the complexity by using an innovative extensible language architecture

    06191 Abstracts Collection -- Rigorous Methods for Software Construction and Analysis

    Get PDF
    From 07.05.06 to 12.05.06, the Dagstuhl Seminar 06191 ``Rigorous Methods for Software Construction and Analysis\u27\u27 was held in the International Conference and Research Center (IBFI), Schloss Dagstuhl. During the seminar, several participants presented their current research, and ongoing work and open problems were discussed. Abstracts of the presentations given during the seminar as well as abstracts of seminar results and ideas are put together in this paper. The first section describes the seminar topics and goals in general. Links to extended abstracts or full papers are provided, if available

    Generating Test Cases for Marine Safety and Security Scenarios: A Composition Framework

    Get PDF
    In this paper we address the problem of testing complex computer models forinfrastructure protection and emergency response based on detailed and realisticapplication scenarios using advanced computational methods and tools. Specifically,we focus here on testing situation analysis decision support models for marine safety& security operations as a sample application domain. Arguably, methodicalapproaches for analyzing and validating situation analysis methods, decision supportmodels, and information fusion algorithms require realistic vignettes that describe ingreat detail how a situation unfolds over time depending on initial configurations,dynamic environmental conditions and uncertain operational aspects. Meaningfulresults from simulation runs require appropriate test cases, the production of whichis in itself a complex activity. To simplify this task, we introduce here the conceptualdesign of a Vignette Generator that has been developed and tested in an industrialresearch project. We also propose a framework for composing vignettes fromreusable vignette elements together with a formal representation for vignettes usingthe Abstract State Machine method and illustrate the approach by means of variouspractical examples

    On Modularity In Abstract State Machines

    Get PDF
    In the field of model based formal methods we investigate the Abstract State Machine (ASM) modularity features. With the growing complexity of systems and the experience gained in more than thirty years of ASM method application a need for more manageable models emerged. We mainly investigate the notion of modules in ASMs as independent interacting components and the ability to identify portions of the machine state with the aim of improving the modelling process. In this thesis we provide a language level semantically well defined solution for (1) the definition of ASM modules as independent services and their communication behaviour; (2) a new construct that operates on the global state of an ASM machine that ease the management of state partitions and their identification; (3) a novel transition rule for the management of computations providing different execution strategies and putting termination condition for the machine inside the specification; (4) a data definition convention along with a new transition rule for their manipulation via pattern matching. In our work we build upon CoreASM, a well-known extensible modelling framework and tool environment for ASMs. The semantic of our modularity constructs is compatible with the one defined for the CoreASM interpreter. This ease the implementation of extension plugins for tool support of modularity features. A real world system use case ground model ends the thesis exemplifying the practical usage of our modularity constructs

    On the Extensibility of Formal Methods Tools

    Get PDF
    Modern software systems often have long lifespans over which they must continually evolve to meet new, and sometimes unforeseen, requirements. One way to effectively deal with this is by developing the system as a series of extensions. As requirements change, the system evolves through the addition of new extensions and, potentially, the removal of existing extensions. In order for this kind of development process to thrive, it is necessary that the system have a high level of extensibility. Extensibility is the capability of a system to support the gradual addition of new, unplanned functionalities. This dissertation investigates extensibility of software systems and focuses on a particular class of software: formal methods tools. The approach is broad in scope. Extensibility of systems is addressed in terms of design, analysis and improvement, which are carried out in terms of source code and software architecture. For additional perspective, extensibility is also considered in the context of formal modelling. The work carried out in this dissertation led to the development of various extensions to the Overture tool supporting the Vienna Development Method, including a new proof obligation generator and integration with theorem provers. Additionally, the extensibility of Overture itself was also improved and it now better supports the development and integration of various kinds of extensions. Finally, extensibility techniques have been applied to formal modelling, leading to an extensible architectural style for formal models

    Modeling web applications infrastructure with ASMs

    Get PDF
    We describe via Abstract State Machines the major ingredients of contemporary web applications: a web browser running JavaScript programs and a web server dispatching requests to one of several modules, each one representing a class of established web application frameworks. The web browser model comes in four levels, namely transport, stream, context and browser level, and is focussed on the interaction with possibly multiple servers (which requires a concurrent computation model) and on script execution (which requires a dynamic assignment of agents to programs). The server model is focussed on the Request–Reply pattern, and specifies a delegation strategy where the handling of a request is entrusted to a module. We show how several major frameworks for web applications can be described as progressive refinements of a number of basic modules. Three modules are further detailed: static file transfer, CGI and generic scripting modules

    Rigorous development process of a safety-critical system: from ASM models to Java code

    Get PDF
    The paper presents an approach for rigorous development of safety-critical systems based on the Abstract State Machine formal method. The development process starts from a high level formal view of the system and, through refinement, derives more detailed models till the desired level of specification. Along the process, different validation and verification activities are available, as simulation, model review, and model checking. Moreover, each refinement step can be proved correct using an SMT-based approach. As last step of the refinement process, a Java implementation can be developed and linked to the formal specification. The correctness of the implementation w.r.t. its formal specification can be proved by means of model-based testing and runtime verification. The process is exemplified by using a Landing Gear System as case study
    corecore