DSL Design. Overview of DSLE. DSL Design. DSL Desing. Domain specific languages

Size: px
Start display at page:

Download "DSL Design. Overview of DSLE. DSL Design. DSL Desing. Domain specific languages"

Transcription

1 Overview of DSLE Model driven software enineerin in eneral Grammars, and meta-models Code eneration Model-driven enineerin Goal: Raisin the level of abstraction from the computin domain to the problem domain MDE combines: Domain-specific modelin lanuaes / Faculteit Wiskunde en Informatica PAGE 0 [1] D. C. Schmidt: Model-driven enineerin IEEE Computer, vol. 39, no. 2, pp , PAGE 1 DSL Desin Domain specific lanuaes a lanuae that offers, throuh appropriate notations and abstractions, expressive power focused on, and usually restricted to, a particular problem domain [2] [2] A. van Deursen, P. Klint, and J. Visser: Domain-specific lanuaes: An annotated biblioraphy SIGPLAN Notices, vol. 35, no. 6, pp , Pros Expression of the solution in terms of domain concepts Enhanced productivity, it reliability, maintainability, and portability Domain knowlede contained in lanuae Cons Cost of DSL implementation and education Mostly concise and larely self- documentin Difficulty of findin the riht scope and balancin between domainspecificity and eneral-purpose constructs Solutions for a limited set of problems Potentially less efficient code PAGE 2 PAGE 3

2 Domain-specific lanuae desin: Domain Analysis 1. Domain analysis Identifyin the objects, operations and relationships between them 2. Lanuae desin 3. Lanuae implementation A problem domain is defined by consensus, and its essence is the shared understandin of some community [3] [3] G. Arano: Domain analysis: From art form to enineerin discipline SIGSOFT Software Enineerin Notes, vol. 14, no. 3, pp , PAGE 4 PAGE 5 conforms to Controller Brewer isparentof M Metametamodel 3 * taret Lifeline 1 * Messae SelectBlend Class 1 * Association conforms to source Aruments 1 1 Multiplicity * M 2 Metamodel SelectQuantity 1 Lanuae Implementation Strateies Stand-alone Embeddin * conforms to Actor Attribute MakeCoffee(Recipe, Object int) Model Type M 1 Translation modeled by M 0 Object PAGE 7

3 Domain Specific Lanuae Prorammin linuistics: syntax semantics pramatics (or methodoloy): the way the lanuae is intended to be used Requirements enineerin for domain knowlede Prorammin lanuae vs. Specification lanuae Universal, any problem must be expressible Focused on modelin not on implementation ti Domain specific lanuae Created for a specific c problem domain Implementable / Faculteit Wiskunde en Informatica PAGE 8 / Faculteit Wiskunde en Informatica PAGE 9 Overview of DSLE Model driven software enineerin in eneral Grammars and meta-models Code eneration Models increase the level of abstraction used for both hardware and software desin often manually translated into desin documents and code no uarantee for consistency between model, desin and resultin code Models increase the quality of the code via model checkin Models increase the efficiency of software development code eneration / Faculteit Wiskunde en Informatica PAGE 10 / Faculteit Wiskunde en Informatica PAGE 11

4 Mappins are defined on meta-models The mappin is defined with meta-models; one metalevel hiher than the input and output models of the transformation s are defined on models A transformation implements a mappin How are the meta-models of Xtext mapped to metamodels describin the abstract syntax? General architecture: Parse/construct t an input model (Xtext/GMF) t/gmf) Map concrete syntax model to abstract syntax model Apply transformation at o from input to output model Unparse the output model / Faculteit Wiskunde en Informatica PAGE 12 / Faculteit Wiskunde en Informatica PAGE 13 Source Meta-model <<InstanceOf>> Mappin based on Taret Meta-model <<InstanceOf>> A model transformation takes input and chanes the input, or produces output transforms accordin to a predefined d mappin is used in run time Input Model Output Model Two main cateories of transformations Vertical or horizontal transformations Exoenous or endoenous transformations / Faculteit Wiskunde en Informatica PAGE 14 / Faculteit Wiskunde en Informatica PAGE 15

5 Vertical transformations Source model is at a different level of abstraction than the taret model Examples of vertical transformation refinement (specialization) PIM PSM transformations abstraction (eneralization) Horizontal transformations Source model has the same level of abstraction as taret model not to be confused with meta-levels Examples of horizontal transformation refactorin merin / Faculteit Wiskunde en Informatica PAGE 16 / Faculteit Wiskunde en Informatica PAGE 17 Model transformation Endoenous transformations: between same meta-models Taxonomy Horizontal Vertical Exoenous transformations: ti between different meta-models Endoenous Refactorin Refinement Exoenous Miration Code eneration Further distinction: syntactic vs. semantic transformation / Faculteit Wiskunde en Informatica PAGE 18 / Faculteit Wiskunde en Informatica PAGE 19

