Search NASA⌕ Search

SEARCH · Search NASA

Results for “Software dependability”

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 235 records · Page 13

Advanced Active-Magnetic-Bearing Thrust-Measurement System

An advanced thrust-measurement system utilizes active magnetic bearings to both (1) levitate a floating frame in all six degrees of freedom and (2) measure the levitation forces between the floating frame and a grounded frame. This system was developed for original use in measuring the thrust exerted by a rocket engine mounted on the floating frame, but can just as well be used in other force-measurement applications. This system offers several advantages over prior thrust-measurement systems based on mechanical support by flexures and/or load cells: The system includes multiple active magnetic bearings for each degree of freedom, so that by selective use of one, some, or all of these bearings, it is possible to test a given article over a wide force range in the same fixture, eliminating the need to transfer the article to different test fixtures to obtain the benefit of full-scale accuracy of different force-measurement devices for different force ranges. Like other active magnetic bearings, the active magnetic bearings of this system include closed-loop control subsystems, through which the stiffness and damping characteristics of the magnetic bearings can be modified electronically. The design of the system minimizes or eliminates cross-axis force-measurement errors. The active magnetic bearings are configured to provide support against movement along all three orthogonal Cartesian axes, and such that the support along a given axis does not produce force along any other axis. Moreover, by eliminating the need for such mechanical connections as flexures used in prior thrust-measurement systems, magnetic levitation of the floating frame eliminates what would otherwise be major sources of cross-axis forces and the associated measurement errors. Overall, relative to prior mechanical-support thrust-measurement systems, this system offers greater versatility for adaptation to a variety of test conditions and requirements. The basic idea of most prior active-magnetic-bearing force-measurement systems is to calculate levitation forces on the basis of simple proportionalities between changes in those forces and changes in feedback-controlled currents applied to levitating electromagnetic coils. In the prior systems, the effects of gap lengths on fringing magnetic fields and the concomitant effects on magnetic forces were neglected. In the present system, the control subsystems of the active magnetic bearings are coupled with a computer-based automatic calibration system running special-purpose software wherein gap-length-dependent fringing factors are applied to current and magnetic-flux-based force equations and combined with a multipoint calibration method to obtain greater accuracy.

Imlach, Joseph↗

Towards A Comprehensive Consideration of Epistemic Questions in Software System Safety

For any software system upon which lives depend, the most important question one can ask about it is, 'How do we know the system is safe?' Despite the critical importance of this question, no widely accepted, generally applicable answer exists. Instead, debate continues to rage over the question, with theorists and practitioners quarrelling with each other and amongst themselves. This paper suggests a possible way forward towards quelling the quarrels, based on refining the critical safety question into additional questions, which may be more likely to have answers on which a consensus can be reached.

Holloway, C. M.↗

Cryo-Temp Data Logger

Biological experiments on the ISS are frequently frozen at ultra-low temperatures on orbit prior to return to Earth for analysis. Recording temperatures during the freezing process, and subsequent handling to the point of post-flight processing, can provide important information of sample integrity to the scientist. The MadgeTech Cryo-Temp Data Logger has been modified for space flight applications by the Payload Development Team at Kennedy Space Center. This ultra-low temperature data logger is rated for temperatures from -86 C to +35 C with 0.1 C resolution and +/-1 C accuracy, but has been successfully tested at Kennedy Space Centers Cryogenic Lab down to -100 C. The logger provides date and time stamped temperature recordings and can be set with logging intervals from 5 seconds up to 30 minutes using the MadgeTech Data Logger Software. Data can be recorded, depending on logging interval, for greater than 90 days. The Cryo-Temp Data logger will first be flown on Space X-12 in the BRIC-Petri Dish Fixation Unit (PDFU) canister hardware, recording temperature data for a Space Life and Physical Sciences (SLPS) flight experiment. The modified Cryo-Temp Data Logger is small in size (Figure 1) and is the ideal temperature monitoring solution for any application involving independent temperature data logging.

Logger↗

Determination of the Limiting Magnitude

