SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
   
Toward Systematic Conveying of
Architecture Design Knowledge for
Self-Adaptive Systems
Sandro S. Andrade
GSORT Distributed Systems Group
Federal Institute of Education, Science
and Technology of Bahia (IFBa)
Salvador - BA - Brazil
sandros@ufba.br
Raimundo José de A. Macêdo
Distributed Systems Laboratory (LaSiD)
Department of Computer Science
Federal University of Bahia
Salvador - BA - Brazil
macedo@ufba.br
The 7th IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO'13) – Philadelpia/PA – USA – September/2013
   
Pole
placement ?
Self-Adaptive
Systems
Effective
solutions highly
tailored to specific problems
Large design/solution
space
Lack of support for
well-informed trade-off
analysis
Highly specialized domain
   
Root locus ?
Pole
placement ?
Self-Adaptive
Systems
Effective
solutions highly
tailored to specific problems
Large design/solution
space
Lack of support for
well-informed trade-off
analysis
Highly specialized domain
   
What am I supposed
to do with all these
stuff ?
Designing
Self-Adaptive
Systems
Architecture Design
Handbooks
Reference Architectures
Architectural Styles
Formal Reference
Models / Frameworks
Model-Based Software
Design & Development
   
Domain-specific design spaces
DuSE
=
+
+
Quality metrics of automatically
generated candidate architectures
A multi-objective optimization approach
   
Domain-specific design spaces
DuSE
=
+
+
Quality metrics of automatically
generated candidate architectures
A multi-objective optimization approach
SA:DuSE = DuSE instance
(design space) for the
Self-Adaptive Systems
domain
   
   
   
DuSE Metamodel
   
SA:DuSE Design Space
DD1
: Control Law
DD3
: Control Adaptation
DD2
: Tuning Approach
DD4
: MAPE Deployment
   
