Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “software testing”

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 1,225 records · Page 68

Extreme Programming: Maestro Style

"Extreme Programming: Maestro Style" is the name of a computer programming methodology that has evolved as a custom version of a methodology, called extreme programming that has been practiced in the software industry since the late 1990s. The name of this version reflects its origin in the work of the Maestro team at NASA's Jet Propulsion Laboratory that develops software for Mars exploration missions. Extreme programming is oriented toward agile development of software resting on values of simplicity, communication, testing, and aggressiveness. Extreme programming involves use of methods of rapidly building and disseminating institutional knowledge among members of a computer-programming team to give all the members a shared view that matches the view of the customers for whom the software system is to be developed. Extreme programming includes frequent planning by programmers in collaboration with customers, continually examining and rewriting code in striving for the simplest workable software designs, a system metaphor (basically, an abstraction of the system that provides easy-to-remember software-naming conventions and insight into the architecture of the system), programmers working in pairs, adherence to a set of coding standards, collaboration of customers and programmers, frequent verbal communication, frequent releases of software in small increments of development, repeated testing of the developmental software by both programmers and customers, and continuous interaction between the team and the customers. The environment in which the Maestro team works requires the team to quickly adapt to changing needs of its customers. In addition, the team cannot afford to accept unnecessary development risk. Extreme programming enables the Maestro team to remain agile and provide high-quality software and service to its customers. However, several factors in the Maestro environment have made it necessary to modify some of the conventional extreme-programming practices. The single most influential of these factors is that continuous interaction between customers and programmers is not feasible.

Norris, Jeffrey↗

Test Telemetry And Command System (TTACS)

The Jet Propulsion Laboratory has developed a multimission Test Telemetry and Command System (TTACS) which provides a multimission telemetry and command data system in a spacecraft test environment. TTACS reuses, in the spacecraft test environment, components of the same data system used for flight operations; no new software is developed for the spacecraft test environment. Additionally, the TTACS is transportable to any spacecraft test site, including the launch site. The TTACS is currently operational in the Galileo spacecraft testbed; it is also being provided to support the Cassini and Mars Surveyor Program projects. Minimal personnel data system training is required in the transition from pre-launch spacecraft test to post-launch flight operations since test personnel are already familiar with the data system's operation. Additionally, data system components, e.g. data display, can be reused to support spacecraft software development; and the same data system components will again be reused during the spacecraft integration and system test phases. TTACS usage also results in early availability of spacecraft data to data system development and, as a result, early data system development feedback to spacecraft system developers. The TTACS consists of a multimission spacecraft support equipment interface and components of the multimission telemetry and command software adapted for a specific project. The TTACS interfaces to the spacecraft, e.g., Command Data System (CDS), support equipment. The TTACS telemetry interface to the CDS support equipment performs serial (RS-422)-to-ethernet conversion at rates between 1 bps and 1 mbps, telemetry data blocking and header generation, guaranteed data transmission to the telemetry data system, and graphical downlink routing summary and control. The TTACS command interface to the CDS support equipment is nominally a command file transferred in non-real-time via ethernet. The CDS support equipment is responsible for metering the commands to the CDS; additionally for Galileo, TTACS includes a real-time-interface to the CDS support equipment. The TTACS provides the basic functionality of the multimission telemetry and command data system used during flight operations. TTACS telemetry capabilities include frame synchronization, Reed-Solomon decoding, packet extraction and channelization, and data storage/query. Multimission data display capabilities are also available. TTACS command capabilities include command generation verification, and storage.

Fogel, Alvin J.↗

Hybridized Agile Software Development of Flight Control Team Tools for International Space Station's Payload Operations Integration Center

