Adaptive Transformation Pattern for chitectural Models Architectural Models
1. 1
Adaptive Transformation Pattern for
Architectural Models
chitectural Models
tive Transformatio Pattern for Arc s
Diego Rodríguez-Gracia, Javier Criado, Luis Iribarne, Nicolás Padilla
Applied Computing Group
on
University of Almería, Spain
Cristina Vicente-Chicote
Vicente Chicote
Adapt
Department of Information Communication Technologies
Technical University of Cartagena, Spain
Applied Computing Group
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
2. 2
Index
• Context
chitectural Models
s
• Our goal
• Our proposal
tive Transformatio Pattern for Arc
o Transformation Pattern
o Transformation Schema
on
o Transformation Rules
oR l S l i
Rule Selection
Adapt
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
3. 3
Context
Meta-metamodel
Meta metamodel
chitectural Models
tive Transformatio Pattern for Arc s
Metamodel A Metamodel B
Metamodel T
on
Model T
Model A Model T Model B
Adapt
rules
Metamodel A
and
A PRIORI Metamodel B
could be or not the same
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
4. 4
Index
• Context
chitectural Models
s
• Our goal
• Our proposal
tive Transformatio Pattern for Arc
o Transformation Pattern
o Transformation Schema
on
o Transformation Rules
oR l S l i
Rule Selection
Adapt
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
5. 5
chitectural Models
s
Our goal
g
Architectural
Metamodel
tive Transformatio Pattern for Arc
on
Architectural M2M Architectural M2M Architectural
Model A Model B Model C
rules rules
Adapt
Adaptive
Transformation
T f i
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
6. 6
Index
• Context
chitectural Models
s
• Our goal
• Our proposal
tive Transformatio Pattern for Arc
o Transformation Pattern
o Transformation Schema
on
o Transformation Rules
oR l S l i
Rule Selection
Adapt
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
7. 7
Our proposal
p p
- Adaptation of architectural models
chitectural Models
s
- @Runtime
- Using M2M transformations
tive Transformatio Pattern for Arc
- Transformations are also adapted at runtime.
- Model Transformations not prepared a priori
on
- M2M is dynamically composed from a rule model
Adapt
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
8. 8
Methodology
gy
- Adaptive Model Transformation:
• M2M transformation. Input and output models are AM
f i d d l
chitectural Models
s
(Architectural Models)
• M2M process enables the evolution and adaptation of
tive Transformatio Pattern for Arc
architectural models
• M2M process behaviour is described by its rules
on
- Build a Rule Repository
Adapt
- Design a Rule Selection process as a M2M
• This selection process can generate different rule subsets
- Develop a Rule Transformation process as a M2T
• This process generates the model transformation
- Build a pattern/template for modeling our adaptation schema
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
9. 9
Transformation Pattern
- Model the structure and composition of our transformation schema
elements.
elements
chitectural Models
s
- Possibility of changing our adaptation schema
- El
Elements:
tive Transformatio Pattern for Arc
• TransformationSchema
on
• Metamodel
• Model
Adapt
• Transformations:
M2M
M2T
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
10. 10 Transformation Schema: An instance of Transformation Pattern
conforms_to <<metamodel>> conforms_to
RMM
conforms_to
<<model>>
RRM
1: source 7: source
(repository)
chitectural Models
s
<<transformation>> <<transformation>>
<<model>> <<model>>
RuleSelection RuleSelection
RMi RMi+1
(M2M) (M2M)
2: target 8: target
3: source 9: source
tive Transformatio Pattern for Arc
<<transformation>> <<transformation>>
state i RuleTransformation state i+1 RuleTransformation
(M2T) (M2T)
4: target 10: target
1: source 7: source
<<transformation>> <<transformation>>
on
<<model>> <<model>>
ModelTransformationi ModelTransformationi+1
AMi AMi+1
(M2M) (M2M)
5: source 6: target 11: source
conforms_to <<metamodel>> conforms_to
AMM
Adapt
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
p
Input: the initial architectural model (AMi)
Output: a new architectural model at runtime (AMi+1)
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
11. 11
Transformation Rules
Metamodel for transformation rules
chitectural Models
s
Rule Repository Model (RRM)
tive Transformatio Pattern for Arc
Selected rules model (RMi)
on
The transformation behaviour is
defined in the rules:
- rule_name: U i
Unique. Identifies the rule.
Id ifi h l
Adapt
- 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
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
12. 12
Rule Selection
Instance of the M2M concept
chitectural Models
s
The process starts when the system detects
p y
tive Transformatio Pattern for Arc
that it is necessary an andaptation
on
Input:
- Architectural Model (AMi)
- Rule Repository Model
Adapt
(RRM)
Output:
- Selected rules model (RMi)
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
13. 13
Rule Selection
Example:
When
Wh state of the running attribute of the AMi i changed (
f h i ib f h is h d (Launcher.running =true), the
) h
chitectural Models
s
RuleSelection process is executed.
tive Transformatio Pattern for Arc
We have an Architectural Model (AMi) where Launcher.purpose = ‘InsertComponent’.
Rule repository model (RRM):
Adapt on
The selected rule model (RMi) is generated:
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
14. 14
Rule Transformation
Instance of the M2T concept
chitectural Models
s
The process starts after RuleSelection
p
Input:
tive Transformatio Pattern for Arc
- Selected rules model (RMi)
Output:
on
- Architectural model transformation
(ModelTransformationi)
Adapt
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
15. 15
Rule Transformation
RMi
chitectural Models
s
RuleTransformation
tive Transformatio Pattern for Arc
Adapt on
ModelTransformationi
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
16. 16
Rule Transformation
RuleTransformation
chitectural Models
s
RMi
tive Transformatio Pattern for Arc
on
ModelTransformationi
Adapt
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
17. 17
Index
• Context
chitectural Models
s
• Our goal
• Our proposal
tive Transformatio Pattern for Arc
o Transformation Pattern
o Transformation Schema
on
o Transformation Rules
oR l S l i
Rule Selection
Adapt
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
18. 18
Conclusions
• Adaptive transformation for architectural models at
runtime
chitectural Models
s
• Transformation pattern/template for adaptation schema
tive Transformatio Pattern for Arc
• Adaptation schema is also changeable and adaptable
p g p
on
• High degree of adaptability
Adapt
• All adaptation elements are based on MDE
• Models (architectures rule repository, selected rules)
(architectures, repository
• M2M (RuleSelection, ModelTransformation)
• M2T (RuleTransformation)
( )
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
19. 19
Index
• Context
chitectural Models
s
• Our goal
• Our proposal
tive Transformatio Pattern for Arc
o Transformation Pattern
o Transformation Schema
on
o Transformation Rules
oR l S l i
Rule Selection
Adapt
o Rule Transformation
• Conclusions
• Future work
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
20. 20 Future Work
conforms_to <<metamodel>> conforms_to
RMM
conforms_to
confo ms to PHASE III
decision-making
source
chitectural Models
s
target
3: source 11: source
<<model>>
4: target 12: target
RRM
1: source (repository)
tive Transformatio Pattern for Arc
PHASE II
<<transformation>> <<transformation>>
RepositoryUpdate RepositoryUpdate
(M2M) (M2M)
on
3: source 11: source
9: source
<<transformation>> <<transformation>>
<<model>> <<model>>
RuleSelection RuleSelection
Adapt
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
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
21. 21
Adaptive Transformation Pattern for
Architectural Models
chitectural Models
s
Diego Rodríguez-Gracia, Javier Criado, Luis Iribarne, Nicolás Padilla
tive Transformatio Pattern for Arc
Applied Computing Group
University of Almería, Spain
on
Cristina Vicente-Chicote
Department of Information Communication Technologies
Technical University of Cartagena, Spain
y f g , p
Adapt
Una Metodología para la Recuperación y
Explotación de Información Medioambiental
p
(TIN2010-15588)
Desarrollo de un Agente Web Inteligente de
Información M di
I f ió Medioambiental (TIC 6114)
bi l (TIC-6114)
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
22. 22
chitectural Models
tive Transformatio Pattern for Arc
Adapt on s
Main Rules y Lazy Rules
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011
23. 23
chitectural Models
tive Transformatio Pattern for Arc
Adapt on s
Helper Rules
GRUPO DE INFORMÁTICA APLICADA
XVI Jornadas de Ingeniería del Software y Bases de Datos
UNIVERSIDAD DE ALMERÍA
5-7 de septiembre de 2011