SlideShare a Scribd company logo
A White-box Perspective on Self-Adaptation and Self-Awareness
          (with a focus on Reflective Russian Dolls)


                   Alberto Lluch Lafuente
                   alberto.lluch@imtlucca.it



                            ascens
                            autonomic service component ensembles

                            Roberto Bruni, University of Pisa
                            Andrea Corradini, University of Pisa
                            Fabio Gadducci, University of Pisa
                            Andrea Vandin, IMT Lucca



                                                                    10th-16th June 2012 Edinburgh
why
adaptation?
ascens
autonomic service component ensembles
ensembles
“...open-ended, highly parallel,
 massively distributed systems...

 ...made of self-aware, self-adaptive,
[...], autonomic components.”

                         - ascens-ist.eu
Robot Swarms




  E-vehicles
the goal of ascens

“...build ensembles in a way that combines
 software engineering,
 formal methods and
 autonomic, adaptive, self-aware systems.”

                             - ascens-ist.eu
what is
adaptation?
- Lotfi A. Zadeh,
Proceedings of the
        IEEE, 1963
adaptation

“... changing something (itself, others,
the environment) so that it would be
more suitable or fit for some purpose
than it would have otherwise been”

          - T. Lints, “The essentials in defining adaptation”,
                       4th Annual IEEE Systems Conference
adaptation in software systems


“Self-adaptive software evaluates its own behavior and
changes behavior when the evaluation indicates that
[…] better functionality or performance is possible.”

                 - Laddaga, R. “Self-adaptive software”,
             Technical Repeport 98-12, DARPA BAA, 1997.
adaptation in software systems


“Self-adaptive software
 modifies its own behavior
 in response to changes in its operating environment.”

      - P. Oreizy, et al, “An architecture-based approach to self-
     adaptive software”. IEEE Intelligent Sys. 14, 3, 54–62, 1999
adaptation in software systems


“A software system is self-adaptive if it
 modifies its behaviour
 as a reaction to a change in itself or its context
 to maintain/improve its goal”
what's the problem with software?

Most programs...
 ...“change behaviour” (e.g. conditional branching);
 ...“to react to external perturbations” (e.g. inputs);
 ...“to reach goals” (e.g. functional requirements).


How do we distinguish...
 ...an adaptive software from a non adaptive one?
 ...adaptation logic from application logic?
is this adaptation?
  ...
  if f(x) then
   do_this;
  else
   do_that;
  endif
  ...
is this adaptation?




“if the hill is too steep then
  assemble with other robots and try again”
is this adaptation?




    ...
    if (tooSteep || ... ){
        setState(Anti_Phototaxis);
    }
    ..
is obstacle avoidance adaptive?

  “Obstacle avoidance may count as adaptive
behaviour if […] obstacles appear rarely. [...]

   If the ‘normal’ environment is […] obstacle-
rich, then avoidance becomes [...] “normal”
behaviour rather than an adaptation.”

           - Ezequiel di Paolo, course on “Adaptive Systems”,
                           University of Sussex, Spring 2006.
black-box adaptation

Popular on some fields (Biology, Control Theory, ...)
    systems have a “default” behaviour & goal;
    adaptation reacts to “external perturbations”.


In software systems:
    Useful in the analysis;
    Not so useful in the design, reuse, etc.
white-box
adaptation
5W1H (six honest men)
(1)   Why? (e.g. robustness? performance? goals?)
(2)   When? (e.g. reactively or proactively?)
(3)   Where? (e.g. which architectural level?)
(4)   What? (e.g. which artifacts?)
(5)   Who? (e.g. autonomic managers? humans?)
(6)   How? (e.g. which actions, in which order?)

  - M. Salehie et al., “Self-adaptive software: Landscape and research challenges”. ACM
                             Transactions on Autonomous and Adaptive Systems 4(2), 2009
  - R. Laddag. “Active software”. Int. Workshop on Self-Adaptive Software. 11–26, 2000