Ground systems operations at the National Aeronautics and Space Administration's (NASA) Payload Operations and Integration Function (POIF) is increasing, via the High Operations Tempo (HOT) initiative, its ability to support more science activities with a fourth crew member on the International Space Station (ISS). The Flight Control Team's need to support this increased crew presence mandated the need for a series of software tools to better handle the increasing pace of payload science operations. The overall need was clear from the outset, but the full scope and user experience for each tool, were not as well understood, so establishing a fixed set of initial requirements was not feasible. An Agile Software Development (ASD) paradigm takes advantage of uncertainty, and plans for it, so it was deemed the most appropriate approach to create room for exploring novel concepts, and to mount a rapid and flexible response to inevitiably changing requirements. It facilitated the need for unprecedented collaboration between the Product Team (i.e. users from the Flight Control Team) and the Development Team (i.e. POIC systems engineers, developers, testers). This is a process shift in the development, test, and release of software from one that is prescriptive to one that is adaptive, which is necessary for these tools to have longevity. The application of ASD to the product development lifecycle permitted the timely incorporation of customer feedback, and, allowed for continuous quality improvements. This resulted in a suite of tools that are efficient, user-friendly, and enable POIF ground systems to support the increasing pace of payload science operations. ASD is not as much a set of prescriptive processes as it is a shift in mindset; one that moves from planning against change, to planning for change, thereby iteratively growing software towards user-defined value.

Albers, Cerese M.↗

Construction and Testing of Data Acquisition Components for the Hall A Compton Polarimeter

Nuclear physics experiments require accurate knowledge of the spin polarization of the electron beam delivered to the experimental halls. Hall A is upgrading its Compton polarimeter in support of the lab's 12 GeV beam energy upgrade. This project centered around the data acquisition (DAQ) system for the scattered-photon detection component of the polarimeter. The goal was to test whether the DAQ software and hardware are capable of capturing, recording, and processing electron helicity-dependent scattering rate asymmetry data at high rates, while maintaining appropriate accuracy. We created the necessary circuits, and are able to reliably extract asymmetries of between 0.5{\%} and 11.5{\%} to 0.2{\%}. We did this in a deadtime-free regime at rates between 100 KHz and 350 KHz. We currently are unable to measure the system deadtime after it becomes manifest at about 350 KHz. These tests support the use of a scaled version of this configuration.

Hill, Joshua↗

NASA follow-on on the Fiji South Pacific Severe Storm Warning System Project (SPSSD/WS)

The follow-on agreement will implement needed systems enhancements of the satellite ground station installed under the previous SPSSD/WS project. These enhancements include the purchase and installation of an Uninterruptible Power Supply (UPS) and lightning protection unit, hardware modifications to provide system redundancy and increased data storage capacity, software modifications for the new Japanese GMS digital data, upgrades of the image processing software, and both hardware maintenance and tropical cyclone analysis training, and a non-renewable grant to provide emergency field repairs and replacement/spare parts. In March 1988, the UPS and lightning protection unit was installed at the Fiji Meteorological Service by NASA personnel. A tape recorder and demodulator was shipped to Fiji to record the new digital GMS data. Data tapes are not yet available from the Japanese Meteorological Service of the new digital format. This data is required to test the GMS digital software being developed for the Fiji SPSSD/WS facility.

Vermillion, C.↗

ArcjetCV: a new machine learning application for extracting time-resolved recession measurements from arc jet test videos

Arc jet Computer Vision (ArcjetCV) is a software application built to automate analysis of arc jet ground test video footage. This includes tracking material recession, sting arm motion, and the shock-material standoff distance. This provides a new capability to resolve and validate new physics associated with non-linear processes. This is an essential step to reduce testing, modeling, and validation uncertainties for heatshield material performance. ArcjetCV uses several types of machine learning (convolutional neural net: CNN, decision tree: DT, k-means unsupervised clustering: KM) to automate the video processing pipeline. These include inferring the start/stop of time segments of interest (1D CNN), measuring the time-dependent 2D recession of the material samples (2D CNN, DT), measuring the time-dependent shock standoff distance (2D CNN, DT), and post-processing cleaning of the recession data (KM). The software also provides a graphical user interface for ease of use. The results of using this tool on arc jet videos show non-linear time-dependent effects can be important for certain materials.

machine learning↗

ArcjetCV: A New Machine Learning Application for Extracting Time-Resolved Recession Measurements From Arc Jet Test Videos

