5 research outputs found

    Formal Requirements Elicitation with FRET

    Get PDF
    FRET is a tool for writing, understanding, formalizing and analyzing requirements. Users write requirements in an intuitive, restricted natural language, called FRETISH, with precise, unambiguous meaning. For a FRETISH requirement, FRET: 1) produces natural language and diagrammatic explanations of its exact meaning, 2) formalizes the requirement in logics, and 3) supports interactive simulation of produced logic formulas to ensure that they capture user intentions. FRET connects to analysis tools by facilitating the mapping between requirements and models/code, and by generating verification code. FRET is available open source at https://github.com/NASA-SW-VnV/fret; a video can be accessed at : https://tinyurl.com/fretForREFSQ

    IKOS: A Framework for Static Analysis based on Abstract Interpretation (Tool Paper)

    Get PDF
    The RTCA standard (DO-178C) for developing avionic software and getting certification credits includes an extension (DO-333) that describes how developers can use static analysis in certification. In this paper, we give an overview of the IKOS static analysis framework that helps developing static analyses that are both precise and scalable. IKOS harnesses the power of Abstract Interpretation and makes it accessible to a larger class of static analysis developers by separating concerns such as code parsing, model development, abstract domain management, results management, and analysis strategy. The benefits of the approach is demonstrated by a buffer overflow analysis applied to flight control systems

    Optimizing Flight Control Software With an Application Platform

    Get PDF
    Flight controllers in NASA s mission control centers work day and night to ensure that missions succeed and crews are safe. The IT goals of NASA mission control centers are similar to those of most businesses: to evolve IT infrastructure from basic to dynamic. This paper describes Mission Control Technologies (MCT), an application platform that is powering mission control today and is designed to meet the needs of future NASA control centers. MCT is an extensible platform that provides GUI components and a runtime environment. The platform enables NASA s IT goals through its use of lightweight interfaces and configurable components, which promote standardization and incorporate useful solution patterns. The MCT architecture positions mission control centers to reach the goal of dynamic IT, leading to lower cost of ownership, and treating software as a strategic investment

    from Java Source Code

    No full text
    Computer Science Recovering design patterns can enhance existing source code analysis tools by bringing program understanding to the design level. This dissertation presents a new, fully au-tomated pattern detection approach based on our reclassification of the GoF patterns by their pattern intent. We argue that the GoF pattern catalog classifies design patterns in the forward-engineering sense; our reclassification is better suited for reverse engineering. Our approach uses lightweight static program analysis techniques to capture program in-tent. This dissertation also describes our tool, PINOT, that implements this new approach. PINOT detects all the GoF patterns that have concrete definitions driven by code struc-ture or system behavior. PINOT is faster, more accurate, and targets more patterns than existing pattern detection tools. PINOT has been tested against several benchmark applica-tions, including Apache Ant, Java AWT, JHotDraw, and Swing. Since PINOT has proven successful, we extend PINOT to recognize a broader range of design patterns. This disser-tation describes our pattern detection language, MUSCAT, that allows users to define and analyze their own design patterns using the PINOT engine. MUSCAT is a visual language that allows users to model program intent by specifying both the structural- and behavioral-aspects of a design pattern. This dissertation evaluates MUSCAT and discusses the trade-offs between effectiveness and flexibility
    corecore