Upload
sandro-andrade
View
167
Download
0
Tags:
Embed Size (px)
DESCRIPTION
SASO2013 - PechaKucha version - September 2013 - Philadelphia/PA/EUA
Citation preview
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
Raimundo José de A. MacêdoDistributed Systems Laboratory (LaSiD)
Department of Computer ScienceFederal University of Bahia
Salvador - BA - [email protected]
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