6 Approach Model transformation formalisms Meta-metamodel ATL Xtend ASF+SDF Strateo/XT Source Metamodel Source Model Lanuae Definition Instance of Taret Metamodel Taret Model Xtext Xpand QVT Relations QVT Operations QVT Core VIATRA Tefkat ETL (Epsilon) GrGen Input Output Platform: Eclipse and EMF / Faculteit Wiskunde en Informatica PAGE 20 / Faculteit Wiskunde en Informatica PAGE 21 How are the meta-models of Xtext, for instance, mapped to meta-models describin the abstract syntax? General architecture: Parse/construct st an input model (Xtext/GMF) t/g Map concrete syntax model to abstract syntax model Apply transformation from input to output model Unparse the output model / Faculteit Wiskunde en Informatica PAGE 22

Model transformations. Overview of DSLE. Model transformations. Model transformations. The 4-layer architecture

Model transformations. Overview of DSLE. Model transformations. Model transformations. The 4-layer architecture Overview of DSLE Model driven software engineering g in general Grammars, signatures and meta-models DSL Design Code generation Models increase the level of abstraction used for both hardware and software

More information

Introduction to MDE and Model Transformation

Introduction to MDE and Model Transformation Vlad Acretoaie Department of Applied Mathematics and Computer Science Technical University of Denmark rvac@dtu.dk DTU Course 02291 System Integration Vlad Acretoaie Department of Applied Mathematics and

More information

What is a language? Eclipse IMP: ... is Generic Language. Technology (GLT)? What is a Program Generator?

What is a language? Eclipse IMP:  ... is Generic Language. Technology (GLT)? What is a Program Generator? Examples of Generic IPEs What... Eclipse IMP: http://eclipse- -imp.sourcefore.net/imp.html... is a lanuae? Af framework kfor Generi ic Interated ddevelopment Environments (IDE) The oal of the Eclipse IMP

More information

Model transformations. Model transformations. Model transformations. Model transformations

Model transformations. Model transformations. Model transformations. Model transformations The initialization of the attributes of a generated target model element by assigning references: Model target element generated by current rule Default target model element generated by another rule Non-default

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

A Survey on Domain-Specific Languages in Robotics

A Survey on Domain-Specific Languages in Robotics A Survey on Domain-Specific Languages in Robotics Arne Nordmann Nico Hochgeschwender Sebastian Wrede October 21st 2014 0 Arne Nordmann, Nico Hochgeschwender, Sebastian Wrede A Survey on Domain-Specific

More information

Leveraging Models at Run-time to Retrieve Information for Feature Location

Leveraging Models at Run-time to Retrieve Information for Feature Location Leverain Models at Run-time to Retrieve Information for Feature Location Lorena Arcea,2, Jaime Font,2 Øystein Hauen 2,3, and Carlos Cetina San Jore University, SVIT Research Group, Zaraoza, Spain {larcea,jfont,ccetina}@usj.es

More information

The Model Driven Architecture. Dennis Wagelaar Viviane Jonckers Software Languages Lab

The Model Driven Architecture. Dennis Wagelaar Viviane Jonckers Software Languages Lab The Model Driven Architecture Dennis Wagelaar Viviane Jonckers Software Languages Lab Special session: ( ) The Model Driven Architecture origins, goals concepts Platform, CIM, PIM, PSM... Models and meta-models

More information

Introduction to Dependable Systems: Meta-modeling and modeldriven

Introduction to Dependable Systems: Meta-modeling and modeldriven Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software

More information

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language Plan Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

Language engineering and Domain Specific Languages

Language engineering and Domain Specific Languages Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh Plan 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

with openarchitectureware

with openarchitectureware Model-Driven Development with openarchitectureware Markus Völter voelter@acm.orgorg www.voelter.de Sven Efftinge sven@efftinge.de www.efftinge.de Bernd Kolb bernd@kolbware.de www.kolbware.de 2006-7 Völter,

More information

SCENARIO-BASED REQUIREMENTS MODELLING

SCENARIO-BASED REQUIREMENTS MODELLING SCENARIO-BASED REQUIREMENTS MODELLING A PROGRESS REPORT SUBMITTED TO THE UNIVERSITY OF MANCHESTER IN PARTIAL FULLFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE IN THE FUCALTY OF ENGINEERING

More information

... is a Programming Environment (PE)?... is Generic Language Technology (GLT)?

... is a Programming Environment (PE)?... is Generic Language Technology (GLT)? Introduction to Generic Language Technology Today Mark van den Brand Paul Klint Jurgen Vinju Tools for software analysis and manipulation Programming language independent (parametric) The story is from

More information

Model-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript

Model-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript Freiberg University of Mining and Technology The University of Resources. Since 1765. WEB3D 2012-17th International Conference on 3D Web Technology Model-Driven Iterative Development of 3D Web-Applications

More information

An Introduction to MDE

