Search NASA⌕ Search

SEARCH · Search NASA

Results for “software development practice”

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 253 records · Page 14

Further Development, Support and Enhancement of CONDUIT

From the first airplanes steered by handles, wheels, and pedals to today's advanced aircraft, there has been a century of revolutionary inventions, all of them contributing to flight quality. The stability and controllability of aircraft as they appear to a pilot are called flying or handling qualities. Many years after the first airplanes flew, flying qualities were identified and ranked from desirable to unsatisfactory. Later on engineers developed design methods to satisfy these practical criteria. CONDUIT, which stands for Control Designer's Unified Interface, is a modern software package that provides a methodology for optimization of flight control systems in order to improve the flying qualities. CONDUIT is dependent on an the optimization engine called CONSOL-OPTCAD (C-O). C-O performs multicriterion parametric optimization. C-O was successfully tested on a variety of control problems. The optimization-based computational system, C-O, requires a particular control system description as a MATLAB file and possesses the ability to modify the vector of design parameters in an attempt to satisfy performance objectives and constraints specified by the designer, in a C-type file. After the first optimization attempts on the UH-60A control system, an early interface system, named GIFCORCODE (Graphical Interface for CONSOL-OPTCAD for Rotorcraft Controller Design) was created.

Veronica, Moldoveanu↗

All Hands On Deck: Raising the Bar on Whole Building Performance-Based Code Compliance and Above-Code Programs

In 2019 a large-scale national effort was launched with support from U.S. Department of Energy, Pacific Northwest National Laboratory and Northwest Energy Efficiency Alliance (NEEA). The project aimed to develop a long-term vision and a roadmap for achieving a practical application of whole building performance-based code and above code program compliance in commercial buildings. The work was aided by engaging over 70 stakeholders across the country representing jurisdictions, above-code programs such as LEED and ENERGY STAR Multifamily Program, members of the ASHRAE Standard 90.1 and other Standard committees, IBPSA and software developers. The performance path requires whole building energy modeling and is gaining momentum. Many see it as the future of the commercial energy codes and the main pathway for achieving zero energy buildings. The paper describes the findings from a stakeholder survey funded by NEEA on the current state of performance-based path, its market penetration, trends, implementation practices and adoption challenges. It discusses the patterns revealed by experience of the states with decades-long history of performance-based compliance such as Florida and California and opportunities for taking advantage of the synergies between code and above-code programs. In addition, the paper provides an overview of the tools and resources developed as part of the effort including the compliance form for ASHRAE Standard 90.1 Section 11 and Appendix G, modeling submittal review manual, and modeler and reviewer qualification requirements. The tools and resources would help remove market barriers, deliver immediate benefits to jurisdictions and rating authorities, and achieve energy efficiency through whole-building performance path.

TSPR, Performance Based Complinace, Washington Sta↗

The challenges of theory-software translation

Background: Software is now ubiquitous within research. In addition to the general challenges common to all software development projects, research software must also represent, manipulate, and provide data for complex theoretical constructs. Ensuring this process of theory-software translation is robust is essential to maintaining the integrity of the science resulting from it, and yet there has been little formal recognition or exploration of the challenges associated with it. Methods: We thematically analyse the outputs of the discussion sessions at the Theory-Software Translation Workshop 2019, where academic researchers and research software engineers from a variety of domains, and with particular expertise in high performance computing, explored the process of translating between scientific theory and software. Results: We identify a wide range of challenges to implementing scientific theory in research software and using the resulting data and models for the advancement of knowledge. We categorise these within the emergent themes of design, infrastructure, and culture, and map them to associated research questions. Conclusions: Systematically investigating how software is constructed and its outputs used within science has the potential to improve the robustness of research software and accelerate progress in its development. We propose that this issue be examined within a new research area of theory-software translation, which would aim to significantly advance both knowledge and scientific practice.

97 MATHEMATICS AND COMPUTING↗

Should Sea-Ice Modeling Tools Designed for Climate Research Be Used for Short-Term Forecasting?

In theory, the same sea-ice models could be used for both research and operations, but in practice, differences in scientific and software requirements and computational and human resources complicate the matter. Although sea-ice modeling tools developed for climate studies and other research applications produce output of interest to operational forecast users, such as ice motion, convergence, and internal ice pressure, the relevant spatial and temporal scales may not be sufficiently resolved. For instance, sea-ice research codes are typically run with horizontal resolution of more than 3 km, while mariners need information on scales less than 300 m. Certain sea-ice processes and coupled feedbacks that are critical to simulating the Earth system may not be relevant on these scales; and therefore, the most important model upgrades for improving sea-ice predictions might be made in the atmosphere and ocean components of coupled models or in their coupling mechanisms, rather than in the sea-ice model itself. This paper discusses some of the challenges in applying sea-ice modeling tools developed for research purposes for operational forecasting on short time scales, and highlights promising new directions in sea-ice modeling.

