on the evolution of caex: a language engineering perspective

22
Luca Berardinelli, Rainer Drath, Emanuel Maetzler, Manuel Wimmer [email protected] , rainer [email protected] , [email protected] , [email protected] Business Informatics Group, Institute of Software Technology and Interactve Systems, Vienna University of Technology ABB AG, Corporate Research Center Germany IE Technology News September 2016 1 On The Evolution of CAEX: A Language Engineering Perspective CDL Flex

Upload: luca-berardinelli

Post on 16-Apr-2017

77 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: On The Evolution of CAEX: A Language Engineering Perspective

Luca Berardinelli, Rainer Drath, Emanuel Maetzler, Manuel Wimmer

[email protected], [email protected], [email protected], [email protected]

Business Informatics Group, Institute of Software Technology and Interactve Systems, Vienna University of Technology

ABB AG, Corporate Research Center Germany

IE Technology News

September 2016 1

On The Evolution of CAEX: A Language Engineering

Perspective

CDL Flex

Page 2: On The Evolution of CAEX: A Language Engineering Perspective

IE Technology News

September 2016 2

AutomationML CAEX - Computer Aided EXchange CAEX: Language Realization CAEX: Language Overview Language Evolution CAEX Co-Evolution Methodology Conclusion

Outline

Page 3: On The Evolution of CAEX: A Language Engineering Perspective

AutomationMLIE Technology News

September 2016 3

3

Emerging standard (IEC 62714) for tool data exchange in CPPS engineering

Foundation for harmonizing engineering data coming from a heterogeneous tool network by means of a unified format and data model

tools

methodologiesCPPS Engineering

models

Schema

XSD

Example

XML

«conforms to»

technology

IEC 62714

Page 4: On The Evolution of CAEX: A Language Engineering Perspective

CAEX – Computer Aided EXchange

IE Technology News

September 2016 4

4

tools

methodologiesCPPS Engineering

models

Schema

XSD

Example

XML

«conforms to»

technology

IEC 62714

CAEX

IEC 62424

AutomationML is built on top of CAEX AML docs/models are also CAEX

doc/models serialized as XML based document compliant with CAEX.xsd

Page 5: On The Evolution of CAEX: A Language Engineering Perspective

CAEX: Language Realization (1/2)

IE Technology News

September 2016 5

CAEX is a language that is specified in XSD…

IH

IE

RCCAEX.xsd

XSD

example.aml

XML

«conforms to»

technology JAXP Xerces

Page 6: On The Evolution of CAEX: A Language Engineering Perspective

CAEX: Language Realization (2/2)

IE Technology News

September 2016 6

…or in Ecore, enabler for MDE

example.aml

XML

«conforms to»

CAEX.ecore

Ecore

technology JAXP https://eclipse.org/modeling/emf/

Page 7: On The Evolution of CAEX: A Language Engineering Perspective

CAEX: Language Overview

IE Technology News

September 2016 7

technology JAXP https://eclipse.org/modeling/emf/

example.aml

XML

«conforms to»

CAEX.ecore

Ecore

CAEX in 10 secs slide?

Model (hierarchical graph based structure)

ab

cd

c1 c2

c2.1…

Hierachy prototypes

«cloned» interfaces

c1 c2

roles

blue semantics

orange semantics

Page 8: On The Evolution of CAEX: A Language Engineering Perspective

Languages has to evolve!

IE Technology News

September 2016 8

example.aml

XML

«conforms to»

CAEX.ecore

Ecore

example.aml

XML

«conforms to»

CAEX.ecore

Ecore

example.aml

XML

«conforms to»

CAEX.ecore

Ecore

L L

S S

CAEX 2.15 CAEX 3.0 CAEX N

L

S

Evolution

Co-Evolution

How to manage co-evolution?

Theory and Practice

Page 9: On The Evolution of CAEX: A Language Engineering Perspective

Language Evolution: Initial Setting

IE Technology News

September 2016 9

SXML

«conforms to»

L

Ecore

L’

EcoreL

Evolution

Co-Evolution

Version N Version N+1

What is the impact of the evolution dimension

on the co-evolution dimension?

Page 10: On The Evolution of CAEX: A Language Engineering Perspective

Language Evolution: Setting FormalizedIE Technology News

September 2016 10

SXML

«conforms to»

L

Ecore

L’

EcoreL

Evolution

Co-Evolution

L := {δ}

«conforms to»:= (L,S):Bool

Version N Version N+1

Page 11: On The Evolution of CAEX: A Language Engineering Perspective

Language Evolution: Non-Breaking CaseIE Technology News

September 2016 11

SXML

