saso2013 - pechakucha version

Post on 11-May-2015

168 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

SASO2013 - PechaKucha version - September 2013 - Philadelphia/PA/EUA

TRANSCRIPT

   

Toward Systematic Conveying of Architecture Design Knowledge for

Self-Adaptive SystemsSandro S. Andrade

GSORT Distributed Systems GroupFederal Institute of Education, Science

and Technology of Bahia (IFBa)Salvador - BA - Brazil

sandros@ufba.br

Raimundo José de A. MacêdoDistributed Systems Laboratory (LaSiD)

Department of Computer ScienceFederal University of Bahia

Salvador - BA - Brazilmacedo@ufba.br

The 7th IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO'13) – Philadelpia/PA – USA – September/2013

   

Poleplacement ?

Self-AdaptiveSystems

Effectivesolutions highlytailored to specific problems

Large design/solutionspace

Lack of support forwell-informed trade-off

analysis

Highly specialized domain

   

Root locus ?

Poleplacement ?

Self-AdaptiveSystems

Effectivesolutions highlytailored to specific problems

Large design/solutionspace

Lack of support forwell-informed trade-off

analysis

Highly specialized domain

   

What am I supposedto do with all these

stuff ?

DesigningSelf-Adaptive

Systems

Architecture DesignHandbooks

Reference ArchitecturesArchitectural Styles

Formal ReferenceModels / Frameworks

Model-Based SoftwareDesign & Development

   

Domain-specific design spaces

DuSE=

+

+

Quality metrics of automaticallygenerated candidate architectures

A multi-objective optimization approach

   

Domain-specific design spaces

DuSE=

+

+

Quality metrics of automaticallygenerated candidate architectures

A multi-objective optimization approach

SA:DuSE = DuSE instance(design space) for the Self-Adaptive Systemsdomain

   

   

   

DuSE Metamodel

   

SA:DuSE Design Space

DD1: Control Law

DD3: Control Adaptation

DD2: Tuning Approach

DD4: MAPE Deployment

   

SA:DuSE Design SpaceVP11: ProportionalVP12: Proportional-IntegralVP13: Proportional-Integral-DerivativeVP14: Static State FeedbackVP15: Precompensated Static State FeedbackVP16: Dynamic State Feedback

DD1: Control Law

VP31: Fixed Gain (no adaptation)VP32: Gain SchedulingVP33: Model Identification Adaptation Control

DD3: Control Adaptation

VP21: Chien-Hrones-Reswick, 0 OS, Dist. RejectionVP22: Chien-Hrones-Reswick, 0 OS, Ref. TrackingVP23: Chien-Hrones-Reswick, 20 OS, Dist. RejectionVP24: Chien-Hrones-Reswick, 20 OS, Ref. TrackingVP25: Ziegler-NicholsVP26: Cohen-CoonVP27: Linear Quadratic Regulator

DD2: Tuning Approach

VP41: Global ControlVP42: Local Control + Shared ReferenceVP43: Local Control + Shared Error

DD4: MAPE Deployment

   

SA:DuSE Quality Metrics

M2: Average

Settling Time

M1: Control

Overhead

M4: Control

Robustness

M3: Average

Maximum Overshoot

   

SA:DuSE Quality Metrics

M2: Average

Settling Time

ME2=allOwnedElements ()→ selectAsType(QParametricController )→sum(stime())

allOwnedElements()→selectAsType(QParametricController )→size ()

; whereQParametricController : : stime()=−4

log(maxi∣p i∣);and max i∣pi∣is themagnitude of thelargest closed−loop pole

M1: Control

OverheadME1=

allOwnedElements ()→ selectAsType (QController )→ collect(overhead ( ))→sum ()

allOwnedElements ()→selectAsType (QController )→size()

;QController : : overhead()increasingly penalizes VP32, VP33, VP41and VP43

M4: Control

RobustnessME4=

allOwnedElements ()→ selectAsType(QController )→collect (robustness())→sum ()

allOwnedElements()→selectAsType(QController )→size()

;QController : :robustness()increasingly penalizesVP31 andVP32

M3: Average

Maximum Overshoot

ME3=allOwnedElements()→selectAsType(QParametricController)→sum (maxOS ())

allOwnedElements()→selectAsType(QParametricController )→size ()

; whereQParametricController : : maxOS ()={0 ;real dominant pole p1≥0

∣p1∣;real dominant pole p1<0

r π/∣θ∣;dominant poles p1, p2=r.e±j. θ}

   

DuSE Optimization

3 loci of decision -> 54,010,152 candidates4 loci of decision -> 20,415,837,000 candidates

   

DuSE Optimization

3 loci of decision -> 54,010,152 candidates4 loci of decision -> 20,415,837,000 candidates

A search-based approach enables effective design space explorationand helps preventing false intuition and technology bias

   

Tool Support (DuSE-MT)

   

Case Study

Cloud-based mediaencoding service

Three loci of decision(controllable components)

Annotations from Qemu +Hadoop + CloudStackexperiments

Control goal: enforceencoding throughput

   

Findings

   

Conclusion

Contributions Systematic gathering of architecture designknowledge in the field of Self-Adaptive Systems

A search-based approach for endowing architectureswith self-adaptative behaviour and explicit support

for well-informed design trade-off analysis

A supporting tool (DuSE-MT)

   

Conclusion

Limitations Requires an initial annotated architectural model

No guaranteed optimality (local-optimal Pareto fronts)

Still requires a posteriori preference articulation

Contributions Systematic gathering of architecture designknowledge in the field of Self-Adaptive Systems

A search-based approach for endowing architectureswith self-adaptative behaviour and explicit support

for well-informed design trade-off analysis

A supporting tool (DuSE-MT)

Current & Future Work Second case study

Resulting Parent front evaluation (indicators)

From Design Spaces to Design Theories

top related