The Ultimate Guide to Choosing WordPress Pros and Cons
Addressing QoS Drift in Self-adaptive Service Specification Models
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)
1
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.
3
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
4
5. Specifications (S)
Architectural Configuration (C)
f(S)=C’
During Runtime
proactive
reactive 5
P. Zaveand M. Jackson, “Fourdarkcornersofrequirementsengineering,” 1997 ACM Txson SE &Metho
Adaptation
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, “Automaticparameterregulationofperceptualsystems,”
ImageandVisionComputing, vol. 24, no. 8, pp. 870 – 881, 2006.
9
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
10
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)
11
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
12
14. Related Work
I. Epifani, C. Ghezzi, R. Mirandola, G. Tamburrelli. “Modelevolution by run-time
parameteradaptation”. 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
14
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
16
17. Preliminaries
• Computing with words (CWW)
• Words instead of numbers for computing and reasoning
• Words constrain linguistic variables
– Fuzzy sets
LoftiZadeh. “FuzzyLogic = ComputingwithWords”. IEEE TxsonFuzzy Systems 1996
Language to define NFCs
17
19. Preliminaries
• Specification models become linguistic
decisions models
• How do we assess them?
– Perceptual Computer – an architecture for CWW
J. M. Mendel, D. Wu. “ChallengesforPerceptualComputerApplicationsand How TheyWere
Overcome”. IEEE ComputationalIntelligence 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) 19
21. Preliminaries
• Concept drift occurswhenthecontextshifts
induce changes in thetargetconcept
• Functionally-equivalentservices are
continuouslycompeting in
termsofQoStoachievetheirownsurvivalgoal: to
be selected
• Perceptionsaboutwhatmeanseachconceptofea
ch NFP
ofeachfunctionalgroupofserviceschange
21
22. Preliminaries
G. Leng, X.-J. Zeng, and J. A. Keane, “A hybridlearningalgorithmwith a similarity-
basedpruningstrategyforself-adaptiveneuro-fuzzysystems,” AppliedSoftComputing 2009.
– randomnoise,
– randomtrends (gradual
changes),
– randomsubstitutions
(abruptchanges),
– orsystematictrends
We record also the trend of the
drift and we base our decision
on the trend history of the past
“potential” drifts
22
Outliers?
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
26
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
28
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.
29
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.
30