Visual Specification of a DSL Processor Debugger Tamás Mészáros and Tihamér Levendovszky Budapest University of Technology and Economics.

Slides:



Advertisements
Similar presentations
Budapest University of Technology and EconomicsDagstuhl 2004 Department of Measurement and Information Systems 1 Towards Automated Formal Verification.
Advertisements

STATEMATE A Working Environment for the Development of Complex Reactive Systems.
Hydra (A General Framework for Formalizing UML with Formal Languages for Embedded Systems*) *from the Ph.D. thesis of William E. McUmber Software Engineering.
Chapter 10 The Traditional Approach to Design
Semantic Translation of Simulink/Stateflow Models to Hybrid Automata using Graph Transformations A. Agarwal, Gy. Simon, G. Karsai ISIS, Vanderbilt University.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Programming Distributed Systems Lab Institute of Computer Science University of Augsburg Universitätsstraße 14, D Augsburg Tel.: (+49) 821/ ,
The Knowledge Industry Survival Strategy (KISS) Tony Clark, Thames Valley University, London, UK Jorn Bettin, Sofismo, Switzerland.
Detailed Design Kenneth M. Anderson Lecture 21
© 2005 Prentice Hall12-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
February 12, 2009 Center for Hybrid and Embedded Software Systems Model Transformation Using ERG Controller Thomas H. Feng.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
© 2008 IBM Corporation Behavioral Models for Software Development Andrei Kirshin, Dolev Dotan, Alan Hartman January 2008.
An Introduction to Rational Rose Real-Time
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
GReAT: Graph Rewriting And Transformation Presenter: Yuehua Lin 2/17/04, Tuesday Slides help from Aditya Agrawal
Behaviour-Preserving Model Transformation Arend Rensink, University of Twente IPA Spring Days, 18 April 2012.
An Information Theory based Modeling of DSMLs Zekai Demirezen 1, Barrett Bryant 1, Murat M. Tanik 2 1 Department of Computer and Information Sciences,
Reverse Engineering of Web Pages based on Derivations and Transformations L.Bouillon, Q.Limbourg, J.Vanderdonckt, B.Michotte Université catholique de Louvain,
Yu SunUniversity of Alabama at Birmingham PAR Works Jeff Gray University of Alabama Montpellier, France July 3rd, 2013 This research is supported.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Testing phases. Test data Inputs which have been devised to test the system Test cases Inputs to test the system and the predicted outputs from these.
AToM 3 : A Tool for Multi- Formalism and Meta-Modelling Juan de Lara (1,2) Hans Vangheluwe (2) (1) ETS Informática Universidad Autónoma de Madrid Madrid,
1 MDWE'2008, Toulouse, France, September 30, 2008 A Comparative Analysis of Transformation Engines for User Interface Development Juan Manuel González.
Building Tools by Model Transformations in Eclipse Oskars Vilitis, Audris Kalnins, Edgars Celms, Elina Kalnina, Agris Sostaks, Janis Barzdins Institute.
Models for Language Engineering Bruno F. Barroca.
1 Software Design Reference: Software Engineering, by Ian Sommerville, Ch. 12 & 13, 5 th edition and Ch. 10, 6 th edition.
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
SaveUML System design. System overview Possible...
1 Software Design Overview Reference: Software Engineering, by Ian Sommerville, Ch. 12 & 13.
What is Computer Science? “Computer Science is no more about computers than astronomy is about telescopes.” - Edsger Dijkstra “Computer Science is no more.
Systems Analysis and Design in a Changing World, 3rd Edition
Procedures for managing workflow components Workflow components: A workflow can usually be described using formal or informal flow diagramming techniques,
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
C. André, J. Boucaron, A. Coadou, J. DeAntoni,
DSLs: The Good, the Bad, and the Ugly Tihamér Levendovszky Institute for Software-Integrated Systems Vanderbilt University Nashville, TN.
TAL7011 – Lecture 4 UML for Architecture Modeling.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
Nucleus BridgePoint Roadmap Bill Tanner Engineering Manager.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
UML MARTE Time Model for Spirit IP-XACT Aoste Project INRIA Sophia-Antipolis.
Semantics for DSL Group Members: Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez, Greg Sullivan,Ximing Yu.
Budapest University of Technology and Economics Technical University of Darmstadt Real-Time Systems Lab Benchmarking for Graph Transformation Gergely Varró.
Reusable Specification of Non-functional Properties in DSLs Francisco Durán, Steffen Zschaler, and Javier Troya 28 September, 2012.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Weaving a Debugging Aspect into Domain-Specific Language Grammars SAC ’05 PSC Track Santa Fe, New Mexico USA March 17, 2005 Hui Wu, Jeff Gray, Marjan Mernik,
BPEL Business Process Engineering Language A technology used to build programs in SOA architecture.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
Static Techniques for V&V. Hierarchy of V&V techniques Static Analysis V&V Dynamic Techniques Model Checking Simulation Symbolic Execution Testing Informal.
A Framework for Verifying High-Assurance Transformation System (HATS) Fares Fraij December 3, 2003.
Automaton-Based Approach for Defining Dynamic Semantics of DSLs Ulyana Tikhonova St. Petersburg State Polytechnical University,
1 Budapest University of Technology and Economics Department of Measurement and Information Systems Budapest University of Technology and Economics Fault.
UML (Unified Modeling Language)
Introduction to Software Testing (2nd edition) Chapter 5 Criteria-Based Test Design Paul Ammann & Jeff Offutt
UML Diagrams By Daniel Damaris Novarianto S..
SysML v2 Formalism: Requirements & Benefits
Activity Diagram.
Graph Coverage for Specifications CS 4501 / 6501 Software Testing
UML Diagrams Jung Woo.
Online Shopping APP.
Software Architecture & Design Pattern
UML Activity Diagrams & State Charts
Behavioral Models for Software Development
Implementing Language Extensions with Model Transformations
Unified Modeling Language
Model Transformation with the Ptera Controller
Implementing Language Extensions with Model Transformations
Presentation transcript:

