SlideShare a Scribd company logo
1 of 37
Download to read offline
Do Search-Based Approaches Improve 
the Design of Self-Adaptive Systems ? 
A Controlled Experiment 
Sandro S. Andrade and Raimundo J. de A. Macêdo 
Distributed Systems Laboratory (LaSiD) 
Department of Computer Science 
Federal University of Bahia 
{sandros, macedo}@ufba.br 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Agenda 
● Context & motivation 
● Our search-based architectural design approach 
● The quasi-experiment 
● Contributions of this paper 
● Final remarks 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● The need for self-adaptive systems (SAS): 
– Dynamic and uncertain operating environments 
– Stringent requirements for scalability, dependability, energy-efficiency, 
and performance 
– Incomplete/partial requirements 
– Problem/design space complexity approaching the limits of 
human capability 
– Rapidly varying workloads and data characteristics 
– Some problems are inherently self-adaptive or self-organizing 
(eg.: robots motion coordination, particles/swarm optimization, 
etc) 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● MAPE-K Reference Architecture [1] 
[1] J. O. Kephart and D. M. Chess. Computer, vol. 36, no. 1, pp. 41–50, Jan. 2003. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● Current challenges: 
– Intricate problem space 
● How to effectively elicit the adaptation requirements ? 
Goals: 
● Type (regulation, tracking, disturbance rejection, optimization) 
● Evolution (static, dynamic) 
● Duration (persistent, temporary) 
● Multiplicity (single, multiple) 
● Dependency (independent, complementary, conflicting) 
● Flexibility (rigid, constrained, unconstrained) 
Change: 
● Source (internal, external) 
● Anticipation (foreseen, foreseeable, unforeseen) 
● Frequency (rare, frequent) 
● Type (functional, non-functional, technological) 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● Current challenges: 
– Intricate problem space 
● How to effectively elicit the adaptation requirements ? 
– Large and complex solution space 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● Current challenges: 
– Intricate problem space 
● How to effectively elicit the adaptation requirements ? 
– Large and complex solution space 
● Type (parametric, structural) 
● Mechanism (signaling, frameworks, profiling, etc) 
● Uncertainty handling (redundancy, filtering, smoothing) 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● Current challenges: 
– Intricate problem space 
● How to effectively elicit the adaptation requirements ? 
– Large and complex solution space 
● Mechanism (symptoms databases, policies, queue 
networks, game theory, etc) 
● System/Environment representation (ad-hoc, models) 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● Current challenges: 
– Intricate problem space 
● How to effectively elicit the adaptation requirements ? 
– Large and complex solution space 
● Actuation law (intelligent agents, control theory, search-based, etc) 
● Cardinality (single, utility functions, parent-front) 
● Type (static, dynamic) 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● Current challenges: 
– Intricate problem space 
● How to effectively elicit the adaptation requirements ? 
– Large and complex solution space 
● Type (parametric, structural) 
● Mechanism (function pointers, aspect weaving, metaobjects, middleware-based) 
● Timeliness (best-effort, guaranteed) 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Context & Motivation 
● Current challenges: 
– Intricate problem space 
● How to effectively elicit the adaptation requirements ? 
– Large and complex solution space 
● How to come up with an effective managing system architecture 
for the adaptation requirements at hand ? 
● How to judiciously evaluate all available design alternatives ? 
● How to make well-informed decisions about quality attributes 
trade-offs ? 
– Consequences: 
● Lack of organized design knowledge for routine use 
● False intuition, design bias, and sub-optimal architectures 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Our Search-Based Design 
Approach – DuSE 
● Research questions 
To which extent may SAS design knowledge be systematically 
represented for routine use ? 
How to support well-informed decision making regarding 
quality attribute trade-offs between alternative architectures for 
SAS ? 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Our Search-Based Design 
Approach – DuSE 
● We combine the use of ... 
– Metamodeling and Domain-Specific Languages (DSL) 
– Structured Architecture Design Spaces 
– Multi-Objective Optimization 
● … in order to … 
– Enable a more disciplined and automated “handbook” of SAS 
design 
– Provide a solid basis for choosing between architectures which 
exhibit different quality attributes 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Our Search-Based Design 
Approach – DuSE 
Domain-Specific Supporting 
Domain-Specific Design 
Dimensions + Quality Metrics 
Specified using the 
DuSE language 
Domain-Specific 
Design space 
UML Profile 
Generic 
Architecture 
Optimization 
Engine 
Initial System Model 
Annotated with 
corresponding 
UML Profile 
Pareto-front of Candidate Architectures [2] Andrade and Macêdo. SEKE. 
Boston, MA, USA: ACM, 2013. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Our Search-Based Design 
Approach – DuSE 
` 
● Domain independent 
● Metamodel dependent 
● Design space navigation engine 
● Optimization [3] Andrade and Macêdo. SASO. Philadelphia, PA, engine (NSGA-II) 
USA: IEEE, 2013. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Our Search-Based Design 
Approach – DuSE 
[4] Andrade and Macêdo. SASO Demo Session. Philadelphia, PA, USA: IEEE, 2013. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Our Search-Based Design 
Approach – SA:DuSE 
● SA:DuSE 
– A particular DuSE instance which captures the most prominent 
design dimensions of SASs 
● Evaluation dimensions: 
– Is SAS design indeed a multi-objective problem ? 
– To which extent the quality of Pareto-optimal architectures are 
indeed observed in real prototypes ? 
– Do search-based approaches improve the design of SAS ? 
[5] Andrade and Macêdo. WoSiDA 2014. Florianópolis, SC, Brasil. 2014. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Analyze the design of SAS 
● For the purpose of evaluating the search-based 
design approach we propose and a design process 
based on architecture styles catalogs 
● With respect to the effectiveness and complexity of 
resulting architectures, as well as the method's 
potential for leveraging the acquisition of distilled 
design knowledge by novice architects 
● From the point of view of researchers 
● In the context of graduate students endowing 
systems with self-adaptation capabilities 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Quasi-experiment: 
– Blocked subject-object study with a paired comparison design 
● Subjects: 
– 24 students of a graduate program in Distributed and 
Ubiquitous Computing 
● Experiment objects: 
– Two UML models representing the managed system (web 
server and MapReduce distributed architecture) 
● Experiment tests: 
– Design a managing system architecture for both objects 
– Answer a questionnaire on quality attribute trade-offs in SAS 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Independent variable: 
– Design method 
● Search-based approach 
● Style-based approach 
● Dependent variables: 
– Effectiveness of resulting SAS architectures 
– Complexity of resulting SAS architectures 
– The method's potential for leveraging the acquisition of distilled 
SAS design knowledge by novice architects 
● Experiment website: 
– http://wiki.ifba.edu.br/tr-ce012014 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Experiment timetable 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Experiment tests 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Experiment 
objects 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Measuring effectiveness 
(Generational Distance) 
[6] Deb and Kalyanmoy. John Wiley & Sons, Inc. NY, USA: 2001. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Measuring complexity 
(Component Point) 
[7] Wijayasiriwardhane and Lai. Journal of Systems and Software. 2010. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Measuring the acquisition of distilled design 
knowledge: 
– Questionnaire with 10 multiple choice questions 
– Questions related to quality attributes trade-offs in the SAS 
domain 
– Questionnaire answered at the end of each experimentation day 
– Normalized grades assigned to each student/day 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Hypotheses formulation 
H0 - there is no difference in design effectiveness between 
a feedback control loop design created using the style-based 
approach (RA) and a feedback control loop design 
created using the search-based approach (IA) 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro 
1 
H0 - there is no difference in design complexity between a 
feedback control loop design created using the RA and a 
feedback control loop design created using the IA 
2 
H0 - there is no difference in the acquisition of distilled 
design knowledge between a feedback control loop 
design created using the RA and a feedback control loop 
design created using the IA 
3
The Quasi-Experiment 
● Descriptive statistics 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Assumptions of parametric tests: 
– Data is taken from an interval or ratio scale 
– Observations are independent 
– Population variances are equal between groups 
(homoscedasticity) 
– Measured values are normally distributed 
α=0.05 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Assumptions of parametric tests: 
– Data is taken from an interval or ratio scale 
– Observations are independent 
– Population variances are equal between groups 
(homoscedasticity) 
– Measured values are normally distributed Cannot reject 
homoscedasticity 
α=0.05 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Assumptions of parametric tests: 
– Data is taken from an interval or ratio scale 
– Observations are independent 
– Population variances are equal between groups 
(homoscedasticity) 
– Measured values are normally distributed Can reject normal 
distribution 
α=0.05 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Assumptions of parametric tests: 
– Data is taken from an interval or ratio scale 
– Observations are independent 
– Population variances are equal between groups 
(homoscedasticity) 
– Measured values are normally distributed 
Wilcoxon Signed-Rank Test 
α=0.05 Paired t-test 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Results of the statistical tests 
α=0.05 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
The Quasi-Experiment 
● Threats to validity 
– Construct: 
● Inadequate preoperational explication of constructs 
● Hypothesis guessing 
● Objects representativeness 
– Internal: 
● Maturation 
● Instrumentation 
– External: 
● Students acting as subjects 
– Conclusion: 
● Experiment holders creating the experiment objects 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Contributions of this paper 
● To the best of our knowledge, SA:DuSE is the first 
effort in applying search-based approaches in the 
SAS domain 
● To the best of our knowledge, this is the second 
controlled experiment in the SAS domain 
(the first one is [8]) 
● We got some empirical evidence about the benefit 
of search-based approaches when designing SASs 
● The potential for leveraging knowledge acquisition 
still deserves further investigation 
[8] Weyns, Iftikhar, and Soderlund. SEAMS. 2013. 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Final Remarks 
● A lot of research towards principled and systematic 
design of self-adaptive systems 
● Effectiveness of systematic design spaces in 
capturing intricate solution spaces 
– However, qualitative approaches may be used to address 
another facets of architectural design 
● Future work: 
– SA:DuSE expansion (NSGA-III) 
– More investigation on real prototypes 
– From design spaces to design theories 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
Thanks ! Questions ? 
Sandro S. Andrade and Raimundo J. de A. Macêdo 
{sandros, macedo}@ufba.br 
CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro

More Related Content

Viewers also liked

Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...
Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...
Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...
Ilya Loshchilov
 
PhD Thesis Defense
PhD Thesis DefensePhD Thesis Defense
PhD Thesis Defense
Filip Krikava
 
201209 An Introduction to Building Affective-Driven Self-Adaptive Software
201209 An Introduction to Building Affective-Driven Self-Adaptive Software 201209 An Introduction to Building Affective-Driven Self-Adaptive Software
201209 An Introduction to Building Affective-Driven Self-Adaptive Software
Javier Gonzalez-Sanchez
 

Viewers also liked (20)

Unisys Service Oriented Self Adaptive Systems
Unisys Service Oriented Self Adaptive SystemsUnisys Service Oriented Self Adaptive Systems
Unisys Service Oriented Self Adaptive Systems
 
Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...
Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...
Intensive Surrogate Model Exploitation in Self-adaptive Surrogate-assisted CM...
 
PhD Thesis Defense
PhD Thesis DefensePhD Thesis Defense
PhD Thesis Defense
 
Domain specific languages and Scala
Domain specific languages and ScalaDomain specific languages and Scala
Domain specific languages and Scala
 
O KDE no mundo
O KDE no mundoO KDE no mundo
O KDE no mundo
 
QtModeling - bringing metamodeling features into the KDE world
QtModeling - bringing metamodeling features into the KDE worldQtModeling - bringing metamodeling features into the KDE world
QtModeling - bringing metamodeling features into the KDE world
 
Apresentação no 4o Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 201...
Apresentação no 4o Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 201...Apresentação no 4o Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 201...
Apresentação no 4o Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 201...
 
Minuet - the KDE approach to music education
Minuet - the KDE approach to music educationMinuet - the KDE approach to music education
Minuet - the KDE approach to music education
 
Palestra do FISL15: QtModeling: Metamodelagem e Model-Driven Software Enginee...
Palestra do FISL15: QtModeling: Metamodelagem e Model-Driven Software Enginee...Palestra do FISL15: QtModeling: Metamodelagem e Model-Driven Software Enginee...
Palestra do FISL15: QtModeling: Metamodelagem e Model-Driven Software Enginee...
 
Desenvolvendo Widgets QML para o KDE Plasma
Desenvolvendo Widgets QML para o KDE PlasmaDesenvolvendo Widgets QML para o KDE Plasma
Desenvolvendo Widgets QML para o KDE Plasma
 
SASO2013 - PechaKucha version
SASO2013 - PechaKucha versionSASO2013 - PechaKucha version
SASO2013 - PechaKucha version
 
Hausi Müller - Towards Self-Adaptive Software-Intensive Systems
Hausi Müller - Towards Self-Adaptive Software-Intensive SystemsHausi Müller - Towards Self-Adaptive Software-Intensive Systems
Hausi Müller - Towards Self-Adaptive Software-Intensive Systems
 
A Self-Adaptive Deployment Framework for Service-Oriented Systems
A Self-Adaptive Deployment Framework for Service-Oriented SystemsA Self-Adaptive Deployment Framework for Service-Oriented Systems
A Self-Adaptive Deployment Framework for Service-Oriented Systems
 
Self-Adaptive SLA-Driven Capacity Management for Internet Services
Self-Adaptive SLA-Driven Capacity Management for Internet ServicesSelf-Adaptive SLA-Driven Capacity Management for Internet Services
Self-Adaptive SLA-Driven Capacity Management for Internet Services
 
KDE de 2008 a 2018: Retrospectivas e Perspectivas Técnicas e Sociais
KDE de 2008 a 2018: Retrospectivas e Perspectivas Técnicas e SociaisKDE de 2008 a 2018: Retrospectivas e Perspectivas Técnicas e Sociais
KDE de 2008 a 2018: Retrospectivas e Perspectivas Técnicas e Sociais
 
Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e...
Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e...Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e...
Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e...
 
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
 
Desenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com QtDesenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com Qt
 
201209 An Introduction to Building Affective-Driven Self-Adaptive Software
201209 An Introduction to Building Affective-Driven Self-Adaptive Software 201209 An Introduction to Building Affective-Driven Self-Adaptive Software
201209 An Introduction to Building Affective-Driven Self-Adaptive Software
 
Self-adaptive Systems : An Introduction
Self-adaptive Systems : An Introduction Self-adaptive Systems : An Introduction
Self-adaptive Systems : An Introduction
 

Similar to Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Controlled Experiment

Similar to Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Controlled Experiment (20)

Software systems engineering PRINCIPLES
Software systems engineering PRINCIPLESSoftware systems engineering PRINCIPLES
Software systems engineering PRINCIPLES
 
System Architect and Rhapsody
System Architect and RhapsodySystem Architect and Rhapsody
System Architect and Rhapsody
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES
 
CSE320 SOFTWARE ENGINEERING Lecture01 (1).ppt
CSE320  SOFTWARE ENGINEERING Lecture01 (1).pptCSE320  SOFTWARE ENGINEERING Lecture01 (1).ppt
CSE320 SOFTWARE ENGINEERING Lecture01 (1).ppt
 
10 Things You Should Know About MDD
10 Things You Should Know About MDD10 Things You Should Know About MDD
10 Things You Should Know About MDD
 
Neha sas ba
Neha sas baNeha sas ba
Neha sas ba
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Sridhar Resume
Sridhar ResumeSridhar Resume
Sridhar Resume
 
OOSE Unit 4 PPT.ppt
OOSE Unit 4 PPT.pptOOSE Unit 4 PPT.ppt
OOSE Unit 4 PPT.ppt
 
Sap abap course
Sap abap course Sap abap course
Sap abap course
 
Tales from the trenches creating complex distributed systems
Tales from the trenches  creating complex distributed systemsTales from the trenches  creating complex distributed systems
Tales from the trenches creating complex distributed systems
 
Oose unit 4 ppt
Oose unit 4 pptOose unit 4 ppt
Oose unit 4 ppt
 
Design Systems Operations
Design Systems OperationsDesign Systems Operations
Design Systems Operations
 
Sap abap course
Sap abap course Sap abap course
Sap abap course
 
Sap abap course content
Sap abap course contentSap abap course content
Sap abap course content
 
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
 
Pardha Srinivas-13+yrs_Technical Architech (1)
Pardha Srinivas-13+yrs_Technical Architech (1)Pardha Srinivas-13+yrs_Technical Architech (1)
Pardha Srinivas-13+yrs_Technical Architech (1)
 
Developing and deploying AI solutions on the cloud using Team Data Science Pr...
Developing and deploying AI solutions on the cloud using Team Data Science Pr...Developing and deploying AI solutions on the cloud using Team Data Science Pr...
Developing and deploying AI solutions on the cloud using Team Data Science Pr...
 
intro.pptx
intro.pptxintro.pptx
intro.pptx
 
Innovate 2013 Design on a Diet - session 2131
Innovate 2013 Design on a Diet - session 2131Innovate 2013 Design on a Diet - session 2131
Innovate 2013 Design on a Diet - session 2131
 

Recently uploaded

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 

Recently uploaded (20)

%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 

Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Controlled Experiment

  • 1. Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Controlled Experiment Sandro S. Andrade and Raimundo J. de A. Macêdo Distributed Systems Laboratory (LaSiD) Department of Computer Science Federal University of Bahia {sandros, macedo}@ufba.br CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 2. Agenda ● Context & motivation ● Our search-based architectural design approach ● The quasi-experiment ● Contributions of this paper ● Final remarks CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 3. Context & Motivation ● The need for self-adaptive systems (SAS): – Dynamic and uncertain operating environments – Stringent requirements for scalability, dependability, energy-efficiency, and performance – Incomplete/partial requirements – Problem/design space complexity approaching the limits of human capability – Rapidly varying workloads and data characteristics – Some problems are inherently self-adaptive or self-organizing (eg.: robots motion coordination, particles/swarm optimization, etc) CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 4. Context & Motivation ● MAPE-K Reference Architecture [1] [1] J. O. Kephart and D. M. Chess. Computer, vol. 36, no. 1, pp. 41–50, Jan. 2003. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 5. Context & Motivation ● Current challenges: – Intricate problem space ● How to effectively elicit the adaptation requirements ? Goals: ● Type (regulation, tracking, disturbance rejection, optimization) ● Evolution (static, dynamic) ● Duration (persistent, temporary) ● Multiplicity (single, multiple) ● Dependency (independent, complementary, conflicting) ● Flexibility (rigid, constrained, unconstrained) Change: ● Source (internal, external) ● Anticipation (foreseen, foreseeable, unforeseen) ● Frequency (rare, frequent) ● Type (functional, non-functional, technological) CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 6. Context & Motivation ● Current challenges: – Intricate problem space ● How to effectively elicit the adaptation requirements ? – Large and complex solution space CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 7. Context & Motivation ● Current challenges: – Intricate problem space ● How to effectively elicit the adaptation requirements ? – Large and complex solution space ● Type (parametric, structural) ● Mechanism (signaling, frameworks, profiling, etc) ● Uncertainty handling (redundancy, filtering, smoothing) CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 8. Context & Motivation ● Current challenges: – Intricate problem space ● How to effectively elicit the adaptation requirements ? – Large and complex solution space ● Mechanism (symptoms databases, policies, queue networks, game theory, etc) ● System/Environment representation (ad-hoc, models) CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 9. Context & Motivation ● Current challenges: – Intricate problem space ● How to effectively elicit the adaptation requirements ? – Large and complex solution space ● Actuation law (intelligent agents, control theory, search-based, etc) ● Cardinality (single, utility functions, parent-front) ● Type (static, dynamic) CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 10. Context & Motivation ● Current challenges: – Intricate problem space ● How to effectively elicit the adaptation requirements ? – Large and complex solution space ● Type (parametric, structural) ● Mechanism (function pointers, aspect weaving, metaobjects, middleware-based) ● Timeliness (best-effort, guaranteed) CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 11. Context & Motivation ● Current challenges: – Intricate problem space ● How to effectively elicit the adaptation requirements ? – Large and complex solution space ● How to come up with an effective managing system architecture for the adaptation requirements at hand ? ● How to judiciously evaluate all available design alternatives ? ● How to make well-informed decisions about quality attributes trade-offs ? – Consequences: ● Lack of organized design knowledge for routine use ● False intuition, design bias, and sub-optimal architectures CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 12. Our Search-Based Design Approach – DuSE ● Research questions To which extent may SAS design knowledge be systematically represented for routine use ? How to support well-informed decision making regarding quality attribute trade-offs between alternative architectures for SAS ? CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 13. Our Search-Based Design Approach – DuSE ● We combine the use of ... – Metamodeling and Domain-Specific Languages (DSL) – Structured Architecture Design Spaces – Multi-Objective Optimization ● … in order to … – Enable a more disciplined and automated “handbook” of SAS design – Provide a solid basis for choosing between architectures which exhibit different quality attributes CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 14. Our Search-Based Design Approach – DuSE Domain-Specific Supporting Domain-Specific Design Dimensions + Quality Metrics Specified using the DuSE language Domain-Specific Design space UML Profile Generic Architecture Optimization Engine Initial System Model Annotated with corresponding UML Profile Pareto-front of Candidate Architectures [2] Andrade and Macêdo. SEKE. Boston, MA, USA: ACM, 2013. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 15. Our Search-Based Design Approach – DuSE ` ● Domain independent ● Metamodel dependent ● Design space navigation engine ● Optimization [3] Andrade and Macêdo. SASO. Philadelphia, PA, engine (NSGA-II) USA: IEEE, 2013. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 16. Our Search-Based Design Approach – DuSE [4] Andrade and Macêdo. SASO Demo Session. Philadelphia, PA, USA: IEEE, 2013. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 17. Our Search-Based Design Approach – SA:DuSE ● SA:DuSE – A particular DuSE instance which captures the most prominent design dimensions of SASs ● Evaluation dimensions: – Is SAS design indeed a multi-objective problem ? – To which extent the quality of Pareto-optimal architectures are indeed observed in real prototypes ? – Do search-based approaches improve the design of SAS ? [5] Andrade and Macêdo. WoSiDA 2014. Florianópolis, SC, Brasil. 2014. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 18. The Quasi-Experiment ● Analyze the design of SAS ● For the purpose of evaluating the search-based design approach we propose and a design process based on architecture styles catalogs ● With respect to the effectiveness and complexity of resulting architectures, as well as the method's potential for leveraging the acquisition of distilled design knowledge by novice architects ● From the point of view of researchers ● In the context of graduate students endowing systems with self-adaptation capabilities CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 19. The Quasi-Experiment ● Quasi-experiment: – Blocked subject-object study with a paired comparison design ● Subjects: – 24 students of a graduate program in Distributed and Ubiquitous Computing ● Experiment objects: – Two UML models representing the managed system (web server and MapReduce distributed architecture) ● Experiment tests: – Design a managing system architecture for both objects – Answer a questionnaire on quality attribute trade-offs in SAS CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 20. The Quasi-Experiment ● Independent variable: – Design method ● Search-based approach ● Style-based approach ● Dependent variables: – Effectiveness of resulting SAS architectures – Complexity of resulting SAS architectures – The method's potential for leveraging the acquisition of distilled SAS design knowledge by novice architects ● Experiment website: – http://wiki.ifba.edu.br/tr-ce012014 CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 21. The Quasi-Experiment ● Experiment timetable CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 22. The Quasi-Experiment ● Experiment tests CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 23. The Quasi-Experiment ● Experiment objects CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 24. The Quasi-Experiment ● Measuring effectiveness (Generational Distance) [6] Deb and Kalyanmoy. John Wiley & Sons, Inc. NY, USA: 2001. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 25. The Quasi-Experiment ● Measuring complexity (Component Point) [7] Wijayasiriwardhane and Lai. Journal of Systems and Software. 2010. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 26. The Quasi-Experiment ● Measuring the acquisition of distilled design knowledge: – Questionnaire with 10 multiple choice questions – Questions related to quality attributes trade-offs in the SAS domain – Questionnaire answered at the end of each experimentation day – Normalized grades assigned to each student/day CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 27. The Quasi-Experiment ● Hypotheses formulation H0 - there is no difference in design effectiveness between a feedback control loop design created using the style-based approach (RA) and a feedback control loop design created using the search-based approach (IA) CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro 1 H0 - there is no difference in design complexity between a feedback control loop design created using the RA and a feedback control loop design created using the IA 2 H0 - there is no difference in the acquisition of distilled design knowledge between a feedback control loop design created using the RA and a feedback control loop design created using the IA 3
  • 28. The Quasi-Experiment ● Descriptive statistics CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 29. The Quasi-Experiment ● Assumptions of parametric tests: – Data is taken from an interval or ratio scale – Observations are independent – Population variances are equal between groups (homoscedasticity) – Measured values are normally distributed α=0.05 CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 30. The Quasi-Experiment ● Assumptions of parametric tests: – Data is taken from an interval or ratio scale – Observations are independent – Population variances are equal between groups (homoscedasticity) – Measured values are normally distributed Cannot reject homoscedasticity α=0.05 CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 31. The Quasi-Experiment ● Assumptions of parametric tests: – Data is taken from an interval or ratio scale – Observations are independent – Population variances are equal between groups (homoscedasticity) – Measured values are normally distributed Can reject normal distribution α=0.05 CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 32. The Quasi-Experiment ● Assumptions of parametric tests: – Data is taken from an interval or ratio scale – Observations are independent – Population variances are equal between groups (homoscedasticity) – Measured values are normally distributed Wilcoxon Signed-Rank Test α=0.05 Paired t-test CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 33. The Quasi-Experiment ● Results of the statistical tests α=0.05 CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 34. The Quasi-Experiment ● Threats to validity – Construct: ● Inadequate preoperational explication of constructs ● Hypothesis guessing ● Objects representativeness – Internal: ● Maturation ● Instrumentation – External: ● Students acting as subjects – Conclusion: ● Experiment holders creating the experiment objects CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 35. Contributions of this paper ● To the best of our knowledge, SA:DuSE is the first effort in applying search-based approaches in the SAS domain ● To the best of our knowledge, this is the second controlled experiment in the SAS domain (the first one is [8]) ● We got some empirical evidence about the benefit of search-based approaches when designing SASs ● The potential for leveraging knowledge acquisition still deserves further investigation [8] Weyns, Iftikhar, and Soderlund. SEAMS. 2013. CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 36. Final Remarks ● A lot of research towards principled and systematic design of self-adaptive systems ● Effectiveness of systematic design spaces in capturing intricate solution spaces – However, qualitative approaches may be used to address another facets of architectural design ● Future work: – SA:DuSE expansion (NSGA-III) – More investigation on real prototypes – From design spaces to design theories CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro
  • 37. Thanks ! Questions ? Sandro S. Andrade and Raimundo J. de A. Macêdo {sandros, macedo}@ufba.br CBSoft2014 – Congresso Brasileiro de Software: Teoria e Prática – Sandro S. Andrade – sandros@ufba.br - @andradesandro