architectural design spaces for feedback control in self-adaptive systems concerns
DESCRIPTION
Presented at 25th International Conference on Software Engineering and Knowledge Engineering (SEKE 2013) - Boston/MA - EUA. A lot of current research efforts in self-adaptive systems community have been dedicated to the explicit modeling of architectural aspects related to system self-awareness and context-awareness. This paper presents a flexible and extensible representation of architectural design spaces for self-adaptation approaches based on feedback control loops. We have defined a generic representation for design spaces meta-modeling and have instantiated it in order to provide direct support for early reasoning and trade-off analysis of self-adaptation aspects with the aid of a set of feedback control metrics. The proposed approach has been fully implemented in a supporting tool and a case study with a distributed industrial data acquisition service has been undertaken. Whilst preliminary experiences with the proposed approach indicate useful reasoning support when comparing alternative design solutions for self-adaptation, further investigation regarding scalability aspects and automatic handling of conflicting goals has been identified as future work.TRANSCRIPT
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Architectural Design Spaces for Feedback Control Concerns in Self-Adaptive Systems
Sandro S. Andrade and Raimundo J. de A. Macêdo
Distributed Systems Laboratory (LaSiD)Department of Computer Science (DCC)
Federal University of Bahia (UFBa) - Brazil{sandros, macedo}@ufba.br
June/2013
Programa Multiinstitucional de Pós-Graduação em Ciência da Computação
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Context & Motivation
Self-AdaptiveSystems
More stringent demandsfor flexibility, dependability,energy-efficiency, ...
Applications thatweigh in at tens of
millions of lines of code
Complexity approachingthe limits of human
capability
Highly unpredictable andchanging operatingenvironments
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
State of the ArtMAPE-K Autonomic Manager(Kephart & Chess; 2003)
3-layer Architecture for Self-Adaptation(Kephart & Chess; 2003)
Middleware-level self-adaptation(e.g.: Rainbow – Garlan et al; 2004)
Explicit Modeling of Control Loops(Hebig, Giese & Becker; 2010)
FORMS Reference Model(Weyns, Malek & Andersson; 2012)
Megamodels@runtime(Vogel & Giese; 2012)
Uncertainty in Self-Adaptive Software Systems(Esfahani & Malek; 2012)
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Current Challenges
Highly specialized domain andlarge design/solution space
Current effective solutions arehighly tailored to specific problems
Control Theory mechanisms may notdirectly apply in computer systems
Architectural Styles/PatternsReference Architectures
Architecture Design Handbooks
It's hard to support earlyreasoning of properties and
well-informed trade-off analysis
Domain-Specific ADL'sFormal Reference Models/Frameworks
Qualitative Architecture Analysis MethodsQuantitative Architecture Analysis Methods
Model-Based SW Design & DevelopmentSearch-Based Software Engineering
Software Architecture Design Knowledge
Systematic Literature ReviewsModel-Predictive Control
Hybrid Systems Control
Current Approaches
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Current Challenges
It's hard to support earlyreasoning of properties and
well-informed trade-off analysis
Current effective solutions arehighly tailored to specific problems
Control Theory mechanisms may notdirectly apply in computer systems
Architectural Styles/PatternsReference Architectures
Architecture Design Handbooks
Domain-Specific ADL'sFormal Reference Models/Frameworks
Qualitative Architecture Analysis MethodsQuantitative Architecture Analysis Methods
Model-Based SW Design & DevelopmentSearch-Based Software Engineering
Software Architecture Design Knowledge
Systematic Literature ReviewsModel-Predictive Control
Hybrid Systems Control
Our Approach
Highly specialized domain andlarge design/solution space
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Our Approach
Systematic representation ofdomain-specific design spaces
DuSE=
+
+
Metrics for evaluation of automaticallygenerated candidate architectures
A multi-objective optimization approachto explicitly elicit design trade-offs
SA:DuSE is a particularDuSE instance whichenables automatedarchitecture design inthe Self-AdaptiveSystems domain
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Our ApproachAutonomic Manager
KnowledgeMonitor
Analyse Plan
Execute
Managed Element
SA:DuSE provides an automatedprocess for off-line design &analysis of Autonomic Managerarchitectures
Usually designed off-line, butmay be re-designed (adapted)at runtime by the Autonomic Manager
DuSE enables:● Manual design space exploration● Automated search for best candidates (multi-objective optimization)
An initial annotated UMLmodel is provided to SA:DuSE
A lot of degrees of freedom involved:control law, tuning approach, MAPE-K deployment, …
1
2
3
4
5
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
DuSE Metamodel
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
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
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
SA:DuSE Quality Metrics
M2: Average
Settling Time
ME2=allOwnedElements ()→ selectAsType(QParametricController )→sum(stime())
allOwnedElements()→selectAsType(QParametricController )→size ()
; where QParametricController : : stime()=−4
log(maxi∣p i∣);and max i∣pi∣is themagnitude of thelargest closed−loop pole
M1: Control
Overhead
ME1=allOwnedElements ()→ selectAsType (QController )→ collect(overhead ())→sum ()
allOwnedElements ( )→selectAsType (QController )→size()
;QController : : overhead( )increasingly penalizes VP32, VP33, VP41and VP43
M4: Control
Robustness
ME4=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 ()
; where QParametricController : : maxOS ()={0 ;real dominant pole p1≥0
∣p1∣;real dominant pole p1<0
r π/∣θ∣;dominant poles p1, p2=r.e±j. θ}
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
The DuSE Optimization ApproachA simple initial model with three loci of decision yields 54,010,152 candidates
With four loci of decision we get a space with 20,415,837,000 candidates
A search-based approach enables effective design space explorationand helps prevent false intuition and technology bias. The goal is to find
out a set of (locally) Pareto-optimal candidate architectures
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Case Study
Cloud-based mediaencoding service
Three loci of decision(controllable components)
Annotations from Qemu +Hadoop + CloudStackexperiments
Control goal: enforceencoding throughput
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Findings
Major trade-off betweenM
2 and M
3, but also M
2
and M4
M2/M
3 Pareto front:
● PI+CHR-20OS-DR● PID+CHR-0OS-DR● P+ZN
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Related Work
Automated Architecture Improvementfor Performance and other Attributes(Koziolek & Reussner; 2011)
Search-Based Software Architecture Design
A Meta-Framework for Design SpaceExploration(Saxena & Karsai; 2011)
+ Effective representation of architecture design knowledge- Limited extension to specific application domains
Explicit Modeling of Control Loops(Hebig, Giese & Becker; 2010)
FORMS Reference Model(Weyns, Malek & Andersson; 2012)
Megamodels@runtime(Vogel & Giese; 2012)
Actor-Based Adaptable Loops(Krikava et al; 2012)
Multiple Objective Self-Adaptation(Cheng, Garlan & Schmerl; 2006)
Software Engineering for Self-Adaptive Systems
+ Expressive constructs to model self- Adaptive aspects- No systematic knowledge representation- Low parsimony / No trade-off elicitation SA:DuSE
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Conclusion and Future Work
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
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
DuSE-MT
The 25th International Conference on Software Engineering and Knowledge Engineering (SEKE'13) – Boston/MA – USA – June/2013
Thank you !Questions ?
Sandro S. Andrade and Raimundo J. de A. Macêdo
Distributed Systems Laboratory (LaSiD)Department of Computer Science (DCC)
Federal University of Bahia (UFBa) - Brazil{sandros, macedo}@ufba.br
June/2013
Programa Multiinstitucional de Pós-Graduação em Ciência da Computação