An Introduction to MDE An Introduction to MDE Alfonso Pierantonio Dipartimento di Informatica Università degli Studi dell Aquila alfonso@di.univaq.it. Outline 2 2» Introduction» What is a Model?» Model Driven Engineering Metamodeling

More information

A SUIF Interface Module for Eli. W. M. Waite. University of Colorado

A SUIF Interface Module for Eli. W. M. Waite. University of Colorado A SUIF Interace Module or Eli W. M. Waite Department o Electrical and Computer Enineerin University o Colorado William.Waite@Colorado.edu 1 What is Eli? Eli [2] is a domain-specic prorammin environment

More information

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain

More information

Book. Signatures and grammars. Signatures and grammars. Syntaxes. The 4-layer architecture

Book. Signatures and grammars. Signatures and grammars. Syntaxes. The 4-layer architecture Book Generic Language g Technology (2IS15) Syntaxes Software Language g Engineering g by Anneke Kleppe (Addison Wesley) Prof.dr. Mark van den Brand / Faculteit Wiskunde en Informatica 13-9-2011 PAGE 1

More information

Model Driven Engineering (MDE)

Model Driven Engineering (MDE) Model Driven Engineering (MDE) Yngve Lamo 1 1 Faculty of Engineering, Bergen University College, Norway 26 April 2011 Ålesund Outline Background Software Engineering History, SE Model Driven Engineering

More information

Introduction to Model Driven Engineering using Eclipse. Frameworks

Introduction to Model Driven Engineering using Eclipse. Frameworks Introduction to Model Driven Engineering using Eclipse Model Driven Development Generator s Bruce Trask Angel Roman MDE Systems Abstraction Model Driven Development Refinement 1 Part I Agenda What is Model

More information

Renaud Durlin. May 16, 2007

Renaud Durlin. May 16, 2007 A comparison of different approaches EPITA Research and Development Laboratory (LRDE) http://www.lrde.epita.fr May 16, 2007 1 / 25 1 2 3 4 5 2 / 25 1 2 3 4 5 3 / 25 Goal Transformers:

More information

Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger

Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger Reuses some material from: Andrzej Wasowski, Model-Driven Development, ITU Copenhagen Where I am from WASP 2017

More information

Introduction to OpenArchitectureWare

Introduction to OpenArchitectureWare Introduction to OpenArchitectureWare Dr. Neil Loughran Neil.Loughran@sintef.no 20 th April 2009 ICT 1 Objective To give some insights into an alternative model transformation approach i.e. OpenArchitectureWare

More information

Towards Generating Domain-Specific Model Editors with Complex Editing Commands

Towards Generating Domain-Specific Model Editors with Complex Editing Commands Towards Generating Domain-Specific Model Editors with Complex Editing Commands Gabriele Taentzer Technical University of Berlin Germany gabi@cs.tu-berlin.de May 10, 2006 Abstract Domain specific modeling

More information

Software Language Engineering of Architectural Viewpoints

Software Language Engineering of Architectural Viewpoints Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr

More information

Sequence Diagram Generation with Model Transformation Technology

Sequence Diagram Generation with Model Transformation Technology , March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,

More information

The SpecC Methodoloy Technical Report ICS December 29, 1999 Daniel D. Gajski Jianwen Zhu Rainer Doemer Andreas Gerstlauer Shuqin Zhao Department

The SpecC Methodoloy Technical Report ICS December 29, 1999 Daniel D. Gajski Jianwen Zhu Rainer Doemer Andreas Gerstlauer Shuqin Zhao Department The SpecC Methodoloy Technical Report ICS-99-56 December 29, 1999 Daniel D. Gajski Jianwen Zhu Rainer Doemer Andreas Gerstlauer Shuqin Zhao Department of Information and Computer Science University of

More information

Softwaretechnik. Lecture 19: Model Driven Engineering. Peter Thiemann. University of Freiburg, Germany

Softwaretechnik. Lecture 19: Model Driven Engineering. Peter Thiemann. University of Freiburg, Germany Softwaretechnik Lecture 19: Model Driven Engineering Peter Thiemann University of Freiburg, Germany 23.07.2012 Peter Thiemann (Univ. Freiburg) Softwaretechnik 23.07.2012 1 / 50 Introduction MDA Introduction

More information

SMML: Software Measurement Modeling Language

