Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “software methodology”

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 109 records · Page 6

Cleanroom certification model

The Cleanroom software development methodology is designed to take the gamble out of product releases for both suppliers and receivers of the software. The ingredients of this procedure are a life cycle of executable product increments, representative statistical testing, and a standard estimate of the MTTF (Mean Time To Failure) of the product at the time of its release. A statistical approach to software product testing using randomly selected samples of test cases is considered. A statistical model is defined for the certification process which uses the timing data recorded during test. A reasonableness argument for this model is provided that uses previously published data on software product execution. Also included is a derivation of the certification model estimators and a comparison of the proposed least squares technique with the more commonly used maximum likelihood estimators.

Currit, P. A.↗

Towards a Methodology for Identifying Program Constraints During Requirements Analysis

Requirements analysis is the activity that involves determining the needs of the customer, identifying the services that the software system should provide and understanding the constraints on the solution. The result of this activity is a natural language document, typically referred to as the requirements definition document. Some of the problems that exist in defining requirements in large scale software projects includes synthesizing knowledge from various domain experts and communicating this information across multiple levels of personnel. One approach that addresses part of this problem is called context monitoring and involves identifying the properties of and relationships between objects that the system will manipulate. This paper examines several software development methodologies, discusses the support that each provide for eliciting such information from experts and specifying the information, and suggests refinements to these methodologies.

Romo, Lilly↗

Applications of decision analysis and related techniques to industrial engineering problems at KSC

This report provides: (1) a discussion of the origination of decision analysis problems (well-structured problems) from ill-structured problems; (2) a review of the various methodologies and software packages for decision analysis and related problem areas; (3) a discussion of how the characteristics of a decision analysis problem affect the choice of modeling methodologies, thus providing a guide as to when to choose a particular methodology; and (4) examples of applications of decision analysis to particular problems encountered by the IE Group at KSC. With respect to the specific applications at KSC, particular emphasis is placed on the use of the Demos software package (Lumina Decision Systems, 1993).

Evans, Gerald W.↗

A system for automatic evaluation of simulation software

Within the field of computer software, simulation and verification are complementary processes. Simulation methods can be used to verify software by performing variable range analysis. More general verification procedures, such as those described in this paper, can be implicitly, viewed as attempts at modeling the end-product software. From software requirement methodology, each component of the verification system has some element of simulation to it. Conversely, general verification procedures can be used to analyze simulation software. A dynamic analyzer is described which can be used to obtain properly scaled variables for an analog simulation, which is first digitally simulated. In a similar way, it is thought that the other system components and indeed the whole system itself have the potential of being effectively used in a simulation environment.

Ryan, J. P.↗

Ground System Architectures Workshop GMSEC SERVICES SUITE (GSS): an Agile Development Story

The GMSEC (Goddard Mission Services Evolution Center) Services Suite (GSS) is a collection of tools and software services along with a robust customizable web-based portal that enables the user to capture, monitor, report, and analyze system-wide GMSEC data. Given our plug-and-play architecture and the needs for rapid system development, we opted to follow the Scrum Agile Methodology for software development. Being one of the first few projects to implement the Agile methodology at NASA GSFC, in this presentation we will present our approaches, tools, successes, and challenges in implementing this methodology. The GMSEC architecture provides a scalable, extensible ground and flight system for existing and future missions. GMSEC comes with a robust Application Programming Interface (GMSEC API) and a core set of Java-based GMSEC components that facilitate the development of a GMSEC-based ground system. Over the past few years, we have seen an upbeat in the number of customers who are moving from a native desktop application environment to a web based environment particularly for data monitoring and analysis. We also see a need to provide separation of the business logic from the GUI display for our Java-based components and also to consolidate all the GUI displays into one interface. This combination of separation and consolidation brings immediate value to a GMSEC-based ground system through increased ease of data access via a uniform interface, built-in security measures, centralized configuration management, and ease of feature extensibility.

Software Development/Agile↗

Knowledge-based reusable software synthesis system