The limiting magnitude of an optical camera system is an important property to understand since it is used to find the completeness limit of observations. Limiting magnitude depends on the hardware and software of the system, current weather conditions, and the angular speed of the objects observed. If an object exhibits a substantial angular rate during the exposure, its light spreads out over more pixels than the stationary stars. This spreading causes the limiting magnitude to be brighter when compared to the stellar limiting magnitude. The effect, which begins to become important when the object moves a full width at half max during a single exposure or video frame. For targets with high angular speeds or camera systems with narrow field of view or long exposures, this correction can be significant, up to several magnitudes. The stars in an image are often used to measure the limiting magnitude since they are stationary, have known brightness, and are present in large numbers, making the determination of the limiting magnitude fairly simple. In order to transform stellar limiting magnitude to object limiting magnitude, a correction must be applied accounting for the angular velocity. This technique is adopted in meteor and other fast-moving object observations, as the lack of a statistically significant sample of targets makes it virtually impossible to determine the limiting magnitude before the weather conditions change. While the weather is the dominant factor in observing satellites, the limiting magnitude for meteors also changes throughout the night due to the motion of a meteor shower or sporadic source radiant across the sky. This paper presents methods for determining the limiting stellar magnitude and the conversion to the target limiting magnitude.

Kingery, Aaron↗

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↗

Software System for the Mars 2020 Mission Sampling and Caching Testbeds

The development of the Sampling and Caching Subsystem (SCS) of the Mars 2020 Rover Mission is highly dependent on testing of prototype hardware and software operating in explicit conditions as part of integrated testbeds. To achieve relevant integration of hardware and software while maintaining rapid algorithm development capabilities and high testing throughput, the Controls and Autonomy for Sample Acquisition and Handling (CASAH) software system was developed. CASAH is an implementation of the Intelligent Robotics System Architecture (IRSA),which mimics JPL Flight Software (FSW) in that it is divided into hierarchical modules that run separate processes that communicate via message passing, each module is assigned an owner that is a single developer, and the operator initiates requests via a text-based interface that interprets sequences of commands.IRSA enables a modular breakdown of CASAH that follows that of 2020 Flight Software,so developers can take an algorithm from a module in CASAH and re-code it into the same module in FSW. As deployment of CASAH has grown to ten testbeds - each with different hardware and objectives - bottom-up design decisions have been intentionally made to keep the system lightweight and maintainable by a very small team. To date, CASAH has been used to run 1393 different tests. This work describes CASAH, the testbeds and functionality it supports, the tools used to manage the development and sharing of code, and the features of the software. Lessons learned over the past three years of development and deployment are provided.

Vieira, Peter↗

Freddie Software Security Patching

Software applications become more complicated over time as they depend on many third-party, open-source libraries. The Freddie Platform Services team actively improves software security by addressing software bugs and vulnerabilities that negatively impact software applications, especially those providing real-time operations and services for the federal partners and industries. In order to detect bugs and patch vulnerabilities in software development and maintenance cycles, an automated and systematic approach is needed. This document describes what bugs and vulnerabilities are, and how they can be detected by using static code analyzers and software composition analysis tools. Once vulnerabilities are detected, the patching approaches, such as upgrading direct and transitive dependencies and loading custom classes first, are presented together with their strengths and weaknesses. In addition, patching walkthrough, example code, lessons learned throughout the vulnerability patching process and the recommended practices are discussed.

Chok Fung Lai↗

Detecting Hidden Failure Modes in Critical, Embedded Software

This experience report describes a method that has been used successfully to detect hidden failure modes in critical, embedded spacecraft software. The method is an adaptation of an earlier, controversial approach called failure modes and effects analysis. The adapted method was found to be well-suited to identifying latent software design weaknesses involving complex system interactions and dependencies in the two applications described here. This experience may be useful for other high-integrity software systems in which the possibility of hidden failure modes is a major concern.

detecting software failure design analysis↗

An Introduction to Markov Modeling: Concepts and Uses

Kharkov modeling is a modeling technique that is widely useful for dependability analysis of complex fault tolerant systems. It is very flexible in the type of systems and system behavior it can model. It is not, however, the most appropriate modeling technique for every modeling situation. The first task in obtaining a reliability or availability estimate for a system is selecting which modeling technique is most appropriate to the situation at hand. A person performing a dependability analysis must confront the question: is Kharkov modeling most appropriate to the system under consideration, or should another technique be used instead? The need to answer this gives rise to other more basic questions regarding Kharkov modeling: what are the capabilities and limitations of Kharkov modeling as a modeling technique? How does it relate to other modeling techniques? What kind of system behavior can it model? What kinds of software tools are available for performing dependability analyses with Kharkov modeling techniques? These questions and others will be addressed in this tutorial.

Boyd, Mark A.↗

MPMC and MCMD: Free High-Performance Simulation Software for Atomistic Systems