SMML: Software Measurement Modeling Language SMML: Software Modeling Language Beatriz Mora, Félix García, Francisco Ruiz, Mario Piattini Alarcos Research Group, Department of Computer Science, University of Castilla-La Mancha {Beatriz.Mora Felix.Garcia

More information

<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany

<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany Information Systems University of Koblenz Landau, Germany Joint Metamodels for UML and OWL Ontologies & Software Tech: Starting Point @Koblenz IST Institute for Software Technology @Koblenz OWL Model theory

More information

A little History Domain Specific Languages Examples Tools Benefits A more theoretical View Programming and Modeling The LWES Project Bonus: Best

A little History Domain Specific Languages Examples Tools Benefits A more theoretical View Programming and Modeling The LWES Project Bonus: Best Domain Specific Languages Markus Voelter Independent/itemis voelter@acm.org A little History Domain Specific Languages Examples Tools Benefits A more theoretical View Programming and Modeling The LWES

More information

Specification of Real-Time Interaction Constraints

Specification of Real-Time Interaction Constraints Specification of Real-Time Interaction Constraints Brian Nielsen Aalbor University Dpt. of Computer Science Fredrik Bajersvej 7E DK-922 Aalbor, Denmark Email: bnielsen@cs.auc.dk Shanpin Ren Gul Aha University

More information

Enhancing Xtext for General Purpose Languages

Enhancing Xtext for General Purpose Languages Enhancing Xtext for General Purpose Languages Adolfo Sánchez-Barbudo Herrera Department of Computer Science, University of York, UK. asbh500@york.ac.uk Abstract. Xtext is a popular language workbench conceived

More information

CSSE 490 Model-Based Software Engineering: More MBSD. Shawn Bohner Office: Moench Room F212 Phone: (812)

CSSE 490 Model-Based Software Engineering: More MBSD. Shawn Bohner Office: Moench Room F212 Phone: (812) CSSE 490 Model-Based Software Engineering: More MBSD Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: MBE Discipline Relate Model-Based Engineering

More information

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING Juan de Lara Computer Science Department Universidad Autónoma de Madrid (Spain) NWPT 12 Bergen, Norway MOTIVATION Model-Driven Engineering (MDE) is about

More information

MDD with OMG Standards MOF, OCL, QVT & Graph Transformations

MDD with OMG Standards MOF, OCL, QVT & Graph Transformations 1 MDD with OMG Standards MOF, OCL, QVT & Graph Transformations Andy Schürr Darmstadt University of Technology andy. schuerr@es.tu-darmstadt.de 20th Feb. 2007, Trento Outline of Presentation 2 Languages

More information

Modellierung operationaler Aspekte von Systemarchitekturen. Master Thesis presentation. October 2005 March Mirko Bleyh - Medieninformatik

Modellierung operationaler Aspekte von Systemarchitekturen. Master Thesis presentation. October 2005 March Mirko Bleyh - Medieninformatik Modellierung operationaler Aspekte von Systemarchitekturen Master Thesis presentation October 2005 March 2006 Agenda Goals Model-Driven Software Development Pro-active Infrastructure (PAI) Operational

More information

ATHABASCA UNIVERSITY RULE ENHANCED BUSINESS PROCESS MODELING OF SERVICE ORIENTED ARCHITECTURES LUIS ROCHA. A project submitted in partial fulfillment

ATHABASCA UNIVERSITY RULE ENHANCED BUSINESS PROCESS MODELING OF SERVICE ORIENTED ARCHITECTURES LUIS ROCHA. A project submitted in partial fulfillment ATHABASCA UNIVERSITY RULE ENHANCED BUSINESS PROCESS MODELING OF SERVICE ORIENTED ARCHITECTURES BY LUIS ROCHA A project submitted in partial fulfillment Of the requirements for the degree of MASTER OF SCIENCE

More information

2 IEICE TRANS. COMMUN., VOL. 0, NO Table 1 Classication of Replacement Policies. Replacement Re-reference likelihood Non-uniformity Policies T

2 IEICE TRANS. COMMUN., VOL. 0, NO Table 1 Classication of Replacement Policies. Replacement Re-reference likelihood Non-uniformity Policies T IEICE TRANS. COMMUN., VOL. 0, NO. 0 2000 1 PAPER IEICE Transactions on Communications Exploitin Metadata of Absent Objects for Proxy Cache Consistency Jooyon Kim y,hyokyun Bahn yy, Nonmembers, and Kern

More information

Abstracting Complex Languages through Transformation and Composition

Abstracting Complex Languages through Transformation and Composition Fakultät Informatik, Institut für Software- und Multimediatechnologie, Lehrstuhl Softwaretechnologie Abstracting Complex Languages through Transformation and Composition Jendrik Johannes, Steffen Zschaler,

More information

ISSUES OF ITERATIVE MDA-BASED SOFTWARE DEVELOPMENT PROCESSES

ISSUES OF ITERATIVE MDA-BASED SOFTWARE DEVELOPMENT PROCESSES ISSUES OF ITERATIVE MDA-BASED SOFTWARE DEVELOPMENT PROCESSES MASTER THESIS Author: Geert Vos Thesis for the masters degree Computer Science. Department of Computer Science, University of Twente, the Netherlands.

More information

Christian Doppler Laboratory

Christian Doppler Laboratory Christian Doppler Laboratory Software Engineering Integration For Flexible Automation Systems AutomationML Models (in EMF and EA) for Modelers and Software Developers Emanuel Mätzler Institute of Software

More information

Applying Model Driven Technologies in the Creation. of Domain Specific Modeling Languages

Applying Model Driven Technologies in the Creation. of Domain Specific Modeling Languages Applying Model Driven Technologies in the Creation Model Driven Development Language Editor Generator Abstraction Model Driven Development Refinement of Domain Specific Modeling Languages Bruce Trask Angel

More information

Generic Language Technology

Generic Language Technology Generic Language Technology Working with Xtext Introduction We have used Xtext to define a concrete syntax for a domain-specific language called Simple Language of Communicating Objects (SLCO). This language

More information

EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework

EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework Thorsten Arendt a, Florian Mantz b, Gabriele Taentzer a a Philipps-Universität Marburg, FB12 - Mathematics

More information

On Open Source Tools for Behavioral Modeling and Analysis with fuml and Alf

On Open Source Tools for Behavioral Modeling and Analysis with fuml and Alf Open Source Software for Model Driven Engineering 2014 On Open Source Tools for Behavioral Modeling and Analysis with fuml and Alf Zoltán Micskei, Raimund-Andreas Konnerth, Benedek Horváth, Oszkár Semeráth,

More information

Grammars. Prof. Andreas Prinz. Introduction, Compilers. Examples Meta-models vs. Grammars Summary

Grammars. Prof. Andreas Prinz. Introduction, Compilers. Examples Meta-models vs. Grammars Summary Meta-models and Grammars Prof. Andreas Prinz Introduction, Compilers Modelling & Meta-modelling Examples Meta-models vs. Grammars Summary Compilers Graphical Editor Parser Text editor Static checks (OCL)

More information

Improving robotic machining accuracy by real-time compensation

Improving robotic machining accuracy by real-time compensation University of Wollonon Research Online Faculty of Enineerin - Papers (Archive) Faculty of Enineerin and Information Sciences 2009 Improvin robotic machinin accuracy by real-time compensation Zeni Pan University

More information

A Comparison of Ecore and GOPPRR through an Information System Meta Modeling Approach

A Comparison of Ecore and GOPPRR through an Information System Meta Modeling Approach A Comparison of Ecore and GOPPRR through an Information System Meta Modeling Approach Vladimir Dimitrieski, Milan Čeliković, Vladimir Ivančević and Ivan Luković University of Novi Sad, Faculty of Technical

More information

The etrice Eclipse Project Proposal

The etrice Eclipse Project Proposal The etrice Eclipse Project Proposal Dipl.-Ing. Thomas Schütz, Protos Software GmbH Eclipse Embedded Day 2010, Stuttgart Agenda Motivation Scope of etrice ROOM Language Codegenerators Middleware Realization

More information

A Taxonomy of Model Transformation

A Taxonomy of Model Transformation Electronic Notes in Theoretical Computer Science 152 (2006) 125 142 www.elsevier.com/locate/entcs A Taxonomy of Model Transformation Tom Mens 1 Software Engineering Lab Université de Mons-Hainaut Mons,

More information

Static analysis and testing of executable DSL specification

Static analysis and testing of executable DSL specification Static analysis and testing of executable DSL specification Qinan Lai 1, Andy Carpenter 1 1 School of Computer Science, the University of Manchester, Manchester, UK {laiq,afc}@cs.man.ac.uk Keywords: Abstract:

More information

project in an industrial context

project in an industrial context Anatomy of a domain-specific language project in an industrial context Development and examination of a DSL demonstrator for elevator controllers Software Engineering, Architecture and Platform Technologies

More information

DRAFT. Consolidation of the Generator Infrastructure MDGEN Model Driven Generation

DRAFT. Consolidation of the Generator Infrastructure MDGEN Model Driven Generation Consolidation of the Generator Infrastructure MDGEN Model Driven Generation Date: October 16 th, 2012 Produced by: Mario Lovisi / Serano Colameo Version: 1.0 DRAFT Agenda Initial Situation / Goal of the

More information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM): viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information

