Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer &...
-
date post
22-Dec-2015 -
Category
Documents
-
view
213 -
download
0
Transcript of Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer &...
Mining Metamodels From Instance Models: The MARS System
Faizan JavedDepartment of Computer & Information Sciences, University of Alabama at Birmingham
The Fourth Annual Southeastern Software Engineering Conference (SE)2
30th 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 : 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 : 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 documents2) 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:
http://www.cis.uab.edu/softcom/GenParse/mars.htm