SlideShare a Scribd company logo
1



                                                                              An MDE approach for Runtime Monitoring
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                               and Adapting Component-based Systems:
                                                                              Application to WIMP User Interface Architectures

                                                                              Javier Criado, Luis Iribarne, Nicolás Padilla                      Javier Troya, Antonio Vallecillo
                                                                                           Applied Computing Group                                   GISUM/Atenea Research Group
                                                                                              University of Almería                                           University of Málaga




                                                                                     Applied Computing Group   University of Almería            GISUM/AteneaResearch Group            University of Málaga




                                                                                           38th Euromicro Conference on Software Engineering
                                                                                                 and Advanced Applications (SEAA’2012)

                                                                                                                                       38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                                              September, 5-8, 2012
2


                                                                                                        Index
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              • 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 Applications
                                                                                                                                                                       September, 5-8, 2012
3


                                                                              Context
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                  38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                         September, 5-8, 2012
4


                                                                              Context
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                  38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                         September, 5-8, 2012
5


                                                                                                         Our goal
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              Main 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:

                                                                              1. Component-based user interfaces
                                                                              2. COTS (commercial off-the-shelf) UI components
                                                                              3. Simple interfaces made up of UI components
                                                                              4. Web-based User Interfaces as supporting collaborative interaction
                                                                                                                      38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                             September, 5-8, 2012
6


                                                                                           Our goal
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                                                  HEADER




                                                                                 QUERY 1                                          QUERY 2



                                                                              QUERY 3                                               QUERY 4




                                                                                                                     MAP




                                                                                                38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                       September, 5-8, 2012
7


                                                                                                     Our goal
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                 T1        T2   T3        T4



                                                                                      C1                                                   C12
                                                                                                                  C9
                                                                                                     C6


                                                                                                                                           C13
                                                                                      C2
                                                                                                                  C10
                                                                                                     C7


                                                                                      C3

                                                                                                                                           C14
                                                                                                                  C11

                                                                                      C4             C8




                                                                                      C5




                                                                              * Extensible to other component-based software models


                                                                                                               38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                      September, 5-8, 2012
8


                                                                                                                             Our goal
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                                   (Starting model)                                 Replace C3, C4 and C5 by C15
                                                                              T1         T2   T3        T4                              T1         T2   T3        T4



                                                                                   C1                                  C12                   C1                                         C12
                                                                                                              C9                                                         C9
                                                                                                   C6                                                        C6


                                                                                                                       C13                                                              C13
                                                                                   C2                                                        C2
                                                                                                              C10                                                       C10
                                                                                                   C7                                                        C7


                                                                                   C3

                                                                                                                       C14                                                              C14
                                                                                                              C11                                                       C11
                                                                                                                                             C15
                                                                                                   C8                                                        C8
                                                                                   C4



                                                                                   C5




                                                                              T1         T2   T3        T4                              T1         T2   T3



                                                                                   C1                                  C12                   C1                                         C12
                                                                                                              C9                                                         C9
                                                                                                   C6                                                        C6


                                                                                                                       C13                                                              C13
                                                                                   C2                                                        C2
                                                                                                              C10                                                        C10
                                                                                                   C7                                                        C7




                                                                                                              C11                                                        C11            C16
                                                                                   C15                                                       C15




                                                                                                   Delete C8 and C14                                    Insert C16 and Delete T4
                                                                                                                                  38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                                         September, 5-8, 2012
9


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
10


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
11


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
12


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
13


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
14


                                                                              SemanticTrader
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                      38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                             September, 5-8, 2012
15


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
16


                                                                              Concrete Architectural Models
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                             38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                    September, 5-8, 2012
17


                                                                                     Concrete Architectural Models
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              Final User Interface

                                                                                                                    Concrete Architectural Metamodel




                                                                               Concrete Architectural Model
                                                                                                              38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                     September, 5-8, 2012
18


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
19


                                                                              Observer models
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                      38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                             September, 5-8, 2012
20


                                                                              Observer models
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                      38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                             September, 5-8, 2012
21


                                                                              User Interface Adaptation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                  September, 5-8, 2012
22


                                                                                   Concrete Model Transformation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              Operation
                                                                               Model




                                                                                            - Modify an attribute

                                                                                            - Replace a component

                                                                                            - Delete a component

                                                                                                           38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                  September, 5-8, 2012
23


                                                                              Concrete Model Transformation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                             38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                    September, 5-8, 2012