«conforms to»

L

Ecore

L’

EcoreL

Evolution

Co-Evolution

L := {δ} δ ∈ NBC

«conforms to»«conforms to»:= (L,S):Bool

Version N Version N+1

Page 12: On The Evolution of CAEX: A Language Engineering Perspective

IE Technology News

September 2016 12

SXML

«conforms to»

L

Ecore

L’

EcoreL

Evolution

Co-Evolution

L := {δ} δ ∈ BC

«conforms to»:= (L,S):Bool

«conforms to»

Version N Version N+1

Language Evolution: Breaking Case

Page 13: On The Evolution of CAEX: A Language Engineering Perspective

IE Technology News

September 2016 13

SXML

«conforms to»

L

Ecore

L’

EcoreL

Evolution

Co-Evolution

L := {δ} δ ∈ BC

«conforms to»:= (L,S):Bool

S'XMLS

«conforms to»

s := {δ}(1) S(S) L∈ ’(2) (I(S),I(S’)) → min

Version N Version N+1

Language Evolution: Breaking Case

Page 14: On The Evolution of CAEX: A Language Engineering Perspective

CAEX: Co-Evolution Methodology IE Technology News

September 2016 14

«metamodel»Schema

«xml»Data

«conformsTo»

check

«metamodel»

Schema’

«xml»Data’

«conformsTo»

«delta_model»

Schema

«uses»

convert𝐵𝐶

copy

𝑛𝑜𝑖𝑚𝑝𝑎𝑐𝑡

no change𝑖𝑚𝑝𝑎𝑐𝑡

improve

Represent languages/models in a technology independent manner Process consists of two parts

(1) Represent schema delta and classify changes: non-breaking, breaking(2) Develop a transformation chain for data migration: copy, check, convert, improve

CAEX 2.15 CAEX 3.0

Evolution

Co-Evolution

(1)

(2)

Page 15: On The Evolution of CAEX: A Language Engineering Perspective

1: SchemaML - A Kernel Schema LanguageIE Technology News

September 2016 15

Schema

Data

«conformsTo»

SchemaML comes with DataML

Page 16: On The Evolution of CAEX: A Language Engineering Perspective

1: SchemaML – Changes and ClassificationIE Technology News

September 2016 16

Changes are derived from the SchemaML specification and classified w.r.t. their impact on existing data Set of atomic changes (+,~,-) NBC extend languages BC restrict languages or

invalidate used identifiers Atomic changes may be

composed

Page 17: On The Evolution of CAEX: A Language Engineering Perspective

1: Delta Evaluation for CAEX 2.15->3.0

IE Technology News

September 2016 17

• Delta model excerpt for CAEX 2.15 and CAEX 3.0

Page 18: On The Evolution of CAEX: A Language Engineering Perspective

2: Technologies for Migration ChainIE Technology News

September 2016 18

CAEX 2.15 CAEX 3.0

Given the theoretical background…

…we realize a co-evolution framework with MDE technologies.

«xml»Data

check

«xml»Data’

convert𝐵𝐶

copy

𝑛𝑜𝑖𝑚𝑝𝑎𝑐𝑡

no change𝑖𝑚𝑝𝑎𝑐𝑡

improve

check

convert

copy improve

technology JAXP https://eclipse.org/modeling/emf/

Page 19: On The Evolution of CAEX: A Language Engineering Perspective

2: Checking for Missing Data in EVL

IE Technology News

September 2016 19

check

RR relationship has both ends defined

RRIE RCResource

Page 20: On The Evolution of CAEX: A Language Engineering Perspective

2: Copying and Converting Data with ATLIE Technology News

September 2016 20

RR RR

from to M IE RR

M

convertcopy

IE IE

M

copy

convert

Page 21: On The Evolution of CAEX: A Language Engineering Perspective

ConclusionIE Technology News

September 2016 21

• We presented a model-driven language engineering perspective to cope with CAEX language evolution

• We presented a technology independent definition of the co-evolution problem by devising SchemaML and DataML

• We classified CAEX evolution changes in non-breaking and breaking changes as well as how to deal with breaking ones

• We provide a technical solution based on MDE technologies for our co-evolution methodology: copy, check, convert, improve

http://www.sysml4industry.org

Page 22: On The Evolution of CAEX: A Language Engineering Perspective

DISCLAIMERIE Technology News

September 2016 22

These slides are made by authors to help readers quick and better understanding of the subject. The opinions made or information presented here belong to the sole responsibility of the authors. IE Tech News (ITeN) neither endorses nor denounces any opinions made or information presented. Part or full of these material may be used only with written permission from the authors.