Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “software differences”

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 19 records

Evaluating software development characteristics: A comparison of software errors in different environments

Error data obtained from two different software development environments are compared. To obtain data that was complete, accurate, and meaningful, a goal-directed data collection methodology was used. Changes made to software were monitored concurrently with its development. Similarities common to both environments are included: (1) the principal error was in the design and implementation of single routines; (2) few errors were the result of changes, required more than one attempt to correct, and resulted in other errors; (3) relatively few errors took more than a day to correct.

Weiss, D. M.↗

Facilitating the Portability of User Applications in Grid Environments

Grid computing promises the ability to connect geographically and organizationally distributed resources to increase effective computational power, resource utilization, and resource accessibility. For grid computing to be successful, however, users must be able to easily execute the same application on different resources. Different resources, however, may be administered by different organizations with different software installed, different file system structures, and different default environment settings. Even within the same organization, the set of software installed on a given resource is in constant flux with additions, upgrades, and removals. Users cannot be expected to understand all of the idiosyncrasies of each resource they may wish to execute jobs on, thus must be provided with automated assistance. This paper describes a new OGSI-compliant grid service (the Portability Manager) that has been implemented as part of NASA's Information Power Grid (IPG) project to automatically estab!ish the execution environment for user applications.

Kolano, Paul Z.↗

Evaluation of competing software reliability predictions

Different software reliability models can produce very different answers when called upon to predict future reliability in a reliability growth context. Users need to know which, if any, of the competing predictions are trustworthy. Some techniques are presented which form the basis of a partial solution to this problem. Rather than attempting to decide which model is generally best, the approach adopted here allows a user to decide upon the most appropriate model for each application.

Abdel-Ghaly, A. A.↗

Evaluating SAR Radiometric Terrain Correction products: Optimal products for applied users

Operational applications for Synthetic Aperture Radar (SAR) are under development around the world, driven by the free-and-open access of SAR C-band observations that Sentinel-1 of Copernicus has been providing since 2014. Groups like SERVIR, a joint initiative between NASA and USAID, are at the forefront of remote sensing applied uses, and have made many significant contributions to lower the barrier to access, process, and apply SAR for ecosystem services. A takeaway from the SERVIR experience in using SAR is the need to use the appropriate SAR polarimetric product. Radiometric Terrain Correction (RTC) is a key entry-level product for multiple applications that range from ecosystems to hazards. Many software packages exist to create RTC products from SLC or GRD-type Level-1 SAR data, some of which were released only recently, e.g. Interferometric SAR Computing Environment (ISCE) added an RTC module in April 2020. In addition, new versions of open source softwares are expected to address known issues from previous versions, such as Sentinel-1 Toolbox from the European Space Agency (SNAP-7). Despite the growing availability of RTC software solutions, little work has been done to identify differences between RTC products from different softwares. And to address the question, which open-source software produces the most accurate RTC product? This work evaluates Sentinel-1 RTC products created with three different softwares and approaches, including SNAP-7, ISCE-2, and a pseudo RTC product derived from GEE. The GAMMA-derived RTC product, a known optimal RTC and implemented by Alaska Satellite Facility (ASF), is used as a reference. Time series stacks over ten different sites representing varied terrain and ecosystems are evaluated. Products are evaluated for geolocation quality, absolute radiometric calibration, and for the fidelity of the radiometric terrain flattening. The results provide direct guidance and recommendations about the quality of the RTC products obtained from open source methods. This understanding is key to develop operational applications that rely on SAR Sentinel-1 data that need affordable and scalable solutions.

Africa Flores-Anderson↗

A software control system for the ACTS high-burst-rate link evaluation terminal

Control and performance monitoring of NASA's High Burst Rate Link Evaluation Terminal (HBR-LET) is accomplished by using several software control modules. Different software modules are responsible for controlling remote radio frequency (RF) instrumentation, supporting communication between a host and a remote computer, controlling the output power of the Link Evaluation Terminal and data display. Remote commanding of microwave RF instrumentation and the LET digital ground terminal allows computer control of various experiments, including bit error rate measurements. Computer communication allows system operators to transmit and receive from the Advanced Communications Technology Satellite (ACTS). Finally, the output power control software dynamically controls the uplink output power of the terminal to compensate for signal loss due to rain fade. Included is a discussion of each software module and its applications.

Reinhart, Richard C.↗

Test Driven Development of Scientific Models