this talk...
...focuses on the “HOW”
   “A software system is self-adaptive if it
     modifies its behaviour
     as a reaction to a change in itself or its context
     to maintain/improve goal achievement”
desiderata
Conceptual white-box definitions of adaptation...


 … useful to disambiguate “adaptivity”;


 … general enough & consistent with the literature;


 … useful for designing & analysing adaptive systems.
what is a program?


“program = control + data”
   - Niklaus Wirth, “Algorithms + Data Structures = Programs”,
                                          Prentice-Hall (1976)
what is a program?


           CONTROL           DATA


Data can be used to
   store information;
   influence the control;
   both.
what is an adaptable program?

“adaptable program =
              control + data
what is an adaptable program?

“adaptable program =
              control + data
       control data + the rest ”
what is an adaptable program?

          CONTROL DATA

      CONTROL    OTHER DATA


“adaptation is the run-time
 modification of control data”
a program is...
“...adaptable if it has a distinguished collection
of CD that can be modified at runtime.”

“...adaptive if its control data is modified at
runtime for some computation.”


“...self-adaptive if it modifies its own control
data at runtime.”
are these definitions...
… useful to disambiguate “adaptivity”?


… general enough & consistent with the literature?


… useful for designing & analysing adaptive systems?
on ambiguity
The choice of CD is (of course) arbitrary:
 The same system can be adaptive in different ways!


                          but...


...the responsibility of declaring
   “what is the adaptive behaviour”
is passed from the observer to the designer.
is this adaptation?




...
                          is the state a control data?
if (tooSteep || ... ){
    setState(Anti_Phototaxis);
}
..
design & analysis: control data & effectors
                        AUTONOMIC MANAGER

                   Analyze               Plan




              Monitor        Knowledge          Execute




                                EFFECTOR
           MANAGED ELEMENT


                               CD


                         CONTROL
design & analysis: MAPE-K
               Control
         AUTONOMIC MANAGER
                Data

              Analyze               Plan




                                                     Control
    Monitor             Knowledge          Execute




                         Control
                          Data

              MANAGED ELEMENT
CD
design & analysis:
                          A        P
adaptation towers
                      M       K        E

          CD                  CD

                          A        P

       CONTROL        M                E
                              K

                              CD

          CD              A        P


                      M       K        E
       CONTROL
                              CD
                     MANAGED ELEMENT
design & analysis: patterns/styles




      CD                CD

   CONTROL           CONTROL


do you want this?
consistency with literature

Identify some control data such that
  its modification coincides with
  adaptation (as understood by the authors)
generality

                aspects
                             rules
                  contexts
                                       models
configuration     policies
variables                            programs


            CONTROL DATA
some examples
 Aspect-Oriented Computing [Salvaneschi et al. 2011]
 Service Component Ensemble Language [De Nicola et al. 2012]
 Specification-carrying programs [Pavlovic 2000]
 Context-Oriented Computing [Ghezzi et al. 2011]
 IBM's MAPE-K [Horn 2001]
 Run-time architectural models [Oreizy et al. 1999]
 FORMS [Weyns et al. 2012]                             THIS TALK
 Model-based adaptation [Zhang&Cheng 2006]
 Coordination contexts [Andrade&Fiadeiro 2002]
 Non-deterministic interactions [Broy et al. 2009]
 Adaptation patterns [Cabri et al. 2011]
 ...
 Reflective Russian Dolls [Meseguer&Talcott 2002]
reflective
russian
dolls
- J. Meseguer et al., “Semantic models for distributed object
         reflection”, ECOOP 2002, LNCS 2374. Springer, 1–36.
logical
reflection
reflection tower
reflection tower
reflection tower
reflection tower
adaptation tower
adaptation tower
adaptation tower
logical reflection
in Maude
what is Maude?

“A high-level, declarative language
  that supports both equational
  and rewriting logic computation”

                      – maude.cs.uiuc.edu
modular, functional, rule-based, etc.


    mod m(x) is
      import m1, m2,...
      sort s1, s2,...
      ops f, g,...
      eq f(...) = ...
      rl l => r
    endm
