Open Tool Integration Framework Gabor Karsai Institute for Software-Integrated Systems PO.Box 1829B Vanderbilt University Nashville, TN 37235, USA.

Slides:



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

Using reference models to drive business transformation in the HE sector Dr Samia Oussena Thames Valley University.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
Metamodel Global view. Some sources Object Modeling with UML: Advanced Modeling, Karin Palmkvist, Bran Selic, and Jos Warmer, March 2000.
Object-Oriented Analysis and Design
Advisory Group Meeting 12 October 2005 The Clever Use of Metadata in eGovernment and eBusiness Recordkeeping Processes in Networked Environments.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
Understand Web Services
2 Object-Oriented Analysis and Design with the Unified Process Objectives  Explain how statecharts can be used to describe system behaviors  Use statecharts.
Zero-programming Sensor Network Deployment 學生:張中禹 指導教授:溫志煜老師 日期: 5/7.
Understanding Metamodels. Outline Understanding metamodels Applying reference models Fundamental metamodel for describing software components Content.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
The Role of Modeling in Systems Integration and Business Process Analysis © Sparx Systems Pty Ltd 2011 Ben Constable Sparx Systems.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
MTEI Methods & Tools for Enterprise Integration
GMD German National Research Center for Information Technology Innovation through Research Jörg M. Haake Applying Collaborative Open Hypermedia.
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Dynamic Data Exchanges with the Java Flow Processor Presenter: Scott Bowers Date: April 25, 2007.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
12 Systems Analysis and Design in a Changing World, Fifth Edition.
Building Tools by Model Transformations in Eclipse Oskars Vilitis, Audris Kalnins, Edgars Celms, Elina Kalnina, Agris Sostaks, Janis Barzdins Institute.
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.
Interfacing Registry Systems December 2000.
ET-ADRS-1, April ISO 191xx series of geographic information standards.
UDM An Infrastructure for Implementing Domain-Specific Modeling Languages Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya.
Model-Driven Architecture And The Secure Systems Methodology Masters Thesis Defense 11/16/2007 Patrick Morrison.
SaveUML System design. System overview Possible...
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
Systems Analysis and Design in a Changing World, 3rd Edition
Slide title In CAPITALS 50 pt Slide subtitle 32 pt Model based development for the RUNES component middleware platform Gabor Batori
XASTRO-2 Overview Presentation CCSDS SAWG Athens Meeting 12 th April 2005.
Session 9 Component and Deployment. OOAD with UML / Session 9 / 2 of 17 Review State Diagrams represent the software entities in terms of their states.
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.
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.
Sheet 1 DocEng’03, Grenoble, November 2003 Model Driven Architecture based XML Processing Ivan Kurtev, Klaas van den Berg University of Twente, the Netherlands.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
MODEL-BASED SYNTHESIS OF GENERATORS FOR EMBEDDED SYSTEMS PI: Gabor Karsai, Co-PI: Akos Ledeczi (615)
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
1 Unified Modeling Language, Version 2.0 Chapter 2.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: UML 2 Metamodel Note to Instructor: The material in this.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Object Design More Design Patterns Object Constraint Language Object Design Specifying Interfaces Review Exam 2 CEN 4010 Class 18 – 11/03.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Component and Deployment
Object Management Group Information Management Metamodel
Systems Analysis and Design With UML 2
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Bussines process modeling using BPMN
Evaluating Compuware OptimalJ as an MDA tool
Metadata Framework as the basis for Metadata-driven Architecture
Graphical Modeling of INFOD applications
Software Architecture & Design
Presentation transcript:

Open Tool Integration Framework Gabor Karsai Institute for Software-Integrated Systems PO.Box 1829B Vanderbilt University Nashville, TN 37235, USA

Overview Tool Integration problem domain Meta-model driven integration Architecture Protocols Example Conclusions

Tool Integration Problem Domain An engineering process supported by many tools. How to facilitate model interchange? FMECA Diagnostics JLME SafetyF. Impact Assumptions: Tools are the primary holders of documents (=models) Integration should be supported by an architecture that can be instantiated for specific tools Architecture elements interoperate via well-defined protocols

Tool Integration Problem Domain Tool-A Tool-B Tool-CTool-D Tool-E Assumptions: The engineering process defines a work flow, which imposes dependencies among the tools. Each edge is a (potential) place for a translation on models. The Tool Integration Framework should provide the infrastructure to construct tool chains consisting of arbitrary tools and translators. Tools can reside on different hosts, possibly as web services.