Test-Driven Development (TDD) is a software development process that promises many advantages for developer productivity and has become widely accepted among professional software engineers. As the name suggests, TDD practitioners alternate between writing short automated tests and producing code that passes those tests. Although this overly simplified description will undoubtedly sound prohibitively burdensome to many uninitiated developers, the advent of powerful unit-testing frameworks greatly reduces the effort required to produce and routinely execute suites of tests. By testimony, many developers find TDD to be addicting after only a few days of exposure, and find it unthinkable to return to previous practices. Of course, scientific/technical software differs from other software categories in a number of important respects, but I nonetheless believe that TDD is quite applicable to the development of such software and has the potential to significantly improve programmer productivity and code quality within the scientific community. After a detailed introduction to TDD, I will present the experience within the Software Systems Support Office (SSSO) in applying the technique to various scientific applications. This discussion will emphasize the various direct and indirect benefits as well as some of the difficulties and limitations of the methodology. I will conclude with a brief description of pFUnit, a unit testing framework I co-developed to support test-driven development of parallel Fortran applications.

Clune, Thomas L.↗

Application of Orthogonal Defect Classification for Software Reliability Analysis

The modernization of existing and new nuclear power plants with digital instrumentation and control systems (DI&C) is a recent and highly trending topic. However, there lacks strong consensus on best-estimate reliability methodologies by both the United States (U.S.) Nuclear Regulatory Commission (NRC) and the industry. This has resulted in hesitation for further modernization projects until a more unified methodology is realized. In this work, we develop an approach called Orthogonal-defect Classification for Assessing Software Reliability (ORCAS) to quantify probabilities of various software failure modes in a DI&C system. The method utilizes accepted industry methodologies for software quality assurance that are also verified by experimental or mathematical formulations. In essence, the approach combines a semantic failure classification model with a reliability growth model to predict (and quantify) the potential failure modes of a DI&C software system. The semantic classification model is used to address the question: How do latent defects in software contribute to different software failure root causes? The use of reliability growth models is then used to address the question: Given the connection between latent defects and software failure root causes, how can we quantify the reliability of the software? A case study was conducted on a representative I&C platform (ChibiOS) running a smart sensor acquisition software developed by Virginia Commonwealth University (VCU). The testing and evidence collection guidance in ORCAS was applied, and defects were uncovered in the software. Qualitative evidence, such as condition coverage, was used to gauge the completeness and trustworthiness of the assessment while quantitative evidence was used to determine the software failure probabilities. The reliability of the software was then estimated and compared to existing operational data of the sensor device. It is demonstrated that by using ORCAS, a semantic reasoning framework can be developed to justify if the software is reliable (or unreliable) while still leveraging the strength of the existing methods.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Application of Orthogonal Defect Classification for Software Reliability Analysis

The modernization of existing and new nuclear power plants with digital instrumentation and control systems (DI&C) is a recent and highly trending topic. However, there lacks strong consensus on best-estimate reliability methodologies by both the United States (U.S.) Nuclear Regulatory Commission (NRC) and the industry. This has resulted in hesitation for further modernization projects until a more unified methodology is realized. In this work, we develop an approach called Orthogonal-defect Classification for Assessing Software Reliability (ORCAS) to quantify probabilities of various software failure modes in a DI&C system. The method utilizes accepted industry methodologies for software quality assurance that are also verified by experimental or mathematical formulations. In essence, the approach combines a semantic failure classification model with a reliability growth model to predict (and quantify) the potential failure modes of a DI&C software system. The semantic classification model is used to address the question: How do latent defects in software contribute to different software failure root causes? The use of reliability growth models is then used to address the question: Given the connection between latent defects and software failure root causes, how can we quantify the reliability of the software? A case study was conducted on a representative I&C platform (ChibiOS) running a smart sensor acquisition software developed by Virginia Commonwealth University (VCU). The testing and evidence collection guidance in ORCAS was applied, and defects were uncovered in the software. Qualitative evidence, such as condition coverage, was used to gauge the completeness and trustworthiness of the assessment while quantitative evidence was used to determine the software failure probabilities. The reliability of the software was then estimated and compared to existing operational data of the sensor device. It is demonstrated that by using ORCAS, a semantic reasoning framework can be developed to justify software reliability (or unreliability) while still leveraging the strength of the existing methods.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

A Standardized Analysis Process Using Digital Image Correlation to Calculate In Situ Cladding Strain from Modified Burst Tests for Fuel Performance Code Validation

