Search NASA⌕ Search

SEARCH · Search NASA

Results for “sequence diagram”

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 19 records

Program Synthesizes UML Sequence Diagrams

A computer program called "Rational Sequence" generates Universal Modeling Language (UML) sequence diagrams of a target Java program running on a Java virtual machine (JVM). Rational Sequence thereby performs a reverse engineering function that aids in the design documentation of the target Java program. Whereas previously, the construction of sequence diagrams was a tedious manual process, Rational Sequence generates UML sequence diagrams automatically from the running Java code.

Barry, Matthew R.↗

Aspect-Oriented Subprogram Synthesizes UML Sequence Diagrams

The Rational Sequence computer program described elsewhere includes a subprogram that utilizes the capability for aspect-oriented programming when that capability is present. This subprogram is denoted the Rational Sequence (AspectJ) component because it uses AspectJ, which is an extension of the Java programming language that introduces aspect-oriented programming techniques into the language

Barry, Matthew R.↗

Using Sequence Diagrams to Detect Communication Problems Between Systems

Many software systems are evolving complex system of systems (SoS) for which inter-system communication is both mission-critical and error-prone. Such communication problems ideally would be detected before deployment. In a NASA-supported Software Assurance Research Program (SARP) project, we are researching a new approach addressing such problems. In this paper, we show that problems in the communication between two systems can be detected by using sequence diagrams to model the planned communication and by comparing the planned sequence to the actual sequence. We identify different kinds of problems that can be addressed by modeling the planned sequence using different level of abstractions.

Lindvall, Mikael↗

Proposal for hierarchical description of software systems

The programming of digital computers has developed into a new dimension full of diffculties, because the hardware of computers has become so powerful that more complex applications are entrusted to computers. The costs of software development, verification, and maintenance are outpacing those of the hardware and the trend is toward futher increase of sophistication of application of computers and consequently of sophistication of software. To obtain better visibility into software systems and to improve the structure of software systems for better tests, verification, and maintenance, a clear, but rigorous description and documentation of software is needed. The purpose of the report is to extend the present methods in order to obtain a documentation that better reflects the interplay between the various components and functions of a software system at different levels of detail without losing the precision in expression. This is done by the use of block diagrams, sequence diagrams, and cross-reference charts. In the appendices, examples from an actual large sofware system, i.e. the Marshall System for Aerospace Systems Simulation (MARSYAS), are presented. The proposed documentation structure is compatible to automation of updating significant portions of the documentation for better software change control.

Thauboth, H.↗

Automatic Debugging Support for UML Designs

Design of large software systems requires rigorous application of software engineering methods covering all phases of the software process. Debugging during the early design phases is extremely important, because late bug-fixes are expensive. In this paper, we describe an approach which facilitates debugging of UML requirements and designs. The Unified Modeling Language (UML) is a set of notations for object-orient design of a software system. We have developed an algorithm which translates requirement specifications in the form of annotated sequence diagrams into structured statecharts. This algorithm detects conflicts between sequence diagrams and inconsistencies in the domain knowledge. After synthesizing statecharts from sequence diagrams, these statecharts usually are subject to manual modification and refinement. By using the "backward" direction of our synthesis algorithm. we are able to map modifications made to the statechart back into the requirements (sequence diagrams) and check for conflicts there. Fed back to the user conflicts detected by our algorithm are the basis for deductive-based debugging of requirements and domain theory in very early development stages. Our approach allows to generate explanations oil why there is a conflict and which parts of the specifications are affected.

Schumann, Johann↗

NASA Tech Briefs, May 2006

