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 307 records · Page 17

A software engineering approach to expert system design and verification

Software engineering design and verification methods for developing expert systems are not yet well defined. Integration of expert system technology into software production environments will require effective software engineering methodologies to support the entire life cycle of expert systems. The software engineering methods used to design and verify an expert system, RENEX, is discussed. RENEX demonstrates autonomous rendezvous and proximity operations, including replanning trajectory events and subsystem fault detection, onboard a space vehicle during flight. The RENEX designers utilized a number of software engineering methodologies to deal with the complex problems inherent in this system. An overview is presented of the methods utilized. Details of the verification process receive special emphasis. The benefits and weaknesses of the methods for supporting the development life cycle of expert systems are evaluated, and recommendations are made based on the overall experiences with the methods.

Bochsler, Daniel C.↗

NASA's Optical Program on Ascension Island: Bringing MCAT to Life as the Eugene Stansbery-Meter Class Autonomous Telescope (ES-MCAT)

In June 2015, the construction of the Meter Class Autonomous Telescope was completed and MCAT saw the light of the stars for the first time. In 2017, MCAT was newly dedicated as the Eugene Stansbery-MCAT telescope by NASA's Orbital Debris Program Office (ODPO), in honor of his inspiration and dedication to this newest optical member of the NASA ODPO. Since that time, MCAT has viewed the skies with one engineering camera and two scientific cameras, and the ODPO optical team has begun the process of vetting the entire system. The full system vetting includes verification and validation of: (1) the hardware comprising the system (e.g. the telescopes and its instruments, the dome, weather systems, all-sky camera, FLIR cloud infrared camera, etc.), (2) the custom-written Observatory Control System (OCS) master software designed to autonomously control this complex system of instruments, each with its own control software, and (3) the custom written Orbital Debris Processing software for post-processing the data. ES-MCAT is now capable of autonomous observing to include Geosynchronous survey, TLE (Two-line element) tracking of individual catalogued debris at all orbital regimes (Low-Earth Orbit all the way to Geosynchronous (GEO) orbit), tracking at specified non-sidereal rates, as well as sidereal rates for proper calibration with standard stars. Ultimately, the data will be used for validation of NASA's Orbital Debris Engineering Model, ORDEM, which aids in engineering designs of spacecraft that require knowledge of the orbital debris environment and long-term risks for collisions with Resident Space Objects (RSOs).

Lederer, S. M.↗

An analysis of the effects of coincident errors on multi-version software

The present study is concerned with the application of a model which provides a basis for analytical investigations of redundant software. The model links certain basic quantities with the experimental process of testing independently designed software components. The model is employed to provide insight into the effects of coincident errors on an N-version software structure in which the structure fails if at least a majority of its components fail. Attention is given to coincident errors, the intensity distribution for coincident errors, the coincident errors model, and a condition for redundancy to improve reliability.

Eckhardt, D. E., Jr.↗

The development and application of composite complexity models and a relative complexity metric in a software maintenance environment

A great deal of effort is now being devoted to the study, analysis, prediction, and minimization of software maintenance expected cost, long before software is delivered to users or customers. It has been estimated that, on the average, the effort spent on software maintenance is as costly as the effort spent on all other software costs. Software design methods should be the starting point to aid in alleviating the problems of software maintenance complexity and high costs. Two aspects of maintenance deserve attention: (1) protocols for locating and rectifying defects, and for ensuring that noe new defects are introduced in the development phase of the software process; and (2) protocols for modification, enhancement, and upgrading. This article focuses primarily on the second aspect, the development of protocols to help increase the quality and reduce the costs associated with modifications, enhancements, and upgrades of existing software. This study developed parsimonious models and a relative complexity metric for complexity measurement of software that were used to rank the modules in the system relative to one another. Some success was achieved in using the models and the relative metric to identify maintenance-prone modules.

Hops, J. M.↗

Error Free Software

A mathematical theory for development of "higher order" software to catch computer mistakes resulted from a Johnson Space Center contract for Apollo spacecraft navigation. Two women who were involved in the project formed Higher Order Software, Inc. to develop and market the system of error analysis and correction. They designed software which is logically error-free, which, in one instance, was found to increase productivity by 600%. USE.IT defines its objectives using AXES -- a user can write in English and the system converts to computer languages. It is employed by several large corporations.