Historical data collection on nuclear fuel cladding materials has focused on generating a statistically significant amount of data to assess the material and its failure behavior. Furthermore, data generated to support material model and failure criteria development were previously posttest evaluations, so a large number of tests was required to gain new understanding. A way to expedite this process is to develop techniques capable of generating large, high-fidelity data sets from a single test with lower uncertainty or quantified uncertainty. One such example of this approach is Oak Ridge National Laboratory’s use of modified burst tests (MBTs) to analyze the mechanical behavior and failure conditions of cladding during a simulated reactivity-initiated accident (RIA). Each test incorporates digital image correlation (DIC) analysis techniques that are used to assess the accumulated strain in situ, as well as eventual cladding failure. This work has been fruitful in defining strain-to-failure conditions for materials like silicon carbide (SiC) fiber–reinforced/SiC matrix composite tubes (SiC/SiC), iron-chromium-aluminum (FeCrAl) alloy tubes, and chromium-coated Zircaloy-4 tubes. However, there are numerous DIC software available, including open-source and proprietary software. The different DIC software use various algorithms to process images and calculate displacement values. Using these different software and algorithms can lead to varying results, and perhaps larger-than-expected uncertainties. In the present study, previously published MBT data encompassing a variety of test conditions were reanalyzed with two different DIC software to assess the variance in the calculated strain results. The data consisted of SiC/SiC, FeCrAl, and chromium-coated Zircaloy-4 tubes. Plots of the calculated strains during the transient revealed good agreement between the two DIC software. The average root-mean-square errors between the two software was 0.20% strain, which is slightly larger than a previously reported error value for these tests. In conclusion, this variance in results is low enough that this analysis method can be used for code validation.

Reactivity-initiated accident↗

Improving reproducibility in synchrotron tomography using implementation-adapted filters

For reconstructing large tomographic datasets fast, filtered backprojection-type or Fourier-based algorithms are still the method of choice, as they have been for decades. These robust and computationally efficient algorithms have been integrated in a broad range of software packages. The continuous mathematical formulas used for image reconstruction in such algorithms are unambiguous. However, variations in discretization and interpolation result in quantitative differences between reconstructed images, and corresponding segmentations, obtained from different software. This hinders reproducibility of experimental results, making it difficult to ensure that results and conclusions from experiments can be reproduced at different facilities or using different software. In this paper, a way to reduce such differences by optimizing the filter used in analytical algorithms is proposed. These filters can be computed using a wrapper routine around a black-box implementation of a reconstruction algorithm, and lead to quantitatively similar reconstructions. Use cases for this approach are demonstrated by computing implementation-adapted filters for several open-source implementations and applying them to simulated phantoms and real-world data acquired at the synchrotron. Our contribution to a reproducible reconstruction step forms a building block towards a fully reproducible synchrotron tomography data processing pipeline.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Evaluating software development by analysis of changes: The data from the software engineering laboratory

An effective data collection methodology for evaluating software development methodologies was applied to four different software development projects. Goals of the data collection included characterizing changes and errors, characterizing projects and programmers, identifying effective error detection and correction techniques, and investigating ripple effects. The data collected consisted of changes (including error corrections) made to the software after code was written and baselined, but before testing began. Data collection and validation were concurrent with software development. Changes reported were verified by interviews with programmers.

Source record↗

Cryo-EM model validation recommendations based on outcomes of the 2019 EMDataResource challenge

This paper describes outcomes of the 2019 Cryo-EM Model Challenge. The goals were to (1) assess the quality of models that can be produced from cryogenic electron microscopy (cryo-EM) maps using current modeling software, (2) evaluate reproducibility of modeling results from different software developers and users and (3) compare performance of current metrics used for model evaluation, particularly Fit-to-Map metrics, with focus on near-atomic resolution. Our findings demonstrate the relatively high accuracy and reproducibility of cryo-EM models derived by 13 participating teams from four benchmark maps, including three forming a resolution series (1.8 to 3.1 Å). The results permit specific recommendations to be made about validating near-atomic cryo-EM structures both in the context of individual experiments and structure data archives such as the Protein Data Bank. We recommend the adoption of multiple scoring parameters to provide full and objective annotation and assessment of the model, reflective of the observed cryo-EM map density.

59 BASIC BIOLOGICAL SCIENCES↗

A Unified Approach to Model-Based Planning and Execution

Writing autonomous software is complex, requiring the coordination of functionally and technologically diverse software modules. System and mission engineers must rely on specialists familiar with the different software modules to translate requirements into application software. Also, each module often encodes the same requirement in different forms. The results are high costs and reduced reliability due to the difficulty of tracking discrepancies in these encodings. In this paper we describe a unified approach to planning and execution that we believe provides a unified representational and computational framework for an autonomous agent. We identify the four main components whose interplay provides the basis for the agent's autonomous behavior: the domain model, the plan database, the plan running module, and the planner modules. This representational and problem solving approach can be applied at all levels of the architecture of a complex agent, such as Remote Agent. In the rest of the paper we briefly describe the Remote Agent architecture. The new agent architecture proposed here aims at achieving the full Remote Agent functionality. We then give the fundamental ideas behind the new agent architecture and point out some implication of the structure of the architecture, mainly in the area of reactivity and interaction between reactive and deliberative decision making. We conclude with related work and current status.