Meta-model driven integration Assumptions: The integration happens through a translation process that connects various tools into a tool chain. Tools manage their “own” data – it is not the task of the framework. Tools are described using meta-models capturing the abstract syntax of the models. Tool-A Tool-B Tool-CTool-D Tool-E Metamodel A input Metamodel A output Metamodel C input Metamodel C output Metamodel D input Metamodel D output Metamodel B input Metamodel B output Metamodel E input Metamodel E output

Meta-model driven integration What meta-data? 1.Abstract syntax: entities, attributes, relationships of the tool’s data. 2.Well-formedness constraints  UML class diagrams + OCL expressions Why meta-data? Allows a general, tool-independent, canonical form for models that can be used in the communication protocols Provides for type-checking on models Provides help in developing translators Translators: model-to-model transformation engines Allows generic tools for archiving, visualizing, manipulating, etc. models

Architecture Message routing, metadata repository, workflow engine Direct tool interface Syntactic translation of tool data Semantic translation of tool data Management interface

Architecture Example Tool-A Tool-B Tool-CTool-D Tool-E Backplane Tool-ATool-CTool-BTool-DTool-E A adaptorB adaptorC adaptorD adaptorE adaptor A2CA2BA2EB2DB2EC2D Tool chain: As implemented:

Protocols Data transfer Metamodel: a1:Ac1:Cc2:Cb1:Br1:Rel Typing Metamodels are instances of (UML-)meta classes reside in the backplane accessed via object references Similar to MOF Model elements (i.e. data) are instances of structures tagged with a type ID (from the corresponding meta model) Relationships are implemented via instance Ids BLOB-s are also supported Transferred in a container Model (data):

Protocols Data transfer – Meta-metamodel

Protocols Data transfer – Objects and Containers // Data object struct Obj { TypeGUID tId; // TypeId of meta object (Class) objectId id; // Unique object id timeStamp created;// Creation time timeStamp modified;// Last modification time string creator;// Creator's name string modifier;// Last modifier's name AttrValue_S attrs; // Attribute values ParentRole parent; // Parent object AssocRole_S assocs;// Associations of this object any userData; // Add'l, impl-spec data }; typedef sequence Obj_S; // Network of data objects struct DataNetwork { TypeGUID tId; // TypeId of meta object (Diagram) objectId root; // Root object Obj_S objects; // All objects };

Protocols Backplane Interface Information services: – Current metamodels,translators, active documents and tool adaptor types – Locking, fetching, unlocking a metamodel – Tool adaptor information – Current timestamp – Upload configuration Session services – Login/logout a manager – Login/logout a tool adaptor

Protocols Session Interfaces Manager session: – Register/unregister metamodel – Register/unregister translator – Modify attributes of/destroy document – Change password/shutdown backplane Tooladaptor session: – Publish document – Subscribe to new document/change notifications – Fetch documents – Retrieve information about document

Protocols Translator Interfaces Translator activation command: %FeedURI %SinkURI TranslatorFeed interface – Subscribe to / Fetch documents TranslatorSink interface – Publish documents Backplane Translator Feed Sink Notify() Fetch() Publish()

AIF XML CONFIG XML Example A practical system: ESML Toolsuite Rational Rose ESML/GME ESCM2ESML Analysis Tool(s) ESML2AIF AIF2ESML ESML2CONF CONF2ESML Execution Platform Instrumentation CONF2ESML Build Tool Component Development System Development System Analysis System Generation Legacy Reverse Engineering Analysis feedback Model update from instrumentation

Example A practical system: ESML Toolsuite Workflow: Prescribes the correct sequencing of tool operations Workflow model: Tools and their adaptors Document types and flows Translation operations Workflow: Prescribes the correct sequencing of tool operations Workflow model: Tools and their adaptors Document types and flows Translation operations AIF XML CONFIG XML Rational Rose ESML/GME ESCM2ESML Analysis Tool(s) ESML2AIF AIF2ESML ESML2CONF CONF2ESML Execution Platform Instrumentati on CONF2ESML Build Tool

Example A practical system: ESML Toolsuite ESML/GME Rational Rose AnalysisTool(s) Backplane escm2esmlesml2confconf2esml esml2aif ESCM (XML) Exporter T/A ESML (MGA) ESML (MGA) T/A CONF (XML) Buildprocess T/A AIF (XML) IIF (XML) T/A iif2aif T/A aif2esml

Summary Architecture and protocols defined Prototype implementations exists – OTIF (incl. Eclipse Generic Tool Adaptor) Next steps: – MOF compliant data layer – Fine-grain change notification Event-based integration – Object traceability