seaa'2012: an mde approach for runtime monitoring and adapting component-based systems:...
TRANSCRIPT
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
1
An MDE approach for Runtime Monitoring and Adapting
Component-based Systems: Application to WIMP User Interface
Architectures
38th Euromicro Conference on Software Engineeringand Advanced Applications (SEAA’2012)
University of AlmeríaApplied Computing Group
Javier Criado, Luis Iribarne, Nicolás Padilla
Applied Computing GroupUniversity of Almería
Javier Troya, Antonio VallecilloGISUM/Atenea Research Group
University of Málaga
University of MálagaGISUM/AteneaResearch Group
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
2
Index
• Context
• Our goal
• User Interface Adaptation– Adaptation Levels– Concrete Architectural Models– Observer Models– Concrete Model Transformation– Adaptation types
• Conclusions and future work
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
3
Context
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
4
Context
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
5
Our goalMain Goal:
MDE-based methodology for adaptable User Interfaces
Solution:
1. Model-Driven Engineering (MDE) solution
2. Model Evolution (by considering UI as models)
3. Model Transformation & Trading services
Considerations:
4. Component-based user interfaces
5. COTS (commercial off-the-shelf) UI components
6. Simple interfaces made up of UI components
7. Web-based User Interfaces as supporting collaborative interaction
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
6
Our goal
HEADER
MAP
QUERY 4
QUERY 2
QUERY 1
QUERY 3
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
7
Our goal
T1 T2 T3 T4
C1
C2
C3
C4
C5
C6
C7
C8
C9C12
C10
C11
C13
C14
* Extensible to other component-based software models
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
8
T1 T2 T3 T4
C1
C2
C3
C4
C5
C6
C7
C8
C9C12
C10
C11
C13
C14
(Starting model)
Our goal
T1 T2 T3 T4
C1
C2
C15
C6
C7
C8
C9C12
C10
C11
C13
C14
Replace C3, C4 and C5 by C15
T1 T2 T3 T4
C1
C2
C15
C6
C7
C9C12
C10
C11
C13
T1 T2 T3
C1
C2
C15
C6
C7
C9C12
C10
C11
C13
C16
Delete C8 and C14 Insert C16 and Delete T4
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
9
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
10
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
11
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
12
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
13
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
14
SemanticTrader
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
15
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
16
Concrete Architectural Models
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
17
Concrete Architectural ModelsFinal User Interface
Concrete Architectural Model
Concrete Architectural Metamodel
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
18
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
19
Observer models
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
20
Observer models
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
21
User Interface Adaptation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
22
Concrete Model Transformation
- Modify an attribute
- Replace a component
- Delete a component
Operation Model
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
23
Concrete Model Transformation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
24
ConcreteModelTransformation
Concrete Model TransformationATL rules XMI model (Resulting CAM)
XMI model (Resulting OBM)
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
25
Adaptation types
- Modify an attribute of an existing component
- Replace a component
- Delete a component
- Perform a change in the abstract definition
ConcreteModelTransformation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
26
Adaptation types
- Modify an attribute of an existing component
- Replace a component
- Delete a component
- Perform a change in the abstract definition
ConcreteModelTransformation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
27
Adaptation types
- Modify an attribute of an existing component
- Replace a component
- Delete a component
- Perform a change in the abstract definition
ConcreteModelTransformation
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
28
Adaptation types
- Modify an attribute of an existing component
- Replace a component
- Delete a component
- Perform a change in the abstract definition
AbstractModelTransformation
Trading
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
29
AAMi AAMi+1AbstractModelTransformation
abstractcomponents
OBMi,j
Semantic Trader
concretecomponents
OBMi+1,j
Semantic Trader
CAMi,j
ConcreteModelTransf.
OBMi,j+1
CAMi,j+1
ConcreteModelTransf.
OBMi,j+2
CAMi,j+2 CAMi+1,j
UIComposer UIComposer UIComposer UIComposer
Abstract Level
Concrete Level
No calculate abstract def.
No calculate abstract def.
Calculate abstract def.
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
30
Conclusions
• Adaptation schema of component-based systems at runtime based on the context observation
• Architectural models in two levels of abstraction:– AbstractArchitecturalModel (AAM): component types– ConcreteArchitecturalModel (CAM): concrete
components
• Trading process to regenerate the concrete definition of the architecture from the abstract definition.
• Observer Models to monitor the context and trigger the adaptation process
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
31
Conclusions• Model Transformations to adapt the architectural models
– Abstract definition: AbstractModelTransformation– Concrete definition: ConcreteModelTransformation
Modify an attributeReplace a componentDelete a component
• Case study: Adaptation of component-based user interfaces at runtime (Major contribution of this work)
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
32
Future work• Build a wide concrete component repository
• Update the SemanticTrader implementation with a heuristic
• Add traceability mechanisms
• Variability of architectural models
• Improve the performance of the approach and incorporate evaluation techniques
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
33
Thank you very muchfor your attention!!
Questions??
38th Euromicro Conference on Software Engineering and Advanced ApplicationsSeptember, 5-8, 2012
An
MD
E a
ppr
oa
ch fo
r R
un
time
Mon
itori
ng a
nd
Ad
ap
ting
Com
pon
en
t-ba
sed
Sys
tem
s
34
An MDE approach for Runtime Monitoring and Adapting
Component-based Systems: Application to WIMP User Interface
ArchitecturesJavier Criado, Luis Iribarne, Nicolás
PadillaApplied Computing Group
University of AlmeríaJavier Troya, Antonio Vallecillo
GISUM/Atenea Research GroupUniversity of Málaga
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)