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 73 records · Page 4

Evaluating Methods of Software Bill of Materials Generation to Enhance Nuclear Power Plant Cybersecurity

Instrumentation and control (I&C) systems in nuclear power plants (NPPs) are potential targets of cyberattacks and can prove deleterious for the safety of the NPPs. A Software Bill of Materials (SBOM) provides a detailed list of the various components and their dependencies in software, which helps in vulnerability and risk assessment for cyber hygiene and situational awareness. For an NPP, the process of generating an accurate SBOM report can be complex due to the legacy systems and firmware binaries involved. While most current SBOM tools are focused more on modern internet technology software, this research provides insights and guidelines for an NPP to generate an accurate and efficient SBOM. Here, the paper proposes a new methodology to help NPPs categorize software and use appropriate tools to generate SBOMs for their digital I&C systems.

SBOM↗

Credible Software and Simulation Uncertainty

The utility of software primarily depends on its reliability and performance; whereas, its significance depends solely on its credibility for intended use. The credibility of simulations confirms the credibility of software. The level of veracity and the level of validity of simulations determine the degree of credibility of simulations. The process of assessing this credibility in fields such as computational mechanics (CM) differs from that followed by the Defense Modeling and Simulation Office in operations research. Verification and validation (V&V) of CM simulations is not the same as V&V of CM software. Uncertainty is the measure of simulation credibility. Designers who use software are concerned with management of simulation uncertainty. Terminology and concepts are presented with a few examples from computational fluid dynamics.

Mehta, Unmeel B.↗

Model Transformation for a System of Systems Dependability Safety Case

Software plays an increasingly larger role in all aspects of NASA's science missions. This has been extended to the identification, management and control of faults which affect safety-critical functions and by default, the overall success of the mission. Traditionally, the analysis of fault identification, management and control are hardware based. Due to the increasing complexity of system, there has been a corresponding increase in the complexity in fault management software. The NASA Independent Validation & Verification (IV&V) program is creating processes and procedures to identify, and incorporate safety-critical software requirements along with corresponding software faults so that potential hazards may be mitigated. This Specific to Generic ... A Case for Reuse paper describes the phases of a dependability and safety study which identifies a new, process to create a foundation for reusable assets. These assets support the identification and management of specific software faults and, their transformation from specific to generic software faults. This approach also has applications to other systems outside of the NASA environment. This paper addresses how a mission specific dependability and safety case is being transformed to a generic dependability and safety case which can be reused for any type of space mission with an emphasis on software fault conditions.

Murphy, Judy↗

Estimation and enhancement of real-time software reliability through mutation analysis

A simulation-based technique for obtaining numerical estimates of the reliability of N-version, real-time software is presented. An extended stochastic Petri net is employed to represent the synchronization structure of N versions of the software, where dependencies among versions are modeled through correlated sampling of module execution times. Test results utilizing specifications for NASA's planetary lander control software indicate that mutation-based testing could hold greater potential for enhancing reliability than the desirable but perhaps unachievable goal of independence among N versions.

Geist, Robert↗

XScan: An Integrated Tool for Understanding Open Source Community-Based Scientific Code

Many scientific communities have adopted community-based models that integrate multiple components to simulate whole system dynamics. The community software projects’ complexity, stems from the integration of multiple individual software components that were developed under different application requirements and various machine architectures, has become a challenge for effective software system understanding and continuous software development. The paper presents an integrated software toolkit called X-ray Software Scanner (in abbreviation, XScan) for a better understanding of large-scale community-based scientific codes. Our software tool provides support to quickly summarize the overall information of scientific codes, including the number of lines of code, programming languages, external library dependencies, as well as architecture-dependent parallel software features. The XScan toolkit also realizes a static software analysis component to collect detailed structural information and provides an interactive visualization and analysis of the functions. We use a large-scale community-based Earth System Model to demonstrate the workflow, functions and visualization of the toolkit. We also discuss the application of advanced graph analytics techniques to assist software modular design and component refactoring.

Zheng, Weijian↗

A Probabilistic Approach To Selecting Build Configurations in Package Managers

In the past decade software has grown significantly in complexity and scale. Likewise the number of dependencies for most software has increased with typical software packages depending on tens to hundreds of other packages. Such large numbers of dependencies place a significant burden on package managers to correctly maintain dependency lists and constraints between them. Due to this package managers have incorporated sophisticated tooling such as SAT solvers into their dependency management mechanisms. Despite these tools package managers still rely on many human annotated constraints for dependency and version selection. These are error-prone and require a significant amount of labor to constantly update and test. In this paper we propose a methodology to make use of historical build results in selecting the version for package dependencies. Our method utilizes the flexibility of the Spack package manager’s heavily parameterized package configurations to incorporate a machine learning model trained to predict the probability of build outcomes. This work is able to build and install packages with a 13% higher success rate than the default version selection mechanism in Spack.

97 MATHEMATICS AND COMPUTING↗

Measuring software development characteristics in the local environment