Maude is also a semantic framework

models of concurrent computation: equational programming, lambda calculi,
   Petri nets, process algebras (CCS and pi-calculus), actors, operational
    semantics of languages (via K, SOS): Java, C, Python, Haskell, agent
  languages, active networks languages, hardware description languages,
logical framework and metatool: linear logic, translations between theorem
 provers, type systems, open calculus of constructions, tile logic distributed
architectures and components: UML, OCL, MOF, Service architectures and
     middlewares, open distributed processing, models, specification and
    analysis of communication protocols: active networks, wireless sensor
     networks, firewire leader election protocol, modeling and analysis of
  security protocols: cryptographic protocol specification language CAPSL,
  MSR, security specification formalism, Maude-NPA, real-time, biological,
           probabilistic systems: real-time maude, pathway logic...
Maude is tool supported


 An Interpreter;
 Debuggers (declarative/interactive);
 Model checkers (e.g. LTL);
 Confluence & Termination checkers;
 A theorem prover;
 ...
maude supports logical reflection
 META-LEVEL is a module (the universal theory) where
   – modules, terms, rules, equations, sorts, etc. are data.
   – matching, rule application, rewriting, etc. are functions.
 META-LEVEL is a module so...
     it can be treated as data again, and again...
     enabling the tower of reflection.
 Meta-programming applications
   – transformation of modules;
   – analysis of modules;
   – ...
   – adaptation.
nested
configurations
nested configurations
message filtering & replication
black-box adaptation
white-box adaptation
white-box adaptation

                           manager

state       rules       state        rules
(black-box component)
                         interpreter
                        (white-box component)
self-awareness
“Self-Awareness means
that the system is aware of                         manager
its self states
and behaviors. ”                                 state        rules

         - M.G. Hinchey, et al, “Self-managing
software”. IEEE Computer 39(2) 107–109, 2006.     interpreter
                                                 (white-box component)
reflective russian dolls
reflective russian dolls
mobility & adaptation
“formal” autonomic managers
model checking,
                                 AUTONOMIC MANAGER
logical inference
                            Analyze               Plan




                       Monitor        Knowledge          Execute




                                         EFFECTOR
                    MANAGED ELEMENT


                                        CD


                                  CONTROL
concluding
remarks
summary
White box-adaptation:
 Focus on internal mechanisms, rather than manifestations;
 Adaptation logic decided by the designers, rather than observers;

“Control Data” white box criteria:
 “adaptable program = control + {control data + other data}”;
 Wide spectrum of control data: from “parameters” to “programs”;

Reflective Russian Dolls:
 Support formal techniques for adaptation and awareness;
 Rely on logical reflection and wrapping techniques;
