1
Addressing the QoS drift in Specification Models of Self-adaptive service-based systems
Romina Torres (1), Nelly Bencomo(2), Hernán Astudillo(1)
(1)Universidad Técnica Federico Santa María(2)INRIA Paris-Rocquencourt
2nd International Workshop on Realizing Artificial Intelligence Synergies in Software Engineering (RAISE – Mayo 2012)
2
CONTEXTSelf-adaptive Service based Systems
3
Introduction
• Dynamic adaptive systems must be able to adapt themselves during runtime to cope with the uncertainty associated with changes in their goals or in the environment in which they operate WITH NO (OR LIMITED) HUMAN INTERVENTION.
4
Requirements (R): Send the weather prediction for the weekend to the user wherever he is as fast as possible.Functional goals and non functional constraints
Specifications (S)
M. Mannion, B.Keepence. 1995. SMART requirements. SIGSOFT Softw. Eng. Notes, or GQM
€
K
5
Specifications (S)
Architectural Configuration (C)
f(S)=C’
During Runtimeproactive
reactiveP. Zave and M. Jackson, “Four dark corners of requirements engineering,” 1997 ACM Txs on SE & Methodologyy. 1997.
Adaptation
6
PROBLEMPerceptual Systems under changing environments
7
Challenge
uncertainty
8
Challenge - uncertainty
t0
€
t
t1
t2
t3
Perceptual System
9
Problem
• Cause:– Perceptual systems may be degraded when
environments are highly changing• Implication– Specification models (S) may be degraded due to
the highly changing service market• Self-adaptive Service-based systems may miss
requirements violations because S is not anymore a valid representation of R.
D. Hall, “Automatic parameter regulation of perceptual systems,” Image and Vision Computing, vol. 24, no. 8, pp. 870 – 881, 2006.
10
The natural solution to the challenge
• Humans should regularly and manually maintain their specification models in order to ensure they are a valid representation of their requirements during runtime
11
But…
• Dynamic adaptive systems must be able to adapt themselves during runtime to cope with the uncertainty associated with changes in their goals or in the environment in which they operate WITH NO (OR LIMITED) HUMAN INTERVENTION.
• Humans cannot be aware of a huge and highly dynamic operating environment (partial views)
12
The real required solution
• Specification models must be automatically maintained during runtime in order to maintain them as valid representations of the humans requirements
13
RELATED WORK
Keeping alive models
14
Related Work
I. Epifani, C. Ghezzi, R. Mirandola, G. Tamburrelli. “Model evolution by run-time parameter adaptation”. ICSE '09[Firelli et al. 2011] [Cardenilli et al 2011] [Calinescu et al. 2011] [Calinescu et al. 2012]
• [Epifani et al. 2009] – Humans estimations are seldom correct + in
dynamic environments, the value of parameters may change over time• keeping models alive during runtime and maintaining
updated the parameters by feeding a bayesian estimator with data collected from the running system• Parameters always are average values
– Problem: humans cannot constraint properly their functional goals
15
PROPROSALComputing with words + strategy to detect drifts on words
16
Our proposal
• A constraint language for humans to specify the NFCs in the specification models using concepts instead of numerical ranges.
• Necessarily we also need– An architecture capable to assess “abstract specification
models”– An infrastructure capable to obtain from the NFPs of the
offerings of the service market the numerical meaning of the concepts.• Initial values • Each time there is enough evidence a drift has occurred in the NFPs
17
Preliminaries
• Computing with words (CWW) • Words instead of numbers for computing and reasoning
• Words constrain linguistic variables– Fuzzy sets
Lofti Zadeh. “Fuzzy Logic = Computing with Words”. IEEE Txs on Fuzzy Systems 1996
Language to define NFCs
18
Proposal (1/3)
• Language
19
Preliminaries
• Specification models become linguistic decisions models
• How do we assess them?– Perceptual Computer – an architecture for CWW
J. M. Mendel, D. Wu. “Challenges for Perceptual Computer Applications and How They Were Overcome”. IEEE Computational Intelligence Magazine, 2012.L. Martínez, D. Ruan, F. Herrera, E. Herrera-Viedma, P. P. Wang: Linguistic decision making: Tools and applications. Inf. Sci. 179(14): 2297-2298 (2009)
20
Proposal(2/3)
21
Preliminaries
• Concept drift occurs when the context shifts induce changes in the target concept
• Functionally-equivalent services are continuously competing in terms of QoS to achieve their own survival goal: to be selected
• Perceptions about what means each concept of each NFP of each functional group of services change
22
Preliminaries
G. Leng, X.-J. Zeng, and J. A. Keane, “A hybrid learning algorithm with a similarity-based pruning strategy for self-adaptive neuro-fuzzy systems,” Applied Soft Computing 2009.
– random noise, – random trends (gradual
changes), – random substitutions
(abrupt changes), – or systematic trends
We record also the trend of the drift and we base our decision
on the trend history of the past “potential” drifts
Outliers?
23
Proposal (3/3)
24
25
VALIDATION
26
Validation Strategy
• Prototype Implementation of Adaptive• Dataset from programmableweb.com– 10 functional categories, 2 non-functional properties,
over 150 services (3000 “words”).– 5 SBSs clients subscribing their adaptation needs– 3 QoS drifts synthetically simulated in a window of 10
new NFP certifications.• We were able to detect requirements violations where
configurations become relative violators because others functionally-equivalent competitors improve their QoS. => reduction of false negative error
27
CONCLUSIONS & FUTURE WORK
28
Conclusions
• Current systems are being released too fragile– Lack of self-monitoring and self-repairing
capabilities– Lack of awareness– Self-adaptive Systems demands systems
“maintainability” be performed automatically– But even manually it is performed poorly
• So, still there is a lot of work on the SE side
29
Ongoing and future work
• Tuning Adaptive• False positives?• Stress testing - Scalability• Sensitivity analysis - Parameters tradeoff• New techniques to mitigate the obsolescence of
models during runtime• Release dataset of measurements of NFPs of
services during a frame of time where several QoS drifts may occur.
30
Acknowledgements
This work was partially funded by UTFSM DGIP (PIIC and 241167), BASAL FB0821, Conicyt Chile, the EU Connect project and the EU Marie Curie Requirements@runtime.