The Eli system, a knowledge-based reusable software synthesis system, is being developed for NASA Langley under a Phase 2 SBIR contract. Named after Eli Whitney, the inventor of interchangeable parts, Eli assists engineers of large-scale software systems in reusing components while they are composing their software specifications or designs. Eli will identify reuse potential, search for components, select component variants, and synthesize components into the developer's specifications. The Eli project began as a Phase 1 SBIR to define a reusable software synthesis methodology that integrates reusabilityinto the top-down development process and to develop an approach for an expert system to promote and accomplish reuse. The objectives of the Eli Phase 2 work are to integrate advanced technologies to automate the development of reusable components within the context of large system developments, to integrate with user development methodologies without significant changes in method or learning of special languages, and to make reuse the easiest operation to perform. Eli will try to address a number of reuse problems including developing software with reusable components, managing reusable components, identifying reusable components, and transitioning reuse technology. Eli is both a library facility for classifying, storing, and retrieving reusable components and a design environment that emphasizes, encourages, and supports reuse.

Donaldson, Cammie↗

Evaluating software development by analysis of changes - Some data from the Software Engineering Laboratory

Basili and Weiss (1984) have discussed an approach for obtaining valid data which may be used to evaluate software development methodologies in a production environment. The methodology consists of five elements, including the identification of goals, the determination of questions of interest from the goals, the development of a data collection form, the development of data collection procedures, and the validation and analysis of the data. The current investigation is concerned with the presentation of the results from such an evaluation. The presented data were collected as part of studies reported by Basili et al. (1977). These studies had been conducted by NASA's Software Engineering Laboratory (SEL). Attention is given to an overview of the SEL, the application of the considered methodology, the results of a data analysis, and conclusions about the SEL environment.

Weiss, D. M.↗

Measuring the software process and product: Lessons learned in the SEL

The software development process and product can and should be measured. The software measurement process at the Software Engineering Laboratory (SEL) has taught a major lesson: develop a goal-driven paradigm (also characterized as a goal/question/metric paradigm) for data collection. Project analysis under this paradigm leads to a design for evaluating and improving the methodology of software development and maintenance.

Basili, V. R.↗

Computers in Aerospace Conference, 5th, Long Beach, CA, October 21-23, 1985, Technical Papers

Among the topics discussed are: access control models for a distributed CAIS-conforming system; a knowledge-based advisory system for casualty procedures; and automated interactive simulation modeling system. Consideration is also given to: reusable software concepts and software development methodologies; the electronic device aspects of neutral network memories; an expert system for automated satellite anomaly resolution; and the use of automatic programming techniques for fault-tolerant computing systems. Among additional topics discussed are: systems approaches to software fault tolerance; a Space Shuttle navigation validation system; and a vision-based road following system for an autonomous land vehicle.

Source record↗

Application and systems software in Ada: Development experiences

In its most basic sense software development involves describing the tasks to be solved, including the given objects and the operations to be performed on those objects. Unfortunately, the way people describe objects and operations usually bears little resemblance to source code in most contemporary computer languages. There are two ways around this problem. One is to allow users to describe what they want the computer to do in everyday, typically imprecise English. The PRODOC methodology and software development environment is based on a second more flexible and possibly even easier to use approach. Rather than hiding program structure, PRODOC represents such structure graphically using visual programming techniques. In addition, the program terminology used in PRODOC may be customized so as to match the way human experts in any given application area naturally describe the relevant data and operations. The PRODOC methodology is described in detail.

Kuschill, Jim↗

Open Building Operating System: An Open-Source Grid Responsive Control Platform for Buildings

Grid-interactive efficient buildings (GEBs) with flexible loads are a promising method to decarbonize buildings, shift loads during peak hours, and lower energy use and electricity costs. Despite the promising benefits of GEBs, automation systems that manage flexible loads in response to energy prices or other grid signals are still uncommon in small and medium commercial buildings. Recent literature demonstrates such control solutions, but they often rely on custom integrations lacking the tools and drivers needed for scalability. To address these gaps, our team has created a fully open-source software stack capable of integrating heterogeneous flexible building loads and implementing integrated portable control applications called the Open Building Operating System (OpenBOS). The software can be deployed over existing control architecture with a small capital cost. OpenBOS leverages semantic models, which have been the subject of recent investigations to facilitate application portability. The use of semantic data reduces the labor and expense required to deploy and update smart control applications, increasing scalability. In this paper, the semantic modeling schema "Brick" was used, but the proposed approach can also be applied to ASHRAE standard 223P, when released. This paper describes the methodology and software components of OpenBOS and demonstrates its functionality with a rule-based demand flexibility control application configured using a semantic model. This application was tested at a real building in NY that uses a dual-fuel heating system made up of five ductless heat pump mini-splits and a central furnace serving a single zone. The demonstration reduced electricity costs at the site by 27%, demand during a shed event by 49%, and furnace usage by 35%.