In a brief evaluation of software-related considerations, it is found that suitable approaches for software development depend to a large degree on the characteristics of the particular project involved. An analysis is conducted of development problems in an environment in which ground support software is produced for spacecraft control. The amount of work involved is in the range from 6 to 10 man-years. Attention is given to a general project summary, a programmer/analyst survey, a component summary, a component status report, a resource summary, a change report, a computer program run analysis, aspects of data collection on a smaller scale, progress forecasting, problems of overhead, and error analysis.

Basili, V. R.↗

Simulation and Flight Test Environments for the TASAR Traffic Aware Planner

The Traffic Aware Planner (TAP) software is a flight deck decision support tool that enhances the flight crew’s ability to make flight-optimizing route change requests while airborne. The software provides conflict-free, optimized trajectory suggestions during en route flight to produce time- and fuel-savings compared to the current trajectory. The TAP software requires evaluation in an operational environment with real pilot users to validate projected benefits. To this end, a set of developmental test environments have been developed to mature the software and mitigate technical risk prior to entering operational evaluation. The unique attributes of each test environment were leveraged to provide a range of purpose- and case-dependent TAP software tests. This paper describes the elements of a testing environment, discusses several environments of varying fidelity used to test the TAP software, and provides a review of two case studies highlighting the vital role testing played in the TAP software development process.

Barney, Terique L.↗

Function-Keypad Template Filer

Each page of filer shows various keypad designations corresponding to variety of software packages. Filer has various templates bound together so they are indexed easily and stand up for ready viewing. Template filers are made of inexpensive materials. Templates of various manufacturers can be added in pages appropriately die cut to receive them. Microcomputer operators using variety of software packages assisted by simple filer that illustrates various keyboard functions corresponding to different software packages. Keyboard functions change, depending on selected software. Filer has set of templates showing keyboard functions for various software packages. Templates set up quickly as desktop references to key functions.

Headley, P. A.↗

Advocating for Equality of Contribution: The Research Software Engineer (RSE)

Heliophysics depends on RSEs to properly engineer software. However, RSEs receive unequal treatment compared to their science counterparts, resulting in unsustainable talent loss. These restrictions include lack of credit for their contributions and insufficient training. This paper describes what a RSE is and proposes solutions, including implementing appropriate recognition standards.

software↗

NASA's Software Safety Standard

NASA (National Aeronautics and Space Administration) relies more and more on software to control, monitor, and verify its safety critical systems, facilities and operations. Since the 1960's there has hardly been a spacecraft (manned or unmanned) launched that did not have a computer on board that provided vital command and control services. Despite this growing dependence on software control and monitoring, there has been no consistent application of software safety practices and methodology to NASA's projects with safety critical software. Led by the NASA Headquarters Office of Safety and Mission Assurance, the NASA Software Safety Standard (STD-18l9.13B) has recently undergone a significant update in an attempt to provide that consistency. This paper will discuss the key features of the new NASA Software Safety Standard. It will start with a brief history of the use and development of software in safety critical applications at NASA. It will then give a brief overview of the NASA Software Working Group and the approach it took to revise the software engineering process across the Agency.

Ramsay, Christopher M.↗

Using Docker Containers to Extend Reproducibility Architecture for the NASA Earth Exchange (NEX)

NASA Earth Exchange (NEX) is a data, supercomputing and knowledge collaboratory that houses NASA satellite, climate and ancillary data where a focused community can come together to address large-scale challenges in Earth sciences. As NEX has been growing into a petabyte-size platform for analysis, experiments and data production, it has been increasingly important to enable users to easily retrace their steps, identify what datasets were produced by which process chains, and give them ability to readily reproduce their results. This can be a tedious and difficult task even for a small project, but is almost impossible on large processing pipelines. We have developed an initial reproducibility and knowledge capture solution for the NEX, however, if users want to move the code to another system, whether it is their home institution cluster, laptop or the cloud, they have to find, build and install all the required dependencies that would run their code. This can be a very tedious and tricky process and is a big impediment to moving code to data and reproducibility outside the original system. The NEX team has tried to assist users who wanted to move their code into OpenNEX on Amazon cloud by creating custom virtual machines with all the software and dependencies installed, but this, while solving some of the issues, creates a new bottleneck that requires the NEX team to be involved with any new request, updates to virtual machines and general maintenance support. In this presentation, we will describe a solution that integrates NEX and Docker to bridge the gap in code-to-data migration. The core of the solution is saemi-automatic conversion of science codes, tools and services that are already tracked and described in the NEX provenance system, to Docker - an open-source Linux container software. Docker is available on most computer platforms, easy to install and capable of seamlessly creating and/or executing any application packaged in the appropriate format. We believe this is an important step towards seamless process deployment in heterogeneous environments that will enhance community access to NASA data and tools in a scalable way, promote software reuse, and improve reproducibility of scientific results.

earth exchange↗

PyOECP: A flexible open-source software library for estimating and modeling the complex permittivity based on the open-ended coaxial probe (OECP) technique

