February 12, 2009 Center for Hybrid and Embedded Software Systems Model Transformation Using ERG Controller Thomas H. Feng.

Slides:



Advertisements
Similar presentations
A Component Based Programming Framework for Autonomic Applications Hua Liu, Manish Parashar, and Salim Hariri ICAC ‘04 John Otto Wi06 CS 395/495 Autonomic.
Advertisements

Ch 12: Object-Oriented Analysis
DATAFLOW PROCESS NETWORKS Edward A. Lee Thomas M. Parks.
1 PtHOMAS project, Ptolemy mini-conference '09 CR/RTC3-NA Elizabeth Latronico; UC Berkeley Jackie Mankit Leung | 4/16/2009 | © 2009 Robert Bosch LLC and.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
Chess Review May 8, 2003 Berkeley, CA Classes and Inheritance in Actor- Oriented Models Stephen Neuendorffer Edward Lee UC Berkeley.
Type System, March 12, Data Types and Behavioral Types Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University.
Architecture-driven Modeling and Analysis By David Garlan and Bradley Schmerl Presented by Charita Feldman.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Leveraging Synchronous Language Principles for Hybrid System Models Haiyang Zheng and.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Behavioral Types for Actor-Oriented Design Edward A. Lee.
February 11, 2010 Center for Hybrid and Embedded Software Systems Ptolemy II - Heterogeneous Concurrent Modeling and Design.
Using Interfaces to Analyze Compositionality Haiyang Zheng and Rachel Zhou EE290N Class Project Presentation Dec. 10, 2004.
Causality Interface  Declares the dependency that output events have on input events.  D is an ordered set associated with the min ( ) and plus ( ) operators.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Advanced Tool Architectures Edward A. Lee UC Berkeley.
Ngu, Texas StatePtolemy Miniconference, February 13, 2007 Flexible Scientific Workflows Using Dynamic Embedding Anne H.H. Ngu, Nicholas Haasch Terence.
February 12, 2009 Center for Hybrid and Embedded Software Systems Encapsulated Model Transformation Rule A transformation.
Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
An Extensible Type System for Component-Based Design
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Causality Interfaces and Compositional Causality Analysis Rachel Zhou UC Berkeley.
A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for.
Heterochronous Dataflow in Ptolemy II Brian K. Vogel EE249 Project Presentation, Dec. 4, 1999.
SEC PI Meeting Annapolis, May 8-9, 2001 Component-Based Design of Embedded Control Systems Edward A. Lee & Jie Liu UC Berkeley with thanks to the entire.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley System-Level Types for Component-Based Design Edward A.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Concurrent Component Patterns, Models of Computation, and.
Visual Basic Introduction IDS 306 from Shelly, Cashman & Repede Microsoft Visual Basic 5: Complete Concepts and Techniques.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Workflow API and workflow services A case study of biodiversity analysis using Windows Workflow Foundation Boris Milašinović Faculty of Electrical Engineering.
Application architectures
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Architectural Design.
Programming the Cell Multiprocessor Işıl ÖZ. Outline Cell processor – Objectives – Design and architecture Programming the cell – Programming models CellSs.
Introduction To System Analysis and design
Chapter 10 Architectural Design
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Composing Models of Computation in Kepler/Ptolemy II
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
- 1 - Embedded Systems - SDL Some general properties of languages 1. Synchronous vs. asynchronous languages Description of several processes in many languages.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
C. André, J. Boucaron, A. Coadou, J. DeAntoni,
Streamflow - Programming Model for Data Streaming in Scientific Workflows Chathura Herath.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
The 14 th IEEE Real-Time and Embedded Technology and Applications Symposium, April 2008 Real-Time Distributed Discrete-Event Execution with Fault Tolerance.
Design Languages in 2010 Chess: Center for Hybrid and Embedded Software Systems Edward A. Lee Professor UC Berkeley Panel Position Statement Forum on Design.
Visual Specification of a DSL Processor Debugger Tamás Mészáros and Tihamér Levendovszky Budapest University of Technology and Economics.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
1 Chapter 4: Creating Simple Queries 4.1 Introduction to the Query Task 4.2 Selecting Columns and Filtering Rows 4.3 Creating New Columns with an Expression.
School of Computer Science, The University of Adelaide© The University of Adelaide, Control Data Flow Graphs An experiment using Design/CPN Sue Tyerman.
Visualization Four groups Design pattern for information visualization
DESIGN OF SOFTWARE ARCHITECTURE
Incremental Checkpointing with Application to Distributed Discrete Event Simulation Thomas Huining Feng and Edward A. Lee {tfeng,
Actor Oriented Programming with CAL -designing embedded system components Johan Eker Department of Automatic Control, Lund University Chris Chang, Jörn.
ProShell Procedure Framework Status MedAustron Control System Week 2 October 7 th, 2010 Roland Moser PR a-RMO, October 7 th, 2010 Roland Moser 1.
CS223: Software Engineering
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Activity Diagram.
Web Ontology Language for Service (OWL-S)
Event Relation Graphs and Extensions in Ptolemy II
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
The Extensible Tool-chain for Evaluation of Architectural Models
Model Transformation with Hierarchical Discrete-Event Control
Model Transformation with Hierarchical Discrete-Event Control
Shanna-Shaye Forbes Ben Lickly Man-Kit Leung
Retargetable Model-Based Code Generation in Ptolemy II
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Chapter 20 Object-Oriented Analysis and Design
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Model Transformation with the Ptera Controller
Overview of Workflows: Why Use Them?
Presentation transcript:

February 12, 2009 Center for Hybrid and Embedded Software Systems Model Transformation Using ERG Controller Thomas H. Feng Edward A. Lee Encapsulated Model Transformation Rule A transformation rule contains 3 components: 1.Pattern: match a subgraph in a given model 1)It is a graph containing interconnected actors and relations. 2)Matchers (A in the example) can be used to match arbitrary actors satisfying certain criteria 3)Textual constraints are evaluated once a subgraph is found and for the match to be successful, all constraints must be true. 2.Replacement: replace the matched subgraph with a new graph. Operations can be performed on the actors. In this case, C1’s value is calculated and set by a (hidden) operation. 3.Correspondence: relate objects in pattern to replacement (e.g., C1 in pattern and C1 in replacement, and the two relations in them, are related) Event Relationship Graph (ERG) A discrete-event model of computation for event-oriented designs (compared to actor-oriented, object-oriented, state-oriented, etc) originally introduced in Semantics 1.Initialize event queue to contain only the initial events (green ones) 2.Repeat until event queue is empty 1)Remove the first event from event queue 2)Execute its action 3)For each outgoing edge whose guard is true Schedule the event that the edge points to 4)If the event is a final event (red ones) Clear the event queue Hierarchical Composition 1.Refinements in ERG: an event can be associated with a refinement. The refinement is fired when: 1)the event is processed, or 2)input is received at any input port 2.ERG as refinement in DE Event Library (Compared to Actor Library) Analysis Analyze the model and annotate it with properties (Jackie Leung and Thomas Mandl) Execution Control Execute the model Wait for real time to elapse Stop the transformation workflow Test the guards on the outgoing edges IO Clone the model List all files in the directory with filters Read the model stored in a file Output the model to a file User Interaction Pop up a dialog to ask the user for parameters Wait for input and report back after t in model time Report a message in a window or a dialog Set window properties (on-top, size, enabled, etc) Transformation Perform pattern matching and report result Perform pattern matching and then transformation View the model in a separate window Generic Fire an action specified in the Ptolemy action language, and fire the submodel if there is one associated with it as a refinement And Much More… Actions can be easily extended with an API. Override the fire method to perform customized actions (similar to the fire of actors): public RefiringData fire(ArrayToken arguments) throws IllegalActionException; Example Applications ERG o Simulate sequential discrete-event processes o Compose with concurrent models of computation (DE, dataflow, etc) for parallel execution o Describe dependency relationship between tasks in a workflow o Model graphical user interface Model Transformation o Statically optimize models based on analysis result o Automatically search and replace patterns o Construct new models by transforming an empty model o Dynamically configure model structures according to the run-time states o Simulate structural evolution of systems Statically evaluate an arithmetic operation (plus, multiply or maximum) on 2 consts