Arc jet Computer Vision (ArcjetCV) is a software application built to automate analysis of arc jet ground test video footage. This includes tracking material recession, sting arm motion, and the shock-material standoff distance. This provides a new capability to resolve and validate new physics associated with non-linear processes. This is an essential step to reduce testing, modeling, and validation uncertainties for heatshield material performance. ArcjetCV uses several types of machine learning (convolutional neural net: CNN, decision tree: DT, k-means unsupervised clustering: KM) to automate the video processing pipeline. These include inferring the start/stop of time segments of interest (1D CNN), measuring the time-dependent 2D recession of the material samples (2D CNN, DT), measuring the time-dependent shock standoff distance (2D CNN, DT), and post-processing cleaning of the recession data (KM). The software also provides a graphical user interface for ease of use. The results of using this tool on arc jet videos show non-linear time-dependent effects can be important for certain materials.

machine learning↗

ArcjetCV: A New Machine Learning Application for Extracting Time-Resolved Recession Measurements From Arc Jet Test Videos

Arc jet Computer Vision (ArcjetCV) is a software application built to automate analysis of arc jet ground test video footage. This includes tracking material recession and the shock-material standoff distance. This provides a new capability to resolve and validate new physics associated with non-linear processes. This is an essential step to reduce testing, modeling, and validation uncertainties for heatshield material performance. ArcjetCV uses several types of machine learning (convolutional neural net: CNN, decision tree: DT, k-means unsupervised clustering: KM) to automate the video processing pipeline. These include inferring the start/stop of time segments of interest (1D CNN), measuring the time-dependent 2D recession of the material samples (2D CNN, DT), measuring the time-dependent shock standoff distance (2D CNN, DT), and post-processing cleaning of the recession data (KM). The software also provides a graphical user interface for ease of use. The results of using this tool on arc jet videos show non-linear time-dependent effects can be important for certain materials and characterizing certain failure modes.

machine learning↗

arcjetCV: A New Machine Learning Application for Extracting Time-Resolved Recession Measurements From Arc Jet Test Videos

Arc jet Computer Vision (ArcjetCV) is a software application built to automate analysis of arc jet ground test video footage. This includes tracking material recession and the shock-material standoff distance. This provides a new capability to resolve and validate new physics associated with non-linear processes. This is an essential step to reduce testing, modeling, and validation uncertainties for heatshield material performance. ArcjetCV uses several types of machine learning (convolutional neural net: CNN, decision tree: DT, k-means unsupervised clustering: KM) to automate the video processing pipeline. These include inferring the start/stop of time segments of interest (1D CNN), measuring the time-dependent 2D recession of the material samples (2D CNN, DT), measuring the time-dependent shock standoff distance (2D CNN, DT), and post-processing cleaning of the recession data (KM). The software also provides a graphical user interface for ease of use. The results of using this tool on arc jet videos show non-linear time-dependent effects can be important for certain materials and characterizing certain failure modes.

machine learning↗

Investigation into Cloud Computing for More Robust Automated Bulk Image Geoprocessing

Geospatial resource assessments frequently require timely geospatial data processing that involves large multivariate remote sensing data sets. In particular, for disasters, response requires rapid access to large data volumes, substantial storage space and high performance processing capability. The processing and distribution of this data into usable information products requires a processing pipeline that can efficiently manage the required storage, computing utilities, and data handling requirements. In recent years, with the availability of cloud computing technology, cloud processing platforms have made available a powerful new computing infrastructure resource that can meet this need. To assess the utility of this resource, this project investigates cloud computing platforms for bulk, automated geoprocessing capabilities with respect to data handling and application development requirements. This presentation is of work being conducted by Applied Sciences Program Office at NASA-Stennis Space Center. A prototypical set of image manipulation and transformation processes that incorporate sample Unmanned Airborne System data were developed to create value-added products and tested for implementation on the "cloud". This project outlines the steps involved in creating and testing of open source software developed process code on a local prototype platform, and then transitioning this code with associated environment requirements into an analogous, but memory and processor enhanced cloud platform. A data processing cloud was used to store both standard digital camera panchromatic and multi-band image data, which were subsequently subjected to standard image processing functions such as NDVI (Normalized Difference Vegetation Index), NDMI (Normalized Difference Moisture Index), band stacking, reprojection, and other similar type data processes. Cloud infrastructure service providers were evaluated by taking these locally tested processing functions, and then applying them to a given cloud-enabled infrastructure to assesses and compare environment setup options and enabled technologies. This project reviews findings that were observed when cloud platforms were evaluated for bulk geoprocessing capabilities based on data handling and application development requirements.

