Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio...
-
date post
19-Dec-2015 -
Category
Documents
-
view
215 -
download
0
Transcript of Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio...
![Page 1: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/1.jpg)
Robust-and-evolvableResilient Software SystemsOpen Problems and Lessons Learned
Vincenzo De Florio
www.pats.ua.ac.be
![Page 2: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/2.jpg)
229 August 2011
Reflections & lessons learned...
• ...on how to build evolvable & robust resilient systems
• Evolvable, robust, and resilient: definitions
• Personal view on key requirements and dimensions
• Experiences on how robustness evolve with evolvability requirements and dimensions
• Conclusions and next steps
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 3: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/3.jpg)
329 August 2011
Definitions and questions - 2
• Robustness: “Feature persistence under (un)foreseen perturbations, reached through parametric/structural re-organizations” [Jens] How to achieve – and prove – the emergence of
robustness? Single “Gestalt”, several domain- (feature-)
specific solutions...
• Resilience: functional and non-functional identity persistence (e.g. dependability)
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 4: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/4.jpg)
429 August 2011
Robust evolvability: depends on several parameters
• M: Sensitivity to change The wider the sensorial spectrum, the higher
the chances of being aware of change
• A: Ability to analyze, correlate past and present sensorial data & Knowledge
• P: Ability to plan reactions (e.g. firing rules based on acquired Knowledge)
• E: Action spectrum Defines feasible vs. infeasible reactions
Rea
ctio
n la
tenc
ies,
com
plex
ity,
dete
rmin
istic
beh
avio
ur..
..
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 5: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/5.jpg)
529 August 2011
Boulding’s categories
• Kenneth Bouldingdeveloped a scaleranking systems and SoS according to M+A (lower levels) and P+E (higher levels) “Thermostats”, “Cells”, “Plants”, “Animals”,
“Beings,”...
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 6: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/6.jpg)
Key dimensions
• In what follows, P+E = Evolution engine
• Two dimensions appear particularly relevant here:• Evolution engine complexity• (Evolution engines multiplicity) +
(complexity of their interactions)
29 August 2011 ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
6
![Page 7: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/7.jpg)
29 August 2011
Phenotypically plastic:simple parametric
adaptation
Complexity of evolution engine
![Page 8: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/8.jpg)
29 August 2011
Phenotypically plastic,switching betweenpredefined known
organizations
Complexity of evolution engine
![Page 9: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/9.jpg)
29 August 2011
Phenotypically dynamic:complex compositional
and parametricadaptation
![Page 10: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/10.jpg)
29 August 2011
Simple forms ofinteraction, few
entities
![Page 11: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/11.jpg)
29 August 2011
Ecosystems withmultiple complex
social organizations;heterarchies
![Page 12: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/12.jpg)
29 August 2011
The higher the level, the more difficult to assure robustness and resilience
![Page 13: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/13.jpg)
1329 August 2011
First example
• Autonomically redundant data structures (RDS) Phenotypically static
• Single adaptation strategy based on one parameter (redundancy degree)
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 14: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/14.jpg)
Redundancy = f(risk(t))
• Dynamically redundant data structures– Autonomic management of redundancy– RDS where redundancy changes dynamically
after risk of scheme failure– risk(t): Indirect assessment
29 August 2011 ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
14
![Page 15: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/15.jpg)
15
Indirect deduction of risk
R = 0 R = 1/3
R = 2/3R =1
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
29 August 2011
![Page 16: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/16.jpg)
Intuitive formulation of risk-throughout-evolution
• n(i) = redundancy at voting round i = 2p(i)+1 (for some p(i)>0)
• m(i) = card {replicas that agree after voting round i }, 1 ≤ m(i) ≤ n(i)
• Then risk(i) =
29 August 2011
(n(i) – m(i))/p(i) when m(i) > p(i)
1 otherwise
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
Linear (naïve)formulation
16
![Page 17: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/17.jpg)
Evolution throughout fault injection
t
Red
unda
ncy
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
29 August 2011 17
![Page 18: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/18.jpg)
18ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
29 August 2011
![Page 19: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/19.jpg)
1929 August 2011
First example – conclusions
Simple and stable evolution engine → robust• Reduced complexity• Convenient formulation of robustness assertions• Predictable behaviours
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 20: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/20.jpg)
2029 August 2011
Second example
• Transformer middleware Phenotypically dynamic Multiple domain-specific
“planners” are selected and merged on the fly
Component-based application reshaped accordingly
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 21: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/21.jpg)
Second example – conclusions
• Big problem: robustness
• Will the emerging properties include the design goals?
• No assurance (yet)• Collaboration initiated (assisted model evolution)
• For the time being, known-and-”safe” evolution states can be recognized
29 August 2011 21ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 22: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/22.jpg)
2229 August 2011
Third example – Service-oriented communities
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
• SoA• Orchestration of
devices and human beings• different capabilities,
backgrounds…
• Responses to societal problems(e.g. AAL)
![Page 23: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/23.jpg)
Member Member
Service registry
Servicedescription
SoC: General structure
Publish Publish
Bind
Reasoning & coordinationIndividual &
social concernsoptimization
(e.g. viaTransformer)
CapabilitiesPoliciesAvailabilityLocation…
Events
PeopleDevices
29 August 2011 23ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 24: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/24.jpg)
2429 August 2011
SoC: Specialization:Mutual Assistance Community
ABC Shop
Smartdevices
Informal serviceprovider
Commercial vender
Doctor
Community
Access
A smart house
Coordinationcenter
(professional)
OSGIGateway
CreateOWL-S
OWL-S servicepublication
ServiceRequest
OWL-S servicepublication
OWL-S servicepublication
OWL-SMatcher
OSGIbundle
OSGIbundle
OSGIbundle
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
Reducing social isolation of elderly people Promoting active life Reducing costs – best utilizing the social resources
![Page 25: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/25.jpg)
Emergence of new services
Interactive TV
Request
Request
Required service: Walking with someone.Location: Middelheim park, Antwerp.Deadline: 8pm, Sept. 4, 2011.Service model: Participant.
Walk in park
Request
Required service: Chatting with someone.Location: Somewhere, Antwerp.Deadline: 7pm, Sept. 4, 2011Service model: Participant, or informal carer.
NA
NA
Join Mary?
Join Kate?
Join Kate?
Yes
YesBind, take activity together MaryKate
Service Matching
Request stored in service center
29 August 2011 25ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 26: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/26.jpg)
Conclusions
• Target environment and target objectives: key factors in choosing the “best” system structure for evolvability• Stable environment + simple tasks do not
necessarily call for the utmost complexity…• High forms of evolvability high complexity
less guarantees
• Bio-inspired MAS may provide an answer• Spontaneous emergence of resilience• Evolvable social organizations
29 August 2011 26ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 27: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/27.jpg)
2729 August 2011
More questions and some answers: www.igi-global.com/ijaras
ESEC/FSE Workshop on Assurances for Self-Adaptive Systems
![Page 28: Robust-and-evolvable Resilient Software Systems Open Problems and Lessons Learned Vincenzo De Florio .](https://reader030.fdocuments.net/reader030/viewer/2022032800/56649d2e5503460f94a05f86/html5/thumbnails/28.jpg)
Time for Questions…
29 August 2011 28ESEC/FSE Workshop on Assurances for Self-Adaptive Systems