towards an expressivity benchmark for mappings based on a systematic classification of...

10
Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel , W. Retschitzegger, J. Schönböck, W. Schwinger Johannes Kepler University Linz, Austria [email protected] This work has been partly funded by the Austrian Science Fund (FWF) under grant P21374-N13.

Upload: nya-walborn

Post on 11-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities

M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger, J. Schönböck, W. Schwinger

Johannes Kepler University Linz, [email protected]

This work has been partly funded by the Austrian Science Fund (FWF) under grant P21374-N13.

Page 2: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

2/10

• Multitude of modeling tools available• Seamless exchange of models essential• Thus, M2M Transformations to overcome heterogeneities are needed

Motivation (1/2)

Motivation Example Heterogeneities Homepage Future Work

Model Creation Tools Model Checking Tools

Model Simulation Tools

Model Transformation Tools Code Generation Tools

Page 3: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

3/10

Motivation (2/2)

Kind

name:String

Publication

name:StringPublication

title:String1..1kind

kind:String

MM of Tool1 MM of Tool2

K1: Kind

name = ‘Journal‘

P1: Publication

title = ‘P1‘

kind

P2: Publication

title = ‘P2‘

kind

K2: Kind

name = ‘Conference‘

P3: Publication

title = ‘P3‘

kind

P1:Publication

name = ‘P1‘kind = ‘Journal‘

P2:Publication

name = ‘P2‘kind = ‘Journal‘

P3:Publication

name = ‘P3‘kind = ‘Conference‘

Exemplary ModelExemplary Model

instance ofinstance of

unique

• Possibilities for expressing the transformation:– Use a model transformation language, e.g., ATL– Use a mapping tool and generate the transformation code– Advantages

• Abstracts from code• Reuses transformation logic through reusable components

Motivation Example Heterogeneities Homepage Future Work

How to express such a transformation?

Still unclear Which kinds of heterogeneities might occur

between metamodels?

And thus Which reusable components are needed?

Goal of this work Analyze potential heterogeneities Build a systematic classification Provide benchmark examples wrt. expressivity

for mapping tools

Page 4: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

4/10

Heterogeneity Example

Kind

name:String

Publication

name:StringPublication

title:String1..1kind

kind:String

MM of Tool2

unique

MM of Tool1

: EClass

abstract = falsename = ‘Kind‘

: EAttribute

name = ‘title‘lowerBound = 1upperBound = 1

: EReference

name = ‘kind‘

lowerBound = 1upperBound = 1containment = false

ordered = false

: EAttribute

name = ‘name‘lowerBound = 1upperBound = 1

eStructuralFeatures

eStructuralFeatures

eReferenceType: EClass

abstract = false

name = ‘Publication‘

: EAttribute

name = ‘name‘lowerBound = 1upperBound = 1

: EAttribute

name = ‘kind‘lowerBound = 1upperBound = 1

eStructuralFeatures

eStructuralFeatures

: EClass

abstract = false

name = ‘Publication‘eStructuralFeatures

Con

cre

te

Syn

tax

Insta

nces o

f Ecore

(Ab

str

act

Syn

tax)

No heterogeneity

Naming Difference

Naming Difference and

Context Difference

Modeling Concept Difference

Modeling Concept Difference

Motivation Example Heterogeneities Homepage Future Work

Which kinds of heterogeneities do occur in this example?

Which kinds of heterogeneities might occur between Ecore-based MMs?

Page 5: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

5/10

Variation Points in Ecore-based MMs

EClass

abstract : boolean

ENamedElement

name : String

EClassifier

ETypedElement

ordered : booleanlowerBound : int

upperBound : int

eStructuralFeatures0..*EStructuralFeature

EReference

containment : boolean

EAttribute

eReferenceType1..1

EDataType

eAttributeType1..1

eSuperTypes0..*

Naming Difference

Order Difference

Multiplicity Difference

Containment Difference

Concreteness Difference

Datatype Difference

Context Difference

Direction Difference

Breadth Difference

Depth Difference

Inheritance Type Difference

Publication

name:String

Paper

title:String

Example – Naming Difference

MM of Tool1 MM of Tool2

Publication

kind:String

Publication

kind:Integer

Example – Datatype Difference

MM of Tool1 MM of Tool2

Example – Context Difference

MM of Tool1 MM of Tool2

Publication

name:Stringkind:String

Publication

name:String 1..1