T-Shaped Emitter Metal Structures for HBTs Rigorous Estimation of SNR of a PSK Communication Link Advanced Ka-Band Transceiver With Monopulse Tracking EMI Filters for Low-Temperature Applications Lightweight Electronic Camera for Research on Clouds Pilot Weather Advisor System Waveguide Power-Amplifier Module for 80 to 150 GHz Better Back Contacts for Solar Cells on Flexible Substrates Topics covered include:Tunable, Highly Stable Lasers for Coherent Lidar; Improved Photon-Emission-Microscope System; Program Synthesizes UML Sequence Diagrams; Aspect-Oriented Subprogram Synthesizes UML Sequence Diagrams; Updated Computational Model of Cosmic Rays Near Earth; Software for Alignment of Segments of a Telescope Mirror; Simulation of Dropping of Cargo With Parachutes; DAVE-ML Utility Program; Robust Control for the Mercury Laser Altimeter; Thermally Stable Piezoelectric and Pyroelectric Polymers; Combustion Synthesis of Ca3(PO4)2 Net-Shape Surgical Implants; Stochastic Representation of Chaos Using Terminal Attractors; Two High-Temperature Foil Journal Bearings; Using Plates To Represent Fillets in Finite-Element Modeling; Repairing Chipped Silicide Coatings on Refractory Metal Substrates; Simplified Fabrication of Helical Copper Antennas; Graded-Index "Whispering-Gallery" Optical Microresonators; Optical Profilometers Using Adaptive Signal Processing; Manufacture of Sparse-Spectrum Optical Microresonators; Exact Tuning of High-Q Optical Microresonators by Use of UV; Automation for "Direct-to" Clearances in Air-Traffic Control; Improved Traps for Removing Gases From Coolant Liquids; and Lunar Constellation of Frozen Elliptical Inclined Orbits.

Source record↗

Architectural Analysis of Complex Evolving Systems of Systems

The goal of this collaborative project between FC-MD, APL, and GSFC and supported by NASA IV&V Software Assurance Research Program (SARP), was to develop a tool, Dynamic SAVE, or Dyn-SAVE for short, for analyzing architectures of systems of systems. The project team was comprised of the principal investigator (PI) from FC-MD and four other FC-MD scientists (part time) and several FC-MD students (full time), as well as, two APL software architects (part time), and one NASA POC (part time). The PI and FC-MD scientists together with APL architects were responsible for requirements analysis, and for applying and evaluating the Dyn-SAVE tool and method. The PI and a group of FC-MD scientists were responsible for improving the method and conducting outreach activities, while another group of FC-MD scientists were responsible for development and improvement of the tool. Oversight and reporting was conducted by the PI and NASA POC. The project team produced many results including several prototypes of the Dyn-SAVE tool and method, several case studies documenting how the tool and method was applied to APL s software systems, and several published papers in highly respected conferences and journals. Dyn-SAVE as developed and enhanced throughout this research period, is a software tool intended for software developers and architects, software integration testers, and persons who need to analyze software systems from the point of view of how it communicates with other systems. Using the tool, the user specifies the planned communication behavior of the system modeled as a sequence diagram. The user then captures and imports the actual communication behavior of the system, which is then converted and visualized as a sequence diagram by Dyn-SAVE. After mapping the planned to the actual and specifying parameter and timing constraints, Dyn-SAVE detects and highlights deviations between the planned and the actual behavior. Requirements based on the need to analyze two inter-system communication protocols that are representative of protocols used in the Aerospace industry have been specified. The protocols are related: APL s Common Ground System (CGS) as used in the MErcury Surface, Space ENvironment, GEochemistry, and Ranging (MESSENGER) and the Radiation Belt Space Probes (RBSP) missions. The analyzed communications were implementations of the Telemetry protocol and the CCSDS File Delivery Protocol (CFDP) protocol. Based on these requirements, three prototypes of Dyn-SAVE were developed and applied to these protocols. The application of Dyn-SAVE to these protocols resulted in the detection of several issues. Dyn-SAVE was also applied to several Testbeds that have previously been used for experimentation earlier on this project, as well as, to other protocols and logs for testing its broader applicability. For example, Dyn-SAVE was used to analyze 1) the communication pattern between a web browser and a web server, 2) the system log of a computer in order to detect offnominal computer shut-down behavior, and 3) the actual test cases of NASA Goddard s Core Flight System (CFS) and automatically generated test cases in order to determine the overlap between the two sets of test cases. In all cases, Dyn-SAVE assisted in providing insightful conclusions about each of the cases identified above.

Lindvall, Mikael↗

Automatic Synthesis of UML Designs from Requirements in an Iterative Process