24


                                                                                   Concrete Model Transformation
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              ATL rules                                  XMI model (Resulting CAM)




                                                                                                                        XMI model (Resulting OBM)




                                                                               ConcreteModelTransformation
                                                                                                             38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                    September, 5-8, 2012
25


                                                                                               Adaptation types
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              - Modify an attribute of an existing component




                                                                              - Replace a component          ConcreteModelTransformation

                                                                              - Delete a component

                                                                              - Perform a change in the abstract definition


                                                                                                                   38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                          September, 5-8, 2012
26


                                                                                               Adaptation types
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              - Modify an attribute of an existing component

                                                                              - Replace a component




                                                                              - Delete a component           ConcreteModelTransformation

                                                                              - Perform a change in the abstract definition


                                                                                                                   38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                          September, 5-8, 2012
27


                                                                                               Adaptation types
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              - Modify an attribute of an existing component

                                                                              - Replace a component

                                                                              - Delete a component
                                                                                                             ConcreteModelTransformation




                                                                              - Perform a change in the abstract definition


                                                                                                                   38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                          September, 5-8, 2012
28


                                                                                               Adaptation types
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              - Modify an attribute of an existing component
                                                                              - Replace a component
                                                                              - Delete a component
                                                                              - Perform a change in the abstract definition




                                                                                                                                                                    Trading

                                                                                     AbstractModelTransformation



                                                                                                                   38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                          September, 5-8, 2012
29
                                                                              Abstract Level
                                                                                                                               abstract
                                                                                                                              components
                                                                                                                                                Calculate
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                                                                                               abstract def.

                                                                                                                           AbstractModel
                                                                                  AAMi                                     Transformation
                                                                                                                                                                                    AAMi+1




                                                                                Semantic                                       concrete                                            Semantic
                                                                                 Trader                                       components                                            Trader


                                                                                                      No calculate                  No calculate
                                                                                                      abstract def.                 abstract def.

                                                                                           OBMi,j                     OBMi,j+1                           OBMi,j+2                            OBMi+1,j
                                                                                                        Concrete                      Concrete
                                                                                                      ModelTransf.                  ModelTransf.

                                                                                           CAMi,j                     CAMi,j+1                           CAMi,j+2                             CAMi+1,j



                                                                                         UIComposer                   UIComposer                         UIComposer                          UIComposer




                                                                              Concrete Level




                                                                                                                                            38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                                                   September, 5-8, 2012
30


                                                                                                    Conclusions
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              • 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 Applications
                                                                                                                                                                          September, 5-8, 2012
31


                                                                                                      Conclusions
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              • Model Transformations to adapt the architectural models
                                                                                 – Abstract definition: AbstractModelTransformation
                                                                                 – Concrete definition: ConcreteModelTransformation (Major contribution
                                                                                     Modify an attribute                                                      of this work)
                                                                                     Replace a component
                                                                                     Delete a component


                                                                              • Case study: Adaptation of component-based user interfaces
                                                                                at runtime




                                                                                                                      38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                                             September, 5-8, 2012
32


                                                                                                    Future work
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              • 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 Applications
                                                                                                                                                                        September, 5-8, 2012
33
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              Thank you very much
                                                                               for your attention!!



                                                                                   Questions??



                                                                                         38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                September, 5-8, 2012
34


                                                                              An MDE approach for Runtime Monitoring
                                                                               and Adapting Component-based Systems:
An MDE approach for Runtime Monitoring and Adapting Component-based Systems




                                                                              Application to WIMP User Interface Architectures

                                                                                                        Javier Criado, Luis Iribarne, Nicolás Padilla
                                                                                                                                             Applied Computing Group
                                                                                                                                                   University of Almería

                                                                                                                            Javier Troya, Antonio Vallecillo
                                                                                                                                   GISUM/Atenea Research Group
                                                                                                                                                    University 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)


                                                                                                        38th Euromicro Conference on Software Engineering and Advanced Applications
                                                                                                                                                               September, 5-8, 2012

More Related Content

PPT
On the Composition and Reuse of Viewpoints
PDF
PPT
Sa 004 quality_attributes
PDF
Spm2
PDF
A comparison of component-based software engineering and model-driven develop...
PDF
Unified Communications International deployment. Risk to overcome and lessons...
PDF
Presentation - "A comparison of component-based software engineering and mode...
PPTX
Sourcing Lecture 3 Outsourcing
On the Composition and Reuse of Viewpoints
Sa 004 quality_attributes
Spm2
A comparison of component-based software engineering and model-driven develop...
Unified Communications International deployment. Risk to overcome and lessons...
Presentation - "A comparison of component-based software engineering and mode...
Sourcing Lecture 3 Outsourcing

