Model Transformations to adapt Component-based GUIs using an ATL-based tool

31
6th World Summit on the Knowledge Society, Aveiro, Portugal, 19-21 June 2013 Model Transformations to adapt Component-based GUIs using an ATL-based tool 1 Model Transformations to adapt Component-based GUIs using an ATL-based tool Applied Computing Group Javier Criado , Diego Rodríguez-Gracia, Luis Iribarne, Nicolás Padilla Applied Computing Group University of Almería, Spain 6th World Summit on the Knowledge Society (WSKS’2013) Aveiro, Portugal, 19-21 June 2013

description

6th World Summit on the Knowledge Society (WSKS’2013) Aveiro, Portugal, 19-21 June 2013

Transcript of Model Transformations to adapt Component-based GUIs using an ATL-based tool

Page 1: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

1

Model Transformations to adapt

Component-based GUIs

using an ATL-based tool

Applied Computing Group

Javier Criado, Diego Rodríguez-Gracia, Luis Iribarne, Nicolás Padilla

Applied Computing Group

University of Almería, Spain

6th World Summit on the Knowledge Society (WSKS’2013)

Aveiro, Portugal, 19-21 June 2013

Page 2: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

2

Outline

• Context

• Our goal

• Model Transformations of Component-based GUIs

• Web Tool for executing the model transformations

• Conclusions and future work

Page 3: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

3

Context

Page 4: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

4

Context

Evaluator

Politician Expert GIS

Page 5: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

5

Context

Web Mobile devices,

Tablets TV

Page 6: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

6

Adaptation

process

‘Histogram’ component

is added

Our goal

Header

Map

Header

Map Histogram

Page 7: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

7

Metamodel A Metamodel B

Model A Model B

Meta-metamodel

Metamodel T

rules

Model T

Our goal

A PRIORI

Page 8: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

8

Architectural

Metamodel

Architectural

Model A

Architectural

Model B M2M

rules

Architectural

Model C M2M

rules

Dynamic Model

Transformation

Our goal

Page 9: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

9

Model Transformation

of Component-based GUIs

Page 10: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

10

Model Transformation of Component-based

GUIs

PIM

PSM

CIM

MDE

Tasks and

concepts

Code Final GUI1

Model-driven methodology for GUI adaptation

Abstract

Arch. Model1

Concrete

Arch. Model1

Page 11: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

11

Model Transformation of Component-based

GUIs

PIM

PSM

CIM

MDE

Tasks and

concepts

Code Final GUI1

Concrete

Arch. Model2

Concrete

Arch. Model3

Abstract

Arch. Model3

Final GUI2

Model-driven methodology for GUI adaptation

Final GUI3

Abstract

Arch. Model1

Dynamic Model

Transformation1 Abstract

Arch. Model2

Dynamic Model

Transformation2

Concrete

Arch. Model1

at runtime

at runtime

at runtime at runtime

at runtime

at runtime

at runtime

at runtime

Page 12: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

12

Model Transformation of Component-based

GUIs

RSL Rule

Selection

ArchitecturalMi

RMi

(1)

(2)

(3)

(3)

(4)

(5)

(5)

(6) (7)

(7)

(8)

AAOpMi RRR

OBMi

(3)

RRM

(repository)

Context

Processing

context

info.

adaptation

operations

selected

rules

initial architectural

model

rule repository

Page 13: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

13

Model Transformation of Component-based

GUIs

AAOpMM RSL

Rule

Selection

Rule

Transformation

DynamicModel

Transformationi ArchitecturalMi ArchitecturalMi+1

RMi

(1)

(2)

(3)

(3)

(4)

(5)

(5)

(6) (7)

(7)

(8)

(9)

(12)

(13) (14)

ATLExtraction TMi (10) (11) (11)

AAOpMi RRR

OBMi

(3)

OBMM

ATLMM

ArchitecturalMM

ATL-TCS

TCSMM

RMM

RRM

(repository)

Context

Processing

context

info.

adaptation

operations

selected

rules

initial architectural

model

adapted

architectural

model

rule repository

ATLAS Transformation Language (ATL)

syntax definition transf. model

Page 14: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

14

Model Transformation of Component-based

GUIs

DynamicModel

Transformationi ArchitecturalMi ArchitecturalMi+1

Page 15: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

15

Web Tool

Page 16: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

16

Web Tool

Tool front-end

ATL

transformation

libraries

EMF

validation

libraries

Page 17: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

17

Web Tool

Tool front-end

ATL

transformation

libraries

EMF

validation

libraries

(1)

(4)

(2)

(3)

jQuery JSP requests

JSON responses

Page 18: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

18

Page 19: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

19

Web Tool (example)

New context values:

- Technical profile

- 1,500 kbps bandwidth

- 3,000 MB main memory

- 200 MB avg. size of

shared files

Model

Transformations

Previous context values:

- User profile

- 750 kbps bandwidth

- 1,500 MB main memory

- 50 MB avg. size of shared files

Page 20: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

20

Page 21: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

21

Page 22: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

22

Page 23: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

23

Conclusions

and Future Work

Page 24: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

24

• Web tool to test model transformations for software engineering students.

• Web tool to perform an adaptation process:

- Dynamic Model Transformations

- Schema for adapting architectural models at runtime

- Architectural models represent Component-based GUIs

• Web tool offers model transformation and model validation services

• Deployed in a three-tier architecture:

- Tool front-end

- ATL model transformations

- EMF model validations

Conclusions

Page 25: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

25

• Add more flexibility:

- Define context variables dynamically

- Load architectural models of different application scenarios

• Allow the random execution of the adaptation process

• Show the traceability of architectural models

• Improve the look and usability

Future work

Page 26: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

26

Thank you very much

for your attention!!

Questions??

Page 27: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

27

Model Transformations to adapt

Component-based GUIs

using an ATL-based tool

Javier Criado, Diego Rodríguez-Gracia,

Luis Iribarne, Nicolás Padilla

Applied Computing Group, University of Almería, Spain

Una Metodología para la Recuperación y Explotación de Información

Medioambiental (TIN2010-15588)

Desarrollo de un Agente Web Inteligente de Información Medioambiental

(TIC-6114)

Page 28: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

28

Web Tool (example 2)

New context values:

- Political profile

- 100 MB avg. size of

shared files

Model

Transformations

Page 29: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

29

Page 30: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

30

Page 31: Model Transformations to adapt Component-based GUIs using an ATL-based tool

6th World Summit on the Knowledge Society,

Aveiro, Portugal, 19-21 June 2013

Mo

de

l T

ran

sfo

rma

tio

ns to

ad

ap

t C

om

po

ne

nt-

ba

se

d G

UIs

usin

g a

n A

TL

-ba

se

d to

ol

31