Brown, Richard B.↗

Parallelization of Rocket Engine System Software (Press)

The main goal is to assess parallelization requirements for the Rocket Engine Numeric Simulator (RENS) project which, aside from gathering information on liquid-propelled rocket engines and setting forth requirements, involve a large FORTRAN based package at NASA Lewis Research Center and TDK software developed by SUBR/UWF. The ultimate aim is to develop, test, integrate, and suitably deploy a family of software packages on various aspects and facets of rocket engines using liquid-propellants. At present, all project efforts by the funding agency, NASA Lewis Research Center, and the HBCU participants are disseminated over the internet using world wide web home pages. Considering obviously expensive methods of actual field trails, the benefits of software simulators are potentially enormous. When realized, these benefits will be analogous to those provided by numerous CAD/CAM packages and flight-training simulators. According to the overall task assignments, Hampton University's role is to collect all available software, place them in a common format, assess and evaluate, define interfaces, and provide integration. Most importantly, the HU's mission is to see to it that the real-time performance is assured. This involves source code translations, porting, and distribution. The porting will be done in two phases: First, place all software on Cray XMP platform using FORTRAN. After testing and evaluation on the Cray X-MP, the code will be translated to C + + and ported to the parallel nCUBE platform. At present, we are evaluating another option of distributed processing over local area networks using Sun NFS, Ethernet, TCP/IP. Considering the heterogeneous nature of the present software (e.g., first started as an expert system using LISP machines) which now involve FORTRAN code, the effort is expected to be quite challenging.

Cezzar, Ruknet↗

Software Architecture and Hardware Organization in Mu2e Solenoid Field Mapping System

Herein, the Mu2e field mapping system is designed to produce high accuracy field maps of the detector solenoid used in the experiment. The data acquisition system is mobile and uses a self-propelled mapper with rotating arms equipped with 3D Hall probes. The measurements require not only accurate magnetic field readouts, but also accurate locations of all Hall probes while measuring data. The latter is accomplished by using the laser tracker to measure positions of several retroreflectors on the field mapper during data acquisition. The measurement process requires scanning the whole space inside the large solenoid and takes many hours to complete, which necessitates its full automation. The automation software includes control of the mapper, readout of Hall and NMR probes and control of a laser tracker, including prediction of retroreflector positions and execution of quality control checks. The software architecture and data acquisition hardware of the field mapping system are described, with special attention given to control of the laser tracker and its integration with the rest of the system.

3d hall probes↗

GPM Timeline Inhibits For IT Processing

The Safety Inhibit Timeline Tool was created as one approach to capturing and understanding inhibits and controls from IT through launch. Global Precipitation Measurement (GPM) Mission, which launched from Japan in March 2014, was a joint mission under a partnership between the National Aeronautics and Space Administration (NASA) and the Japan Aerospace Exploration Agency (JAXA). GPM was one of the first NASA Goddard in-house programs that extensively used software controls. Using this tool during the GPM buildup allowed a thorough review of inhibit and safety critical software design for hazardous subsystems such as the high gain antenna boom, solar array, and instrument deployments, transmitter turn-on, propulsion system release, and instrument radar turn-on. The GPM safety team developed a methodology to document software safety as part of the standard hazard report. As a result of this process, a new tool safety inhibit timeline was created for management of inhibits and their controls during spacecraft buildup and testing during IT at GSFC and at the launch range in Japan. The Safety Inhibit Timeline Tool was a pathfinder approach for reviewing software that controls the electrical inhibits. The Safety Inhibit Timeline Tool strengthens the Safety Analysts understanding of the removal of inhibits during the IT process with safety critical software. With this tool, the Safety Analyst can confirm proper safe configuration of a spacecraft during each IT test, track inhibit and software configuration changes, and assess software criticality. In addition to understanding inhibits and controls during IT, the tool allows the Safety Analyst to better communicate to engineers and management the changes in inhibit states with each phase of hardware and software testing and the impact of safety risks. Lessons learned from participating in the GPM campaign at NASA and JAXA will be discussed during this session.