What's hot (9)

PDF
JoramMQ Entreprise tools and services for the JORAM user, OW2con’12, Paris
 
PPT
Chapter 01
PDF
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...
PDF
OMG Specifications for Enterprise Interoperability
PPT
A classification framework for component models
PDF
EDONA/HMI – Modelling of Advanced Automotive Interfaces
PPTX
MICE: Monitoring and modelIng of Context Evolution
PDF
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
PDF
Eurotech M2M Building Blocks and Multi-Service Gateway Approach
JoramMQ Entreprise tools and services for the JORAM user, OW2con’12, Paris
 
Chapter 01
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...
OMG Specifications for Enterprise Interoperability
A classification framework for component models
EDONA/HMI – Modelling of Advanced Automotive Interfaces
MICE: Monitoring and modelIng of Context Evolution
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
Eurotech M2M Building Blocks and Multi-Service Gateway Approach
Ad

Viewers also liked (8)

PDF
Component Based Model Driven Development of Mission Critical Defense Applicat...
PDF
Component Based Software OW2 Conference Nov10
 
PDF
Software Engineering of Component-Based Systems-of-Systems: A Reference Frame...
PDF
Model Driven, Component Based Development for CBDDS and IDL to C++11
PPTX
Component based software engineering
PDF
PatEvol - A Pattern Language for Evolution in Component-based Software Archit...
PPTX
CBSE VS SOA SJSU Presentation
PPT
Component based models and technology
Component Based Model Driven Development of Mission Critical Defense Applicat...
Component Based Software OW2 Conference Nov10
 
Software Engineering of Component-Based Systems-of-Systems: A Reference Frame...
Model Driven, Component Based Development for CBDDS and IDL to C++11
Component based software engineering
PatEvol - A Pattern Language for Evolution in Component-based Software Archit...
CBSE VS SOA SJSU Presentation
Component based models and technology
Ad

Similar to SEAA'2012: An MDE approach for Runtime Monitoring and Adapting Component-based Systems: Application to WIMP User Interface Architectures (20)

PPSX
MEDI'2012: Runtime Adaptation of Architectural Models: an approach for adapti...
PPSX
ICSOFT'2012: Composing Model Transformations at Runtime: an approach for adap...
PDF
MODEL: MOdel DrivEn and quaLity
PDF
PDF
Pamphlet Sw Engg
PDF
Analyze your software assets with Modisco par Frédéric Madiot
PDF
MoDisco Eclipse-OMG Symp 2010
PDF
Innovation in model driven software
PPTX
Model Runway: Design Best Practices at BlueCross BlueShield
PDF
ZORA MDE Short Presentation 3.2
PDF
MEASURE’s Structured Metrics Meta-Model Module at TAROT 2016
PPT
Solit 2013, Презентация факультета информационных технологий и робототехники ...
PDF
Integrating profiling into mde compilers
PDF
Software Architecture by Reuse, Composition and Customization
PPT
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
PDF
Rapid Product Innovation
PDF
Defining and Evaluating the Usability of CMS - Saurabh Kudesia
PDF
A Machine learning based framework for Verification and Validation of Massive...
PDF
Understanding Mda
PDF
Download full ebook of Modeldriven Engineering Sondra Cordova instant downloa...
MEDI'2012: Runtime Adaptation of Architectural Models: an approach for adapti...
ICSOFT'2012: Composing Model Transformations at Runtime: an approach for adap...
MODEL: MOdel DrivEn and quaLity
Pamphlet Sw Engg
Analyze your software assets with Modisco par Frédéric Madiot
MoDisco Eclipse-OMG Symp 2010
Innovation in model driven software
Model Runway: Design Best Practices at BlueCross BlueShield
ZORA MDE Short Presentation 3.2
MEASURE’s Structured Metrics Meta-Model Module at TAROT 2016
Solit 2013, Презентация факультета информационных технологий и робототехники ...
Integrating profiling into mde compilers
Software Architecture by Reuse, Composition and Customization
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Rapid Product Innovation
Defining and Evaluating the Usability of CMS - Saurabh Kudesia
A Machine learning based framework for Verification and Validation of Massive...
Understanding Mda
Download full ebook of Modeldriven Engineering Sondra Cordova instant downloa...

More from Applied Computing Group (20)