24 POWER TRANSMISSION AND DISTRIBUTION↗

Adaptation of G-TAG Software for Validating Touch-and-Go Comet Surface Sampling Design Methodology

The G-TAG software tool was developed under the R&TD on Integrated Autonomous Guidance, Navigation, and Control for Comet Sample Return, and represents a novel, multi-body dynamics simulation software tool for studying TAG sampling. The G-TAG multi-body simulation tool provides a simulation environment in which a Touch-and-Go (TAG) sampling event can be extensively tested. TAG sampling requires the spacecraft to descend to the surface, contact the surface with a sampling collection device, and then to ascend to a safe altitude. The TAG event lasts only a few seconds but is mission-critical with potentially high risk. Consequently, there is a need for the TAG event to be well characterized and studied by simulation and analysis in order for the proposal teams to converge on a reliable spacecraft design. This adaptation of the G-TAG tool was developed to support the Comet Odyssey proposal effort, and is specifically focused to address comet sample return missions. In this application, the spacecraft descends to and samples from the surface of a comet. Performance of the spacecraft during TAG is assessed based on survivability and sample collection performance. For the adaptation of the G-TAG simulation tool to comet scenarios, models are developed that accurately describe the properties of the spacecraft, approach trajectories, and descent velocities, as well as the models of the external forces and torques acting on the spacecraft. The adapted models of the spacecraft, descent profiles, and external sampling forces/torques were more sophisticated and customized for comets than those available in the basic G-TAG simulation tool. Scenarios implemented include the study of variations in requirements, spacecraft design (size, locations, etc. of the spacecraft components), and the environment (surface properties, slope, disturbances, etc.). The simulations, along with their visual representations using G-View, contributed to the Comet Odyssey New Frontiers proposal effort by indicating problems and/or benefits of different approaches and designs.

Mandic, Milan↗

Software architecture for a distributed real-time system in Ada, with application to telerobotics

