The document proposes an approach for adapting component-based user interfaces by composing model transformations at runtime. Architectural models describing user interface components can vary at runtime due to context changes. The approach uses model-to-model transformations to adapt the architectural models, selecting and applying transformation rules dynamically without needing to pre-define the transformations. The transformations are specified as models and composed from a rule model at runtime to achieve adaptation.
Modelling an Environmental Knowledge-Representation System
ICSOFT'2012: Composing Model Transformations at Runtime: an approach for adapting Component-based User Interfaces
1. 1
Composing Model Transformations at
Runtime:
an approach for adapting Component-
Composing Model Transformations at Runtime:
based User Interfaces
Diego Rodríguez-Gracia, Javier Criado, Luis Iribarne, Nicolás Padilla
Applied Computing Group
University of Almería, Spain
Cristina Vicente-Chicote
Department of Information Communication Technologies
Technical University of Cartagena, Spain
Applied Computing Group
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
2. 2
Index
• Our goal
• Our proposal
Composing Model Transformations at Runtime:
o Transformation Pattern
o Transformation Schema
o Transformation Rules
o Rule Selection
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
3. 3
Our goal
- The main objective of our proposal is to achieve the adaptation of user
interfaces at runtime.
- User interfaces are described by means of architectural models that contain
the specification of user interfaces components
Composing Model Transformations at Runtime:
- These architectural models, which represent the user interfaces, can vary at
runtime due to changes in the context(user interaction, a temporal event, etc)
GUI
GUI
Video Audio
Chat
Architectural Model 1 Architectural Model 2
Adaptation
Chat Video Audio
Process
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
4. 4
Index
• Context
• Our goal
Composing Model Transformations at Runtime:
• Our proposal
o Transformation Pattern
o Transformation Schema
o Transformation Rules
o Rule Selection
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
5. 5
Our proposal
- Adaptation of architectural models
- @Runtime
Composing Model Transformations at Runtime:
- Using M2M transformations
- Transformations are also adapted at runtime.
- Model Transformations not prepared a priori
- M2M is dynamically composed from a rule model
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
6. 6
Transformation Pattern
- Model the structure and composition of our transformation schema
elements.
Composing Model Transformations at Runtime:
- Possibility of changing our adaptation schema
- Elements:
• TransformationSchema
• Metamodel
• Model
• Transformations:
M2M
M2T
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
7. 7 Transformation Schema: An instance of Transformation Pattern
Composing Model Transformations at Runtime:
1º Rule Selection: is obtained as an instance of the M2M concept
Input: the repository model (RRM) and the initial architectural model (AMi)
Output: the selected rules model (RMi)
2º Rule Transformation: is obtained as an instance of the M2T concept
Input: the rule model (RMi)
Output: a new transformation for architectural models at runtime (ModelTransformationi)
3º Model Transformation: is obtained as an instance of the M2M concept
Input: the initial architectural model (AMi)
Output: a new architectural model at runtime (AMi+1)
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
8. 8
Transformation Rules
Metamodel for transformation rules
Composing Model Transformations at Runtime:
Rule Repository Model (RRM)
Selected rules model (RMi)
The transformation behaviour is
defined in the rules:
- rule_name: Unique. Identifies the rule.
- purpose: Indicates the purpose of the rule.
- is_priority: Boolean. It its value is true, the rule must be selected.
- weight: The selection process uses this attribute to select the rules.
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
9. 9
Rule Selection
Instance of the M2M concept
Composing Model Transformations at Runtime:
The process starts when the system detects
that it is necessary an adaptation
Input:
- Architectural Model (AMi)
- Rule Repository Model
(RRM)
Output:
- Selected rules model (RMi)
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
10. 10
Rule Transformation
Instance of the M2T concept
The process starts after RuleSelection
Composing Model Transformations at Runtime:
Input:
- Selected rules model (RMi)
Output:
- Architectural model transformation
(ModelTransformationi)
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
11. 11 A practical application
of our proposal
Composing Model Transformations at Runtime:
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
12. 12 A practical application RuleSelectionProcess
of our proposal
Composing Model Transformations at Runtime:
RuleTransformationProcess
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
13. 13
Index
• Context
• Our goal
Composing Model Transformations at Runtime:
• Our proposal
o Transformation Pattern
o Transformation Schema
o Transformation Rules
o Rule Selection
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
14. 14
Conclusions
• Adaptive transformation for Composing Model
Transformations at Runtime.
Composing Model Transformations at Runtime:
• Transformation pattern/template for adaptation schema
• Adaptation schema is also changeable and adaptable
• High degree of adaptability
• All adaptation elements are based on MDE
• Models (architectures, rule repository, selected rules)
• M2M (RuleSelection, ModelTransformation)
• M2T (RuleTransformation)
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
15. 15
Index
• Context
• Our goal
Composing Model Transformations at Runtime:
• Our proposal
o Transformation Pattern
o Transformation Schema
o Transformation Rules
o Rule Selection
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
16. 16 Future Work
conforms_to <<metamodel>> conforms_to
RMM
conforms_to PHASE III
decision-making
source
target
Composing Model Transformations at Runtime:
3: source 11: source
<<model>>
4: target 12: target
RRM
1: source (repository)
PHASE II
<<transformation>> <<transformation>>
RepositoryUpdate RepositoryUpdate
(M2M) (M2M)
3: source 11: source
9: source
<<transformation>> <<transformation>>
<<model>> <<model>>
RuleSelection RuleSelection
RMi RMi+1
(M2M) (M2M)
2: target 10: target
5: source 13: source
<<transformation>> <<transformation>>
state i RuleTransformation state i+1 RuleTransformation
(M2T) (M2T)
6: target 14: target
1: source 9: source
<<transformation>> <<transformation>>
<<model>> 8: target <<model>>
ModelTransformationi ModelTransformationi+1
AMi AMi+1
(M2M) (M2M)
7: source 15: source
conforms_to <<metamodel>> conforms_to
AMM
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012
17. 17
Adaptive Transformation Pattern for
Architectural Models
Composing Model Transformations at Runtime:
Diego Rodríguez-Gracia, Javier Criado, Luis Iribarne, Nicolás Padilla
Applied Computing Group
University of Almería, Spain
Cristina Vicente-Chicote
Department of Information Communication Technologies
Technical University of Cartagena, 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)
GRUPO DE INFORMÁTICA APLICADA
ICSOFT 2012
UNIVERSIDAD DE ALMERÍA
24-27 de julio de 2012