PDF
Hand Posture Recognition with Standard Webcam for Natural Interaction
PDF
A Web Services Infrastructure for the management of Mashup Interfaces
PDF
Evolving Mashup Interfaces using a Distributed Machine Learning and Model Tra...
PDF
Semantic Matching of Components at Run-Time in Distributed Environments
PDF
Embedding Widget-as-a-Service into Dynamic GUI
PDF
A Component-based User Interface Approach for Smart TV
PDF
AMAD-ATL: A tool for dynamically composing new model transformations at runtime
PDF
AMAD-ATL (elevator pitch): A tool for dynamically composing new model transfo...
PDF
AMAD-ATL (poster): A tool for dynamically composing new model transformations...
PDF
Resolving Platform Specific Models at runtime using an MDE-based Trading appr...
PDF
Information Retrieval Using an Ontological Web-Trading Model
PDF
Model Transformations to adapt Component-based GUIs using an ATL-based tool
PDF
A Model-Driven Approach for Deploying Trading-Based Knowledge Representation ...
PDF
An ontology-driven case study for the knowledge representation of management ...
PPTX
Cruzando el abismo educativo de la ingeniería de software utilizando Software...
PDF
A Trading-Based Knowledge Representation Metamodel for Management Information...
PDF
Adaptive Transformation Pattern for chitectural Models Architectural Models
PDF
Adapting Component-based User Interfaces at Runtime using Observers
PDF
A Model-Driven Approach to Graphical User Interface Runtime Adaptation
PDF
Modelling an Environmental Knowledge-Representation System
Hand Posture Recognition with Standard Webcam for Natural Interaction
A Web Services Infrastructure for the management of Mashup Interfaces
Evolving Mashup Interfaces using a Distributed Machine Learning and Model Tra...
Semantic Matching of Components at Run-Time in Distributed Environments
Embedding Widget-as-a-Service into Dynamic GUI
A Component-based User Interface Approach for Smart TV
AMAD-ATL: A tool for dynamically composing new model transformations at runtime
AMAD-ATL (elevator pitch): A tool for dynamically composing new model transfo...
AMAD-ATL (poster): A tool for dynamically composing new model transformations...
Resolving Platform Specific Models at runtime using an MDE-based Trading appr...
Information Retrieval Using an Ontological Web-Trading Model
Model Transformations to adapt Component-based GUIs using an ATL-based tool
A Model-Driven Approach for Deploying Trading-Based Knowledge Representation ...
An ontology-driven case study for the knowledge representation of management ...
Cruzando el abismo educativo de la ingeniería de software utilizando Software...
A Trading-Based Knowledge Representation Metamodel for Management Information...
Adaptive Transformation Pattern for chitectural Models Architectural Models
Adapting Component-based User Interfaces at Runtime using Observers
A Model-Driven Approach to Graphical User Interface Runtime Adaptation
Modelling an Environmental Knowledge-Representation System