The Unified Modeling Language (UML) is gaining wide popularity for the design of object-oriented systems. UML combines various object-oriented graphical design notations under one common framework. A major factor for the broad acceptance of UML is that it can be conveniently used in a highly iterative, Use Case (or scenario-based) process (although the process is not a part of UML). Here, the (pre-) requirements for the software are specified rather informally as Use Cases and a set of scenarios. A scenario can be seen as an individual trace of a software artifact. Besides first sketches of a class diagram to illustrate the static system breakdown, scenarios are a favorite way of communication with the customer, because scenarios describe concrete interactions between entities and are thus easy to understand. Scenarios with a high level of detail are often expressed as sequence diagrams. Later in the design and implementation stage (elaboration and implementation phases), a design of the system's behavior is often developed as a set of statecharts. From there (and the full-fledged class diagram), actual code development is started. Current commercial UML tools support this phase by providing code generators for class diagrams and statecharts. In practice, it can be observed that the transition from requirements to design to code is a highly iterative process. In this talk, a set of algorithms is presented which perform reasonable synthesis and transformations between different UML notations (sequence diagrams, Object Constraint Language (OCL) constraints, statecharts). More specifically, we will discuss the following transformations: Statechart synthesis, introduction of hierarchy, consistency of modifications, and "design-debugging".

Schumann, Johann↗

Modeling and Composing Scenario-Based Requirements with Aspects

There has been significant recent interest, within the Aspect-Oriented Software Development (AOSD) community, in representing crosscutting concerns at various stages of the software lifecycle. However, most of these efforts have concentrated on the design and implementation phases. We focus in this paper on representing aspects during use case modeling. In particular, we focus on scenario-based requirements and show how to compose aspectual and non-aspectual scenarios so that they can be simulated as a whole. Non-aspectual scenarios are modeled as UML sequence diagram. Aspectual scenarios are modeled as Interaction Pattern Specifications (IPS). In order to simulate them, the scenarios are transformed into a set of executable state machines using an existing state machine synthesis algorithm. Previous work composed aspectual and non-aspectual scenarios at the sequence diagram level. In this paper, the composition is done at the state machine level.

Araujo, Joao↗

Object Oriented Modeling and Design

The Object Oriented Modeling and Design seminar is intended for software professionals and students, it covers the concepts and a language-independent graphical notation that can be used to analyze problem requirements, and design a solution to the problem. The seminar discusses the three kinds of object-oriented models class, state, and interaction. The class model represents the static structure of a system, the state model describes the aspects of a system that change over time as well as control behavior and the interaction model describes how objects collaborate to achieve overall results. Existing knowledge of object oriented programming may benefit the learning of modeling and good design. Specific expectations are: Create a class model, Read, recognize, and describe a class model, Describe association and link, Show abstract classes used with multiple inheritance, Explain metadata, reification and constraints, Group classes into a package, Read, recognize, and describe a state model, Explain states and transitions, Read, recognize, and describe interaction model, Explain Use cases and use case relationships, Show concurrency in activity diagram, Object interactions in sequence diagram.

Shaykhian, Gholam Ali↗

Visualization of Concurrent Program Executions

Various program analysis techniques are efficient at discovering failures and properties. However, it is often difficult to evaluate results, such as program traces. This calls for abstraction and visualization tools. We propose an approach based on UML sequence diagrams, addressing shortcomings of such diagrams for concurrency. The resulting visualization is expressive and provides all the necessary information at a glance.

concurrent programs↗

Mars Science Laboratory CHIMRA/IC/DRT Flight Software for Sample Acquisition and Processing

The design methodologies of using sequence diagrams, multi-process functional flow diagrams, and hierarchical state machines were successfully applied in designing three MSL (Mars Science Laboratory) flight software modules responsible for handling actuator motions of the CHIMRA (Collection and Handling for In Situ Martian Rock Analysis), IC (Inlet Covers), and DRT (Dust Removal Tool) mechanisms. The methodologies were essential to specify complex interactions with other modules, support concurrent foreground and background motions, and handle various fault protections. Studying task scenarios with multi-process functional flow diagrams yielded great insight to overall design perspectives. Since the three modules require three different levels of background motion support, the methodologies presented in this paper provide an excellent comparison. All three modules are fully operational in flight.

sample processing↗

UML and Model Checking

UML use cases conceptually identify function points or major requirements that a software system must satisfy. Sequence diagrams expand each use case to show in temporal sequence a more detailed notion of intended system behavior.