54 ENVIRONMENTAL SCIENCES↗

Multi-version software reliability through fault-avoidance and fault-tolerance

A number of experimental and theoretical issues associated with the practical use of multi-version software to provide run-time tolerance to software faults were investigated. A specialized tool was developed and evaluated for measuring testing coverage for a variety of metrics. The tool was used to collect information on the relationships between software faults and coverage provided by the testing process as measured by different metrics (including data flow metrics). Considerable correlation was found between coverage provided by some higher metrics and the elimination of faults in the code. Back-to-back testing was continued as an efficient mechanism for removal of un-correlated faults, and common-cause faults of variable span. Software reliability estimation methods was also continued based on non-random sampling, and the relationship between software reliability and code coverage provided through testing. New fault tolerance models were formulated. Simulation studies of the Acceptance Voting and Multi-stage Voting algorithms were finished and it was found that these two schemes for software fault tolerance are superior in many respects to some commonly used schemes. Particularly encouraging are the safety properties of the Acceptance testing scheme.

Vouk, Mladen A.↗

ICE System: Interruptible control expert system

The Interruptible Control Expert (ICE) System is based on an architecture designed to provide a strong foundation for real-time production rule expert systems. Three principles are adopted to guide the development of ICE. A practical delivery platform must be provided, no specialized hardware can be used to solve deficiencies in the software design. Knowledge of the environment and the rule-base is exploited to improve the performance of a delivered system. The third principle of ICE is to respond to the most critical event, at the expense of the more trivial tasks. Minimal time is spent on classifying the potential importance of environmental events with the majority of the time used for finding the responses. A feature of the system, derived from all three principles, is the lack of working memory. By using a priori information, a fixed amount of memory can be specified for the hardware platform. The absence of working memory removes the dangers of garbage collection during the continuous operation of the controller.

Vezina, James M.↗

AIPS technology survey report

The results of a technology survey conducted for the NASA/JSC by the CSDL during Phase 1 of the NASA Advanced Information Processing System (AIPS) program at the CSDL are discussed. The purpose of the survey was to ensure that all technology relevant to the configuration, design, development, verification, implementation, and validation of an advanced information processing system, whether existing or under development and soon to be available, would be duly considered in the development of the AIPS. The emphasis in the survey was on technology items which were clearly relevant to the AIPS. Requirements were developed which guided the planning of contacts with the outside sources to be surveyed, and established practical limits on the scope and content of the Technology Survey. Subjects surveyed included architecture, software, hardware, methods for evaluation of reliability and performance, and methods for the verification of the AIPS design and the validation of the AIPS implementation. Survey requirements and survey results in each of these areas are presented, including analyses of the potential effects on the AIPS development process of using or not using the surveyed technology items. Another output of the survey was the identification of technology areas of particular relevance to the AIPS and for which further development, in some cases by the CSDL and in some cases by the NASA, would be fruitful. Appendices are provided in which are presented: (1) reports of some of the actual survey interactions with industrial and other outside information sources; (2) the literature list from the comprehensive literature survey which was conducted; (3) reduced-scale images of an excerpt ('Technology Survey' viewgraphs) from the set of viewgraphs used at the 14 April 1983 Preliminary Requirements Review by the CSDL for the NASA; and (4) reduced-scale images of the set of viewgraphs used in the AIPS Technology Survey Review presentation to the NASA monitors by the CSDL at the NASA Langley Research Center on 28 Sep. 1983.

Ogletree, Glenn↗

Multidisciplinary Optimization for Aerospace Using Genetic Optimization

In support of the ARMD guidelines NASA's Dryden Flight Research Center is developing a multidisciplinary design and optimization tool This tool will leverage existing tools and practices, and allow the easy integration and adoption of new state-of-the-art software. Optimization has made its way into many mainstream applications. For example NASTRAN(TradeMark) has its solution sequence 200 for Design Optimization, and MATLAB(TradeMark) has an Optimization Tool box. Other packages, such as ZAERO(TradeMark) aeroelastic panel code and the CFL3D(TradeMark) Navier-Stokes solver have no built in optimizer. The goal of the tool development is to generate a central executive capable of using disparate software packages ina cross platform network environment so as to quickly perform optimization and design tasks in a cohesive streamlined manner. A provided figure (Figure 1) shows a typical set of tools and their relation to the central executive. Optimization can take place within each individual too, or in a loop between the executive and the tool, or both.

Pak, Chan-gi↗

Propel: Tools and Methods for Practical Source Code Model Checking