Advancements in parallel computing and hardware have allowed computational exploration of chemical systems of interest with unprecendented accuracy and efficiency. The typical development of molecular simulation software is initially inspired by a particular scientific inquiry. The softwares presented herein, MPMC (Massively Parallel Monte Carlo) and MCMD (Monte Carlo/Molecular Dynamics) were born out of a pursuit to simulate condensed phase physical and chemical interactions in porous materials. MPMC first began in 2005 and has been used for dozens of published results in the literature but has not yet been introduced in a standalone paper. MCMD is a more recent expansion and re-write with some published work, focused on adding molecular dynamics algorithms for transport and other time-dependent properties of chemical systems. Each software functions as a standalone with some unique and other overlapping features. Here, a driving aim of this work is to consider periodic, long-range polarization effects in classical simulation, and both codes are optimized to perform such calculations. Sample results will be presented which highlight methodically that inclusion of explicit polarization produces simulation results with predictive power which in general are in greater agreement with experiment than non-polarizable analogous simulations.

97 MATHEMATICS AND COMPUTING↗

Develop a Model Component

During my internship at NASA, I was a model developer for Ground Support Equipment (GSE). The purpose of a model developer is to develop and unit test model component libraries (fluid, electrical, gas, etc.). The models are designed to simulate software for GSE (Ground Special Power, Crew Access Arm, Cryo, Fire and Leak Detection System, Environmental Control System (ECS), etc. ~.) before they are implemented into hardware. These models support verifying local control and remote software for End-Item Software Under Test (SUT). The model simulates the physical behavior (function, state, limits and 110) of each end-item and it's dependencies as defined in the Subsystem Interface Table, Software Requirements & Design Specification (SRDS), Ground Integrated Schematic (GIS), and System Mechanical Schematic.(SMS). The software of each specific model component is simulated through MATLAB's Simulink program. The intensiv~ model development life cycle is a.s follows: Identify source documents; identify model scope; update schedule; preliminary design review; develop model requirements; update model.. scope; update schedule; detailed design review; create/modify library component; implement library components reference; implement subsystem components; develop a test script; run the test script; develop users guide; send model out for peer review; the model is sent out for verific~tionlvalidation; if there is empirical data, a validation data package is generated; if there is not empirical data, a verification package is generated; the test results are then reviewed; and finally, the user. requests accreditation, and a statement of accreditation is prepared. Once each component model is reviewed and approved, they are intertwined together into one integrated model. This integrated model is then tested itself, through a test script and autotest, so that it can be concluded that all models work conjointly, for a single purpose. The component I was assigned, specifically, was a fluid component, a discrete pressure switch. The switch takes a fluid pressure input, and if the pressure is greater than a designated cutoff pressure, the switch would stop fluid flow.

Ensey, Tyler S.↗

Implementation of real‐time TDDFT for periodic systems in the open‐source PySCF software package

Abstract We present a new implementation of real‐time time‐dependent density functional theory (RT‐TDDFT) for calculating excited‐state dynamics of periodic systems in the open‐source Python‐based PySCF software package. Our implementation uses Gaussian basis functions in a velocity gauge formalism and can be applied to periodic surfaces, condensed‐phase, and molecular systems. As representative benchmark applications, we present optical absorption calculations of various molecular and bulk systems and a real‐time simulation of field‐induced dynamics of a (ZnO) 4 molecular cluster on a periodic graphene sheet. We present representative calculations on optical response of solids to infinitesimal external fields as well as real‐time charge‐transfer dynamics induced by strong pulsed laser fields. Due to the widespread use of the Python language, our RT‐TDDFT implementation can be easily modified and provides a new capability in the PySCF code for real‐time excited‐state calculations of chemical and material systems.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Floorspace.js

Floorspace.js is a 2D geometry editor. Users can define an explicit floor plan for each story of a building. A story-by-story interface makes it easy to develop space geometry and assign properties. Referencing satellite imagery or floor plan images, when available, speeds up geometry entry. Conversion of 2D to 3D geometry is currently out of scope for Floorspace.js, a reference implementation is available in the OpenStudio® SDK. Explicit floor plans allow more building-specific information than parameterized shoe-boxes but less information than a full 3D BIM model. Sloped walls, complex roofs, detailed shading structures, and other complex 3D structures are out of FloorspaceJS's scope. In general, if users have a 3D BIM model in a tool that can export a useful BEM representation then it is better to use that export than to recreate a new model using FloorspaceJS. Re-usability and minimal dependencies were key design considerations for software developers. Web technologies can be used in both online and desktop applications. The editor was written in pure JavaScript for maximum portability and re-usability. A custom JavaScript Object Notation (JSON) file format was developed to ease integration with other applications. Custom JSON schema design was a key part of FloorspaceJS development.

