Search NASA⌕ Search

SEARCH · Search NASA

Results for “Software development”

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 325 records · Page 18

pyam: Python Implementation of YaM

pyam is a software development framework with tools for facilitating the rapid development of software in a concurrent software development environment. pyam provides solutions for development challenges associated with software reuse, managing multiple software configurations, developing software product lines, and multiple platform development and build management. pyam uses release-early, release-often development cycles to allow developers to integrate their changes incrementally into the system on a continual basis. It facilitates the creation and merging of branches to support the isolated development of immature software to avoid impacting the stability of the development effort. It uses modules and packages to organize and share software across multiple software products, and uses the concepts of link and work modules to reduce sandbox setup times even when the code-base is large. One sidebenefit is the enforcement of a strong module-level encapsulation of a module s functionality and interface. This increases design transparency, system stability, and software reuse. pyam is written in Python and is organized as a set of utilities on top of the open source SVN software version control package. All development software is organized into a collection of modules. pyam packages are defined as sub-collections of the available modules. Developers can set up private sandboxes for module/package development. All module/package development takes place on private SVN branches. High-level pyam commands support the setup, update, and release of modules and packages. Released and pre-built versions of modules are available to developers. Developers can tailor the source/link module mix for their sandboxes so that new sandboxes (even large ones) can be built up easily and quickly by pointing to pre-existing module releases. All inter-module interfaces are publicly exported via links. A minimal, but uniform, convention is used for building modules.

Myint, Steven↗

Adding intelligent services to an object oriented system

As today's software becomes increasingly complex, the need grows for intelligence of one sort or another to becomes part of the application, often an intelligence that does not readily fit the paradigm of one's software development. There are many methods of developing software, but at this time, the most promising is the object oriented (OO) method. This method involves an analysis to abstract the problem into separate 'objects' that are unique in the data that describe them and the behavior that they exhibit, and eventually to convert this analysis into computer code using a programming language that was designed (or retrofitted) for OO implementation. This paper discusses the creation of three different applications that are analyzed, designed, and programmed using the Shlaer/Mellor method of OO development and C++ as the programming language. All three, however, require the use of an expert system to provide an intelligence that C++ (or any other 'traditional' language) is not directly suited to supply. The flexibility of CLIPS permitted us to make modifications to it that allow seamless integration with any of our applications that require an expert system. We illustrate this integration with the following applications: (1) an after action review (AAR) station that assists a reviewer in watching a simulated tank battle and developing an AAR to critique the performance of the participants in the battle; (2) an embedded training system and over-the-shoulder coach for howitzer crewmen; and (3) a system to identify various chemical compounds from their infrared absorption spectra.

Robideaux, Bret R.↗

A research program in advanced information systems

Topics addressed cover: identification of large space structure dynamics; special-purpose architectures for computational fluid dynamics; fault-tolerant processor architectures; data flow techniques; software specification and verification tools; management of software development; software environment for concurrent computing; and parallel algorithms and architectures for the solution of partial differential equations.

Vandervelde, Wallace E.↗

KSC Space Station Operations Language (SSOL)

The Space Station Operations Language (SSOL) will serve a large community of diverse users dealing with the integration and checkout of Space Station modules. Kennedy Space Center's plan to achieve Level A specification of the SSOL system, encompassing both its language and its automated support environment, is presented in the format of a briefing. The SSOL concept is a collection of fundamental elements that span languages, operating systems, software development, software tools and several user classes. The approach outlines a thorough process that combines the benefits of rapid prototyping with a coordinated requirements gathering effort, yielding a Level A specification of the SSOL requirements.

Source record↗

Continuation of research into software for space operations support, volume 1

A prototype workstation executive called the Hardware Independent Software Development Environment (HISDE) was developed. Software technologies relevant to workstation executives were researched and evaluated and HISDE was used as a test bed for prototyping efforts. New X Windows software concepts and technology were introduced into workstation executives and related applications. The four research efforts performed included: (1) Research into the usability and efficiency of Motif (an X Windows based graphic user interface) which consisted of converting the existing Athena widget based HISDE user interface to Motif demonstrating the usability of Motif and providing insight into the level of effort required to translate an application from widget to another; (2) Prototype a real time data display widget which consisted of research methods for and prototyping the selected method of displaying textual values in an efficient manner; (3) X Windows performance evaluation which consisted of a series of performance measurements which demonstrated the ability of low level X Windows to display textural information; (4) Convert the Display Manager to X Window/Motif which is the application used by NASA for data display during operational mode.

Collier, Mark D.↗

Third International Workshop on Ion Mobility Spectrometry

Basic research in ion mobility spectrometry has given rise to rapid advancement in hardware development and applications. The Third International Workshop on Ion Mobility Spectrometry (IMS) was held October 16-19, 1994, at Johnson Space Center to provide a forum for investigators to present the most recent results of both basic and applied IMS research. Presenters included manufacturers and various users, including military research organizations and drug enforcement agencies. Thirty papers were given in the following five sessions: Fundamental IMS Studies, Instrument Development, Hyphenated IMS Techniques, Applications, and Data Reduction and Signal Processing. Advances in hardware development, software development, and user applications are described.