More information

Lecture 6: Multicast

Lecture 6: Multicast Lecture 6: Multicast Challene: how do we efficiently send messaes to a roup of machines? Need to revisit all aspects of networkin Routin Autonomous systems and admin control Address allocation Conestion

More information

THE Cool PARALLEL PROGRAMMING LANGUAGE: DESIGN, IMPLEMENTATION, AND PERFORMANCE. a dissertation

THE Cool PARALLEL PROGRAMMING LANGUAGE: DESIGN, IMPLEMENTATION, AND PERFORMANCE. a dissertation THE Cool PARALLEL PROGRAMMING LANGUAGE: DESIGN, IMPLEMENTATION, AND PERFORMANCE a dissertation submi tted to the department of computer sci ence andthecommitteeonraduatestudies ofstanforduniversi ty inpartialfulfillmentoftherequirements

More information

Activities Common to Software Projects. Software Life Cycle. Activities Common to Software Projects. Activities Common to Software Projects

Activities Common to Software Projects. Software Life Cycle. Activities Common to Software Projects. Activities Common to Software Projects Activities Common to Software Projects Software Life Cycle Mark van den Brand Requirements and specification Domain analysis Defining the problem Requirements gathering Obtaining input from as many sources

More information

A Practical Approach to Bridging Domain Specific Languages with UML profiles