The work reported here is an overview and snapshot of a project to develop practical model checking tools for in-the-loop verification of NASA s mission-critical, multithreaded programs in Java and C++. Our strategy is to develop and evaluate both a design concept that enables the application of model checking technology to C++ and Java, and a model checking toolset for C++ and Java. The design concept and the associated model checking toolset is called Propel. It builds upon the Java PathFinder (JPF) tool, an explicit state model checker for Java applications developed by the Automated Software Engineering group at NASA Ames Research Center. The design concept that we are developing is Design for Verification (D4V). This is an adaption of existing best design practices that has the desired side-effect of enhancing verifiability by improving modularity and decreasing accidental complexity. D4V, we believe, enhances the applicability of a variety of V&V approaches; we are developing the concept in the context of model checking. The model checking toolset, Propel, is based on extending JPF to handle C++. Our principal tasks in developing the toolset are to build a translator from C++ to Java, productize JPF, and evaluate the toolset in the context of D4V. Through all these tasks we are testing Propel capabilities on customer applications.

Mansouri-Samani, Massoud↗

SAGA: A project to automate the management of software production systems

Research into software development is required to reduce its production cost and to improve its quality. Modern software systems, such as the embedded software required for NASA's space station initiative, stretch current software engineering techniques. The requirements to build large, reliable, and maintainable software systems increases with time. Much theoretical and practical research is in progress to improve software engineering techniques. One such technique is to build a software system or environment which directly supports the software engineering process, i.e., the SAGA project, comprising the research necessary to design and build a software development which automates the software engineering process. Progress under SAGA is described.

Campbell, Roy H.↗

Fast and Adaptive Lossless On-Board Hyperspectral Data Compression System for Space Applications

Efficient on-board lossless hyperspectral data compression reduces the data volume necessary to meet NASA and DoD limited downlink capabilities. The techniques also improves signature extraction, object recognition and feature classification capabilities by providing exact reconstructed data on constrained downlink resources. At JPL a novel, adaptive and predictive technique for lossless compression of hyperspectral data was recently developed. This technique uses an adaptive filtering method and achieves a combination of low complexity and compression effectiveness that far exceeds state-of-the-art techniques currently in use. The JPL-developed 'Fast Lossless' algorithm requires no training data or other specific information about the nature of the spectral bands for a fixed instrument dynamic range. It is of low computational complexity and thus well-suited for implementation in hardware, which makes it practical for flight implementations of pushbroom instruments. A prototype of the compressor (and decompressor) of the algorithm is available in software, but this implementation may not meet speed and real-time requirements of some space applications. Hardware acceleration provides performance improvements of 10x-100x vs. the software implementation (about 1M samples/sec on a Pentium IV machine). This paper describes a hardware implementation of the JPL-developed 'Fast Lossless' compression algorithm on a Field Programmable Gate Array (FPGA). The FPGA implementation targets the current state of the art FPGAs (Xilinx Virtex IV and V families) and compresses one sample every clock cycle to provide a fast and practical real-time solution for Space applications.

image compression↗

Long-Range Fit: A Software Package for the Representation and Study of Long-Range Molecular Interactions

Describing intermolecular forces is fundamental to modeling and predicting the behavior of molecular systems. In particular, long-range molecular interactions─with electrostatic, induction, and dispersion as the main components─play a critical role, especially for low-temperature and low-density regimes. Long-range interactions are often described through perturbation theory, representing the electronic charge distribution via a multipolar series of the moments and polarizability tensors corresponding to each molecule. However, while the theory is well established, obtaining the resulting analytical expressions (and their practical implementation) constitutes a highly complex and system-dependent task. To address this challenge, we developed long-range-fit (LRF), an interactive and user-friendly software package designed to automate the generation and fitting of long-range interaction terms for arbitrary molecules in nondegenerate (ground or excited) electronic states. We have derived and implemented all terms up to 15th order, without approximations, via a spherical tensor representation, with symmetry adaptation to all molecular point-group symmetries. The resulting potential energy surface is compatible with most representations of the close interaction region.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Architecture for Survivable System Processing (ASSP)

The Architecture for Survivable System Processing (ASSP) Program is a multi-phase effort to implement Department of Defense (DOD) and commercially developed high-tech hardware, software, and architectures for reliable space avionics and ground based systems. System configuration options provide processing capabilities to address Time Dependent Processing (TDP), Object Dependent Processing (ODP), and Mission Dependent Processing (MDP) requirements through Open System Architecture (OSA) alternatives that allow for the enhancement, incorporation, and capitalization of a broad range of development assets. High technology developments in hardware, software, and networking models, address technology challenges of long processor life times, fault tolerance, reliability, throughput, memories, radiation hardening, size, weight, power (SWAP) and security. Hardware and software design, development, and implementation focus on the interconnectivity/interoperability of an open system architecture and is being developed to apply new technology into practical OSA components. To insure for widely acceptable architecture capable of interfacing with various commercial and military components, this program provides for regular interactions with standardization working groups (e.g.) the International Standards Organization (ISO), American National Standards Institute (ANSI), Society of Automotive Engineers (SAE), and Institute of Electrical and Electronic Engineers (IEEE). Selection of a viable open architecture is based on the widely accepted standards that implement the ISO/OSI Reference Model.