main references
 M. Salehie, L. Tahvildari, Self-adaptive software: Landscape and research
  challenges. ACM Transactions on Autonomous and Adaptive Systems 4 (2),
  2009.

 R. Bruni, A. Corradini, F. Gadducci, A. Lluch Lafuente, A. Vandin, A Conceptual
  Framework for Adaptation, Proceedings of the 15th International Conference on
  the Fundamentals of Software Engineering (FASE’12), LNCS, vol. 7212, pp.
  240–254, Springer (2012)

 J. Meseguer, C. Talcott, Semantic models for distributed object reflection. In
  ECOOP 2002, B. Magnusson, Ed. LNCS Series, vol. 2374. Springer, 1–36,
  2002.

 R. Bruni, A. Corradini, F. Gadducci, A. Lluch Lafuente, A. Vandin, Modelling and
  analyzing adaptive self-assembling strategies with Maude, Pre-proceedings of
  the International Workshop on Rewriting Logic and its Applications (WRLA'12),
  2012
Thanks!
alberto.lluch@imtlucca.it
linkedin.com/in/albertolluch

More Related Content

Viewers also liked

Choose'10: Ralf Laemmel - Dealing Confortably with the Confusion of Tongues
Choose'10: Ralf Laemmel - Dealing Confortably with the Confusion of TonguesChoose'10: Ralf Laemmel - Dealing Confortably with the Confusion of Tongues
Choose'10: Ralf Laemmel - Dealing Confortably with the Confusion of Tongues
CHOOSE
 
Practical Models in Practice
Practical Models in PracticePractical Models in Practice
Practical Models in Practice
CHOOSE
 
Self awareness and self esteem MBA HR PPT
Self awareness and self esteem MBA HR PPTSelf awareness and self esteem MBA HR PPT
Self awareness and self esteem MBA HR PPT
Babasab Patil
 
Self awareness
Self awarenessSelf awareness
Self awareness
Eric Pazziuagan
 
Self awareness and Self Management
Self awareness and Self ManagementSelf awareness and Self Management
Self awareness and Self Managementellaboi
 
Casting and its types
Casting and its typesCasting and its types
Casting and its types
Waqas Ahmed
 
8 Tips for an Awesome Powerpoint Presentation
8 Tips for an Awesome Powerpoint Presentation8 Tips for an Awesome Powerpoint Presentation
8 Tips for an Awesome Powerpoint Presentation
Slides | Presentation Design Agency
 

Viewers also liked (7)

Choose'10: Ralf Laemmel - Dealing Confortably with the Confusion of Tongues
Choose'10: Ralf Laemmel - Dealing Confortably with the Confusion of TonguesChoose'10: Ralf Laemmel - Dealing Confortably with the Confusion of Tongues
Choose'10: Ralf Laemmel - Dealing Confortably with the Confusion of Tongues
 
Practical Models in Practice
Practical Models in PracticePractical Models in Practice
Practical Models in Practice
 
Self awareness and self esteem MBA HR PPT
Self awareness and self esteem MBA HR PPTSelf awareness and self esteem MBA HR PPT
Self awareness and self esteem MBA HR PPT
 
Self awareness
Self awarenessSelf awareness
Self awareness
 
Self awareness and Self Management
Self awareness and Self ManagementSelf awareness and Self Management
Self awareness and Self Management
 
Casting and its types
Casting and its typesCasting and its types
Casting and its types
 
8 Tips for an Awesome Powerpoint Presentation
8 Tips for an Awesome Powerpoint Presentation8 Tips for an Awesome Powerpoint Presentation
8 Tips for an Awesome Powerpoint Presentation
 

Similar to A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus on Russian Dolls) @ AWASS Summer School 2012

A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011
Alberto Lluch Lafuente
 
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
Alberto Lluch Lafuente
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
Pramod Parajuli
 
Architecture Centric Development PPT Presentation
Architecture Centric Development PPT PresentationArchitecture Centric Development PPT Presentation
Architecture Centric Development PPT Presentation
ERPCell
 
HelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.pptHelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.ppt
19526YuvaKumarIrigi
 
Software Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionSoftware Architecture: introduction to the abstraction
Software Architecture: introduction to the abstraction
Henry Muccini
 
Object Orientation Fundamentals
Object Orientation FundamentalsObject Orientation Fundamentals
Object Orientation Fundamentals
Pramod Parajuli
 
1-PE-I-OOAD.pptx
1-PE-I-OOAD.pptx1-PE-I-OOAD.pptx
1-PE-I-OOAD.pptx
KALPANAC20
 
Cs 1023 lec 4 (week 1)
Cs 1023 lec 4 (week 1)Cs 1023 lec 4 (week 1)
Cs 1023 lec 4 (week 1)stanbridge
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
Nandhini S
 
Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...
38aartidhage
 
Model-Based Systems Engineering Demystified
Model-Based Systems Engineering DemystifiedModel-Based Systems Engineering Demystified
Model-Based Systems Engineering Demystified
Elizabeth Steiner
 
What is Software Architecture?
What is Software Architecture?What is Software Architecture?
What is Software Architecture?
University of Pretoria
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES
Ivano Malavolta
 
Parallel Computing 2007: Overview
Parallel Computing 2007: OverviewParallel Computing 2007: Overview
Parallel Computing 2007: Overview
Geoffrey Fox
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
Smita Agarwal
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
AmadouBagayoko2
 
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Mozaic Works
 
