Search NASA⌕ Search

SEARCH · Search NASA

Results for “software verification”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 415 records · Page 23

Verification of Autonomous Systems for Space Applications

Autonomous software, especially if it is based on model, can play an important role in future space applications. For example, it can help streamline ground operations, or, assist in autonomous rendezvous and docking operations, or even, help recover from problems (e.g., planners can be used to explore the space of recovery actions for a power subsystem and implement a solution without (or with minimal) human intervention). In general, the exploration capabilities of model-based systems give them great flexibility. Unfortunately, it also makes them unpredictable to our human eyes, both in terms of their execution and their verification. The traditional verification techniques are inadequate for these systems since they are mostly based on testing, which implies a very limited exploration of their behavioral space. In our work, we explore how advanced V&V techniques, such as static analysis, model checking, and compositional verification, can be used to gain trust in model-based systems. We also describe how synthesis can be used in the context of system reconfiguration and in the context of verification.

Brat, G.↗

The Troupe System: an Autonomous Multi-Agent Rover Swarm

Autonomous cooperative robotic systems are the future of space exploration. The complexity of such systems makes their development, verification and assurance challenging. The Robust Software Engineering group at NASA Ames has developed the Troupe project that aims to explore the design and development of a swarm of autonomous rovers tasked to perform autonomous exploration and mapping of an unknown terrain. In this paper, we showcase the system design, and accompanying verification and validation tools integrated in the Troupe system development life-cycle.

TROUPE↗

DSN data systems software methodology

A software methodology for JPL deep space network (DSN) data systems software implementations through transfer and delivery is presented. The DSN Data Systems Software Methodology is compatible with and depends on DSN software methodology and also incorporates the characteristics of real-time program development in a DSN environment. The DSN Data Systems software implementation consists of a series of six distinct phases. An Independent Group is responsible for verification and validation of the DSN Data Systems software during developing phases. The DSN data systems software methodology is applied to all development software provided for or by the DSN data systems section in Mark IV where there is a desire for reliability, maintainability, and usability within budget and schedule constraints.

Hung, C. K.↗

Infusing and selecting V&V activities

The evolving nature of software development poses a continuing series of challenges for V&V. In response, the V&V community selectively adapts the use of existing V&V activities, and introduces new and improved ones.

verification validation risk software quality assu↗

Engineering Software for Flight

This talk describes our efforts to improve the software engineering processes of the Copilot runtime verification framework so that the code generated can be used in UAS flights.

software engineering↗

Verification of an Icosahedral Grid for Strategic Center for Networking, Communications, and Integration User Interface Spatial Capabilities

Spatial communication analysis tools are incredibly useful resources to have when planning a space mission. Every single mission that leaves Earth needs a way to get its data back down and every mission's requirements on how that will get accomplished is different. Being able to analyze how existing assets can provide services independent of a specific mission can be key in that process. Most current commercial software packages contain spatial analysis capabilities but go about the analysis in a way that is not the most efficient and can skew the results provided. NASA's Space Communication and Navigation (SCaN) Center for Engineering Networks, Integration, and Communications (SCENIC) seeks to solve this problem and provide analysis capabilities using both internally developed and open-source software. This allows incredible flexibility, customization and hugely reduces licensing costs. Using MATLAB® and Orbit Determination Toolbox created by Goddard Space Flight Center (GSFC), SCENIC is able to perform many node-based functions currently. Analysis utilizing the spatial tools in SCENIC allows a meaningful analysis of the capability of communication network assets in a way not seen in current commercial software packages. This paper discusses the verification activities associated with generating the spatial grid point definition utilized in these analysis capabilities, within the SCENIC user interface (UI).

Jasper, Lindsey A.↗

Software Fault Tolerance: A Tutorial

Because of our present inability to produce error-free software, software fault tolerance is and will continue to be an important consideration in software systems. The root cause of software design errors is the complexity of the systems. Compounding the problems in building correct software is the difficulty in assessing the correctness of software for highly complex systems. After a brief overview of the software development processes, we note how hard-to-detect design faults are likely to be introduced during development and how software faults tend to be state-dependent and activated by particular input sequences. Although component reliability is an important quality measure for system level analysis, software reliability is hard to characterize and the use of post-verification reliability estimates remains a controversial issue. For some applications software safety is more important than reliability, and fault tolerance techniques used in those applications are aimed at preventing catastrophes. Single version software fault tolerance techniques discussed include system structuring and closure, atomic actions, inline fault detection, exception handling, and others. Multiversion techniques are based on the assumption that software built differently should fail differently and thus, if one of the redundant versions fails, it is expected that at least one of the other versions will provide an acceptable output. Recovery blocks, N-version programming, and other multiversion techniques are reviewed.

Torres-Pomales, Wilfredo↗

Reflight certification software design specifications

