UDM An Infrastructure for Implementing Domain-Specific Modeling Languages Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya.

Slides:



Advertisements
Similar presentations
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Advertisements

Chapter 22 UML Tooks and UML as Blueprint Model-Driven Architecture (MDA) Object-Constraint Language (OCL)
Composable Metamodeling Environment Akos Ledeczi Institute for Software Integrated Systems Vanderbilt University
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
OMG‘s MDA: An Overview copyright © 2001, MATHEMA AG OMG‘s MDA: An Overview OMG‘s MDA: An Overview Markus Völter
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
7 July 2003 MDA presentation Dennis Wagelaar 1 Model-Driven Architecture The current state of affairs.
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
A Model-Driven Framework for Architectural Evaluation of Mobile Software Systems George Edwards Dr. Nenad Medvidovic Center.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Adaptable Architecture for Meta- Programmable Modeling Tools Matt Emerson Advisor: Janos Sztipanovits The Core Layer The.
Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI NSF Model-Based Design DSML.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
OMG Meeting, Helsinki Model Driven Architecture An Alternative Implementation Approach Werner Froidevaux
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
Using UML Models for the Performance Analysis of Network Systems Nico de Wet and Pieter Kritzinger Department of Computer Science University of Cape Town.
® Eurostep.ESUKPC v0.1©Copyright Eurostep Limited An Introduction to ISO STEP Part 25 David Price.
Sumant Tambe, et. al LEESA DSPD 2008 An Embedded Declarative Language for Hierarchical Object Structure Traversal Sumant Tambe* Aniruddha Gokhale Vanderbilt.
Modeling XML. XML Schema Languages DTD, XML Schema, Relax NG Specification of structure of XML documents What elements and attributes can be used Problems.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Model-Driven Architecture & OptimalJ Roland T. Craddolph.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 1 Jeff Gray, Juha-Pekka Tolvanen, Matti Rossi OOPSLA Workshop.
NSF/ITR: Foundations of Hybrid and Embedded Software Systems Model-Integrated Computing: Foundations DSML Composition Model Synthesis and Model Transformation.
Sumant Tambe, et. al LEESA DSPD 2008 An Embedded Declarative Language for Hierarchical Object Structure Traversal Sumant Tambe* Aniruddha Gokhale Vanderbilt.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Introduction to MDA (Model Driven Architecture) CYT.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
Institute for Software Integrated Systems Vanderbilt University Copyright © Vanderbilt University/ISIS 2008 Model Interpreters Janos Mathe based on Peter.
A Domain-Specific Modeling Language for Scientific Data Composition and Interoperability Hyun ChoUniversity of Alabama at Birmingham Jeff GrayUniversity.
What is MOF? The Meta Object Facility (MOF) specification provides a set of CORBA interfaces that can be used to define and manipulate a set of interoperable.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
HPEC’02 Workshop September 24-26, 2002, MIT Lincoln Labs Applying Model-Integrated Computing & DRE Middleware to High- Performance Embedded Computing Applications.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
Slide title In CAPITALS 50 pt Slide subtitle 32 pt Model based development for the RUNES component middleware platform Gabor Batori
Evaluation of Development Tools for Domain-Specific Modeling Languages D. Amyot, H. Farah, J.-F. Roy with contributions from Y. Chu and N. Janmohamed SAM.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
CoSMIC: Tool-suite for Weaving Deployment & Configuration Crosscutting Concerns of CCM-based DRE Systems Dr. Aniruddha Gokhale (PI) Institute for Software.
MDA – Model Driven Architecture Olivier Riboux. Overview What is MDA? The Challenges MDA addresses Developing in the MDA Benefits / Conclusion Case Study:
Shravana Kumar Musunuri, Jimmy Mathews Advisors: Dr. Joseph Picone Dr. David Gao Powertrain Design Tools Project The GENERIC MODELING ENVIRONMENT (GME)
MILAN: Technical Overview October 2, 2002 Akos Ledeczi MILAN Workshop Institute for Software Integrated.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
Graphical Modeling Framework (GMF) Richard C. Gronback Project Lead.
Component Generation Technology for Semantic Tool Integration 1 Gabor Karsai and Jeff Gray Institute for Software Integrated Systems Vanderbilt University.
MODEL-BASED SYNTHESIS OF GENERATORS FOR EMBEDDED SYSTEMS PI: Gabor Karsai, Co-PI: Akos Ledeczi (615)
Open Tool Integration Framework Gabor Karsai Institute for Software-Integrated Systems PO.Box 1829B Vanderbilt University Nashville, TN 37235, USA.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Component-based System Integration via (Meta)Model Composition
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Institute for Software Integrated Systems Vanderbilt University Towards a Paradigm for Activity Modeling SMC2000 WP-2.9: Modeling & Control – Hybrid Systems.
Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and.
© Fraunhofer IESE Fraunhofer IESE Multi-Language Development of Embedded Systems Dr. Thomas Kuhn Tel.:
XML Tools (Chapter 4 of XML Book). What tools are needed for a complete XML application? n Fundamental components n Web infrasructure n XML development.
Overview of meta-modeling works for multi-clocked environments Christian Brunette IRISA/INRIA Rennes – ESPRESSO Synchron 2005.
Executive Overview. Software modeling is essential, because it is the map that guides your developers. Additionally: Modeling Software  Visual information.
4 th Workshop for TAO and CIAO July 16, 2004 MOF-Compliant Modeling of Middleware Jeff Parsons & Matt Emerson ISIS Vanderbilt University Nashville, TN.
GME-MOF: The MOF-Based GME Metamodeling Environment Matt Emerson 10/24/2004 Advisor: Dr. Janos Sztipanovits OOPSLA 2004 Domain-Specific Modeling Workshop.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Model Driven Performance Analysis University College London James Skene –
1 Model Driven Health Tools Design and Implementation of CDA Templates Dave Carlson Contractor to CHIO
Model Driven Architecture MDA SE-548 Lale Doğan
The Re3gistry software and the INSPIRE Registry
Applying Domain-Specific Modeling Languages to Develop DRE Systems
Tools for Composing and Deploying Grid Middleware Web Services
Evaluating Compuware OptimalJ as an MDA tool
OOPSLA Workshop on Domain-Specific Modeling Tools Workgroup
Software Architecture & Design
Presentation transcript:

UDM An Infrastructure for Implementing Domain-Specific Modeling Languages Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya Agarwal, and Gabor Karsai Institute for Software-Integrated Systems PO.Box 1829B Vanderbilt University Nashville, TN 37235, USA

Overview Domain-Specific MDA – Model-driven Development + Tool Integration UDM: Unified Data Model – Framework architecture Metamodeling, generator, back-ends – Capabilities Metaprogrammability, multiple backends, reflection Lessons learned

Model-Driven Architecture A Transformational Paradigm for Software Development Development process: Platform Independent Model: a view of the system from a platform independent viewpoint Platform Specific Model: a view of the system from a platform-specific viewpoint Key points: 1.Relevant issue: platform-independence 2.Platform Specific information is used 3.Transformations are models Source: MDA Guide V ( MDA in a Domain-Specific context: 1.Models are not accidental but essential to system development 2.Models are expressed in modeling languages which are, in turn, defined in terms of a meta- model 3.Models undergo transformations during development that lead to executables

Domain-Specific MDA Domain-Specific MDA - Model-Integrated Computing Tool Integration Metamodeling Analysis Execution Metamodels Domain models Translation Synthesis & Generation Model-Model Transformations Domain-specific modeling Need: uniform, configurable “data layer”

The UDM Framework Metamodeling of data: UML class diagrams API Code Generator: Builds C++ “handle” classes Backends: Generic object implementation Constraint checker: OCL evaluator Reflection: Meta-objects

UDM: Metamodeling and generation namespace utest { class A; class Rel; class B; class C; class A : public Object { public: static Uml::Class meta; A(); // + Other constructors static A Create(...); Udm::ChildrenAttr children() const; }; class Rel : public Object { public: static Uml::Class meta; Rel() // + Other constructors static Rel Create(...); }; class B : public A { public: static Uml::Class meta; B(); // + Other constructors static B Create(...); Udm::AssocAttr dst() const; }; class C : public Object { public: static Uml::Class meta; C(); // + Other constructors static C Create(...); Udm::AssocAttr src() const; Udm::ParentAttr parent() const; }; }

UDM: Backends GEN C++ API: Classes Attributes Associations … Custom Interface UDM BACK-END DOM GME MEM XML GME DTD METAMODEL CORBA METADATA FILE NETWORK Uniform Interface

UDM: Capabilities Metaprogrammability: Data structures are fully defined by the (meta)model Consistency rules define well-formedness Multiple backends: DOM/XML: Data is persisted as XML files GME/MGA: Direct access to model databases MEM: Fast/simple objects + binary files CORBA/NET: Compact network format for data exchange Reflection: All UDM Objects have a “meta” attribute pointing to a “meta” objects (instance of Uml::Class or Uml::Assoc…) The Uml metamodel is always included APIs are available for discovery and generic operations

UDM: UML meta-metamodel

Lessons learned Generic packages (like UDM) are essential if a large number of data models are used – Example: tool integration framework Performance penalty is acceptable Uniform access means no change when switching backends (XML, GME, CORBA, etc.) Generic text interface (parsers and unparsers) are also feasible and useful Consistency checking of data structures (via OCL) offers new ways for ensuring data integrity Generic (internal) APIs allow generic tools Generic packages (like UDM) are essential if a large number of data models are used – Example: tool integration framework Performance penalty is acceptable Uniform access means no change when switching backends (XML, GME, CORBA, etc.) Generic text interface (parsers and unparsers) are also feasible and useful Consistency checking of data structures (via OCL) offers new ways for ensuring data integrity Generic (internal) APIs allow generic tools