Inhibits↗

Development of a Low-Cost Sub-Scale Aircraft for Flight Research: The FASER Project

An inexpensive unmanned sub-scale aircraft was developed to conduct frequent flight test experiments for research and demonstration of advanced dynamic modeling and control design concepts. This paper describes the aircraft, flight systems, flight operations, and data compatibility including details of some practical problems encountered and the solutions found. The aircraft, named Free-flying Aircraft for Sub-scale Experimental Research, or FASER, was outfitted with high-quality instrumentation to measure aircraft inputs and states, as well as vehicle health parameters. Flight data are stored onboard, but can also be telemetered to a ground station in real time for analysis. Commercial-off-the-shelf hardware and software were used as often as possible. The flight computer is based on the PC104 platform, and runs xPC-Target software. Extensive wind tunnel testing was conducted with the same aircraft used for flight testing, and a six degree-of-freedom simulation with nonlinear aerodynamics was developed to support flight tests. Flight tests to date have been conducted to mature the flight operations, validate the instrumentation, and check the flight data for kinematic consistency. Data compatibility analysis showed that the flight data are accurate and consistent after corrections are made for estimated systematic instrumentation errors.

Owens, Donald B.↗

Automating Trend Analysis for Spacecraft Constellations

Spacecraft trend analysis is a vital mission operations function performed by satellite controllers and engineers, who perform detailed analyses of engineering telemetry data to diagnose subsystem faults and to detect trends that may potentially lead to degraded subsystem performance or failure in the future. It is this latter function that is of greatest importance, for careful trending can often predict or detect events that may lead to a spacecraft's entry into safe-hold. Early prediction and detection of such events could result in the avoidance of, or rapid return to service from, spacecraft safing, which not only results in reduced recovery costs but also in a higher overall level of service for the satellite system. Contemporary spacecraft trending activities are manually intensive and are primarily performed diagnostically after a fault occurs, rather than proactively to predict its occurrence. They also tend to rely on information systems and software that are oudated when compared to current technologies. When coupled with the fact that flight operations teams often have limited resources, proactive trending opportunities are limited, and detailed trend analysis is often reserved for critical responses to safe holds or other on-orbit events such as maneuvers. While the contemporary trend analysis approach has sufficed for current single-spacecraft operations, it will be unfeasible for NASA's planned and proposed space science constellations. Missions such as the Dynamics, Reconnection and Configuration Observatory (DRACO), for example, are planning to launch as many as 100 'nanospacecraft' to form a homogenous constellation. A simple extrapolation of resources and manpower based on single-spacecraft operations suggests that trending for such a large spacecraft fleet will be unmanageable, unwieldy, and cost-prohibitive. It is therefore imperative that an approach to automating the spacecraft trend analysis function be studied, developed, and applied to missions such as DRACO with the intent that mission operations costs be significantly reduced. The goal of the Constellation Spacecraft Trend Analysis Toolkit (CSTAT) project is to serve as the pathfinder for a fully automated trending system to support spacecraft constellations. The development approach to be taken is evolutionary. In the first year of the project, the intent is to significantly advance the state of the art in current trending systems through improved functionality and increased automation. In the second year, the intent is to add an expert system shell, likely through the adaptation of an existing commercial-off-the-shelf (COTS) or government-off-the-shelf (GOTS) tool to implement some level of the trending intelligence that humans currently provide in manual operations. In the third year, the intent is to infuse the resulting technology into a near-term constellation or formation-flying mission to test it and gain experience in automated trending. The lessons learned from the real missions operations experience will then be used to improve the system, and to ultimately incorporate it into a fully autonomous, closed-loop mission operations system that is truly capable of supporting large constellations. In this paper, the process of automating trend analysis for spacecraft constellations will be addressed. First, the results of a survey on automation in spacecraft mission operations in general, and in trending systems in particular will be presented to provide an overview of the current state of the art. Next, a rule-based model for implementing intelligent spacecraft subsystem trending will be then presented, followed by a survey of existing COTS/GOTS tools that could be adapted for implementing such a model. The baseline design and architecture of the CSTAT system will be presented. Finally, some results obtained from initial software tests and demonstrations will be presented.