Cross, John H.↗

Tools Lighten Designs, Maintain Structural Integrity

Collier Research Corporation of Hampton, Virginia, licensed software developed at Langley Research Center to reduce design weight through the use of composite materials. The first license of NASA-developed software, it has now been used in everything from designing next-generation cargo containers, to airframes, rocket engines, ship hulls, and train bodies. The company now has sales of the NASA-derived software topping $4 million a year and has recently received several Small Business Innovation Research (SBIR) contracts to apply its software to nearly all aspects of the new Orion crew capsule design.

Source record↗

Software for Analyzing Laminar-to-Turbulent Flow Transitions

Software assurance is the planned and systematic set of activities that ensures that software processes and products conform to requirements, standards, and procedures. Examples of such activities are the following: code inspections, unit tests, design reviews, performance analyses, construction of traceability matrices, etc. In practice, software development projects have only limited resources (e.g., schedule, budget, and availability of personnel) to cover the entire development effort, of which assurance is but a part. Projects must therefore select judiciously from among the possible assurance activities. At its heart, this can be viewed as an optimization problem; namely, to determine the allocation of limited resources (time, money, and personnel) to minimize risk or, alternatively, to minimize the resources needed to reduce risk to an acceptable level. The end result of the work reported here is a means to optimize quality-assurance processes used in developing software. This is achieved by combining two prior programs in an innovative manner

Chang, Chau-Lyan↗

Software for Optimizing Quality Assurance of Other Software

Software assurance is the planned and systematic set of activities that ensures that software processes and products conform to requirements, standards, and procedures. Examples of such activities are the following: code inspections, unit tests, design reviews, performance analyses, construction of traceability matrices, etc. In practice, software development projects have only limited resources (e.g., schedule, budget, and availability of personnel) to cover the entire development effort, of which assurance is but a part. Projects must therefore select judiciously from among the possible assurance activities. At its heart, this can be viewed as an optimization problem; namely, to determine the allocation of limited resources (time, money, and personnel) to minimize risk or, alternatively, to minimize the resources needed to reduce risk to an acceptable level. The end result of the work reported here is a means to optimize quality-assurance processes used in developing software.

Feather, Martin↗

NASA Technology Demonstrations Missions Program Overview

The National Aeronautics and Space Administration (NASA) Fiscal Year 2010 (FY10) budget introduced a new strategic plan that placed renewed emphasis on advanced missions beyond Earth orbit. This supports NASA s 2011 strategic goal to create innovative new space technologies for our exploration, science, and economic future. As a result of this focus on undertaking many and more complex missions, NASA placed its attention on a greater investment in technology development, and this shift resulted in the establishment of the Technology Demonstrations Missions (TDM) Program. The TDM Program, within the newly formed NASA Office of the Chief Technologist, supports NASA s grand challenges by providing a steady cadence of advanced space technology demonstrations (Figure 1), allowing the infusion of flexible path capabilities for future exploration. The TDM Program's goal is to mature crosscutting capabilities to flight readiness in support of multiple future space missions, including flight test projects where demonstration is needed before the capability can transition to direct mission The TDM Program has several unique criteria that set it apart from other NASA program offices. For instance, the TDM Office matures a small number of technologies that are of benefit to multiple customers to flight technology readiness level (TRL) 6 through relevant environment testing on a 3-year development schedule. These technologies must be crosscutting, which is defined as technology with potential to benefit multiple mission directorates, other government agencies, or the aerospace industry, and they must capture significant public interest and awareness. These projects will rely heavily on industry partner collaboration, and funding is capped for all elements of the flight test demonstration including planning, hardware development, software development, launch costs, ground operations, and post-test assessments. In order to inspire collaboration across government and industry, more than 70% of the TDM funds will be competitively awarded as a result of yearly calls for proposed flight demonstrators and selected based on possible payoff to NASA, technology maturity, customer interest, cost, and technical risk reduction. This paper will give an overview of the TDM Program s mission and organization, as well as its current status in delivering advanced space technologies that will enable more flexible and robust future missions. It also will provide several examples of missions that fit within these parameters and expected outcomes.

Turner, Susan↗

Zero Launch Mass Three Dimensional Print Head

NASA's strategic goal is to put humans on Mars in the 2030's. The NASA Human Spaceflight Architecture Team (HAT) and NASA Mars Design Reference Architecture (DRA) 5.0 has determined that in-situ resource utilization (ISRU) is an essential technology to accomplish this mission. Additive construction technology using in-situ materials from planetary surfaces will reduce launch mass, allow structures to be three dimensionally (3D) printed on demand, and will allow building designs to be transmitted digitally from Earth and printed in space. This will ultimately lead to elimination of reliance on structural materials launched from Earth (zero launch mass of construction consumables). The zero launch mass (ZLM) 3D print head project addressed this need by developing a system that 3D prints using a mixture of in-situ regolith and polymer as feedstock, determining the optimum mixture ratio and regolith particle size distribution, developing software to convert g-code into motion instructions for a FANUC robotic arm, printing test samples, performing materials testing, and printing a reduced scale habitable structure concept. This paper will focus on the ZLM 3D Print Head design, materials selection, software development, and lessons learned from operating the system in the NASA KSC Swamp Works Granular Mechanics & Regolith Operations (GMRO) Laboratory.

