Search NASA⌕ Search

SEARCH · Search NASA

Results for “Software Design”

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 649 records · Page 36

Development of the Galileo Attitude and Articulation Control Subsystem flight software

The ongoing design and implementation of the Project Galileo Attitude and Articulation Control Subsystem (AACS) flight software is outlined, as well as the more important problems that were experienced in the development of this software. The important characteristics of the Galileo spacecraft are described, as are the major requirements driving the software design. The important features of the design are stated and discussed, and a modes and tasks transition diagram is presented. The AACS software implementation is covered, and the algorithms active in each task are shown. Finally, some of the design and management techniques used in the course of the software development are discussed.

Krasner, S. M.↗

Control design and simulation of systems modeled using ADAMS

A technique for control design and simulation using the ADAMS software and a control design software package is presented. For design of control systems ADAMS generates a minimum realization linear time invariant (LTI), state space representation of multi-body models. This LTI representation can be produced in formats for input to several commercial control design packages. The user can exercise various design strategies in the control design software to arrive at a suitable compensator. The resulting closed loop model can then be simulated using ADAMS. This procedure is illustrated with two examples.

Sohoni, Vikram N.↗

Program Helps Design Tests Of Developmental Software

Computer program called "A Formal Test Representation Language and Tool for Functional Test Designs" (TRL) provides automatic software tool and formal language used to implement category-partition method and produce specification of test cases in testing phase of development of software. Category-partition method useful in defining input, outputs, and purpose of test-design phase of development and combines benefits of choosing normal cases having error-exposing properties. Traceability maintained quite easily by creating test design for each objective in test plan. Effort to transform test cases into procedures simplified by use of automatic software tool to create cases based on test design. Method enables rapid elimination of undesired test cases from consideration and facilitates review of test designs by peer groups. Written in C language.

Hops, Jonathan↗

NASA software specification and evaluation system design, part 2

A survey and analysis of the existing methods, tools and techniques employed in the development of software are presented along with recommendations for the construction of reliable software. Functional designs for software specification language, and the data base verifier are presented.

Source record↗

Pvarray: A software tool for photovoltaic array design

The application of PVARRAY, a software program for design of photovoltaic arrays are described. Results of sample parametric studies on array configurations are presented. It is concluded that PVARRAY could simulate a variety of configurations.

Burger, D. R.↗

As-built design specification for P1A software system modified display subsystem

This document contains the design of the proportional estimate processor which was written to satisfy the software requirement of Part A of the P1A experiment. The purposes of the project are: (1) to select the dots to be labelled; (2) to create tables of green numbers and brightness values for all selected dots per acquisition; (3) to create scatter plots of green numbers vs brightness for each acquisition for all selected dots. If labels have been provided then scatter plots of only categories of interest can be optionally produced; and (4) to produce trajectory plots of green number vs brightness at differing acquisition times for each dot. These plots need to be in the same order as the list of selected dots. When labels are provided only plots of dots of categories of interest are to be produced.

Horton, C. L.↗

Framework Programmable Platform for the Advanced Software Development Workstation: Preliminary system design document

The Framework Programmable Software Development Platform (FPP) is a project aimed at combining effective tool and data integration mechanisms with a model of the software development process in an intelligent integrated software environment. Guided by the model, this system development framework will take advantage of an integrated operating environment to automate effectively the management of the software development process so that costly mistakes during the development phase can be eliminated. The focus here is on the design of components that make up the FPP. These components serve as supporting systems for the Integration Mechanism and the Framework Processor and provide the 'glue' that ties the FPP together. Also discussed are the components that allow the platform to operate in a distributed, heterogeneous environment and to manage the development and evolution of software system artifacts.

Mayer, Richard J.↗

Second International Workshop on Software Engineering and Code Design in Parallel Meteorological and Oceanographic Applications

