integrating graphical and textual modelling languages
Download
Skip this Video
Download Presentation
Integrating Graphical and Textual Modelling Languages

Loading in 2 Seconds...

play fullscreen
1 / 20

Integrating Graphical and Textual Modelling Languages - PowerPoint PPT Presentation


  • 143 Views
  • Uploaded on

Integrating Graphical and Textual Modelling Languages. Luc Engelen and Mark van den Brand. Integrating Metamodel-based and Grammar-based Modelling Languages. Luc Engelen and Mark van den Brand. Overview. Problem description Two approaches Two implementations Case study

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Integrating Graphical and Textual Modelling Languages' - honora


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
integrating metamodel based and grammar based modelling languages

Integrating Metamodel-based and Grammar-based Modelling Languages

Luc Engelen and Mark van den Brand

overview
Overview
  • Problem description
  • Two approaches
  • Two implementations
  • Case study
  • Advanced applications
  • Conclusions

/ Software Engineering and Technology

problem description
Problem description

/ Software Engineering and Technology

two approaches
Two approaches

Extract (M2T)

Convert and transform (T2M)

Merge (M2M)

Interpret as XMI

Interpret as ‘model’

Rewrite (T2T)

= Metamodel-based model

= Metamodel-based model fragment

= Grammar-based model fragment

= XMI-representation of model

/ Software Engineering and Technology

embedding a textual language
Embedding a textual language
  • Embedding in a custom language

Statement

Textual

SendSignal

Assignment

MethodCall

Statement: String

  • Embedding the UML

/ Software Engineering and Technology

modelware approach
Modelware approach
  • Extracting textual fragments
  • Merging models andfragments of models

/ Software Engineering and Technology

modelware approach1
Modelware approach

S

  • Convert and transform

LS

LS ::= S { “;” S }

S ::= “stat”

source

CF

target

/ Software Engineering and Technology

modelware approach2
Modelware approach

S

  • Convert and transform

LS

LS ::= S { “;” S }

S ::= “stat”

source

CF

target

list: LS

s: S

f:CF

s: S

f:CF

s: S

stat; stat; stat

/ Software Engineering and Technology

modelware approach3
Modelware approach

S

  • Convert and transform

LS

LS ::= S { “;” S }

S ::= “stat”

source

CF

target

list: LS

s: S

s: S

s: S

stat; stat; stat

/ Software Engineering and Technology

modelware approach4
Modelware approach

LS

S

S

  • Convert and transform

LS

LS ::= S { “;” S }

S ::= “stat”

source

CF

target

list: LS

T2M

M2M

list: LS

s: S

s: S

s: S

stat; stat; stat

s: S

s: S

s: S

/ Software Engineering and Technology

grammarware approach
Grammarware approach
  • Rewriting

behavior{ a := n(a) }

  • Textual fragments use names, XMI uses Identifiers

Class2Id[(A, _id1), …]

Attribute2Id[(A, a, _id2, _id3), …]

Operation2Id[A, n, _id4), …]

/ Software Engineering and Technology

grammarware approach1
Grammarware approach

T( A “:=” B ) →

T(B)

T(A)

T( “false” ) →

/ Software Engineering and Technology

two implementations
Two implementations
  • Modelware
    • Xpand for T2M
    • Xtext for M2T
    • Xtend for M2M

All from the openArchitectureWare platform for eclipse

  • Grammarware
    • SDF for the grammars
      • XMI grammar off the shelf
      • Custom grammars for the fragments
    • ASF for the T2T transformation

/ Software Engineering and Technology

case study
Case study

/ Software Engineering and Technology

case study1
Case study

/ Software Engineering and Technology

observations
Observations
  • Modelling in eclipse
    • Diagrams
    • Simple textual models
    • Structure editing
  • Our approaches add
    • Embedding of textual fragments in metamodel based models
  • Modelware
    • Restricted to LL(*) grammar
    • Straightforward mapping from grammar to metamodel
  • Grammarware
    • Forces switching between environments
    • Deals with plain XMI
      • Tool-specific
      • Low level of abstraction

/ Software Engineering and Technology

advanced applications
Advanced applications

behavior{ a := m(a) }

Method “m” not found in class “A”

/ Software Engineering and Technology

conclusions
Conclusions
  • Embedding grammar-based languages in metamodel-based languages
    • Two approaches
      • Modelware
      • Grammarware
    • Two implementations
    • Case study: textual alternative for UML activity diagrams

/ Software Engineering and Technology

conclusions1
Conclusions
  • Grammarware approach and implementation
    • Flexible grammar definitions
    • Dealing with XMI
  • Modelware approach and implementation
    • Only one modelling environment
    • Conversion and transformation in two steps

/ Software Engineering and Technology

ad