The PDSS/IMC Software Design Specification for the Payload Development Support System (PDSS)/Image Motion Compensator (IMC) is contained. The PDSS/IMC is to be used for checkout and verification of the IMC flight hardware and software by NASA/MSFC.

Source record↗

Verifying shuttle onboard software using expert systems

The Space Shuttle uses a complex set of software to guide, navigate, and control it through all phases of flight. Adding to the complexity is the fact that the software is reconfigured for each flight, i.e., thousands of constants in the software are changed to reflect the unique properties of a given mission. In the last level of tests, the software is flown through end to end nominal and abort scenarios taking the shuttle from liftoff to landing. The analysis of the results of the testing is experience and labor intensive. A set of pass/fail criteria were defined for each test case and in parallel with the knowledge acquisition, tools were developed which allowed the automation of the knowledge being gathered on paper. A prototype of the Analysis Criteria Expert System (ACES) was put into production in the verification of the reconfigured onboard flight software.

Wingert, William B.↗

Software Users Manual (SUM): Extended Testability Analysis (ETA) Tool

This software user manual describes the implementation and use the Extended Testability Analysis (ETA) Tool. The ETA Tool is a software program that augments the analysis and reporting capabilities of a commercial-off-the-shelf (COTS) testability analysis software package called the Testability Engineering And Maintenance System (TEAMS) Designer. An initial diagnostic assessment is performed by the TEAMS Designer software using a qualitative, directed-graph model of the system being analyzed. The ETA Tool utilizes system design information captured within the diagnostic model and testability analysis output from the TEAMS Designer software to create a series of six reports for various system engineering needs. The ETA Tool allows the user to perform additional studies on the testability analysis results by determining the detection sensitivity to the loss of certain sensors or tests. The ETA Tool was developed to support design and development of the NASA Ares I Crew Launch Vehicle. The diagnostic analysis provided by the ETA Tool was proven to be valuable system engineering output that provided consistency in the verification of system engineering requirements. This software user manual provides a description of each output report generated by the ETA Tool. The manual also describes the example diagnostic model and supporting documentation - also provided with the ETA Tool software release package - that were used to generate the reports presented in the manual

Maul, William A.↗

STAT7 v1.2 Verification and Validation Report

This report documents the software testing which has been performed for the STAT7 Version 1.2 (hereafter STAT7 v1.2) software, a code for the statistical propagation of uncertainties in steady-state thermal hydraulics (TH) analysis of plate-fueled research and test reactors. The key capabilities addressed in this testing were selected based on the use of the software for analysis work supporting the conversion to low-enriched uranium fuel of U.S. High-Performance Research Reactors (USHPRR) such as the Massachusetts Institute of Technology Research Reactor (MITR-II). This testing scope includes comparison of the code’s statistical processing capabilities using statistical tests, comparison of coolant property evaluations to NIST data tables, and systematic comparison of key TH solver capabilities to the results of hand calculations and to predictions from PLTEMP/ANL Version 4.4. The good agreement achieved in this testing campaign, within the acceptance criteria of a 1% relative difference, also demonstrates that these capabilities have been implemented in STAT7 v1.2 correctly.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

STAT7 v2.0 Verification and Validation Report

This report documents the software testing which has been performed for STAT7 Version 2.0 (hereafter STAT7 v2.0), a code for the statistical propagation of uncertainties in steady-state thermal hydraulics (TH) analysis of plate-fueled research and test reactors. The key capabilities addressed in this testing were selected based on the use of the software for analysis work supporting the conversion to low-enriched uranium fuel of U.S. High-Performance Research Reactors (USHPRR) such as the Massachusetts Institute of Technology Research Reactor (MITR-II). This testing scope includes comparison of the code’s statistical processing capabilities using statistical tests, comparison of coolant property evaluations to NIST data tables, and systematic comparison of key TH solver capabilities to the results of hand calculations and to predictions from PLTEMP/ANL Version 4.4. The

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

An Integrated Unix-based CAD System for the Design and Testing of Custom VLSI Chips

A computer aided design (CAD) system that is being used at the Jet Propulsion Laboratory for the design of custom and semicustom very large scale integrated (VLSI) chips is described. The system consists of a Digital Equipment Corporation VAX computer with the UNIX operating system and a collection of software tools for the layout, simulation, and verification of microcircuits. Most of these tools were written by the academic community and are, therefore, available to JPL at little or no cost. Some small pieces of software have been written in-house in order to make all the tools interact with each other with a minimal amount of effort on the part of the designer.

Deutsch, L. J.↗

Information Technology and the Autonomous Control of a Mars In-Situ Propellant Production System