This report contains the abstracts and technical papers from the Second International Workshop on Software Engineering and Code Design in Parallel Meteorological and Oceanographic Applications, held June 15-18, 1998, in Scottsdale, Arizona. The purpose of the workshop is to bring together software developers in meteorology and oceanography to discuss software engineering and code design issues for parallel architectures, including Massively Parallel Processors (MPP's), Parallel Vector Processors (PVP's), Symmetric Multi-Processors (SMP's), Distributed Shared Memory (DSM) multi-processors, and clusters. Issues to be discussed include: (1) code architectures for current parallel models, including basic data structures, storage allocation, variable naming conventions, coding rules and styles, i/o and pre/post-processing of data; (2) designing modular code; (3) load balancing and domain decomposition; (4) techniques that exploit parallelism efficiently yet hide the machine-related details from the programmer; (5) tools for making the programmer more productive; and (6) the proliferation of programming models (F--, OpenMP, MPI, and HPF).

OKeefe, Matthew↗

Framework programmable platform for the advanced software development workstation. Integration mechanism design document

The Framework Programmable Software Development Platform (FPP) is a project aimed at combining effective tool and data integration mechanisms with a model of the software development process in an intelligent integrated software development environment. Guided by this model, this system development framework will take advantage of an integrated operating environment to automate effectively the management of the software development process so that costly mistakes during the development phase can be eliminated.

Mayer, Richard J.↗

Adaption of G-TAG Software for Validating Touch and Go Asteroid Sample Return Design Methodology

A software tool is used to demonstrate the feasibility of Touch and Go (TAG) sampling for Asteroid Sample Return missions. TAG is a concept whereby a spacecraft is in contact with the surface of a small body, such as a comet or asteroid, for a few seconds or less before ascending to a safe location away from the small body. Previous work at JPL developed the G-TAG simulation tool, which provides a software environment for fast, multi-body simulations of the TAG event. G-TAG is described in Multibody Simulation Software Testbed for Small-Body Exploration and Sampling, (NPO-47196) NASA Tech Briefs, Vol. 35, No. 11 (November 2011), p.54. This current innovation adapts this tool to a mission that intends to return a sample from the surface of an asteroid. In order to demonstrate the feasibility of the TAG concept, the new software tool was used to generate extensive simulations that demonstrate the designed spacecraft meets key requirements. These requirements state that contact force and duration must be sufficient to ensure that enough material from the surface is collected in the brushwheel sampler (BWS), and that the spacecraft must survive the contact and must be able to recover and ascend to a safe position, and maintain velocity and orientation after the contact.

Blackmore, Lars James C.↗

Mechanical Prototyping and Manufacturing Internship

The internship was located at the Johnson Space Center (JSC) Innovation Design Center (IDC), which is a facility where the JSC workforce can meet and conduct hands-on innovative design, fabrication, evaluation, and testing of ideas and concepts relevant to NASA's mission. The tasks of the internship included mechanical prototyping design and manufacturing projects in service of research and development as well as assisting the users of the IDC in completing their manufacturing projects. The first project was to manufacture hatch mechanisms for a team in the Systems Engineering and Project Advancement Program (SETMAP) hexacopter competition. These mechanisms were intended to improve the performance of the servomotors and offer an access point that would also seal to prevent cross-contamination. I also assisted other teams as they were constructing and modifying their hexacopters. The success of this competition demonstrated a proof of concept for aerial reconnaissance and sample return to be potentially used in future NASA missions. I also worked with Dr. Kumar Krishen to prototype an improved thermos and a novel, portable solar array. Computer-aided design (CAD) software was used to model the parts for both of these projects. Then, 3D printing as well as conventional techniques were used to produce the parts. These prototypes were then subjected to trials to determine the success of the designs. The solar array is intended to work in a cluster that is easy to set up and take down and doesn't require powered servomechanisms. It could be used terrestrially in areas not serviced by power grids. Both projects improve planetary exploration capabilities to future astronauts. Other projects included manufacturing custom rail brackets for EG-2, assisting engineers working on underwater instrument and tool cases for the NEEMO project, and helping to create mock-up parts for Space Center Houston. The use of the IDC enabled efficient completion of these projects at significantly reduced cost. I acquired and improved manufacturing and prototyping skills during my tour including learning about a CAD (Computer-Aided Design) program called Creo (Creo Parametric; design software), gaining valuable conventional machining experience with lathes, CNC (Computer Numerical Control) milling machines and various other tools, and improving my engineering project communication and collaboration skills. The internship also allowed me to better understand operations at NASA. I plan to work in the aerospace industry or do academic research benefitting space science and exploration, and this internship experience will enable me to have insight into manufacturing processes for research and development.

Grenfell, Peter↗

Team Software Development for Aerothermodynamic and Aerodynamic Analysis and Design

A collaborative approach to software development is described. The approach employs the agile development techniques: project retrospectives, Scrum status meetings, and elements of Extreme Programming to efficiently develop a cohesive and extensible software suite. The software product under development is a fluid dynamics simulator for performing aerodynamic and aerothermodynamic analysis and design. The functionality of the software product is achieved both through the merging, with substantial rewrite, of separate legacy codes and the authorship of new routines. Examples of rapid implementation of new functionality demonstrate the benefits obtained with this agile software development process. The appendix contains a discussion of coding issues encountered while porting legacy Fortran 77 code to Fortran 95, software design principles, and a Fortran 95 coding standard.

Alexandrov, N.↗

Autonomous Real Time Requirements Tracing

One of the more challenging aspects of software development is the ability to verify and validate the functional software requirements dictated by the Software Requirements Specification (SRS) and the Software Detail Design (SDD). Insuring the software has achieved the intended requirements is the responsibility of the Software Quality team and the Software Test team. The utilization of Timeliner-TLX(sup TM) Auto- Procedures for relocating ground operations positions to ISS automated on-board operations has begun the transition that would be required for manned deep space missions with minimal crew requirements. This transition also moves the auto-procedures from the procedure realm into the flight software arena and as such the operational requirements and testing will be more structured and rigorous. The autoprocedures would be required to meet NASA software standards as specified in the Software Safety Standard (NASASTD- 8719), the Software Engineering Requirements (NPR 7150), the Software Assurance Standard (NASA-STD-8739) and also the Human Rating Requirements (NPR-8705). The Autonomous Fluid Transfer System (AFTS) test-bed utilizes the Timeliner-TLX(sup TM) Language for development of autonomous command and control software. The Timeliner-TLX(sup TM) system has the unique feature of providing the current line of the statement in execution during real-time execution of the software. The feature of execution line number internal reporting unlocks the capability of monitoring the execution autonomously by use of a companion Timeliner-TLX(sup TM) sequence as the line number reporting is embedded inside the Timeliner-TLX(sup TM) execution engine. This negates I/O processing of this type data as the line number status of executing sequences is built-in as a function reference. This paper will outline the design and capabilities of the AFTS Autonomous Requirements Tracker, which traces and logs SRS requirements as they are being met during real-time execution of the targeted system. It is envisioned that real time requirements tracing will greatly assist the movement of autoprocedures to flight software enhancing the software assurance of auto-procedures and also their acceptance as reliable commanders.

Plattsmier, George↗

Autonomous Real Time Requirements Tracing

One of the more challenging aspects of software development is the ability to verify and validate the functional software requirements dictated by the Software Requirements Specification (SRS) and the Software Detail Design (SDD). Insuring the software has achieved the intended requirements is the responsibility of the Software Quality team and the Software Test team. The utilization of Timeliner-TLX(sup TM) Auto-Procedures for relocating ground operations positions to ISS automated on-board operations has begun the transition that would be required for manned deep space missions with minimal crew requirements. This transition also moves the auto-procedures from the procedure realm into the flight software arena and as such the operational requirements and testing will be more structured and rigorous. The autoprocedures would be required to meet NASA software standards as specified in the Software Safety Standard (NASASTD- 8719), the Software Engineering Requirements (NPR 7150), the Software Assurance Standard (NASA-STD-8739) and also the Human Rating Requirements (NPR-8705). The Autonomous Fluid Transfer System (AFTS) test-bed utilizes the Timeliner-TLX(sup TM) Language for development of autonomous command and control software. The Timeliner- TLX(sup TM) system has the unique feature of providing the current line of the statement in execution during real-time execution of the software. The feature of execution line number internal reporting unlocks the capability of monitoring the execution autonomously by use of a companion Timeliner-TLX(sup TM) sequence as the line number reporting is embedded inside the Timeliner-TLX(sup TM) execution engine. This negates I/O processing of this type data as the line number status of executing sequences is built-in as a function reference. This paper will outline the design and capabilities of the AFTS Autonomous Requirements Tracker, which traces and logs SRS requirements as they are being met during real-time execution of the targeted system. It is envisioned that real time requirements tracing will greatly assist the movement of autoprocedures to flight software enhancing the software assurance of auto-procedures and also their acceptance as reliable commanders

Plattsmier, George I.↗

MAX - An advanced parallel computer for space applications

MAX is a fault-tolerant multicomputer hardware and software architecture designed to meet the needs of NASA spacecraft systems. It consists of conventional computing modules (computers) connected via a dual network topology. One network is used to transfer data among the computers and between computers and I/O devices. This network's topology is arbitrary. The second network operates as a broadcast medium for operating system synchronization messages and supports the operating system's Byzantine resilience. A fully distributed operating system supports multitasking in an asynchronous event and data driven environment. A large grain dataflow paradigm is used to coordinate the multitasking and provide easy control of concurrency. It is the basis of the system's fault tolerance and allows both static and dynamical location of tasks. Redundant execution of tasks with software voting of results may be specified for critical tasks. The dataflow paradigm also supports simplified software design, test and maintenance. A unique feature is a method for reliably patching code in an executing dataflow application.

Lewis, Blair F.↗

Markov Chains For Testing Redundant Software

Preliminary design developed for validation experiment that addresses problems unique to assuring extremely high quality of multiple-version programs in process-control software. Approach takes into account inertia of controlled system in sense it takes more than one failure of control program to cause controlled system to fail. Verification procedure consists of two steps: experimentation (numerical simulation) and computation, with Markov model for each step.

White, Allan L.↗