Source record↗

Expert system development for commonality analysis in space programs

This report is a combination of foundational mathematics and software design. A mathematical model of the Commonality Analysis problem was developed and some important properties discovered. The complexity of the problem is described herein and techniques, both deterministic and heuristic, for reducing that complexity are presented. Weaknesses are pointed out in the existing software (System Commonality Analysis Tool) and several improvements are recommended. It is recommended that: (1) an expert system for guiding the design of new databases be developed; (2) a distributed knowledge base be created and maintained for the purpose of encoding the commonality relationships between design items in commonality databases; (3) a software module be produced which automatically generates commonality alternative sets from commonality databases using the knowledge associated with those databases; and (4) a more complete commonality analysis module be written which is capable of generating any type of feasible solution.

Yeager, Dorian P.↗

(abstract) Optimal Low Thrust Trajectories Using Differential Inclusion Concepts

Low thrust propulsion systems typically have their greatest benefit for high energy missions or missions with large post-launch maneuver requirements. Missions which have been examined include main belt asteroid rendezvous, comet rendezvous, outer planet and Mercury orbiters, Pluto flyby, and solar probe missions. Low thrust mission design software used to determine these trajectories is based on two distinct formulations of the optimal control problem: the indirect and direct methods. The traditional approach (indirect) is to use the calculus of variations to obtain first order necessary conditions on the states and costates. In contrast, direct methods are conceptually different in that no explicit integration takes place. A direct method based on differential inclusion concepts has been developed and successfully used to compute low thrust trajectories. This new approach removes explicit control dependence from the problem thereby reducing the dimension of the parameter space for the nonlinear programming problem. Also when compared to other direct methods, fewer nonlinear constraints are required to represent the dynamics of the problem.

low↗

SPHERES as Formation Flight Algorithm Development and Validation Testbed: Current Progress and Beyond

The MIT-SSL SPHERES testbed provides a facility for the development of algorithms necessary for the success of Distributed Satellite Systems (DSS). The initial development contemplated formation flight and docking control algorithms; SPHERES now supports the study of metrology, control, autonomy, artificial intelligence, and communications algorithms and their effects on DSS projects. To support this wide range of topics, the SPHERES design contemplated the need to support multiple researchers, as echoed from both the hardware and software designs. The SPHERES operational plan further facilitates the development of algorithms by multiple researchers, while the operational locations incrementally increase the ability of the tests to operate in a representative environment. In this paper, an overview of the SPHERES testbed is first presented. The SPHERES testbed serves as a model of the design philosophies that allow for the various researches being carried out on such a facility. The implementation of these philosophies are further highlighted in the three different programs that are currently scheduled for testing onboard the International Space Station (ISS) and three that are proposed for a re-flight mission: Mass Property Identification, Autonomous Rendezvous and Docking, TPF Multiple Spacecraft Formation Flight in the first flight and Precision Optical Pointing, Tethered Formation Flight and Mars Orbit Sample Retrieval for the re-flight mission.

Kong, Edmund M.↗

Improvements to GCAS Visualization Functionality

Analysis of communication systems is crucial to NASA objectives, whether located here on Earth or on a cosmic scale. The Glenn Research Center Communication Analysis Suite (GCAS) is software designed for analysis of communication systems throughout the solar system. This suite includes web-based visualization software that is used to simulate the data generated from the GCAS MATLAB® (The MathWorks, Inc.) capability. This report focuses on recent additions to the visualization portion of GCAS, including the motivation and methodology behind them. Notable additions include improved camera controls, such as novel first- and third-person settings, methods for displaying pertinent analysis information, finer control over timing mechanisms, and automated features designed to improve efficiency and memory usage.

Visualization↗

Expert systems applied to fault isolation and energy storage management, phase 2