Software Architecture: views and viewpoints
Software Architecture: views and viewpointsSoftware Architecture: views and viewpoints
Software Architecture: views and viewpoints
Henry Muccini
 
Dsm presentation (english)
Dsm presentation (english)Dsm presentation (english)
Dsm presentation (english)
Han van Roosmalen
 

Similar to A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus on Russian Dolls) @ AWASS Summer School 2012 (20)

A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011
 
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Architecture Centric Development PPT Presentation
Architecture Centric Development PPT PresentationArchitecture Centric Development PPT Presentation
Architecture Centric Development PPT Presentation
 
HelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.pptHelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.ppt
 
Software Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionSoftware Architecture: introduction to the abstraction
Software Architecture: introduction to the abstraction
 
Object Orientation Fundamentals
Object Orientation FundamentalsObject Orientation Fundamentals
Object Orientation Fundamentals
 
1-PE-I-OOAD.pptx
1-PE-I-OOAD.pptx1-PE-I-OOAD.pptx
1-PE-I-OOAD.pptx
 
Cs 1023 lec 4 (week 1)
Cs 1023 lec 4 (week 1)Cs 1023 lec 4 (week 1)
Cs 1023 lec 4 (week 1)
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
 
Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...
 
Model-Based Systems Engineering Demystified
Model-Based Systems Engineering DemystifiedModel-Based Systems Engineering Demystified
Model-Based Systems Engineering Demystified
 
What is Software Architecture?
What is Software Architecture?What is Software Architecture?
What is Software Architecture?
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES
 
Parallel Computing 2007: Overview
Parallel Computing 2007: OverviewParallel Computing 2007: Overview
Parallel Computing 2007: Overview
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
 
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
 
Software Architecture: views and viewpoints
Software Architecture: views and viewpointsSoftware Architecture: views and viewpoints
Software Architecture: views and viewpoints
 
Dsm presentation (english)
Dsm presentation (english)Dsm presentation (english)
Dsm presentation (english)
 

More from Alberto Lluch Lafuente

Many-to-Many Information Flow Policies
Many-to-Many Information Flow PoliciesMany-to-Many Information Flow Policies
Many-to-Many Information Flow Policies
Alberto Lluch Lafuente
 
Aggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal LogicAggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal Logic
Alberto Lluch Lafuente
 
A Semiring-valued Temporal Logic
A Semiring-valued Temporal LogicA Semiring-valued Temporal Logic
A Semiring-valued Temporal Logic
Alberto Lluch Lafuente
 
Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...
Alberto Lluch Lafuente
 
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Alberto Lluch Lafuente
 
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
Alberto Lluch Lafuente
 
Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Adaptable Transition Systems @ ASCENS Meeting Prague 2013Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Alberto Lluch Lafuente
 
White Box Adaptation @ CINA Meeting 2013
White Box Adaptation @ CINA Meeting 2013White Box Adaptation @ CINA Meeting 2013
White Box Adaptation @ CINA Meeting 2013Alberto Lluch Lafuente
 
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
Alberto Lluch Lafuente
 
Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...
Alberto Lluch Lafuente
 
Maude .:° ASCENS 2011
Maude .:° ASCENS 2011Maude .:° ASCENS 2011
Maude .:° ASCENS 2011
Alberto Lluch Lafuente
 
IMT Welcome Day 2011
IMT Welcome Day 2011IMT Welcome Day 2011
IMT Welcome Day 2011
Alberto Lluch Lafuente
 
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009Alberto Lluch Lafuente
 
An Algebra of Hierarchical Graphs
An Algebra of Hierarchical GraphsAn Algebra of Hierarchical Graphs
An Algebra of Hierarchical Graphs
Alberto Lluch Lafuente
 

More from Alberto Lluch Lafuente (14)

Many-to-Many Information Flow Policies
Many-to-Many Information Flow PoliciesMany-to-Many Information Flow Policies
Many-to-Many Information Flow Policies
 
Aggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal LogicAggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal Logic
 
A Semiring-valued Temporal Logic
A Semiring-valued Temporal LogicA Semiring-valued Temporal Logic
A Semiring-valued Temporal Logic
 
Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...
 
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
 
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
 
Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Adaptable Transition Systems @ ASCENS Meeting Prague 2013Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Adaptable Transition Systems @ ASCENS Meeting Prague 2013
 
White Box Adaptation @ CINA Meeting 2013
White Box Adaptation @ CINA Meeting 2013White Box Adaptation @ CINA Meeting 2013
White Box Adaptation @ CINA Meeting 2013
 
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
 
Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...
 
Maude .:° ASCENS 2011
Maude .:° ASCENS 2011Maude .:° ASCENS 2011
Maude .:° ASCENS 2011
 
IMT Welcome Day 2011
IMT Welcome Day 2011IMT Welcome Day 2011
IMT Welcome Day 2011
 
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
 
An Algebra of Hierarchical Graphs
An Algebra of Hierarchical GraphsAn Algebra of Hierarchical Graphs
An Algebra of Hierarchical Graphs
 

Recently uploaded

Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
ArianaBusciglio
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
AG2 Design
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
NelTorrente
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
Levi Shapiro
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
Landownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptxLandownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptx
JezreelCabil2
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
tarandeep35
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
Celine George
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
EugeneSaldivar
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
goswamiyash170123
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
ArianaBusciglio
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 

Recently uploaded (20)

Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
Landownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptxLandownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptx
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 

