Search NASA⌕ Search

SEARCH · Search NASA

Results for “Programming environments”

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

Space Environments and Effects (SEE) Program: Spacecraft Charging Technology Development Activities

Reducing size and weight of spacecraft, along with demanding increased performance capabilities, introduces many uncertainties in the engineering design community on how materials and spacecraft systems will perform in space. The engineering design community is forever behind on obtaining and developing new tools and guidelines to mitigate the harmful effects of the space environment. Adding to this complexity is the continued push to use Commercial-off-the-Shelf (COTS) microelectronics, potential usage of unproven technologies such as large solar sail structures and nuclear electric propulsion. In order to drive down these uncertainties, various programs are working together to avoid duplication, save what resources are available in this technical area and possess a focused agenda to insert these new developments into future mission designs. This paper will introduce the SEE Program, briefly discuss past and currently sponsored spacecraft charging activities and possible future endeavors.

Kauffman, B.↗

Validation environment for AIPS/ALS: Implementation and results

The work is presented which was performed in porting the Fault Injection-based Automated Testing (FIAT) and Programming and Instrumentation Environments (PIE) validation tools, to the Advanced Information Processing System (AIPS) in the context of the Ada Language System (ALS) application, as well as an initial fault free validation of the available AIPS system. The PIE components implemented on AIPS provide the monitoring mechanisms required for validation. These mechanisms represent a substantial portion of the FIAT system. Moreover, these are required for the implementation of the FIAT environment on AIPS. Using these components, an initial fault free validation of the AIPS system was performed. The implementation is described of the FIAT/PIE system, configured for fault free validation of the AIPS fault tolerant computer system. The PIE components were modified to support the Ada language. A special purpose AIPS/Ada runtime monitoring and data collection was implemented. A number of initial Ada programs running on the PIE/AIPS system were implemented. The instrumentation of the Ada programs was accomplished automatically inside the PIE programming environment. PIE's on-line graphical views show vividly and accurately the performance characteristics of Ada programs, AIPS kernel and the application's interaction with the AIPS kernel. The data collection mechanisms were written in a high level language, Ada, and provide a high degree of flexibility for implementation under various system conditions.

Segall, Zary↗

Natural environment design criteria for the space station program definition phase

The natural environment design criteria requirements for use in the Space Station and its Elements (SSPE) definition phase studies are presented. The atmospheric dynamic and thermodynamic environments, meteoroids, radiation, physical constants are addressed. It is intended to enable all groups involved in the definition phase studies to proceed with a common and consistent set of natural environment criteria requirements.

Vaughan, W. W.↗

A distributable APSE

A distributed Ada program library is a key element in a distributed Ada Program Support Environment (APSE). To implement this successfully, the program library universe as defined by the Ada Reference Manual must be broken up into independently manageable pieces. This in turn requires the support of a distributed database system, as well as a mechanism for identifying compilation units, linkable subprograms, and Ada types in a decentralized way, to avoid falling victim to the bottlenecks of a global database and/or global unique-identifier manager. It was found that the ability to decentralize Ada program library activity is a major advantage in the management of large Ada programs. Currently, there are 18 resource-catalog revision sets, each in its own Host Interface (HIF) partition, plus 18 partitions for testing each of these, plus 11 partitions for the top-level compiler/linker/program library manager components. Compiling and other development work can proceed in parallel in each of these partitions, without suffering the performance bottlenecks of global locks or global unique-identifier generation.

Taft, Tucker, S.↗

ENCOMPASS: A SAGA based environment for the compositon of programs and specifications, appendix A

ENCOMPASS is an example integrated software engineering environment being constructed by the SAGA project. ENCOMPASS supports the specification, design, construction and maintenance of efficient, validated, and verified programs in a modular programming language. The life cycle paradigm, schema of software configurations, and hierarchical library structure used by ENCOMPASS is presented. In ENCOMPASS, the software life cycle is viewed as a sequence of developments, each of which reuses components from the previous ones. Each development proceeds through the phases planning, requirements definition, validation, design, implementation, and system integration. The components in a software system are modeled as entities which have relationships between them. An entity may have different versions and different views of the same project are allowed. The simple entities supported by ENCOMPASS may be combined into modules which may be collected into projects. ENCOMPASS supports multiple programmers and projects using a hierarchical library system containing a workspace for each programmer; a project library for each project, and a global library common to all projects.