Here, we present PyOECP, a Python-based flexible open-source software for estimating and modeling the complex permittivity obtained from the open-ended coaxial probe (OECP) technique. The transformation of the measured reflection coefficient to complex permittivity is performed based on three different methods. The software library contains the dielectric spectra of common reference liquids, which can be used to transform the reflection coefficient into the dielectric spectra. Several Python routines that are commonly employed (e.g., SciPy and NumPy) in the field of science and engineering are required only so that the users can alter the software structure depending on their needs. The modeling algorithm exploits the Markov Chain Monte Carlo method for the data regression. The discrete relaxation models can be built by a proper combination of well-known relaxation models. In addition to these models, electrode polarization, a typical measurement artifact for interpreting dielectric spectra, can be incorporated into the modeling algorithm. A continuous relaxation model, which solves the Fredholm integral equation of the first kind (a mathematically ill-posed problem), is also included. This open-source software enables users to freely adjust the physical parameters to obtain physical insight into their materials under test and will be consistently updated for more accurate measurement and interpretation of dielectric spectra in an automated manner. This work describes the theoretical and mathematical background of the software, lays out the workflow, and validates the software functionality based on both synthetic and empirical data included in the software.

97 MATHEMATICS AND COMPUTING↗

Dependence of AeroMACS Interference on Airport Radiation Pattern Characteristics

AeroMACS (Aeronautical Mobile Airport Communications System), which is based upon the IEEE 802.16e mobile wireless standard, is expected to be implemented in the 5091-5150 MHz frequency band. As this band is also occupied by Mobile Satellite Service (MSS) feeder uplinks, AeroMACS must be designed to avoid interference with this incumbent service. The aspects of AeroMACS operation that present potential interference are under analysis in order to enable the definition of standards that assure that such interference will be avoided. In this study, the cumulative interference power distribution at low earth orbit from AeroMACS transmitters at the 497 major airports in the contiguous United States was simulated with the Visualyse Professional software. The dependence of the interference power on the number of antenna beams per airport, gain patterns, and beam direction orientations was simulated. As a function of these parameters, the simulation results are presented in terms of the limitations on transmitter power required to maintain the cumulative interference power under the established threshold.

Wilson, Jeffrey D.↗

Dependence of AeroMACS Interference on Airport Radiation Pattern Characteristics

AeroMACS (Aeronautical Mobile Airport Communications System), which is based upon the IEEE 802.16e mobile wireless standard, is expected to be implemented in the 5091 to 5150 MHz frequency band. As this band is also occupied by Mobile Satellite Service (MSS) feeder uplinks, AeroMACS must be designed to avoid interference with this incumbent service. The aspects of AeroMACS operation that present potential interference are under analysis in order to enable the definition of standards that assure that such interference will be avoided. In this study, the cumulative interference power distribution at low earth orbit from AeroMACS transmitters at the 497 major airports in the contiguous United States was simulated with the Visualyse Professional software. The dependence of the interference power on the number of antenna beams per airport, gain patterns, and beam direction orientations was simulated. As a function of these parameters, the simulation results are presented in terms of the limitations on transmitter power required to maintain the cumulative interference power under the established threshold.

Wilson, Jeffrey D.↗

Performance Portability Evaluation of OpenCL Benchmarks across Intel and NVIDIA Platforms

We evaluate the capabilities of vendor-provided OpenCL implementations for performance portability across multiple computing platforms. The Rodinia benchmark suite is used for this evaluation. We apply the metric defined by Pennycook et al., and we use roofline efficiency from the Roofline performance model as the "performance efficiency" in the metric's definition. We found that the delivered performance portability is similar for several benchmarks, even if the roofline-based performance efficiencies across platforms are very different among the benchmarks. To help distinguish between these instances, we extend the metric by adding the standard deviation of the performance efficiencies for each benchmark. We argue that the standard deviation gives additional insight into performance portability assessment since it adds the performance variability across platforms. Additionally, we discuss the challenges to measure performance portability associated with algorithms and system software. In terms of algorithms, we need to carefully construct the benchmarks and appropriately use the concurrency available on a platform. In terms of system software, we depend on the vendor performance tools to support the desired programming model and runtime to be able to measure the metrics of interest.

GPU↗

PyOECP: A flexible open-source software for the measurement and modeling of the dielectric spectrum from the reflection coefficient

We present PyOECP, a Python-based flexible open-source software for estimating and modeling the complex permittivity obtained from the open-ended coaxial probe (OECP) technique. The transformation of the measured reflection coefficient to complex permittivity is performed based on two different models, including the capacitance model and the antenna model. The software library contains dielectric spectra of common reference liquids, which can be used to transform the reflection coefficient into the dielectric spectra. Several Python routines that are commonly employed (e.g., SciPy and NumPy) are only required so that the users can alter the software structure depending on their needs. The modeling algorithm exploits the Markov chain Monte Carlo method for the data regression. The discrete relaxation models can be built by a proper combination of well-known relaxation models. In addition to these models, the electrode polarization, which is a common measurement artifact for interpreting the dielectric spectra, can be incorporated in the modeling algorithm. A continuous relaxation model, which solves the Fredholm integral equation of the first kind (a mathematically ill-posed problem) is also included.

Yoon, Tae-Jun↗