A Practical Approach to Bridging Domain Specific Languages with UML profiles A Practical Approach to Bridging Domain Specific Languages with profiles Anas Abouzahra, Jean Bézivin, Marcos Didonet Del Fabro, Frédéric Jouault ATLAS Group (INRIA & LINA, University of Nantes) {Abouzahra.Anas

More information

Dr. Klaus Fischer. Multiagent Systems Group DFKI GmbH Saarbrücken, Germany ICAART

Dr. Klaus Fischer. Multiagent Systems Group DFKI GmbH Saarbrücken, Germany ICAART Technologies for Semantic Interoperability in SOA Systems: Agent Technologies Dr. Klaus Fischer Multiagent Systems Group DFKI GmbH Saarbrücken, Germany ICAART 2011 1 Overview Context at DFKI An MDA Approach

More information

Chapter 5: Procedural abstraction. Function procedures. Function procedures. Proper procedures and function procedures

Chapter 5: Procedural abstraction. Function procedures. Function procedures. Proper procedures and function procedures Chapter 5: Procedural abstraction Proper procedures and function procedures Abstraction in programming enables distinction: What a program unit does How a program unit works This enables separation of

More information

CS793 Project: Code Clones Visual Representation

CS793 Project: Code Clones Visual Representation CS793 Project: Code Clones Visual Representation Yu Sun, Frédéric Jouault {yu.sun.cs, f.jouault}@gmail.com 12/5/2007 Goal Realize an uniform visual representation for analysis results of different code

More information

RLSRunner: Linking Rascal with K for Program Analysis

RLSRunner: Linking Rascal with K for Program Analysis RLSRunner: Linking Rascal with K for Program Analysis Mark Hills 1,2, Paul Klint 1,2, and Jurgen J. Vinju 1,2 1 Centrum Wiskunde & Informatica, Amsterdam, The Netherlands 2 INRIA Lille Nord Europe, France

More information

A Flexible Integration Strategy for In-Car Telematics Systems

A Flexible Integration Strategy for In-Car Telematics Systems A Flexible Interation Stratey for In-Car Telematics Systems Thomas Bauer Jens Herrmann Peter Liesmeyer Christopher Robinson-Mallett University of Potsdam Hasso-Plattner-Institute thomas.bauer @hpi.uni-potsdam.de

More information

ATL: Atlas Transformation Language. ATL User Manual

ATL: Atlas Transformation Language. ATL User Manual ATL: Atlas Transformation Language ATL User Manual - version 0.7 - February 2006 by ATLAS group LINA & INRIA Nantes Content 1 Introduction... 1 2 An Introduction to Model Transformation... 2 2.1 The Model-Driven

More information

Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)

Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Electronic Communications of the EASST Volume X (2010) Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Teaching Model Driven Language Handling Terje

More information

CISC836: Models in Software Development: Methods, Techniques and Tools

CISC836: Models in Software Development: Methods, Techniques and Tools CISC836: Models in Software Development: Methods, Techniques and Tools Topic 4: Code Generation with EMF Meta modeling Languages for meta models: Ecore Using EMF and Ecoreto define a data model Using EMF

More information

Ontology-based Model Transformation

Ontology-based Model Transformation Ontology-based Model Transformation Stephan Roser Advisor: Bernhard Bauer Progamming of Distributed Systems Institute of Computer Science, University of Augsburg, Germany [roser,bauer]@informatik.uni-augsburg.de

More information

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS MASTER THESIS AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS C.J.H. Weeïnk FACULTY OF ELECTRICAL ENGINEERING, MATHEMATICS AND COMPUTER SCIENCE SOFTWARE ENGINEERING EXAMINATION COMMITTEE dr.

More information

(Meta)Models between MetaEdit+

(Meta)Models between MetaEdit+ The Interchange of (Meta)Models between MetaEdit+ and Eclipse EMF Heiko Kern kern@informatik.uni-leipzig.de ni ig Nashville, Tennessee, 10/19/2008 1 Agenda 1. Introduction 2. MetaEdit-EMF-Bridge EMF 3.

More information

Semantics-Based Integration of Embedded Systems Models

Semantics-Based Integration of Embedded Systems Models Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current

More information

Slicing Multi-threaded Java Programs : A Case Study

Slicing Multi-threaded Java Programs : A Case Study Slicin Multi-threaded Java Prorams : A Case Study Matthew B. Dwyer y, James C. Corbett z, John Hatcliff y, Stefan Sokolowski y, Honjun Zhen y ydepartment of Computin and Information Sciences Kansas State

More information

ECLIPSE MODELING PROJECT