Terwilliger, Robert B.↗

Making real-time reactive systems reliable

A reactive system is characterized by a control program that interacts with an environment (or controlled program). The control program monitors the environment and reacts to significant events by sending commands to the environment. This structure is quite general. Not only are most embedded real time systems reactive systems, but so are monitoring and debugging systems and distributed application management systems. Since reactive systems are usually long running and may control physical equipment, fault tolerance is vital. The research tries to understand the principal issues of fault tolerance in real time reactive systems and to build tools that allow a programmer to design reliable, real time reactive systems. In order to make real time reactive systems reliable, several issues must be addressed: (1) How can a control program be built to tolerate failures of sensors and actuators. To achieve this, a methodology was developed for transforming a control program that references physical value into one that tolerates sensors that can fail and can return inaccurate values; (2) How can the real time reactive system be built to tolerate failures of the control program. Towards this goal, whether the techniques presented can be extended to real time reactive systems is investigated; and (3) How can the environment be specified in a way that is useful for writing a control program. Towards this goal, whether a system with real time constraints can be expressed as an equivalent system without such constraints is also investigated.

Marzullo, Keith↗

Plasma Environments and Spacecraft Charging for Lunar Programs

Space systems interacting with the space plasma environment charge to potentials of a few tens of volts positive in interplanetary space or on the lunar surface in daylight, a few hundred volts negative in the dark lunar plasma wake and in some regions of the Earth s radiation belts, and to multiple kilovolt negative potentials for worst case conditions in the Earth s magnetosphere near geostationary orbit. Good design practices are required to assure that space systems operate successfully in these environments without detrimental effects due to transient currents and insulator failure produced by electrostatic discharges. Cold lunar environments in particular are challenging because detrimental effects of charging are often exacerbated by cold, highly resistive dielectrics which can integrate charge for long periods of time. We will describe the cold plasma and energetic particle environments relevant to lunar missions responsible for surface and bulk charging of space systems and discuss program requirements under development for assuring that systems operate successfully in these environments.

Minow, Joseph I.↗

Cross-Program Design Specification for Natural Environments (DSNE) Revision G

The DSNE completes environment-related specifications for architecture, system-level, and lower-tier documents by specifying the ranges of environmental conditions that must be accounted for by NASA ESD Programs. To assure clarity and consistency, and to prevent requirements documents from becoming cluttered with extensive amounts of technical material, natural environment specifications have been compiled into this document. The intent is to keep a unified specification for natural environments that each Program calls out for appropriate application.

Barry C Roberts↗

Cross-Program Design Specification for Natural Environments (DSNE) Revision H

The DSNE completes environment-related specifications for architecture, system-level, and lower-tier documents by specifying the ranges of environmental conditions that must be accounted for by NASA ESD Programs. To assure clarity and consistency, and to prevent requirements documents from becoming cluttered with extensive amounts of technical material, natural environment specifications have been compiled into this document. The intent is to keep a unified specification for natural environments that each Program calls out for appropriate application.

Frank B Leahy↗

Impact of a process improvement program in a production software environment: Are we any better?

For the past 15 years, Computer Sciences Corporation (CSC) has participated in a process improvement program as a member of the Software Engineering Laboratory (SEL), which is sponsored by GSFC. The benefits CSC has derived from involvement in this program are analyzed. In the environment studied, it shows that improvements were indeed achieved, as evidenced by a decrease in error rates and costs over a period in which both the size and the complexity of the developed systems increased substantially. The principles and mechanics of the process improvement program, the lessons CSC has learned, and how CSC has capitalized on these lessons are also discussed.

Heller, Gerard H.↗

