733 research outputs found

    Mining Branching-Time Scenarios

    Get PDF
    Specification mining extracts candidate specification from existing systems, to be used for downstream tasks such as testing and verification. Specifically, we are interested in the extraction of behavior models from execution traces

    A decentralized analysis of multiparty protocols

    Get PDF
    Protocols provide the unifying glue in concurrent and distributed software today; verifying that message-passing programs conform to such governing protocols is important but difficult. Static approaches based on multiparty session types (MPST) use protocols as types to avoid protocol violations and deadlocks in programs. An elusive problem for MPST is to ensure both protocol conformance and deadlock-freedom for implementations with interleaved and delegated protocols. We propose a decentralized analysis of multiparty protocols, specified as global types and implemented as interacting processes in an asynchronous π-calculus. Our solution rests upon two novel notions: router processes and relative types. While router processes use the global type to enable the composition of participant implementations in arbitrary process networks, relative types extract from the global type the intended interactions and dependencies between pairs of participants. In our analysis, processes are typed using APCP, a type system that ensures protocol conformance and deadlock-freedom with respect to binary protocols, developed in prior work. Our decentralized, router-based analysis enables the sound and complete transference of protocol conformance and deadlock-freedom from APCP to multiparty protocols

    Language Design for Reactive Systems: On Modal Models, Time, and Object Orientation in Lingua Franca and SCCharts

    Get PDF
    Reactive systems play a crucial role in the embedded domain. They continuously interact with their environment, handle concurrent operations, and are commonly expected to provide deterministic behavior to enable application in safety-critical systems. In this context, language design is a key aspect, since carefully tailored language constructs can aid in addressing the challenges faced in this domain, as illustrated by the various concurrency models that prevent the known pitfalls of regular threads. Today, many languages exist in this domain and often provide unique characteristics that make them specifically fit for certain use cases. This thesis evolves around two distinctive languages: the actor-oriented polyglot coordination language Lingua Franca and the synchronous statecharts dialect SCCharts. While they take different approaches in providing reactive modeling capabilities, they share clear similarities in their semantics and complement each other in design principles. This thesis analyzes and compares key design aspects in the context of these two languages. For three particularly relevant concepts, it provides and evaluates lean and seamless language extensions that are carefully aligned with the fundamental principles of the underlying language. Specifically, Lingua Franca is extended toward coordinating modal behavior, while SCCharts receives a timed automaton notation with an efficient execution model using dynamic ticks and an extension toward the object-oriented modeling paradigm

    Interactive optimization for supporting multicriteria decisions in urban and energy system planning

    Get PDF
    Climate change and growing urban populations are increasingly putting pressure on cities to reduce their carbon emissions and transition towards efficient and renewable energy systems. This challenges in particular urban planners, who are expected to integrate technical energy aspects and balance them with the conflicting and often elusive needs of other urban actors. This thesis explores how multicriteria decision analysis, and in particular multiobjective optimization techniques, can support this task. While multiobjective optimization is particularly suited for generating efficient and original alternatives, it presents two shortcomings when targeted at large, intractable problems. First, the problem size prevents a complete identification of all solutions. Second, the preferences required to narrow the problem size are difficult to know and formulate precisely before seeing the possible alternatives. Interactive optimization addresses both of these gaps by involving the human decision-maker in the calculation process, incorporating their preferences at the same time as the generated alternatives enrich their understanding of acceptable tradeoffs and important criteria. For interactive optimization methods to be adopted in practice, computational frameworks are required, which can handle and visualize many objectives simultaneously, provide optimal solutions quickly and representatively, all while remaining simple and intuitive to use and understand by practitioners. Accordingly, the main objective of this thesis is: To develop a decision support methodology which enables the integration of energy issues in the early stages of urban planning. The proposed response and main contribution is SAGESSE (Systematic Analysis, Generation, Exploration, Steering and Synthesis Experience), an interactive multiobjective optimization decision support methodology, which addresses the practical and technical shortcomings above. Its innovative aspect resides in the combination of (i) parallel coordinates as a means to simultaneously explore and steer the alternative-generation process, (ii) a quasi-random sampling technique to efficiently explore the solution space in areas specified by the decision maker, and (iii) the integration of multiattribute decision analysis, cluster analysis and linked data visualization techniques to facilitate the interpretation of the Pareto front in real-time. Developed in collaboration with urban and energy planning practitioners, the methodology was applied to two Swiss urban planning case-studies: one greenfield project, in which all buildings and energy technologies are conceived ex nihilo, and one brownfield project, in which an existing urban neighborhood is redeveloped. These applications led to the progressive development of computational methods based on mathematical programming and data modeling (in the context of another thesis) which, applied with SAGESSE, form the planning support system URBio. Results indicate that the methodology is effective in exploring hundreds of plans and revealing tradeoffs and synergies between multiple objectives. The concrete outcomes of the calculations provide inputs for specifying political targets and deriving urban master plans

    Synthesis Of Distributed Protocols From Scenarios And Specifications

    Get PDF
    Distributed protocols, typically expressed as stateful agents communicating asynchronously over buffered communication channels, are difficult to design correctly. This difficulty has spurred decades of research in the area of automated model-checking algorithms. In turn, practical implementations of model-checking algorithms have enabled protocol developers to prove the correctness of such distributed protocols. However, model-checking techniques are only marginally useful during the actual development of such protocols; typically as a debugging aid once a reasonably complete version of the protocol has already been developed. The actual development process itself is often tedious and requires the designer to reason about complex interactions arising out of concurrency and asynchrony inherent to such protocols. In this dissertation we describe program synthesis techniques which can be applied as an enabling technology to ease the task of developing such protocols. Specifically, the programmer provides a natural, but incomplete description of the protocol in an intuitive representation — such as scenarios or an incomplete protocol. This description specifies the behavior of the protocol in the common cases. The programmer also specifies a set of high-level formal requirements that a correct protocol is expected to satisfy. These requirements can include safety requirements as well as liveness requirements in the form of Linear Temporal Logic (LTL) formulas. We describe techniques to synthesize a correct protocol which is consistent with the common-case behavior specified by the programmer and also satisfies the high-level safety and liveness requirements set forth by the programmer. We also describe techniques for program synthesis in general, which serve to enable the solutions to distributed protocol synthesis that this dissertation explores

    A Decentralized Analysis of Multiparty Protocols

    Get PDF
    Protocols provide the unifying glue in concurrent and distributed software today; verifying that message-passing programs conform to such governing protocols is important but difficult. Static approaches based on multiparty session types (MPST) use protocols as types to avoid protocol violations and deadlocks in programs. An elusive problem for MPST is to ensure both protocol conformance and deadlock freedom for implementations with interleaved and delegated protocols. We propose a decentralized analysis of multiparty protocols, specified as global types and implemented as interacting processes in an asynchronous π\pi-calculus. Our solution rests upon two novel notions: router processes and relative types. While router processes use the global type to enable the composition of participant implementations in arbitrary process networks, relative types extract from the global type the intended interactions and dependencies between pairs of participants. In our analysis, processes are typed using APCP, a type system that ensures protocol conformance and deadlock freedom with respect to binary protocols, developed in prior work. Our decentralized, router-based analysis enables the sound and complete transference of protocol conformance and deadlock freedom from APCP to multiparty protocols.Comment: revision following anonymous review

    Design research in the Netherlands 2010 : proceedings of the symposium held on 20-21 May 2010, Eindhoven University of Technology

    Get PDF
    Design Research in the Netherlands occurs every five years to take stock of the state-of-the-art in design research that takes place in all design disciplines in the Netherlands. How has our understanding of design developed through research on this phenomenon? What are the research and development methodologies used to acquire insight in design? What have we achieved in the past period, and what are out expectations for the coming period? Researchers and research groups outline their development over the past five years in position papers, addressing insights, methods, results, and problems. Design Research in the Netherlands 2010 is the fourth edition, following three symposia held in 1995, 2000, and 2005. The five-year cycle allows to take conceptual distance from everyday problems that are often project-specific, and to assess how the field is developing. The proceedings form a valuable cross-disciplinary overview of research on design

    Engineering Blockchain Based Software Systems: Foundations, Survey, and Future Directions

    Full text link
    Many scientific and practical areas have shown increasing interest in reaping the benefits of blockchain technology to empower software systems. However, the unique characteristics and requirements associated with Blockchain Based Software (BBS) systems raise new challenges across the development lifecycle that entail an extensive improvement of conventional software engineering. This article presents a systematic literature review of the state-of-the-art in BBS engineering research from a software engineering perspective. We characterize BBS engineering from the theoretical foundations, processes, models, and roles and discuss a rich repertoire of key development activities, principles, challenges, and techniques. The focus and depth of this survey not only gives software engineering practitioners and researchers a consolidated body of knowledge about current BBS development but also underpins a starting point for further research in this field
    • …
    corecore