UML Model Checking software system real-time inter↗

Programmable controller system for wind tunnel diversion vanes

A programmable controller (PC) system automatic sequence control, which acts as a supervisory controller for the servos, selects the proper drives, and automatically sequences the vanes, was developed for use in a subsonic wind tunnel. Tunnel modifications include a new second test section (80 ft x 100 ft with a maximum air speed capability of 110 knots) and an increase in maximum velocity flow from 200 knots to 300 knots. A completely automatic sequence control is necessary in order to allow intricate motion of the 14 triangularly arranged vanes which can be as large as 70 ft high x 35 ft wide and which require precise acceleration and deceleration control. Rate servos on each drive aid in this control, and servo cost was minimized by using four silicon controlled rectifier controllers to control the 20 dc drives. The PC has a programming capacity which facilitated the implementation of extensive logic design. A series of diagrams sequencing the vanes and a block diagram of the system are included.

King, R. F.↗

Space Telecommunications Radio System Software Architecture Concepts and Analysis

The Space Telecommunications Radio System (STRS) project investigated various Software Defined Radio (SDR) architectures for Space. An STRS architecture has been selected that separates the STRS operating environment from its various waveforms and also abstracts any specialized hardware to limit its effect on the operating environment. The design supports software evolution where new functionality is incorporated into the radio. Radio hardware functionality has been moving from hardware based ASICs into firmware and software based processors such as FPGAs, DSPs and General Purpose Processors (GPPs). Use cases capture the requirements of a system by describing how the system should interact with the users or other systems (the actors) to achieve a specific goal. The Unified Modeling Language (UML) is used to illustrate the Use Cases in a variety of ways. The Top Level Use Case diagram shows groupings of the use cases and how the actors are involved. The state diagrams depict the various states that a system or object may be in and the transitions between those states. The sequence diagrams show the main flow of activity as described in the use cases.

Handler, Louis M.↗

Simulated Evaluation of Strategic Conflict Management Capabilities for Urban Air Mobility Operations

Urban Air Mobility (UAM) is a new air transportation service concept to carry passengers or cargo in metropolitan areas, leveraged by innovative aircraft and automation technologies. NASA has conducted a series of simulations to evaluate the UAM concept of operations and inform the development of airspace procedures and services for UAM operations. The latest set of simulations called “X5” were conducted to test a Provider of Services for UAM (PSU) prototype that NASA developed for UAM flight planning, strategic conflict management support, and data exchange between UAM operators. In these simulations, two strategic conflict management capabilities, Demand-Capacity Balancing (DCB) and Sequencing and Scheduling (S&S), were further investigated. This paper describes the system architecture designed for the X5 simulation activities, the sequence diagram for strategic conflict management, and the simulation environment in the Dallas/Fort Worth urban area. The simulation results based on several system performance metrics for evaluation show that a sequential application of DCB and S&S effectively works to distribute traffic demand and meet sequencing and spacing criteria by assigning ground delays, compared to the DCB only and S&S only cases.

Urban Air Mobility, Strategic Conflict Management,↗

Simulated Evaluation of Strategic Conflict Management Capabilities for Urban Air Mobility Operations

Urban Air Mobility (UAM) is a new air transportation service concept to carry passengers or cargo in metropolitan areas, leveraged by innovative aircraft and automation technologies. NASA has conducted a series of simulations to evaluate the UAM concept of operations and inform the development of airspace procedures and services for UAM operations. The latest set of simulations called “X5” were conducted to test a Provider of Services for UAM (PSU) prototype that NASA developed for UAM flight planning, strategic conflict management support, and data exchange between UAM operators. In these simulations, two strategic conflict management capabilities, Demand-Capacity Balancing (DCB) and Sequencing and Scheduling (S&S), were further investigated. This paper describes the system architecture designed for the X5 simulation activities, the sequence diagram for strategic conflict management, and the simulation environment in the Dallas/Fort Worth urban area. The simulation results based on several system performance metrics for evaluation show that a sequential application of DCB and S&S effectively works to distribute traffic demand and meet sequencing and spacing criteria by assigning ground delays, compared to the DCB only and S&S only cases.

Simulation↗