Gaseous Environment Considerations and Evaluation Programs Leading to Spacecraft Atmosphere Selection

The NASA Manned Spacecraft Center has been actively involved in the direction and support of programs leading to the selection and validations of the atmosphere for forthcoming Gemini and Apollo missions. This paper discusses the engineering and physiologic considerations involved, describes the investigations to validate spacecraft atmospheres, and discusses the implications derived from the results of these investigations.

Edward L. Michel↗

Using CLIPS in the domain of knowledge-based massively parallel programming

The Program Development Environment (PDE) is a tool for massively parallel programming of distributed-memory architectures. Adopting a knowledge-based approach, the PDE eliminates the complexity introduced by parallel hardware with distributed memory and offers complete transparency in respect of parallelism exploitation. The knowledge-based part of the PDE is realized in CLIPS. Its principal task is to find an efficient parallel realization of the application specified by the user in a comfortable, abstract, domain-oriented formalism. A large collection of fine-grain parallel algorithmic skeletons, represented as COOL objects in a tree hierarchy, contains the algorithmic knowledge. A hybrid knowledge base with rule modules and procedural parts, encoding expertise about application domain, parallel programming, software engineering, and parallel hardware, enables a high degree of automation in the software development process. In this paper, important aspects of the implementation of the PDE using CLIPS and COOL are shown, including the embedding of CLIPS with C++-based parts of the PDE. The appropriateness of the chosen approach and of the CLIPS language for knowledge-based software engineering are discussed.

Dvorak, Jiri J.↗

Cross-Program Design Specification for Natural Environments (DSNE)

This document is derived from the former National Aeronautics and Space Administration (NASA) Constellation Program (CxP) document CxP 70023, titled “The Design Specification for Natural Environments (DSNE), Revision C.” The original document has been modified to represent updated Design Reference Missions (DRMs) for the NASA Exploration Systems Development (ESD) Programs.

Barry C Roberts↗

A Concurrent Distributed System for Aircraft Tactical Decision Generation

A research program investigating the use of artificial intelligence (AI) techniques to aid in the development of a Tactical Decision Generator (TDG) for Within Visual Range (WVR) air combat engagements is discussed. The application of AI programming and problem solving methods in the development and implementation of a concurrent version of the Computerized Logic For Air-to-Air Warfare Simulations (CLAWS) program, a second generation TDG, is presented. Concurrent computing environments and programming approaches are discussed and the design and performance of a prototype concurrent TDG system are presented.

McManus, John W.↗

Development of visual 3D virtual environment for control software

Virtual environments for software visualization may enable complex programs to be created and maintained. A typical application might be for control of regional electric power systems. As these encompass broader computer networks than ever, construction of such systems becomes very difficult. Conventional text-oriented environments are useful in programming individual processors. However, they are obviously insufficient to program a large and complicated system, that includes large numbers of computers connected to each other; such programming is called 'programming in the large.' As a solution for this problem, the authors are developing a graphic programming environment wherein one can visualize complicated software in virtual 3D world. One of the major features of the environment is the 3D representation of concurrent process. 3D representation is used to supply both network-wide interprocess programming capability (capability for 'programming in the large') and real-time programming capability. The authors' idea is to fuse both the block diagram (which is useful to check relationship among large number of processes or processors) and the time chart (which is useful to check precise timing for synchronization) into a single 3D space. The 3D representation gives us a capability for direct and intuitive planning or understanding of complicated relationship among many concurrent processes. To realize the 3D representation, a technology to enable easy handling of virtual 3D object is a definite necessity. Using a stereo display system and a gesture input device (VPL DataGlove), our prototype of the virtual workstation has been implemented. The workstation can supply the 'sensation' of the virtual 3D space to a programmer. Software for the 3D programming environment is implemented on the workstation. According to preliminary assessments, a 50 percent reduction of programming effort is achieved by using the virtual 3D environment. The authors expect that the 3D environment has considerable potential in the field of software engineering.

Hirose, Michitaka↗