SEAA'2012: An MDE approach for Runtime Monitoring and Adapting Component-based Systems: Application to WIMP User Interface Architectures

  • 1. 1 An MDE approach for Runtime Monitoring An MDE approach for Runtime Monitoring and Adapting Component-based Systems and Adapting Component-based Systems: Application to WIMP User Interface Architectures Javier Criado, Luis Iribarne, Nicolás Padilla Javier Troya, Antonio Vallecillo Applied Computing Group GISUM/Atenea Research Group University of Almería University of Málaga Applied Computing Group University of Almería GISUM/AteneaResearch Group University of Málaga 38th Euromicro Conference on Software Engineering and Advanced Applications (SEAA’2012) 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 2. 2 Index An MDE approach for Runtime Monitoring and Adapting Component-based Systems • 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 Applications September, 5-8, 2012
  • 3. 3 Context An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 4. 4 Context An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 5. 5 Our goal An MDE approach for Runtime Monitoring and Adapting Component-based Systems Main 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: 1. Component-based user interfaces 2. COTS (commercial off-the-shelf) UI components 3. Simple interfaces made up of UI components 4. Web-based User Interfaces as supporting collaborative interaction 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 6. 6 Our goal An MDE approach for Runtime Monitoring and Adapting Component-based Systems HEADER QUERY 1 QUERY 2 QUERY 3 QUERY 4 MAP 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 7. 7 Our goal An MDE approach for Runtime Monitoring and Adapting Component-based Systems T1 T2 T3 T4 C1 C12 C9 C6 C13 C2 C10 C7 C3 C14 C11 C4 C8 C5 * Extensible to other component-based software models 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 8. 8 Our goal An MDE approach for Runtime Monitoring and Adapting Component-based Systems (Starting model) Replace C3, C4 and C5 by C15 T1 T2 T3 T4 T1 T2 T3 T4 C1 C12 C1 C12 C9 C9 C6 C6 C13 C13 C2 C2 C10 C10 C7 C7 C3 C14 C14 C11 C11 C15 C8 C8 C4 C5 T1 T2 T3 T4 T1 T2 T3 C1 C12 C1 C12 C9 C9 C6 C6 C13 C13 C2 C2 C10 C10 C7 C7 C11 C11 C16 C15 C15 Delete C8 and C14 Insert C16 and Delete T4 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 9. 9 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 10. 10 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 11. 11 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 12. 12 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 13. 13 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 14. 14 SemanticTrader An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 15. 15 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 16. 16 Concrete Architectural Models An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 17. 17 Concrete Architectural Models An MDE approach for Runtime Monitoring and Adapting Component-based Systems Final User Interface Concrete Architectural Metamodel Concrete Architectural Model 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 18. 18 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 19. 19 Observer models An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 20. 20 Observer models An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 21. 21 User Interface Adaptation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 22. 22 Concrete Model Transformation An MDE approach for Runtime Monitoring and Adapting Component-based Systems Operation Model - Modify an attribute - Replace a component - Delete a component 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 23. 23 Concrete Model Transformation An MDE approach for Runtime Monitoring and Adapting Component-based Systems 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 24. 24 Concrete Model Transformation An MDE approach for Runtime Monitoring and Adapting Component-based Systems ATL rules XMI model (Resulting CAM) XMI model (Resulting OBM) ConcreteModelTransformation 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 25. 25 Adaptation types An MDE approach for Runtime Monitoring and Adapting Component-based Systems - Modify an attribute of an existing component - Replace a component ConcreteModelTransformation - Delete a component - Perform a change in the abstract definition 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 26. 26 Adaptation types An MDE approach for Runtime Monitoring and Adapting Component-based Systems - Modify an attribute of an existing component - Replace a component - Delete a component ConcreteModelTransformation - Perform a change in the abstract definition 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 27. 27 Adaptation types An MDE approach for Runtime Monitoring and Adapting Component-based Systems - Modify an attribute of an existing component - Replace a component - Delete a component ConcreteModelTransformation - Perform a change in the abstract definition 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 28. 28 Adaptation types An MDE approach for Runtime Monitoring and Adapting Component-based Systems - Modify an attribute of an existing component - Replace a component - Delete a component - Perform a change in the abstract definition Trading AbstractModelTransformation 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 29. 29 Abstract Level abstract components Calculate An MDE approach for Runtime Monitoring and Adapting Component-based Systems abstract def. AbstractModel AAMi Transformation AAMi+1 Semantic concrete Semantic Trader components Trader No calculate No calculate abstract def. abstract def. OBMi,j OBMi,j+1 OBMi,j+2 OBMi+1,j Concrete Concrete ModelTransf. ModelTransf. CAMi,j CAMi,j+1 CAMi,j+2 CAMi+1,j UIComposer UIComposer UIComposer UIComposer Concrete Level 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 30. 30 Conclusions An MDE approach for Runtime Monitoring and Adapting Component-based Systems • 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 Applications September, 5-8, 2012
  • 31. 31 Conclusions An MDE approach for Runtime Monitoring and Adapting Component-based Systems • Model Transformations to adapt the architectural models – Abstract definition: AbstractModelTransformation – Concrete definition: ConcreteModelTransformation (Major contribution Modify an attribute of this work) Replace a component Delete a component • Case study: Adaptation of component-based user interfaces at runtime 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 32. 32 Future work An MDE approach for Runtime Monitoring and Adapting Component-based Systems • 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 Applications September, 5-8, 2012
  • 33. 33 An MDE approach for Runtime Monitoring and Adapting Component-based Systems Thank you very much for your attention!! Questions?? 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012
  • 34. 34 An MDE approach for Runtime Monitoring and Adapting Component-based Systems: An MDE approach for Runtime Monitoring and Adapting Component-based Systems Application to WIMP User Interface Architectures Javier Criado, Luis Iribarne, Nicolás Padilla Applied Computing Group University of Almería Javier Troya, Antonio Vallecillo GISUM/Atenea Research Group University 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) 38th Euromicro Conference on Software Engineering and Advanced Applications September, 5-8, 2012