Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.

Slides:



Advertisements
Similar presentations
GenArch: Automatic Product Derivation in Multi-agent Systems Product Line Elder Cirilo.
Advertisements

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
Generative Programming for a Component-based Framework of Distributed Embedded Software Systems Xu Ke, Krzysztof Sierszecki Mads Clausen Institute for.
Unified Modeling Language
The MEMOPS Programming Framework Wayne Boucher, Cambridge
NetML Network Markup Language Ivan Santarelli Alexandra Bellogini
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
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.
Common Mechanisms in UML
Version control for graph-based models Z. Protić M. F. van Amstel M.G.J. van den Brand.
David Harrison Senior Consultant, Popkin Software 22 April 2004
Comparing M2T & M2M Complementary Approaches © 2008 INRIA, University of York & SINTEF Comparing M2T & M2M Complementary Approaches Hugo Bruneliere,
An Information Theory based Modeling of DSMLs Zekai Demirezen 1, Barrett Bryant 1, Murat M. Tanik 2 1 Department of Computer and Information Sciences,
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
CPS120: Introduction to Computer Science The World Wide Web Nell Dale John Lewis.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Robert Tairas, Marjan Mernik, Jeff Gray Using Ontologies in the Domain Analysis of Domain-Specific Languages Workshop on Transformation and Weaving Ontologies.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
Introduction to MDA (Model Driven Architecture) CYT.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Key Challenges for Modeling Language Creation by Demonstration Hyun Cho, Jeff Gray Department of Computer Science University of Alabama Jules White Bradley.
Building Tools by Model Transformations in Eclipse Oskars Vilitis, Audris Kalnins, Edgars Celms, Elina Kalnina, Agris Sostaks, Janis Barzdins Institute.
Workshop 16: An upward shift in abstraction leads to a corresponding increase in productivity. In the past this has occurred when programming languages.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
NetConf Data Model draft-adwankar-netconf-datamodel-01.txt Sandeep Adwankar.
UDM An Infrastructure for Implementing Domain-Specific Modeling Languages Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya.
SaveUML System design. System overview Possible...
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
A language to describe software texture in abstract design models and implementation.
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
1 © 1999 Microsoft Corp.. Microsoft Repository Phil Bernstein Microsoft Corp.
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
Shravana Kumar Musunuri, Jimmy Mathews Advisors: Dr. Joseph Picone Dr. David Gao Powertrain Design Tools Project The GENERIC MODELING ENVIRONMENT (GME)
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
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.
Ontology-Based Computing Kenneth Baclawski Northeastern University and Jarg.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Generative Approaches for Application Tailoring of Mobile Devices Victoria M. Davis, Dr. Jeff Gray (UAB) and Dr. Joel Jones (UA) Portions of this research.
December 4, ICSSEA’03 The SmartTools Software Factory The MDA approach and Generative programming for Software Development:
Rainbow: XML and Relational Database Design, Implementation, Test, and Evaluation Project Members: Tien Vu, Mirek Cymer, John Lee Advisor:
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
Issues in Ontology-based Information integration By Zhan Cui, Dean Jones and Paul O’Brien.
Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn.
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.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
A Model Transformation Approach to Automated Model Construction and Evolution Yuehua Lin Jeff Gray Department of.
SwE 455 Tutorial. What is Evolve? Evolve is a tool for defining components and connecting them together to form new components. Also provides a runtime.
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.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
WonderWeb. Ontology Infrastructure for the Semantic Web. IST Project Review Meeting, 11 th March, WP2: Tools Raphael Volz Universität.
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.
AUTOMATIC GENERATION OF MODEL TRAVERSALS FROM METAMODEL DEFINITIONS Authors: Tomaž Lukman, Marjan Mernik, Zekai Demirezen, Barrett Bryant, Jeff Gray ACM.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
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.
Object Oriented Analysis and Design
Introduction to UML.
OOPSLA Workshop on Domain-Specific Modeling Tools Workgroup
Graphical Modeling of INFOD applications
Software Architecture & Design
Presentation transcript:

Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham The Fourth Annual Southeastern Software Engineering Conference (SE) 2 30 th March 2005

Motivation  Software artifacts like models and source code conform to a schema, and are stored in a repository.  Evolution of schema might be required to address new feature requests.  Repository artifacts might become obsolete if not transformed to conform to new schema.  Example: Java SDK – new versions restructure or rename API’s.

Domain-Specific Modeling (DSM)  Raises level of abstraction, while narrowing design space to single domain of discourse.  Allows construction of models which follow domain abstractions and semantics allowing developers to work with domain concepts.  Metamodel: Defines key elements of domain.  Models: Defines specific configurations of the domain.

DSM modeling with GME  GME: Generic Modeling Environment  Metamodel: Networking

DSM Modeling with GME  Model: CompanyA

Challenges of Mining Domain Instance Models  Metamodel drift: inability to load models due to changes to metamodel.  Solution: Infer metamodel from instance models !  Grammar Inference community has done extensive work on similar problem, albeit for programming language domain.

Challenges of Mining Domain Instance Models  Idea: Apply grammar inference techniques to the metamodel inference problem.  Problem: Modeling tools export XML files; mismatch in representation expected by grammar inference techniques.  Solution: Translate XML to textual DSL (Domain-Specific Language) !

Tools Used in the Project  GME: Metamodel described with UML class diagrams, and constraints with OCL.  LISA: An interactive environment where users can specify, generate, compile, and execute programs in a newly specified language.  DMS: A program transformation system and re-engineering toolkit.

Overview of the MARS system

From GME models to MRL (Model Representation Language) ……. model NetDiagram { WSGroup ; Perimeter ; Host ; Network ; WSGroup ; Host ; Router ; fields; connections Connection : Port -> Network ; Connection : Host -> Network ; Connection : Port -> Perimeter ; Connection : WSGroup -> Network ; Connection : Host -> Network ; } ……….. XSLT

From MRL to Inferred Metamodel ……. model NetDiagram { WSGroup ; Perimeter ; Host ; Network ; WSGroup ; Host ; Router ; fields; connections Connection : Port -> Network ; Connection : Host -> Network ; Connection : Port -> Perimeter ; Connection : WSGroup -> Network ; Connection : Host -> Network ; } ……….. LISA+DMS

Inferred vs. Original Metamodel

Limitations and Observations  Generalization hierarchy can’t be inferred resulting in more elements in inferred metamodel.  Domain-Specific Visualization: graphic assigned to metamodel entities cant be inferred.  OCL Constraints: capture domain semantics that cant be captured with static diagrams. They are not explicitly indicated in domain models.

Related Work  The XTRACT System: 1) Infers DTD from XML documents 2) Derives a regular expression for each element in the XML document. 3) Uses the Minimum Description Length (MDL) principle to choose the best DTD from a set of candidate DTDs o ECFG Based System (Chidlovskii): 1) Represents XML documents as structured examples of an unknown ECFG. 2) Uses existing grammar inference techniques to infer the ECFG.

For more information:  Project Website: 