With the rapidly increasing performance of information technology, i.e., computer hardware and software systems, as well as networks and communication systems, a new capability is being developed that holds the clear promise of greatly increased exploration capability, along with dramatically reduced design, development, and operating costs. These new intelligent systems technologies, utilizing knowledge-based software and very high performance computer systems, will provide new design and development tools, scheduling mechanisms, and vehicle and system health monitoring capabilities. In addition, specific technologies such as neural nets will provide a degree of machine intelligence and associated autonomy which has previously been unavailable to the mission and spacecraft designer and to the system operator. One of the most promising applications of these new information technologies is to the area of in situ resource utilization. Useful resources such as oxygen, compressed carbon dioxide, water, methane, and buffer gases can be extracted and/or generated from planetary atmospheres, such as the Martian atmosphere. These products, when used for propulsion and life-support needs can provide significant savings in the launch mass and costs for both robotic and crewed missions. In the longer term the utilization of indigenous resources is an enabling technology that is vital to sustaining long duration human presence on Mars. This paper will present the concepts that are currently under investigation and development for mining the Martian atmosphere, such as temperature-swing adsorption, zirconia electrolysis etc., to create propellants and life-support materials. This description will be followed by an analysis of the information technology and control needs for the reliable and autonomous operation of such processing plants in a fault tolerant manner, as well as the approach being taken for the development of the controlling software. Finally, there will be a brief discussion of the verification and validation process so crucial to the implementation of mission-critical software.

Gross, Anthony R.↗

Guidance and Control Software Project Data - Volume 2: Development Documents

The Guidance and Control Software (GCS) project was the last in a series of software reliability studies conducted at Langley Research Center between 1977 and 1994. The technical results of the GCS project were recorded after the experiment was completed. Some of the support documentation produced as part of the experiment, however, is serving an unexpected role far beyond its original project context. Some of the software used as part of the GCS project was developed to conform to the RTCA/DO-178B software standard, "Software Considerations in Airborne Systems and Equipment Certification," used in the civil aviation industry. That standard requires extensive documentation throughout the software development life cycle, including plans, software requirements, design and source code, verification cases and results, and configuration management and quality control data. The project documentation that includes this information is open for public scrutiny without the legal or safety implications associated with comparable data from an avionics manufacturer. This public availability has afforded an opportunity to use the GCS project documents for DO-178B training. This report provides a brief overview of the GCS project, describes the 4-volume set of documents and the role they are playing in training, and includes the development documents from the GCS project. Volume 2 contains three appendices: A. Guidance and Control Software Development Specification; B. Design Description for the Pluto Implementation of the Guidance and Control Software; and C. Source Code for the Pluto Implementation of the Guidance and Control Software

Hayhurst, Kelly J.↗

Guidance and Control Software Project Data - Volume 4: Configuration Management and Quality Assurance Documents

The Guidance and Control Software (GCS) project was the last in a series of software reliability studies conducted at Langley Research Center between 1977 and 1994. The technical results of the GCS project were recorded after the experiment was completed. Some of the support documentation produced as part of the experiment, however, is serving an unexpected role far beyond its original project context. Some of the software used as part of the GCS project was developed to conform to the RTCA/DO-178B software standard, "Software Considerations in Airborne Systems and Equipment Certification," used in the civil aviation industry. That standard requires extensive documentation throughout the software development life cycle, including plans, software requirements, design and source code, verification cases and results, and configuration management and quality control data. The project documentation that includes this information is open for public scrutiny without the legal or safety implications associated with comparable data from an avionics manufacturer. This public availability has afforded an opportunity to use the GCS project documents for DO-178B training. This report provides a brief overview of the GCS project, describes the 4-volume set of documents and the role they are playing in training, and includes configuration management and quality assurance documents from the GCS project. Volume 4 contains six appendices: A. Software Accomplishment Summary for the Guidance and Control Software Project; B. Software Configuration Index for the Guidance and Control Software Project; C. Configuration Management Records for the Guidance and Control Software Project; D. Software Quality Assurance Records for the Guidance and Control Software Project; E. Problem Report for the Pluto Implementation of the Guidance and Control Software Project; and F. Support Documentation Change Reports for the Guidance and Control Software Project.

Hayhurst, Kelly J.↗

MOSS, an evaluation of software engineering techniques

An evaluation of the software engineering techniques used for the development of a Modular Operating System (MOSS) was described. MOSS is a general purpose real time operating system which was developed for the Concept Verification Test (CVT) program. Each of the software engineering techniques was described and evaluated based on the experience of the MOSS project. Recommendations for the use of these techniques on future software projects were also given.

Bounds, J. R.↗

Model based verification of the Secure Socket Layer (SSL) Protocol for NASA systems

The National Aeronautics and Space Administration (NASA) has tens of thousands of networked computer systems and applications. Software Security vulnerabilities present risks such as lost or corrupted data, information theft, and unavailability of critical systems. These risks represent potentially enormous costs to NASA. The NASA Code Q research initiative 'Reducing Software Security Risk (RSSR) Trough an Integrated Approach' offers formal verification of information technology (IT), through the creation of a Software Security Assessment Instrument (SSAI), to address software security risks.

software security↗