Wood, Richard J.↗

A research program in empirical computer science

During the grant reporting period our primary activities have been to begin preparation for the establishment of a research program in experimental computer science. The focus of research in this program will be safety-critical systems. Many questions that arise in the effort to improve software dependability can only be addressed empirically. For example, there is no way to predict the performance of the various proposed approaches to building fault-tolerant software. Performance models, though valuable, are parameterized and cannot be used to make quantitative predictions without experimental determination of underlying distributions. In the past, experimentation has been able to shed some light on the practical benefits and limitations of software fault tolerance. It is common, also, for experimentation to reveal new questions or new aspects of problems that were previously unknown. A good example is the Consistent Comparison Problem that was revealed by experimentation and subsequently studied in depth. The result was a clear understanding of a previously unknown problem with software fault tolerance. The purpose of a research program in empirical computer science is to perform controlled experiments in the area of real-time, embedded control systems. The goal of the various experiments will be to determine better approaches to the construction of the software for computing systems that have to be relied upon. As such it will validate research concepts from other sources, provide new research results, and facilitate the transition of research results from concepts to practical procedures that can be applied with low risk to NASA flight projects. The target of experimentation will be the production software development activities undertaken by any organization prepared to contribute to the research program. Experimental goals, procedures, data analysis and result reporting will be performed for the most part by the University of Virginia.

Knight, J. C.↗

Advanced Manufacturing of Superconducting Magnets

The development of specialized materials, processes, and robotics technology allows for the rapid prototype and manufacture of superconducting and normal magnets which can be used for magnetic suspension applications. Presented are highlights of the Direct Conductor Placement System (DCPS) which enables automatic design and assembly of 3-dimensional coils and conductor patterns using LTS and HTS conductors. The system enables engineers to place conductors in complex patterns with greater efficiency and accuracy, and without the need for hard tooling. It may also allow researchers to create new types of coils and patterns which were never practical before the development of DCPS. The DCPS includes a custom designed eight-axis robot, patented end effector, CoilCAD(trademark) design software, RoboWire(trademark) control software, and automatic inspection.

Senti, Mark W.↗

Software Quality Assurance Audits Guidebooks

The growth in cost and importance of software to NASA has caused NASA to address the improvement of software development across the agency. One of the products of this program is a series of guidebooks that define a NASA concept of the assurance processes that are used in software development. The Software Assurance Guidebook, NASA-GB-A201, issued in September, 1989, provides an overall picture of the NASA concepts and practices in software assurance. Second level guidebooks focus on specific activities that fall within the software assurance discipline, and provide more detailed information for the manager and/or practitioner. This is the second level Software Quality Assurance Audits Guidebook that describes software quality assurance audits in a way that is compatible with practices at NASA Centers.

Source record↗

Space ROS - ACO: Space Robot Operating System

Space ROS is a matured version of ROS 2 using flight software engineering practices to facilitate mission- and safety-critical applications. Our goal is to reduce the barrier to maturation and infusion of software developed using the popular ROS framework.

Austin Breien Probe↗

SEL's Software Process-Improvement Program

The goals and operations of the Software Engineering Laboratory (SEL) is reviewed. For nearly 20 years the SEL has worked to understand, assess, and improve software and the development process within the production environment of the Flight Dynamics Division (FDD) of NASA's Goddard Space Flight Center. The SEL was established in 1976 with the goals of reducing: (1) the defect rate of delivered software, (2) the cost of software to support flight projects, and (3) the average time to produce mission-support software. After studying over 125 projects of FDD, the results have guided the standards, management practices, technologies, and the training within the division. The results of the studies have been a 75 percent reduction in defects, a 50 percent reduction in cost, and a 25 percent reduction in development time. Over time the goals of SEL have been clarified. The goals are now stated as: (1) Understand baseline processes and product characteristics, (2) Assess improvements that have been incorporated into the development projects, (3) Package and infuse improvements into the standard SEL process. The SEL improvement goal is to demonstrate continual improvement of the software process by carrying out analysis, measurement and feedback to projects with in the FDD environment. The SEL supports the understanding of the process by study of several processes including, the effort distribution, and error detection rates. The SEL assesses and refines the processes. Once the assessment and refinement of a process is completed, the SEL packages the process by capturing the process in standards, tools and training.

Basili, Victor↗