Noland, Katie↗

Deployment Optimization Tool (DOT)

This tool was developed to assist in the design of in-place RF monitoring systems. This tool uses a brute force method to find the optimal location for RF receivers in a location of interest. This tool currently depends on the commercial Wireless InSite software from Remcom. Currently available to US Government users only.

Clark, Trevor↗

Lightfall v0.0.1

Lightfall is a desktop application for synchrotron beamline instrument control, data acquisition, and live analysis at the Advanced Light Source (ALS). Built on Python and Qt, it provides a native graphical interface for operating beamline hardware, configuring and executing experimental scans, and visualizing results in real time. Key features include direct integration with EPICS control systems, a built-in electronic logbook, remote beamline access over secure tunnels, and an interprocess communication (IPC) architecture that coordinates with external analysis applications via ZMQ and EPICS process variables. This IPC approach allows Lightfall to orchestrate specialized analysis tools—including GPU-accelerated streaming correlators—without embedding them, avoiding the dependency conflicts common in monolithic scientific software platforms. Compared to prior approaches such as Xi-CAM's plugin-based architecture, Lightfall's design cleanly separates instrument control from domain-specific analysis, enabling feedback-driven acquisition where live analysis results can adjust scan parameters during an experiment. Its native Qt interface provides responsive performance for real-time data visualization that web-based alternatives struggle to match. Lightfall is designed for use by beamline scientists and staff operating synchrotron instruments at national user facilities.

Pandolfi, Ronald [Lawrence Berkeley National Labor↗

HAL/S-FC compiler system functional specification

Compiler organization is discussed, including overall compiler structure, internal data transfer, compiler development, and code optimization. The user, system, and SDL interfaces are described, along with compiler system requirements. Run-time software support package and restrictions and dependencies are also considered of the HAL/S-FC system.

Source record↗

Control structures for high speed processors

A special processor was designed to function as a Reed Solomon decoder with throughput data rate in the Mhz range. This data rate is significantly greater than is possible with conventional digital architectures. To achieve this rate, the processor design includes sequential, pipelined, distributed, and parallel processing. The processor was designed using a high level language register transfer language. The RTL can be used to describe how the different processes are implemented by the hardware. One problem of special interest was the development of dependent processes which are analogous to software subroutines. For greater flexibility, the RTL control structure was implemented in ROM. The special purpose hardware required approximately 1000 SSI and MSI components. The data rate throughput is 2.5 megabits/second. This data rate is achieved through the use of pipelined and distributed processing. This data rate can be compared with 800 kilobits/second in a recently proposed very large scale integration design of a Reed Solomon encoder.

Maki, G. K.↗

An experiment to assess the cost-benefits of code inspections in large scale software development

This experiment (currently in progress) is designed to measure costs and benefits of different code inspection methods. It is being performed with a real development team writing software for a commercial product. The dependent variables for each code unit's inspection are the elapsed time and the number of defects detected. We manipulate the method of inspection by randomly assigning reviewers, varying the number of reviewers and the number of teams, and, when using more than one team, randomly assigning author repair and non-repair of detected defects between code inspections. After collecting and analyzing the first 17 percent of the data, we have discovered several interesting facts about reviewers, about the defects recorded during reviewer preparation and during the inspection collection meeting, and about the repairs that are eventually made. (1) Only 17 percent of the defects that reviewers record in their preparations are true defects that are later repaired. (2) Defects recorded at the inspection meetings fall into three categories: 18 percent false positives requiring no author repair, 57 percent soft maintenance where the author makes changes only for readability or code standard enforcement, and 25 percent true defects requiring repair. (3) The median elapsed calendar time for code inspections is 10 working days - 8 working days before the collection meeting and 2 after. (4) In the collection meetings, 31 percent of the defects discovered by reviewers during preparation are suppressed. (5) Finally, 33 percent of the true defects recorded are discovered at the collection meetings and not during any reviewer's preparation. The results to date suggest that inspections with two sessions (two different teams) of two reviewers per session (2sX2p) are the most effective. These two-session inspections may be performed with author repair or with no author repair between the two sessions. We are finding that the two-session, two-person with repair (2sX2pR) inspections are the most expensive, taking 15 working days of calendar time from the time the code is ready for review until author repair is complete, whereas two-session, two-person with no repair (2sX2pN) inspections take only 10 working days, but find about 10 percent fewer defects.

Porter, A.↗