February 12, 2009 Center for Hybrid and Embedded Software Systems Encapsulated Model Transformation Rule A transformation.

Slides:



Advertisements
Similar presentations
Design by Contract.
Advertisements

Ch 12: Object-Oriented Analysis
Rule Based Operational Semantics Specification in Ptolemy Yanwar Asrigo COMP 763B - Modeling and Simulation Based Design 30 th April 2008.
DATAFLOW PROCESS NETWORKS Edward A. Lee Thomas M. Parks.
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.
1 SWE Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)
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.
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.
Application architectures
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.
Models of Computation for Embedded System Design Alvise Bonivento.
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.
February 12, 2009 Center for Hybrid and Embedded Software Systems Model Transformation Using ERG Controller Thomas H. Feng.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Application architectures
Architectural Design.
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
Architectural Design portions ©Ian Sommerville 1995 Establishing the overall structure of a software system.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
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.
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
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.
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.
CS223: Software Engineering
TensorFlow– A system for large-scale machine learning
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Activity Diagram.
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
Chapter 20 Object-Oriented Analysis and Design
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Model Transformation with the Ptera Controller
A Semantic Type System and Propagation
Presentation transcript:

February 12, 2009 Center for Hybrid and Embedded Software Systems Encapsulated Model Transformation Rule A transformation rule contains 3 components: 1.Pattern: match a subgraph in a given model 1)A graph containing interconnected actors and relations. 2)Matchers (e.g., C1 and C2 in SimplifyMultiply) 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 3.Correspondence: relate objects in pattern to replacement Model Transformation with the Ptera Controller Thomas H. Feng Edward A. Lee Ptera (Ptolemy Event Relationship Actor) A discrete-event model of computation for event-oriented designs (compared to actor-oriented, object-oriented, state-oriented, etc), originally introduced by Schruben 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 one) Clear event queue Hierarchical Composition 1.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, or 3)the refinement itself requests (with fireAt) 2.Ptera as refinement of 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 a specified amount of real time 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 user input but allow time to advance t 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 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 Example Applications Ptera Simulate sequential discrete-event processes Compose with concurrent models of computation (DE, dataflow, etc) to specify parallel processes Describe dependency relationship between tasks in workflows Model Transformation Statically optimize models based on analysis result Construct new models (by transforming an empty model) Dynamically configure system structures according to the run-time states Simulate structural evolution of systems SimplifyMultiply SimplifyDivide RemoveMultiply And Much More… Events have an easy-to-extend API similar to actors. Override the fire method to perform customized action: public RefiringData fire(ArrayToken arguments) throws IllegalActionException;