Muscettola, Nicola↗

A Testbed for Evaluating Lunar Habitat Autonomy Architectures

A lunar outpost will involve a habitat with an integrated set of hardware and software that will maintain a safe environment for human activities. There is a desire for a paradigm shift whereby crew will be the primary mission operators, not ground controllers. There will also be significant periods when the outpost is uncrewed. This will require that significant automation software be resident in the habitat to maintain all system functions and respond to faults. JSC is developing a testbed to allow for early testing and evaluation of different autonomy architectures. This will allow evaluation of different software configurations in order to: 1) understand different operational concepts; 2) assess the impact of failures and perturbations on the system; and 3) mitigate software and hardware integration risks. The testbed will provide an environment in which habitat hardware simulations can interact with autonomous control software. Faults can be injected into the simulations and different mission scenarios can be scripted. The testbed allows for logging, replaying and re-initializing mission scenarios. An initial testbed configuration has been developed by combining an existing life support simulation and an existing simulation of the space station power distribution system. Results from this initial configuration will be presented along with suggested requirements and designs for the incremental development of a more sophisticated lunar habitat testbed.

Lawler, Dennis G.↗

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.↗

Logic flowgraph methodology - A tool for modeling embedded systems

The logic flowgraph methodology (LFM), a method for modeling hardware in terms of its process parameters, has been extended to form an analytical tool for the analysis of integrated (hardware/software) embedded systems. In the software part of a given embedded system model, timing and the control flow among different software components are modeled by augmenting LFM with modified Petrinet structures. The objective of the use of such an augmented LFM model is to uncover possible errors and the potential for unanticipated software/hardware interactions. This is done by backtracking through the augmented LFM mode according to established procedures which allow the semiautomated construction of fault trees for any chosen state of the embedded system (top event). These fault trees, in turn, produce the possible combinations of lower-level states (events) that may lead to the top event.

Muthukumar, C. T.↗

UPDATES FROM THE INVOLUTE WORKING GROUP

The HFIR, RHF, and FRM II reactors represent a particular class of Research and Test Reactors that provide some of the most intense and continuous neutron fluxes for science, industry, and medical applications. These high-performance reactors have achieved compact cores by operating with Highly Enriched Uranium fuel (HEU, 235U/U ≥ 20 wt. %) and utilizing fuel plates curved as an involute. Due to the proliferation risks, the international community aims to reduce or eliminate, when possible, the use of HEU fuel in civilian facilities by converting them to a Low-Enriched Uranium fuel (LEU, 235U/U < 20 wt. %). Conversion of these reactors without significantly compromising their performance or safety is a challenging endeavor that can tremendously benefit from advanced computational tools and thus, eliminate unnecessary conservatism to ensure sufficient thermal margins. Therefore, models are being developed using modern Computational Fluid Dynamics (CFD) and Computational Structural Mechanics (CSM) software to evaluate the steady-state safety margins of various LEU designs instead of being reliant on the more traditional, conservative methods. To gain the confidence and acceptance of high-fidelity modeling by the nuclear regulators, Argonne National Laboratory (ANL) and the involute reactors have formed an informal scientific group, the Involute Working Group (IWG). The IWG facilitates inter-organizational collaboration on experimental benchmarking, code-to-code comparisons, and Verification and Validation (V&V). This paper describes some of the recent IWG efforts in validating software against the existing experimental data, as well as code-to-code comparisons of different software used by the IWG members.

Bergeron, Aurelien↗

Software Process Assessment (SPA)

NASA's environment mirrors the changes taking place in the nation at large, i.e. workers are being asked to do more work with fewer resources. For software developers at NASA's Goddard Space Flight Center (GSFC), the effects of this change are that we must continue to produce quality code that is maintainable and reusable, but we must learn to produce it more efficiently and less expensively. To accomplish this goal, the Data Systems Technology Division (DSTD) at GSFC is trying a variety of both proven and state-of-the-art techniques for software development (e.g., object-oriented design, prototyping, designing for reuse, etc.). In order to evaluate the effectiveness of these techniques, the Software Process Assessment (SPA) program was initiated. SPA was begun under the assumption that the effects of different software development processes, techniques, and tools, on the resulting product must be evaluated in an objective manner in order to assess any benefits that may have accrued. SPA involves the collection and analysis of software product and process data. These data include metrics such as effort, code changes, size, complexity, and code readability. This paper describes the SPA data collection and analysis methodology and presents examples of benefits realized thus far by DSTD's software developers and managers.

Rosenberg, Linda H.↗