auto fractal r assemblage dynamique et automatique d
play

Auto-Fractal: (R-)assemblage dynamique et automatique - PowerPoint PPT Presentation

1 Journ e e ADAPT ADAPT du du GdR GdR ASR ( ASR (Perpi Perpi 2006) 2006) Journ 3 octobre octobre 2006 2006 Perpignan Perpignan, France , France 3 Auto-Fractal: (R-)assemblage dynamique et automatique


  1. 1 Journé ée e ADAPT ADAPT du du GdR GdR ASR ( ASR (Perpi Perpi 2006) 2006) Journ 3 octobre octobre 2006 2006 – – Perpignan Perpignan, France , France 3 Auto-Fractal: (Ré-)assemblage dynamique et automatique d'applications à base de composants Fractal 1,2 1,2 , , N. 1 1 , , L. 2 2 G. Grondin Bouraqadi Vercouter N. Bouraqadi L. Vercouter G. Grondin 1: D Dé épt pt. IA - . IA - É École des Mines de Douai cole des Mines de Douai 1: 2: G2I/SMA - É École des Mines de Saint-É Étienne 03/10/2006

  2. 2 Agenda Agenda  Introduction Introduction   Motivating Motivating Example Example   Problem Problem Statement Statement   Proposal Proposal   MaDcAr MaDcAr / / Auto-Fractal Auto-Fractal   Example Example: : Clock Clock Application Application   Demo Demo   Conclusion Conclusion  03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 2

  3. 3 Introduction 03/10/2006

  4. 4 Motivating Example Example Motivating Chat Client Application receive Conf. Proxy Chatter send Performing a re- a re-assembling assembling Performing Loosing network network Loosing connection connection Conf. Proxy Buffer Chatter 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 4

  5. 5 Problem Statement Statement Problem What What is is the the problem problem? ?    The The design design of of auto-adaptive auto-adaptive Component-Based Component-Based Applications Applications  (CBAs CBAs) ) is is not not easy easy ( (often often ad hoc) ad hoc) (  Adaptation = re- Adaptation = re-assembling assembling of of CBAs CBAs  Issues related related to to the the problem problem: : Issues    Automation Automation of of CBA CBA’ ’s s adaptation adaptation   Minimizing Minimizing impact on application impact on application’ ’s administration s administration   Dynamicity Dynamicity of of CBA CBA’ ’s s adaptation adaptation   Minimizing Minimizing impact on application impact on application’ ’s s execution execution  When is is automatic automatic and and dynamic dynamic adaptation adaptation needed needed? ? When    Contextual Contextual changes are changes are unpredictable unpredictable/ /frequent frequent   Human Human interventions must interventions must be be minimized minimized  ⇒ Ex: Ex: Ubiquitous Ubiquitous Computing Computing, , Autonomic Autonomic Computing Computing, , … … ⇒ 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 5

  6. 6 Our Goal Our Goal Required properties properties Required    Abstraction Abstraction: : independent independent of of the the used used component model component model   Generality Generality: : independent independent of of the the application application domain domain   Openess Openess : : customizability customizability of of the the assembling assembling process process   Dynamicity Dynamicity: re- : re-assembling assembling without without stopping stopping the the whole whole  application application  Automation Automation: : behaving behaving on on behalf behalf of of humans humans   Context-awareness Context-awareness: : behaving behaving according according to to external external events events  MaDcAr : an abstract model for : an abstract model for assembling assembling engines engines MaDcAr  Model for Model for A A utomatic utomatic and and Dynamic Dynamic C C omponent omponent Assembly Assembly  R econfiguration econfiguration R  [Grondin et al. CBSE 2006] [Grondin et al. CBSE 2006]  03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 6

  7. 7 Auto-Fractal An Assembling Assembling Engine Engine for for An Fractal-Based Applications Applications Fractal-Based 03/10/2006

  8. 8 Introduction to Auto-Fractal Auto-Fractal Introduction to  Auto-Fractal Auto-Fractal is is the the projection of projection of MaDcAr MaDcAr abstract abstract  model on Fractal model on Fractal  Auto-Fractal Auto-Fractal = = Assembling Assembling Engine Engine for Fractal: for Fractal:   Inputs Inputs : Components, Application : Components, Application’ ’s s Requirements Requirements   Output Output : a component : a component assembly assembly which which meets meets these these  requirements requirements 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 8

  9. 9 Assembling Engine Engine Assembling Context Context Components Components Auto-Fractal Auto-Fractal Assembling Engine Engine Assembling Constraint Constraint Solver Solver Application Application (assembly assembly) ) ( Application Application description description Assembling Assembling policy policy 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 9

  10. 10 Application Description Application Description Application description Link: abstract Description of a connection Configuration Role: abstract Description of a component x-y-z Initial values for Role(min,max) the role’s attributes Provided interface Required interface Role multiplicities 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 10

  11. 11 Chat Client Application Description Chat Client Application Description Config1 Initial Initial configuration configuration Chatter(1,1) Conf. Proxy(1,1) Config2 To use when when loosing loosing To use Chatter(1,1) Buffer(1,1) network connection connection network Config3 Chatter(1,1) Conf. Proxy(1,1) To use when when network network To use connection connection is is re-established established re- Buffer(1,1) while buffer buffer is is not not while empty empty 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 11

  12. 12 Re-Assembling Process Process Re-Assembling 3 stages 3 stages   Sense Plan Act Sense Sense   When to re-assemble: Changes detection When to re-assemble: Changes detection   Plan Plan   How to re-assemble: Decisions making How to re-assemble: Decisions making   Act Act   Perform the re-assembling accordingly Perform the re-assembling accordingly   03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 12

  13. 13 Re-Assembling Process Process - - Sense Sense Re-Assembling  Context Context => set of => set of sensors sensors (software/hardware) (software/hardware)   To To automatically automatically trigger (re-) trigger (re-)assembling assembling   Internal changes Internal changes : components, configurations, : components, configurations, … …   External changes External changes : location, network, : location, network,  neighborhood (soft/hard-ware), … … neighborhood (soft/hard-ware),  To To collect collect data data required required when when taking taking assembling assembling  decisions decisions ⇒ Contextual Contextual situation = Set of situation = Set of sensor sensor values values within within ⇒ some range range specified specified by by the the designer designer some 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 13

  14. 14 Chat Client Application – – Context Context Chat Client Application  Triggering Triggering of of assembling assembling   When When the the network network connection connection status status changes, or changes, or   When When the the buffer buffer becomes becomes empty empty  01 netWatch := NetworkWatcher new. 02 netWatch watchPeriod: 1000. 03 bufferWatch := BufferWatcher new. 04 bufferWatch watchPeriod: 500. ⇒ Definition Definition of of two two sensors sensors ⇒  netWatch netWatch ( (line line 01) 01)   bufferWatch bufferWatch ( (line line 03) 03)  03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 14

  15. 15 Re-Assembling Process Process - Plan - Plan Re-Assembling Assembling Assembling policy policy = a set of = a set of rules rules specifying specifying the the decisions decisions to to   take for for each each contextual contextual situation situation take To To choose choose a configuration a configuration   Identification of eligible eligible configurations configurations Identification of   – Contract testing for each pair {role, component} – Building of a « compatibility matrix » Configuration selection selection Configuration   – According to the « compatibility matrix » and the assembling policy To select components To select components   According According to to the the chosen chosen configuration configuration and and the the assembling assembling   policy policy To To schedule schedule the the re- re-assembling assembling   According to to criteria criteria such such as as assembling assembling’ ’s s urgency urgency, , According   application application’ ’ services services availibility availibility, , minimization minimization of of the the assembling’ ’s s cost cost, , … … assembling 03/10/2006 Auto-Fractal - Journée ADAPT [PERPI 2006] 15

Recommend


More recommend