kind Kind

kind:String

Example – Order Difference

MM of Tool1 MM of Tool2

Publication

name:String 1..*

auths Author

name:String

Publication

name:String 1..*

auths Author

name:String

ordered

Example – Multiplicity Difference

MM of Tool1 MM of Tool2

Publication

name:String 1..5

auths Author

name:String

Publication

name:String 1..*

auths Author

name:String

Example – Direction Difference

MM of Tool1 MM of Tool2

Publication

name:String 1..*

pubs Author

name:String

Publication

name:String 1..*

auths Author

name:String

Example – Containment Difference

MM of Tool1 MM of Tool2

Publication

name:String 1..*

pubs Author

name:String

Publication

name:String 1..*

pubs Author

name:String

Example – Concreteness Difference

MM of Tool1 MM of Tool2

Publication

name:String

Conference

location:String

TechReport

university:String

Conference

location:String

TechReport

university:String

Publication

name:String

Example – Inheritance Differences

MM of Tool1 MM of Tool2

Publication

name:String

Conference

location:String

Conference

location:String

TechReport

university:String

Springer ACM

Two-Column

Publication

name:String

In which combinations might the heterogeneities occur?

Motivation Example Heterogeneities Homepage Future Work

Page 6: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

6/10

Potential Combinations of Heterogeneities

Different cases can be distinguished

1) Same Ecore concepts

2) Different Ecore concepts

3) Different number of Ecore concepts

4) Additionally: valid instance seta) Different number of valid instances

b) Difference in the interpretation of the instance values

Syn

tacti

c

Hete

rog

en

eit

ies

Sem

an

tic

Hete

rog

en

eit

ies

Kind

name:String

Publication

name:StringPublication

title:String1..1kind

kind:String

unique

MM of Tool1 MM of Tool2

Example – Kind of Concept Difference

University

name:String

Author

name:StringAuthor

name:String1..1uni

university:String

MM of Tool1 MM of Tool2

Example – Number of Concepts Difference

Publication

name:StringJournal

name:Stringkind:String

MM of Tool1 MM of Tool2

Example – Number of Instances Difference

Motivation Example Heterogeneities Homepage Future Work

Page 7: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

7/10

Feature-based Classification of Heterogeneities

Syntactic Heterogeneity Semantic Heterogeneity

Heterogeneity

Naming Difference Structural Difference

Disjoint Subset

Source-Target-ConceptCardinality

1:1 n:1 1:n C2C

Datatype Difference

Same Meta- modeling Concept

Different Meta- modeling Concept

A2A R2R C2A 2RR2C R2AA2C

Context Difference

MultiplicityDifference

MultiplicityDifference

Context Difference

Direction Difference

ContainmentDifference

Required Feature

Optional Feature

XOR Features

OR Features

Legend

Core Concept Difference Inheritance Difference

I2I

Same Meta- modeling Concept

Different Meta- modeling Concept

I2C A2II2R C2II2A R2I

Concreteness Difference

Depth Difference

m:n

Number of Instances Difference

Interpretation ofInstance Values Difference

Inheritance TypeDifference

Intersection Superset

OrderDifference

Breadth Difference

OrderDifference

Classification bases on existing work (mainly from the area of data engineering) F. Legler and F. Naumann. A Classication of Schema Mappings and

Analysis of Mapping Tools. In Proc. of BTW'07, 2007.

V. Kashyap and A. Sheth. Semantic and schematic similarities between database objects: A context-based approach. VLDB Journal, 5(4):276-304, 1996.

Contribution Adaptation to the area of MDE

Concept of relationship

Concept of inheritance

Systematization by means of a feature model

Motivation Example Heterogeneities Homepage Future Work

Page 8: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

8/10

Benchmark Examples

• Should serve as expressivity benchmark for mapping tools• Community is invited to contribute!

http://www.modeltransformation.net/

Motivation Example Heterogeneities Homepage Future Work

Initial set of benchmark examples

Form-based entry of new

examples

Ratings of examples Examples are

classified

Page 9: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

9/10

Future Work

• Extend the benchmark examples to fully cover

the classification• Apply the benchmark examples to diverse

mapping tools from the area of– Model engineering– Data engineering– Ontology engineering

• Extend own mapping language to provide the

required expressivity

Motivation Example Heterogeneities Homepage Future Work

Page 10: Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

10/10

Thank you for your attention!

Questions?