ECLIPSE MODELING PROJECT ECLIPSE MODELING PROJECT A Domain-Specific Language Toolkit Richard С. Gronback AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Pans Madrid

More information

Softwaretechnik Model Driven Architecture Meta Modeling

Softwaretechnik Model Driven Architecture Meta Modeling Softwaretechnik Model Driven Architecture Meta Modeling Prof. Dr. Peter Thiemann Universität Freiburg 22.06.2009 PT (Univ. Freiburg) Softwaretechnik Model Driven Architecture Meta Modeling 22.06.2009 1

More information

Composition and concurrent execution of heterogeneous domain-specific models

Composition and concurrent execution of heterogeneous domain-specific models Composition and concurrent execution of heterogeneous domain-specific models A work part of the GEMOC initiative Benoit Combemale Associate Professor, University of Rennes 1 Research Scientist, INRIA benoit.combemale@irisa.fr

More information

Dresden OCL2 in MOFLON

Dresden OCL2 in MOFLON Dresden OCL2 in MOFLON 10 Jahre Dresden-OCL Workshop Felix Klar Felix.Klar@es.tu-darmstadt.de ES Real-Time Systems Lab Prof. Dr. rer. nat. Andy Schürr Dept. of Electrical Engineering and Information Technology

More information

Whole Platform Foundation. The Long Way Toward Language Oriented Programming

Whole Platform Foundation. The Long Way Toward Language Oriented Programming Whole Platform Foundation The Long Way Toward Language Oriented Programming 2008 by Riccardo Solmi made available under the Creative Commons License last updated 22 October 2008 Outline Aim: Engineering

More information

A Model-Driven Approach for Telecommunications Network Services Definition

A Model-Driven Approach for Telecommunications Network Services Definition A Model-Driven Approach for Telecommunications Network Services Definition Vanea Chiprianov 1,3, Yvon Kermarrec 1,3,andPatrickD.Alff 2 1 Institut Telecom, Telecom Bretagne, UMR CNRS 3192 Lab-STICC Technopole

More information

An Evaluation of Domain-Specific Language Technologies for Code Generation

An Evaluation of Domain-Specific Language Technologies for Code Generation An Evaluation of Domain-Specific Language Technologies for Code Generation Christian Schmitt, Sebastian Kuckuk, Harald Köstler, Frank Hannig, Jürgen Teich Hardware/Software Co-Design, System Simulation,

More information

Train control language teaching computers interlocking

Train control language teaching computers interlocking Computers in Railways XI 651 Train control language teaching computers interlocking J. Endresen 1, E. Carlson 1, T. Moen 1, K. J. Alme 1, Ø. Haugen 2, G. K. Olsen 2 & A. Svendsen 2 1 ABB, Bergensveien

More information

A DEMONSTRATION-BASED APPROACH FOR DOMAIN-SPECIFIC MODELING LANGUAGE CREATION HYUN CHO

A DEMONSTRATION-BASED APPROACH FOR DOMAIN-SPECIFIC MODELING LANGUAGE CREATION HYUN CHO A DEMONSTRATION-BASED APPROACH FOR DOMAIN-SPECIFIC MODELING LANGUAGE CREATION by HYUN CHO DR. JEFF GRAY, COMMITTEE CHAIR DR. BARRET BRYANT DR. JEFFREY CARVER DR. MARJAN MERNIK DR. RANDY SMITH DR. EUGENE

More information

Use of MS DSL Tools in the development process of a Domain-Specific Language

Use of MS DSL Tools in the development process of a Domain-Specific Language Use of MS DSL Tools in the development process of a Domain-Specific Language André Rosa 1, Vasco Amaral 1* and Bruno Barroca 1*, 1 Research Center for Informatics and Information Technologies, Faculdade

More information

Model-Driven Agents Development with ASEME

Model-Driven Agents Development with ASEME Model-Driven Agents Development with ASEME Nikolaos Spanoudakis 1,2 and Pavlos Moraitis 2 1 Technical University of Crete, Dept of Sciences, University Campus, 73100 Chania, Greece nikos@science.tuc.gr

More information

INF5120 Model-Based System Development

INF5120 Model-Based System Development INF5120 Model-Based System Development Lecture #3: Metamodelling and UML profiles, MDA technologies 04 February 2008 Brian Elvesæter, SINTEF 1 Outline Model-driven interoperability (MDI) framework MDA

More information

Dottorato di Ricerca in Informatica. Università di Bologna e Padova. Whole Platform. Riccardo Solmi. March 2005

Dottorato di Ricerca in Informatica. Università di Bologna e Padova. Whole Platform. Riccardo Solmi. March 2005 Dottorato di Ricerca in Informatica Università di Bologna e Padova Whole Platform Riccardo Solmi March 2005 Coordinatore: Prof. Özalp Babaoğlu Tutore: Prof. Andrea Asperti To my mother and my grandmother

More information

Domain-Specific Languages for Digital Forensics