The architecture structure and software design methodology presented is described in the context of telerobotic application in Ada, specifically the Engineering Test Bed (ETB), which was developed to support the Flight Telerobotic Servicer (FTS) Program at GSFC. However, the nature of the architecture is such that it has applications to any multiprocessor distributed real-time system. The ETB architecture, which is a derivation of the NASA/NBS Standard Reference Model (NASREM), defines a hierarchy for representing a telerobot system. Within this hierarchy, a module is a logical entity consisting of the software associated with a set of related hardware components in the robot system. A module is comprised of submodules, which are cyclically executing processes that each perform a specific set of functions. The submodules in a module can run on separate processors. The submodules in the system communicate via command/status (C/S) interface channels, which are used to send commands down and relay status back up the system hierarchy. Submodules also communicate via setpoint data links, which are used to transfer control data from one submodule to another. A submodule invokes submodule algorithms (SMA's) to perform algorithmic operations. Data that describe or models a physical component of the system are stored as objects in the World Model (WM). The WM is a system-wide distributed database that is accessible to submodules in all modules of the system for creating, reading, and writing objects.

Olsen, Douglas R.↗

Crack Growth Simulation and Residual Strength Prediction in Airplane Fuselages

The objectives were to create a capability to simulate curvilinear crack growth and ductile tearing in aircraft fuselages subjected to widespread fatigue damage and to validate with tests. Analysis methodology and software program (FRANC3D/STAGS) developed herein allows engineers to maintain aging aircraft economically, while insuring continuous airworthiness, and to design more damage-tolerant aircraft for the next generation. Simulations of crack growth in fuselages were described. The crack tip opening angle (CTOA) fracture criterion, obtained from laboratory tests, was used to predict fracture behavior of fuselage panel tests. Geometrically nonlinear, elastic-plastic, thin shell finite element crack growth analyses were conducted. Comparisons of stress distributions, multiple stable crack growth history, and residual strength between measured and predicted results were made to assess the validity of the methodology. Incorporation of residual plastic deformations and tear strap failure was essential for accurate residual strength predictions. Issue related to predicting crack trajectory in fuselages were also discussed. A directional criterion, including T-stress and fracture toughness orthotropy, was developed. Curvilinear crack growth was simulated in coupon and fuselage panel tests. Both T-stress and fracture toughness orthotropy were essential to predict the observed crack paths. Flapping of fuselages were predicted. Measured and predicted results agreed reasonable well.

Chen, Chuin-Shan↗

Formal Methods in the Development of Highly Assured Software for Unmanned Aircraft Systems

In traditional software development methodologies, operational and functional requirements of systems are often specified in structured natural language notations. These restricted notations provide good documentation support, but only provide limited support for semantic analysis. These notations are generally not rich enough to unambiguously specify the requirements of safety-critical systems that, for example, involve complex numerical computations or that interact with the physical environment. Examples of these safety-critical systems are autonomous vehicles such as unmanned aircraft systems. This talk advocates the use of expressive formal logics, such as higher-order logic, to specify the operational and functional requirement of unmanned systems and to prove the correctness of these requirements. Semantic analysis of requirements written in higher-order logic is supported through the use of interactive theorem provers. Formal models serve as ideal reference implementations of functional requirements. Hence, formal logics enable software validation techniques where software implementations can be checked against functional requirements in a mechanical way. The Formal Methods group in the Safety-Critical Avionics Systems Branch at NASA Langley Research Center has conducted research on the development and application of formal verification techniques to safety-critical applications of interest to NASA for more than 30 years. This talk illustrates the use of formal methods in the development of highly-assured autonomous unmanned aircraft systems.

Formal Methods↗

Efficiency of parallel direct optimization

Tremendous progress has been made at the level of sequential computation in phylogenetics. However, little attention has been paid to parallel computation. Parallel computing is particularly suited to phylogenetics because of the many ways large computational problems can be broken into parts that can be analyzed concurrently. In this paper, we investigate the scaling factors and efficiency of random addition and tree refinement strategies using the direct optimization software, POY, on a small (10 slave processors) and a large (256 slave processors) cluster of networked PCs running LINUX. These algorithms were tested on several data sets composed of DNA and morphology ranging from 40 to 500 taxa. Various algorithms in POY show fundamentally different properties within and between clusters. All algorithms are efficient on the small cluster for the 40-taxon data set. On the large cluster, multibuilding exhibits excellent parallel efficiency, whereas parallel building is inefficient. These results are independent of data set size. Branch swapping in parallel shows excellent speed-up for 16 slave processors on the large cluster. However, there is no appreciable speed-up for branch swapping with the further addition of slave processors (>16). This result is independent of data set size. Ratcheting in parallel is efficient with the addition of up to 32 processors in the large cluster. This result is independent of data set size. c2001 The Willi Hennig Society.

NASA Discipline Evolutionary Biology↗

FAST-1.0.1 User Installation and Verification Guide

The purpose of this document is to provide the user information about the installation of FAST-1.0.1 on their computers or servers. General information about the code and supported operating systems is described in Section 1.0.1. Self-service oriented FAST-1.0.1 software licensing steps are described in Section 2.0. An installation verification test suite is provided with FAST-1.0.1 and described in Section 3.0. A convenience script for converting FRAPCON to FAST inputs is discussed in Section 4.0. FAST-1.0.1 was developed and released under a software quality assurance program based upon NQA-1-2017. FAST-1.0.1 is the latest baseline code and the result of a bug fixes to FAST-1.0 with other software and methodology developments. The installation verification test suite contains both steady state and transient Anticipated Operation Occurrences (AOOs). Capability to model accident conditions, such as Reactivity Initiated Accidents (RIAs) and Loss Of Coolant Accidents (LOCAs), are targeted for a later release of FAST. FRAPTRAN-2.0 will continue to be used for accident conditions until the release of FAST with accident condition modeling capabilities.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