A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus on Russian Dolls) @ AWASS Summer School 2012

  • 1. A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus on Reflective Russian Dolls) Alberto Lluch Lafuente alberto.lluch@imtlucca.it ascens autonomic service component ensembles Roberto Bruni, University of Pisa Andrea Corradini, University of Pisa Fabio Gadducci, University of Pisa Andrea Vandin, IMT Lucca 10th-16th June 2012 Edinburgh
  • 4. ensembles “...open-ended, highly parallel, massively distributed systems... ...made of self-aware, self-adaptive, [...], autonomic components.” - ascens-ist.eu
  • 5. Robot Swarms E-vehicles
  • 6. the goal of ascens “...build ensembles in a way that combines software engineering, formal methods and autonomic, adaptive, self-aware systems.” - ascens-ist.eu
  • 8. - Lotfi A. Zadeh, Proceedings of the IEEE, 1963
  • 9. adaptation “... changing something (itself, others, the environment) so that it would be more suitable or fit for some purpose than it would have otherwise been” - T. Lints, “The essentials in defining adaptation”, 4th Annual IEEE Systems Conference
  • 10. adaptation in software systems “Self-adaptive software evaluates its own behavior and changes behavior when the evaluation indicates that […] better functionality or performance is possible.” - Laddaga, R. “Self-adaptive software”, Technical Repeport 98-12, DARPA BAA, 1997.
  • 11. adaptation in software systems “Self-adaptive software modifies its own behavior in response to changes in its operating environment.” - P. Oreizy, et al, “An architecture-based approach to self- adaptive software”. IEEE Intelligent Sys. 14, 3, 54–62, 1999
  • 12. adaptation in software systems “A software system is self-adaptive if it modifies its behaviour as a reaction to a change in itself or its context to maintain/improve its goal”
  • 13. what's the problem with software? Most programs...  ...“change behaviour” (e.g. conditional branching);  ...“to react to external perturbations” (e.g. inputs);  ...“to reach goals” (e.g. functional requirements). How do we distinguish...  ...an adaptive software from a non adaptive one?  ...adaptation logic from application logic?
  • 14. is this adaptation? ... if f(x) then do_this; else do_that; endif ...
  • 15. is this adaptation? “if the hill is too steep then assemble with other robots and try again”
  • 16. is this adaptation? ... if (tooSteep || ... ){ setState(Anti_Phototaxis); } ..
  • 17. is obstacle avoidance adaptive? “Obstacle avoidance may count as adaptive behaviour if […] obstacles appear rarely. [...] If the ‘normal’ environment is […] obstacle- rich, then avoidance becomes [...] “normal” behaviour rather than an adaptation.” - Ezequiel di Paolo, course on “Adaptive Systems”, University of Sussex, Spring 2006.
  • 18. black-box adaptation Popular on some fields (Biology, Control Theory, ...)  systems have a “default” behaviour & goal;  adaptation reacts to “external perturbations”. In software systems:  Useful in the analysis;  Not so useful in the design, reuse, etc.
  • 20. 5W1H (six honest men) (1) Why? (e.g. robustness? performance? goals?) (2) When? (e.g. reactively or proactively?) (3) Where? (e.g. which architectural level?) (4) What? (e.g. which artifacts?) (5) Who? (e.g. autonomic managers? humans?) (6) How? (e.g. which actions, in which order?) - M. Salehie et al., “Self-adaptive software: Landscape and research challenges”. ACM Transactions on Autonomous and Adaptive Systems 4(2), 2009 - R. Laddag. “Active software”. Int. Workshop on Self-Adaptive Software. 11–26, 2000
  • 21. this talk... ...focuses on the “HOW” “A software system is self-adaptive if it modifies its behaviour as a reaction to a change in itself or its context to maintain/improve goal achievement”
  • 22. desiderata Conceptual white-box definitions of adaptation...  … useful to disambiguate “adaptivity”;  … general enough & consistent with the literature;  … useful for designing & analysing adaptive systems.
  • 23. what is a program? “program = control + data” - Niklaus Wirth, “Algorithms + Data Structures = Programs”, Prentice-Hall (1976)
  • 24. what is a program? CONTROL DATA Data can be used to  store information;  influence the control;  both.
  • 25. what is an adaptable program? “adaptable program = control + data
  • 26. what is an adaptable program? “adaptable program = control + data control data + the rest ”
  • 27. what is an adaptable program? CONTROL DATA CONTROL OTHER DATA “adaptation is the run-time modification of control data”
  • 28. a program is... “...adaptable if it has a distinguished collection of CD that can be modified at runtime.” “...adaptive if its control data is modified at runtime for some computation.” “...self-adaptive if it modifies its own control data at runtime.”
  • 29. are these definitions... … useful to disambiguate “adaptivity”? … general enough & consistent with the literature? … useful for designing & analysing adaptive systems?
  • 30. on ambiguity The choice of CD is (of course) arbitrary: The same system can be adaptive in different ways! but... ...the responsibility of declaring “what is the adaptive behaviour” is passed from the observer to the designer.
  • 31. is this adaptation? ... is the state a control data? if (tooSteep || ... ){ setState(Anti_Phototaxis); } ..
  • 32. design & analysis: control data & effectors AUTONOMIC MANAGER Analyze Plan Monitor Knowledge Execute EFFECTOR MANAGED ELEMENT CD CONTROL
  • 33. design & analysis: MAPE-K Control AUTONOMIC MANAGER Data Analyze Plan Control Monitor Knowledge Execute Control Data MANAGED ELEMENT
  • 34. CD design & analysis: A P adaptation towers M K E CD CD A P CONTROL M E K CD CD A P M K E CONTROL CD MANAGED ELEMENT
  • 35. design & analysis: patterns/styles CD CD CONTROL CONTROL do you want this?
  • 36. consistency with literature Identify some control data such that its modification coincides with adaptation (as understood by the authors)
  • 37. generality aspects rules contexts models configuration policies variables programs CONTROL DATA
  • 38. some examples  Aspect-Oriented Computing [Salvaneschi et al. 2011]  Service Component Ensemble Language [De Nicola et al. 2012]  Specification-carrying programs [Pavlovic 2000]  Context-Oriented Computing [Ghezzi et al. 2011]  IBM's MAPE-K [Horn 2001]  Run-time architectural models [Oreizy et al. 1999]  FORMS [Weyns et al. 2012] THIS TALK  Model-based adaptation [Zhang&Cheng 2006]  Coordination contexts [Andrade&Fiadeiro 2002]  Non-deterministic interactions [Broy et al. 2009]  Adaptation patterns [Cabri et al. 2011]  ...  Reflective Russian Dolls [Meseguer&Talcott 2002]
  • 40. - J. Meseguer et al., “Semantic models for distributed object reflection”, ECOOP 2002, LNCS 2374. Springer, 1–36.
  • 50. what is Maude? “A high-level, declarative language that supports both equational and rewriting logic computation” – maude.cs.uiuc.edu
  • 51. modular, functional, rule-based, etc. mod m(x) is import m1, m2,... sort s1, s2,... ops f, g,... eq f(...) = ... rl l => r endm
  • 52. Maude is also a semantic framework models of concurrent computation: equational programming, lambda calculi, Petri nets, process algebras (CCS and pi-calculus), actors, operational semantics of languages (via K, SOS): Java, C, Python, Haskell, agent languages, active networks languages, hardware description languages, logical framework and metatool: linear logic, translations between theorem provers, type systems, open calculus of constructions, tile logic distributed architectures and components: UML, OCL, MOF, Service architectures and middlewares, open distributed processing, models, specification and analysis of communication protocols: active networks, wireless sensor networks, firewire leader election protocol, modeling and analysis of security protocols: cryptographic protocol specification language CAPSL, MSR, security specification formalism, Maude-NPA, real-time, biological, probabilistic systems: real-time maude, pathway logic...
  • 53. Maude is tool supported  An Interpreter;  Debuggers (declarative/interactive);  Model checkers (e.g. LTL);  Confluence & Termination checkers;  A theorem prover;  ...
  • 54. maude supports logical reflection  META-LEVEL is a module (the universal theory) where – modules, terms, rules, equations, sorts, etc. are data. – matching, rule application, rewriting, etc. are functions.  META-LEVEL is a module so... it can be treated as data again, and again... enabling the tower of reflection.  Meta-programming applications – transformation of modules; – analysis of modules; – ... – adaptation.
  • 57. message filtering & replication
  • 60. white-box adaptation manager state rules state rules (black-box component) interpreter (white-box component)
  • 61. self-awareness “Self-Awareness means that the system is aware of manager its self states and behaviors. ” state rules - M.G. Hinchey, et al, “Self-managing software”. IEEE Computer 39(2) 107–109, 2006. interpreter (white-box component)
  • 65. “formal” autonomic managers model checking, AUTONOMIC MANAGER logical inference Analyze Plan Monitor Knowledge Execute EFFECTOR MANAGED ELEMENT CD CONTROL
  • 67. summary White box-adaptation:  Focus on internal mechanisms, rather than manifestations;  Adaptation logic decided by the designers, rather than observers; “Control Data” white box criteria:  “adaptable program = control + {control data + other data}”;  Wide spectrum of control data: from “parameters” to “programs”; Reflective Russian Dolls:  Support formal techniques for adaptation and awareness;  Rely on logical reflection and wrapping techniques;
  • 68. main references  M. Salehie, L. Tahvildari, Self-adaptive software: Landscape and research challenges. ACM Transactions on Autonomous and Adaptive Systems 4 (2), 2009.  R. Bruni, A. Corradini, F. Gadducci, A. Lluch Lafuente, A. Vandin, A Conceptual Framework for Adaptation, Proceedings of the 15th International Conference on the Fundamentals of Software Engineering (FASE’12), LNCS, vol. 7212, pp. 240–254, Springer (2012)  J. Meseguer, C. Talcott, Semantic models for distributed object reflection. In ECOOP 2002, B. Magnusson, Ed. LNCS Series, vol. 2374. Springer, 1–36, 2002.  R. Bruni, A. Corradini, F. Gadducci, A. Lluch Lafuente, A. Vandin, Modelling and analyzing adaptive self-assembling strategies with Maude, Pre-proceedings of the International Workshop on Rewriting Logic and its Applications (WRLA'12), 2012