A user's guide for the Fault Isolation and Energy Storage (FIES) II system is provided. Included are a brief discussion of the background and scope of this project, a discussion of basic and advanced operating installation and problem determination procedures for the FIES II system and information on hardware and software design and implementation. A number of appendices are provided including a detailed specification for the microprocessor software, a detailed description of the expert system rule base and a description and listings of the LISP interface software.

Source record↗

Experimental validation of optimization-based integrated controls-structures design methodology for flexible space structures

An optimization-based integrated design approach for flexible space structures is experimentally validated using three types of dissipative controllers, including static, dynamic, and LQG dissipative controllers. The nominal phase-0 of the controls structure interaction evolutional model (CEM) structure is redesigned to minimize the average control power required to maintain specified root-mean-square line-of-sight pointing error under persistent disturbances. The redesign structure, phase-1 CEM, was assembled and tested against phase-0 CEM. It is analytically and experimentally demonstrated that integrated controls-structures design is substantially superior to that obtained through the traditional sequential approach. The capability of a software design tool based on an automated design procedure in a unified environment for structural and control designs is demonstrated.

Maghami, Peiman G.↗

A theoretical basis for the analysis of redundant software subject to coincident errors

Fundamental to the development of redundant software techniques fault-tolerant software, is an understanding of the impact of multiple-joint occurrences of coincident errors. A theoretical basis for the study of redundant software is developed which provides a probabilistic framework for empirically evaluating the effectiveness of the general (N-Version) strategy when component versions are subject to coincident errors, and permits an analytical study of the effects of these errors. The basic assumptions of the model are: (1) independently designed software components are chosen in a random sample; and (2) in the user environment, the system is required to execute on a stationary input series. The intensity of coincident errors, has a central role in the model. This function describes the propensity to introduce design faults in such a way that software components fail together when executing in the user environment. The model is used to give conditions under which an N-Version system is a better strategy for reducing system failure probability than relying on a single version of software. A condition which limits the effectiveness of a fault-tolerant strategy is studied, and it is posted whether system failure probability varies monotonically with increasing N or whether an optimal choice of N exists.

Eckhardt, D. E., Jr.↗

Knowledge-based design of generate-and-patch problem solvers that solve global resource assignment problems

We present MENDER, a knowledge based system that implements software design techniques that are specialized to automatically compile generate-and-patch problem solvers that satisfy global resource assignments problems. We provide empirical evidence of the superior performance of generate-and-patch over generate-and-test: even with constrained generation, for a global constraint in the domain of '2D-floorplanning'. For a second constraint in '2D-floorplanning' we show that even when it is possible to incorporate the constraint into a constrained generator, a generate-and-patch problem solver may satisfy the constraint more rapidly. We also briefly summarize how an extended version of our system applies to a constraint in the domain of 'multiprocessor scheduling'.

Voigt, Kerstin↗

Repurposing Drilling Control Diagnostics for Subsurface Edge Detection and Boundary Advisement During Planetary Drilling

Informed decision-making during lunar drilling and sampling missions will require data monitoring tools and specialized ground data systems. Accurate and updated situational awareness, with ongoing data monitoring, is critical for timely responses by to incoming science data. Traverse plans and scheduled activities may need to be flexibly changed in order to react to unexpected data or situations. Unlike (for example) Mars missions, the relative lightspeed closeness of the Moon allows for near-real-time ground processing of incoming mission and instrument data. An Apollo-class lunar regolith drill will in a sense “travel” a meter or two vertically at a given subsurface characterization site. As the drill penetrates into lunar regolith, it is likely to encounter a range of material densities, orientations, fracture toughness, and (perhaps) ice percentages. Lunar drill telemetry can provide science teams with a valuable first look into the subsurface structure, the regolith bulk properties, and constituents at each drilled site. Real-time AI-based recognition and reaction to downhole situations has been developed for automated deeper drilling on Mars and beyond. We can leverage the same knowledge bases and pattern-matching as areal-time interpreter of the subsurface, a situational awareness tool during drilling operations. We recently (Sept. 2019) demonstrated this AI drilling monitoring and analysis capability, in control of in-situ drilling and sampling operations, mounted on a KREX-2 rover in Chile’s Atacama Desert. Terrestrial automated drilling log analyses in oil exploration have used similar machine learning techniques in classifying and identifying features in drilling logs –but these typically are designed assuming a drilling fluid influencing downhole measurements and data (permeability, resistivity). Drilling models and existing AI software designed to detect and respond to drilling faults and hard materials can be repurposed, for near-real-time (ground-based) interpretation of drilling telemetry –a potentially valuable advisory tool for strata boundaries and changes in drilling parameters. On the Moon, this approach could be used to study the structure and to some extent the composition of lunar regolith vs. borehole depth, based on recognizable variations in fracture hardness, drilling energy and penetration rates while actively drilling. Since the early 2000s, a series of increasingly-capable real-time drilling telemetry interpretation and characterization software tools have been developed. These subsurface models and software tools have monitored the real-time drilling data received, and automatically identified changes in drill behavior (e.g., encountering a harder target layer, bit inclusions, drill choking due to infall downhole, and others) correlating these with subsurface structures and features. We discuss the mappings between drill borehole parameters, faults or events detected, and modeled changes in rock layer boundaries, in examples drawn from field testing at analog sites in an Arctic impact crater, Rio Tinto, and Chile’s Atacama Desert. These demonstrate how subsurface structural boundaries led to fault detections and responses by the software.