Visual Specification of a DSL Processor Debugger Tamás Mészáros and Tihamér Levendovszky Budapest University of Technology and Economics

Overview  Defining the Dynamic Behavior of Graphical DSLs Animation Framework  A Case Study Graph transformation debugger

Building DSLs  Abstract syntax (rules of the language) Metamodeling  Concrete syntax (visual appearance) Annotations to metamodel Textual languages DSL + processing  Dynamic behavior?

Defining Dynamic Behavior  Annotation to metamodel  Textual programming language constructs  DSL Visual Modeling and Transformation System (VMTS) Animation Framework

THE VMTS ANIMATION FRAMEWORK Part I.

Animation Framework Overview

VMTS Animation Framework  Separating animation from model simulation The domain knowledge is considered black-box Animation logic is described with an event-driven state machine Integration with an event-driven approach  The integration is supported with visual modeling techniques  Processing animation models Generating skeleton for event handlers Generating executable application from animator models

VMTS Animation Framework  Event handler model Event-driven interface for external components Elements  Events  Entites ( event parameters)  Ports

VMTS Animation Framework  Animator Event-driven state machine Port-based interface States Transitions  Guard expression  Action expression

VMTS Animation Framework  High Level Animation Model Event handler Animator Port Event route

THE VMTS TRANSFORMATION DEBUGGER Part II.

Graph rewriting  Rewriting rule  Host graph

VMTS model transformation engine  Graph rewriting-based approach Rewriting rules  Searching for graph patterns (LHS graph)  Replacing matches with a substitue pattern (RHS) Control sequence  Visual Control Flow Language Rule application Conditional branching Exhaustive rule application Parameter passing between rules

Model transformation debugger  Goals Visualization of input and output models Animating the Control Flow model Visualizing the executed rewriting rule Continuous and step-by-step execution, breakpoints, jumping in the Control Flow Online editing of input and output models

Model transformation debugger  Event handler model Wrapping the transformation engine

Model transformation debugger  High-level animation model Event handlers  UI, GT, Timer Animators  GT, Highlight, hotkey HighlightGT

Model transformation debugger  State machine model (SIM_GT) 1) Init 2) Idle 3) Process start 4) Process edge  Breakpoint 5) Process rule node 6) Decision node 7) End node

Debugger – in action

Summary

Thank you for your attention!