requirements, design and data repositories

30
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

Upload: cs-ncstate

Post on 06-May-2015

356 views

Category:

Technology


2 download

DESCRIPTION

Romina Torrees, Raise'13,

TRANSCRIPT

Page 1: Requirements, Design and Data Repositories

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)

Page 2: Requirements, Design and Data Repositories

2

CONTEXTSelf-adaptive Service based Systems

Page 3: Requirements, Design and Data Repositories

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.

Page 4: Requirements, Design and Data Repositories

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

Page 5: Requirements, Design and Data Repositories

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

Page 6: Requirements, Design and Data Repositories

6

PROBLEMPerceptual Systems under changing environments

Page 7: Requirements, Design and Data Repositories

7

Challenge

uncertainty

Page 8: Requirements, Design and Data Repositories

8

Challenge - uncertainty

t0

t

t1

t2

t3

Perceptual System

Page 9: Requirements, Design and Data Repositories

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.

Page 10: Requirements, Design and Data Repositories

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

Page 11: Requirements, Design and Data Repositories

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)

Page 12: Requirements, Design and Data Repositories

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

Page 13: Requirements, Design and Data Repositories

13

RELATED WORK

Keeping alive models

Page 14: Requirements, Design and Data Repositories

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

Page 15: Requirements, Design and Data Repositories

15

PROPROSALComputing with words + strategy to detect drifts on words

Page 16: Requirements, Design and Data Repositories

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

Page 17: Requirements, Design and Data Repositories

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

Page 18: Requirements, Design and Data Repositories

18

Proposal (1/3)

• Language

Page 19: Requirements, Design and Data Repositories

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)

Page 20: Requirements, Design and Data Repositories

20

Proposal(2/3)

Page 21: Requirements, Design and Data Repositories

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

Page 22: Requirements, Design and Data Repositories

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?

Page 23: Requirements, Design and Data Repositories

23

Proposal (3/3)

Page 24: Requirements, Design and Data Repositories

24

Page 25: Requirements, Design and Data Repositories

25

VALIDATION

Page 26: Requirements, Design and Data Repositories

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

Page 27: Requirements, Design and Data Repositories

27

CONCLUSIONS & FUTURE WORK

Page 28: Requirements, Design and Data Repositories

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

Page 29: Requirements, Design and Data Repositories

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.

Page 30: Requirements, Design and Data Repositories

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.