drilling advisor↗

Design study of Software-Implemented Fault-Tolerance (SIFT) computer

Software-implemented fault tolerant (SIFT) computer design for commercial aviation is reported. A SIFT design concept is addressed. Alternate strategies for physical implementation are considered. Hardware and software design correctness is addressed. System modeling and effectiveness evaluation are considered from a fault-tolerant point of view.

Wensley, J. H.↗

New Web Server - the Java Version of Tempest - Produced

A new software design and development effort has produced a Java (Sun Microsystems, Inc.) version of the award-winning Tempest software (refs. 1 and 2). In 1999, the Embedded Web Technology (EWT) team received a prestigious R&D 100 Award for Tempest, Java Version. In this article, "Tempest" will refer to the Java version of Tempest, a World Wide Web server for desktop or embedded systems. Tempest was designed at the NASA Glenn Research Center at Lewis Field to run on any platform for which a Java Virtual Machine (JVM, Sun Microsystems, Inc.) exists. The JVM acts as a translator between the native code of the platform and the byte code of Tempest, which is compiled in Java. These byte code files are Java executables with a ".class" extension. Multiple byte code files can be zipped together as a "*.jar" file for more efficient transmission over the Internet. Today's popular browsers, such as Netscape (Netscape Communications Corporation) and Internet Explorer (Microsoft Corporation) have built-in Virtual Machines to display Java applets.

York, David W.↗

A high order approach to flight software development and testing

The use of a software development facility is discussed as a means of producing a reliable and maintainable ECS software system, and as a means of providing efficient use of the ECS hardware test facility. Principles applied to software design are given, including modularity, abstraction, hiding, and uniformity. The general objectives of each phase of the software life cycle are also given, including testing, maintenance, code development, and requirement specifications. Software development facility tools are summarized, and tool deficiencies recognized in the code development and testing phases are considered. Due to limited lab resources, the functional simulation capabilities may be indispensable in the testing phase.

Steinbacher, J.↗

Automated Software Development Workstation (ASDW)

Software development is a serious bottleneck in the construction of complex automated systems. An increase of the reuse of software designs and components has been viewed as a way to relieve this bottleneck. One approach to achieving software reusability is through the development and use of software parts composition systems. A software parts composition system is a software development environment comprised of a parts description language for modeling parts and their interfaces, a catalog of existing parts, a composition editor that aids a user in the specification of a new application from existing parts, and a code generator that takes a specification and generates an implementation of a new application in a target language. The Automated Software Development Workstation (ASDW) is an expert system shell that provides the capabilities required to develop and manipulate these software parts composition systems. The ASDW is now in Beta testing at the Johnson Space Center. Future work centers on responding to user feedback for capability and usability enhancement, expanding the scope of the software lifecycle that is covered, and in providing solutions to handling very large libraries of reusable components.

Fridge, Ernie↗