3D print↗

Zero Launch Mass Three Dimensional Print Head

NASA's strategic goal is to put humans on Mars in the 2030s. The NASA Human Spaceflight Architecture Team (HAT) and NASA Mars Design Reference Architecture (DRA) 5.0 has determined that in-situ resource utilization (ISRU) is an essential technology to accomplish this mission. Additive construction technology using in-situ materials from planetary surfaces will reduce launch mass, allow structures to be three dimensionally (3D) printed on demand, and will allow building designs to be transmitted digitally from Earth and printed in space. This will ultimately lead to elimination of reliance on structural materials launched from Earth (zero launch mass of construction consumables). The zero launch mass (ZLM) 3D print head project addressed this need by developing a system that 3D prints using a mixture of in-situ regolith and polymer as feedstock, determining the optimum mixture ratio and regolith particle size distribution, developing software to convert g-code into motion instructions for a FANUC robotic arm, printing test samples, performing materials testing, and printing a reduced scale habitable structure concept. This paper will focus on the ZLM 3D Print Head design, materials selection, software development, and lessons learned from operating the system in the NASA KSC Swamp Works Granular Mechanics & Regolith Operations (GMRO) Laboratory.

Regolith↗

Development of a support software system for real-time HAL/S applications

Methodologies employed in defining and implementing a software support system for the HAL/S computer language for real-time operations on the Shuttle are detailed. Attention is also given to the management and validation techniques used during software development and software maintenance. Utilities developed to support the real-time operating conditions are described. With the support system being produced on Cyber computers and executable code then processed through Cyber or PDP machines, the support system has a production level status and can serve as a model for other software development projects.

Smith, R. S.↗

Framework for Development of Object-Oriented Software

The Real-Time Control (RTC) Application Framework is a high-level software framework written in C++ that supports the rapid design and implementation of object-oriented application programs. This framework provides built-in functionality that solves common software development problems within distributed client-server, multi-threaded, and embedded programming environments. When using the RTC Framework to develop software for a specific domain, designers and implementers can focus entirely on the details of the domain-specific software rather than on creating custom solutions, utilities, and frameworks for the complexities of the programming environment. The RTC Framework was originally developed as part of a Space Shuttle Launch Processing System (LPS) replacement project called Checkout and Launch Control System (CLCS). As a result of the framework s development, CLCS software development time was reduced by 66 percent. The framework is generic enough for developing applications outside of the launch-processing system domain. Other applicable high-level domains include command and control systems and simulation/ training systems.

Perez-Poveda, Gus↗

Developing satellite ground control software through graphical models

This paper discusses a program of investigation into software development as graphical modeling. The goal of this work is a more efficient development and maintenance process for the ground-based software that controls unmanned scientific satellites launched by NASA. The main hypothesis of the program is that modeling of the spacecraft and its subsystems, and reasoning about such models, can--and should--form the key activities of software development; by using such models as inputs, the generation of code to perform various functions (such as simulation and diagnostics of spacecraft components) can be automated. Moreover, we contend that automation can provide significant support for reasoning about the software system at the diagram level.

Bailin, Sidney↗

Sculpting in cyberspace: Parallel processing the development of new software

Stimulating creativity in problem solving, particularly where software development is involved, is applicable to many disciplines. Metaphorical thinking keeps the problem in focus but in a different light, jarring people out of their mental ruts and sparking fresh insights. It forces the mind to stretch to find patterns between dissimilar concepts, in the hope of discovering unusual ideas in odd associations (Technology Review January 1993, p. 37). With a background in Engineering and Visual Design from MIT, I have for the past 30 years pursued a career as a sculptor of interdisciplinary monumental artworks that bridge the fields of science, engineering and art. Since 1979, I have pioneered the application of computer simulation to solve the complex problems associated with these projects. A recent project for the roof of the Carnegie Science Center in Pittsburgh made particular use of the metaphoric creativity technique described above. The problem-solving process led to the creation of hybrid software combining scientific, architectural and engineering visualization techniques. David Steich, a Doctoral Candidate in Electrical Engineering at Penn State, was commissioned to develop special software that enabled me to create innovative free-form sculpture. This paper explores the process of inventing the software through a detailed analysis of the interaction between an artist and a computer programmer.

Fisher, Rob↗

Standardized development of computer software. Part 2: Standards

This monograph contains standards for software development and engineering. The book sets forth rules for design, specification, coding, testing, documentation, and quality assurance audits of software; it also contains detailed outlines for the documentation to be produced.

Tausworthe, R. C.↗