Domain-Specific Languages for Digital Forensics Domain-Specific Languages for Digital Forensics Jeroen van den Bos Centrum Wiskunde & Informatica Nederlands Forensisch Instituut jeroen@infuse.org Abstract. Due to strict deadlines, custom requirements

More information

Small is Beautiful Building a flexible software factory using small DSLs and Small Models

Small is Beautiful Building a flexible software factory using small DSLs and Small Models Small is Beautiful Building a flexible software factory using small DSLs and Small Models Jos Warmer Partner, Ordina jos.warmer@ordina.nl 1 Modeling Maturity Levels MML 0: No specification MML 1: Textual

More information

Composite Domain-Specific Language Design and Development using Aspect-Oriented Weaving. Master thesis 60 credits

Composite Domain-Specific Language Design and Development using Aspect-Oriented Weaving. Master thesis 60 credits UNIVERSITY OF OSLO Department of Informatics Composite Domain-Specific Language Design and Development using Aspect-Oriented Weaving Master thesis 60 credits Henning Berg [hennb@ifi.uio.no] 1 st February

More information

Eclipse Development Tools for Epsilon

Eclipse Development Tools for Epsilon Eclipse Development Tools for Epsilon Dimitrios S. Kolovos, Richard F. Paige, and Fiona A.C. Polack Department of Computer Science, University of York, Heslington, York, YO10 5DD, UK. {dkolovos,paige,fiona@cs.york.ac.uk

More information

SERG. Spoofax: An Extensible, Interactive Development Environment for Program Transformation with Stratego/XT

SERG. Spoofax: An Extensible, Interactive Development Environment for Program Transformation with Stratego/XT Delft University of Technology Software Engineering Research Group Technical Report Series Spoofax: An Extensible, Interactive Development Environment for Program Transformation with Stratego/XT Karl Trygve

More information

Advanced Topics in Software Engineering (02265) Ekkart Kindler

Advanced Topics in Software Engineering (02265) Ekkart Kindler Advanced Topics in Software Engineering (02265) Recapitulation (I. Introduction ) 2 Levels of models ClassDiagram is an instance of PetriNet * Object * Class 1 start 1 end * Association concrete syntax

More information

Bus-Based Communication Synthesis on System-Level

Bus-Based Communication Synthesis on System-Level Bus-Based Communication Synthesis on System-Level Michael Gasteier Manfred Glesner Darmstadt University of Technoloy Institute of Microelectronic Systems Karlstrasse 15, 64283 Darmstadt, Germany Abstract

More information

HenshinTGG: TGG-Extension of HenshinEMF

HenshinTGG: TGG-Extension of HenshinEMF HenshinTGG: TGG-Extension of HenshinEMF BANFF Bidirectional Transformations 05-DECEMBER-203 Frank Hermann, frank.hermann@uni.lu SECAN-Lab Interdisciplinary Centre for Security, Reliability and Trust Université

More information

MetaTeD A Meta Language for Modeling. Telecommunication Networks. Kalyan S. Perumalla and Richard M. Fujimoto

MetaTeD A Meta Language for Modeling. Telecommunication Networks. Kalyan S. Perumalla and Richard M. Fujimoto MetaTeD A Meta Lanuae or Modelin Telecommunication Networks Kalyan S. Perumalla and Richard M. Fujimoto (kalyan@cc.atech.edu and ujimoto@cc.atech.edu) Collee o Computin Georia Institute o Technoloy Atlanta,

More information

Eclipse technology in IFMS Interface Management System

Eclipse technology in IFMS Interface Management System Eclipse Finance Day 2013 Eclipse technology in IFMS Interface Management System Marc Schlienger A story today about Eclipse and IFMS SOA at Credit Suisse The construction of a System MDD in the large Leveraging

More information

BLU AGE 2009 Edition Agile Model Transformation

BLU AGE 2009 Edition Agile Model Transformation BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation

More information

Towards xmof: Executable DSMLs based on fuml www.modelexecution.org Tanja Mayerhofer, Philip Langer, Manuel Wimmer Business Informatics Group Institute of Software Technology and Interactive Systems Vienna

More information

FPGA Trojans through Detecting and Weakening of Cryptographic Primitives

FPGA Trojans through Detecting and Weakening of Cryptographic Primitives FPGA Trojans throuh Detectin and Weakenin of Cryptoraphic Primitives Pawel Swierczynski, Marc Fyrbiak, Philipp Koppe, and Christof Paar, Fellow, IEEE Horst Görtz Institute for IT Security, Ruhr University

More information

Model-Based Social Networking Over Femtocell Environments

Model-Based Social Networking Over Femtocell Environments Proc. of World Cong. on Multimedia and Computer Science Model-Based Social Networking Over Femtocell Environments 1 Hajer Berhouma, 2 Kaouthar Sethom Ben Reguiga 1 ESPRIT, Institute of Engineering, Tunis,

More information