SA:DuSE Design Space
VP11: Proportional
VP12: Proportional-Integral
VP13: Proportional-Integral-Derivative
VP14: Static State Feedback
VP15: Precompensated Static State Feedback
VP16: Dynamic State Feedback
DD1
: Control Law
VP31: Fixed Gain (no adaptation)
VP32: Gain Scheduling
VP33: Model Identification Adaptation Control
DD3
: Control Adaptation
VP21: Chien-Hrones-Reswick, 0 OS, Dist. Rejection
VP22: Chien-Hrones-Reswick, 0 OS, Ref. Tracking
VP23: Chien-Hrones-Reswick, 20 OS, Dist. Rejection
VP24: Chien-Hrones-Reswick, 20 OS, Ref. Tracking
VP25: Ziegler-Nichols
VP26: Cohen-Coon
VP27: Linear Quadratic Regulator
DD2
: Tuning Approach
VP41: Global Control
VP42: Local Control + Shared Reference
VP43: 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∣pi∣)
;and maxi∣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, VP41 and 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()
; whereQParametricController:: maxOS()=
{
0 ;realdominant 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 candidates
4 loci of decision -> 20,415,837,000 candidates
   
DuSE Optimization
3 loci of decision -> 54,010,152 candidates
4 loci of decision -> 20,415,837,000 candidates
A search-based approach enables effective design space exploration
and helps preventing false intuition and technology bias
   
Tool Support (DuSE-MT)
   
Case Study
Cloud-based media
encoding service
Three loci of decision
(controllable components)
Annotations from Qemu +
Hadoop + CloudStack
experiments
Control goal: enforce
encoding throughput
   
Findings
   
Conclusion
Contributions Systematic gathering of architecture design
knowledge in the field of Self-Adaptive Systems
A search-based approach for endowing architectures
with 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 design
knowledge in the field of Self-Adaptive Systems
A search-based approach for endowing architectures
with 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

Weitere ähnliche Inhalte

Andere mochten auch

Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...
Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...
Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...Sandro Andrade
 
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...Sandro Andrade
 
Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...
Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...
Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...Sandro Andrade
 
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 2016Sandro Andrade
 
Desenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com QtDesenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com QtSandro Andrade
 
Arquiteturas, Tecnologias e Desafios para Análise de BigData
Arquiteturas, Tecnologias e Desafios para Análise de BigDataArquiteturas, Tecnologias e Desafios para Análise de BigData
Arquiteturas, Tecnologias e Desafios para Análise de BigDataSandro Andrade
 

Andere mochten auch (6)

Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...
Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...
Do Search-Based Approaches Improve the Design of Self-Adaptive Systems ? A Co...
 
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...
 
Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...
Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...
Architectural Design Spaces for Feedback Control in Self-Adaptive Systems Con...
 
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
 
Arquiteturas, Tecnologias e Desafios para Análise de BigData
Arquiteturas, Tecnologias e Desafios para Análise de BigDataArquiteturas, Tecnologias e Desafios para Análise de BigData
Arquiteturas, Tecnologias e Desafios para Análise de BigData
 

Ähnlich wie Conveying Architecture Design Knowledge for Self-Adaptive Systems

2014 01-ticosa
2014 01-ticosa2014 01-ticosa
2014 01-ticosaPharo
 
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingDDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingJaime Martin Losa
 
Requirements vs design vs runtime
Requirements vs design vs runtimeRequirements vs design vs runtime
Requirements vs design vs runtimebdemchak
 
Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...
Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...
Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...Databricks
 
Datascience101presentation4
Datascience101presentation4Datascience101presentation4
Datascience101presentation4Salford Systems
 
Software development effort reduction with Co-op
Software development effort reduction with Co-opSoftware development effort reduction with Co-op
Software development effort reduction with Co-oplbergmans
 
Lessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at NetflixLessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at NetflixJustin Basilico
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesObeo
 
Managing Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software DesignManaging Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software Designlbergmans
 
Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014Sandro Mancuso
 
[DSC Europe 22] Smart approach in development and deployment process for vari...
[DSC Europe 22] Smart approach in development and deployment process for vari...[DSC Europe 22] Smart approach in development and deployment process for vari...
[DSC Europe 22] Smart approach in development and deployment process for vari...DataScienceConferenc1
 
how to build a Length of Stay model for a ProofOfConcept project
how to build a Length of Stay model for a ProofOfConcept projecthow to build a Length of Stay model for a ProofOfConcept project
how to build a Length of Stay model for a ProofOfConcept projectZenodia Charpy
 
Agile performance engineering with cloud 2016
Agile performance engineering with cloud   2016Agile performance engineering with cloud   2016
Agile performance engineering with cloud 2016Ken Chan
 
Toni McTygue's Resume 4p
Toni McTygue's Resume 4pToni McTygue's Resume 4p
Toni McTygue's Resume 4pToni Mctygue
 
Workshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data AnalysisWorkshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data AnalysisOlga Scrivner
 
Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Greg Makowski
 
Data Tracking: On the Hunt for Information about Your Database
Data Tracking: On the Hunt for Information about Your DatabaseData Tracking: On the Hunt for Information about Your Database
Data Tracking: On the Hunt for Information about Your DatabaseMichael Rosenblum
 
Aggregation Functions in OCL
Aggregation Functions in OCL Aggregation Functions in OCL
Aggregation Functions in OCL Jordi Cabot
 

Ähnlich wie Conveying Architecture Design Knowledge for Self-Adaptive Systems (20)

2014 01-ticosa
2014 01-ticosa2014 01-ticosa
2014 01-ticosa
 
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingDDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
 
Requirements vs design vs runtime
Requirements vs design vs runtimeRequirements vs design vs runtime
Requirements vs design vs runtime
 
MSR Asia Summit
MSR Asia SummitMSR Asia Summit
MSR Asia Summit
 
Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...
Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...
Streaming Random Forest Learning in Spark and StreamDM with Heitor Murilogome...
 
Datascience101presentation4
Datascience101presentation4Datascience101presentation4
Datascience101presentation4
 
Software development effort reduction with Co-op
Software development effort reduction with Co-opSoftware development effort reduction with Co-op
Software development effort reduction with Co-op
 
Lessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at NetflixLessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at Netflix
 
Decision Support System
Decision Support SystemDecision Support System
Decision Support System
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems Architectures
 
Managing Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software DesignManaging Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software Design
 
Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014
 
[DSC Europe 22] Smart approach in development and deployment process for vari...
[DSC Europe 22] Smart approach in development and deployment process for vari...[DSC Europe 22] Smart approach in development and deployment process for vari...
[DSC Europe 22] Smart approach in development and deployment process for vari...
 
how to build a Length of Stay model for a ProofOfConcept project
how to build a Length of Stay model for a ProofOfConcept projecthow to build a Length of Stay model for a ProofOfConcept project
how to build a Length of Stay model for a ProofOfConcept project
 
Agile performance engineering with cloud 2016
Agile performance engineering with cloud   2016Agile performance engineering with cloud   2016
Agile performance engineering with cloud 2016
 
Toni McTygue's Resume 4p
Toni McTygue's Resume 4pToni McTygue's Resume 4p
Toni McTygue's Resume 4p
 
Workshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data AnalysisWorkshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data Analysis
 
Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Production model lifecycle management 2016 09
Production model lifecycle management 2016 09
 
Data Tracking: On the Hunt for Information about Your Database
Data Tracking: On the Hunt for Information about Your DatabaseData Tracking: On the Hunt for Information about Your Database
Data Tracking: On the Hunt for Information about Your Database
 
Aggregation Functions in OCL
Aggregation Functions in OCL Aggregation Functions in OCL
Aggregation Functions in OCL
 

Kürzlich hochgeladen

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Kürzlich hochgeladen (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Conveying Architecture Design Knowledge for Self-Adaptive Systems

  • 1.     Toward Systematic Conveying of Architecture Design Knowledge for Self-Adaptive Systems Sandro S. Andrade GSORT Distributed Systems Group Federal Institute of Education, Science and Technology of Bahia (IFBa) Salvador - BA - Brazil sandros@ufba.br Raimundo José de A. Macêdo Distributed Systems Laboratory (LaSiD) Department of Computer Science Federal University of Bahia Salvador - BA - Brazil macedo@ufba.br The 7th IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO'13) – Philadelpia/PA – USA – September/2013
  • 2.     Pole placement ? Self-Adaptive Systems Effective solutions highly tailored to specific problems Large design/solution space Lack of support for well-informed trade-off analysis Highly specialized domain
  • 3.     Root locus ? Pole placement ? Self-Adaptive Systems Effective solutions highly tailored to specific problems Large design/solution space Lack of support for well-informed trade-off analysis Highly specialized domain
  • 4.     What am I supposed to do with all these stuff ? Designing Self-Adaptive Systems Architecture Design Handbooks Reference Architectures Architectural Styles Formal Reference Models / Frameworks Model-Based Software Design & Development
  • 5.     Domain-specific design spaces DuSE = + + Quality metrics of automatically generated candidate architectures A multi-objective optimization approach
  • 6.     Domain-specific design spaces DuSE = + + Quality metrics of automatically generated candidate architectures A multi-objective optimization approach SA:DuSE = DuSE instance (design space) for the Self-Adaptive Systems domain
  • 10.     SA:DuSE Design Space DD1 : Control Law DD3 : Control Adaptation DD2 : Tuning Approach DD4 : MAPE Deployment
  • 11.     SA:DuSE Design Space VP11: Proportional VP12: Proportional-Integral VP13: Proportional-Integral-Derivative VP14: Static State Feedback VP15: Precompensated Static State Feedback VP16: Dynamic State Feedback DD1 : Control Law VP31: Fixed Gain (no adaptation) VP32: Gain Scheduling VP33: Model Identification Adaptation Control DD3 : Control Adaptation VP21: Chien-Hrones-Reswick, 0 OS, Dist. Rejection VP22: Chien-Hrones-Reswick, 0 OS, Ref. Tracking VP23: Chien-Hrones-Reswick, 20 OS, Dist. Rejection VP24: Chien-Hrones-Reswick, 20 OS, Ref. Tracking VP25: Ziegler-Nichols VP26: Cohen-Coon VP27: Linear Quadratic Regulator DD2 : Tuning Approach VP41: Global Control VP42: Local Control + Shared Reference VP43: Local Control + Shared Error DD4 : MAPE Deployment
  • 12.     SA:DuSE Quality Metrics M2 : Average Settling Time M1 : Control Overhead M4 : Control Robustness M3 : Average Maximum Overshoot
  • 13.     SA:DuSE Quality Metrics M2 : Average Settling Time ME2= allOwnedElements()→selectAsType(QParametricController)→sum(stime()) allOwnedElements()→selectAsType(QParametricController)→size() ; whereQParametricController:: stime()= −4 log(maxi∣pi∣) ;and maxi∣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, VP41 and 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() ; whereQParametricController:: maxOS()= { 0 ;realdominant pole p1 ≥0 ∣p1∣;real dominant pole p1<0 rπ/∣θ∣ ;dominant poles p1, p2=r.e±j. θ}
  • 14.     DuSE Optimization 3 loci of decision -> 54,010,152 candidates 4 loci of decision -> 20,415,837,000 candidates
  • 15.     DuSE Optimization 3 loci of decision -> 54,010,152 candidates 4 loci of decision -> 20,415,837,000 candidates A search-based approach enables effective design space exploration and helps preventing false intuition and technology bias
  • 16.     Tool Support (DuSE-MT)
  • 17.     Case Study Cloud-based media encoding service Three loci of decision (controllable components) Annotations from Qemu + Hadoop + CloudStack experiments Control goal: enforce encoding throughput
  • 19.     Conclusion Contributions Systematic gathering of architecture design knowledge in the field of Self-Adaptive Systems A search-based approach for endowing architectures with self-adaptative behaviour and explicit support for well-informed design trade-off analysis A supporting tool (DuSE-MT)
  • 20.     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 design knowledge in the field of Self-Adaptive Systems A search-based approach for endowing architectures with 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