Davis, George↗

Supporting Real-Time Operations and Execution through Timeline and Scheduling Aids

Since 2003, the NASA Ames Research Center has been actively involved in researching and advancing the state-of-the-art of planning and scheduling tools for NASA mission operations. Our planning toolkit SPIFe (Scheduling and Planning Interface for Exploration) has supported a variety of missions and field tests, scheduling activities for Mars rovers as well as crew on-board International Space Station and NASA earth analogs. The scheduled plan is the integration of all the activities for the day/s. In turn, the agents (rovers, landers, spaceships, crew) execute from this schedule while the mission support team members (e.g., flight controllers) follow the schedule during execution. Over the last couple of years, our team has begun to research and validate methods that will better support users during realtime operations and execution of scheduled activities. Our team utilizes human-computer interaction principles to research user needs, identify workflow processes, prototype software aids, and user test these. This paper discusses three specific prototypes developed and user tested to support real-time operations: Score Mobile, Playbook, and Mobile Assistant for Task Execution (MATE).

scheduling↗

Testing, Requirements, and Metrics

The criticality of correct, complete, testable requirements is a fundamental tenet of software engineering. Also critical is complete requirements based testing of the final product. Modern tools for managing requirements allow new metrics to be used in support of both of these critical processes. Using these tools, potential problems with the quality of the requirements and the test plan can be identified early in the life cycle. Some of these quality factors include: ambiguous or incomplete requirements, poorly designed requirements databases, excessive or insufficient test cases, and incomplete linkage of tests to requirements. This paper discusses how metrics can be used to evaluate the quality of the requirements and test to avoid problems later. Requirements management and requirements based testing have always been critical in the implementation of high quality software systems. Recently, automated tools have become available to support requirements management. At NASA's Goddard Space Flight Center (GSFC), automated requirements management tools are being used on several large projects. The use of these tools opens the door to innovative uses of metrics in characterizing test plan quality and assessing overall testing risks. In support of these projects, the Software Assurance Technology Center (SATC) is working to develop and apply a metrics program that utilizes the information now available through the application of requirements management tools. Metrics based on this information provides real-time insight into the testing of requirements and these metrics assist the Project Quality Office in its testing oversight role. This paper discusses three facets of the SATC's efforts to evaluate the quality of the requirements and test plan early in the life cycle, thus preventing costly errors and time delays later.

Rosenberg, Linda↗

Tool Support for Parametric Analysis of Large Software Simulation Systems

The analysis of large and complex parameterized software systems, e.g., systems simulation in aerospace, is very complicated and time-consuming due to the large parameter space, and the complex, highly coupled nonlinear nature of the different system components. Thus, such systems are generally validated only in regions local to anticipated operating points rather than through characterization of the entire feasible operational envelope of the system. We have addressed the factors deterring such an analysis with a tool to support envelope assessment: we utilize a combination of advanced Monte Carlo generation with n-factor combinatorial parameter variations to limit the number of cases, but still explore important interactions in the parameter space in a systematic fashion. Additional test-cases, automatically generated from models (e.g., UML, Simulink, Stateflow) improve the coverage. The distributed test runs of the software system produce vast amounts of data, making manual analysis impossible. Our tool automatically analyzes the generated data through a combination of unsupervised Bayesian clustering techniques (AutoBayes) and supervised learning of critical parameter ranges using the treatment learner TAR3. The tool has been developed around the Trick simulation environment, which is widely used within NASA. We will present this tool with a GN&C (Guidance, Navigation and Control) simulation of a small satellite system.

Schumann, Johann↗