Professional Documents
Culture Documents
Authors: Jie Yang, Gang Huang, Wenhui Zhu, Xiaofeng Cui, Hong Mei From: The Journal of Systems and Software 2008 Presented By: K.W. Lee, 06.08.2008
Authors: Jie Yang, Gang Huang, Wenhui Zhu, Xiaofeng Cui, Hong Mei From: The Journal of Systems and Software 2008 Presented By: K.W. Lee, 06.08.2008
Tradeoff Through
Adaptive Architectures
at Runtime
1
Outline
• Introduction
• Approach Overview
• Overview of Java Pet Store
• Scenario-based Quality Attribute Analysis &
Tradeoff
• Adaptive Architecture Modeling
• Validation
• Discussion
• Conclusion
2
1 Introduction (1/5)
3
1 Introduction (2/5)
Configurability, flexibility,
Development
maintainability,
quality requirements
demonstrability
Quality
requirements
Operational Performance, reliability,
quality requirements Safety, security
4
1 Introduction (3/5)
Problem:
Software Architecture (SA) model do not
guarantee the quality attibutes of the target
system at runtime
Runtime environment is too complex to predict or
estimate
The estimated quality attributes may not accord
with real situations
5
1 Introduction (4/5)
Solution:
Obtain runtime information as accurate as
possible by profiling before the implementation of
the target software
Postpone runtime-related decisions or tradeoffs
until runtime
6
1 Introduction (5/5)
Authors’ approach:
Tradeoff between quality attributes regarding
runtime information
Resolve the conflicts & ensure the target system
does acquired desired QAs
7
2 Approach Overview (1/3)
Quality attribute tradeoff process
Mathematical modeling, simulating,
experience-based reasoning
8
2 Approach Overview (2/3)
3 phases of the QA tradeoff process:
Scenario-based QA analysis & tradeoff
Modeling of adaptive architecture
Runtime validation
9
2 Approach Overview (3/3)
10
3 Overview of Java Pet Store (1/2)
An online pet store that sells animals to
customers
Comprises 4 main parts:
frontEnd
Order Process Center (OPC)
Admin
Supplier
11
3 Overview of Java Pet Store (2/2)
12
4 Scenario-based Quality Attribute
Analysis & Tradeoff (1/7)
Sensitivity point
A property of one or more critical components for
achieving a particular QA response
Tradeoff point
A property that affects more than one attribute
Is a sensitive point for more than one attribute
3 phases:
1. Scenario-based QA analysis & tradeoff
2. Modeling of adaptive architecture 13
3. Runtime validation
4 Scenario-based Quality Attribute
Analysis & Tradeoff (2/7)
Java Pet Store (JPS) expected to satisfy
quality requirements as:
Portability
Scalability
Robustness
Performance
Security
Availability
14
4 Scenario-based Quality Attribute
Analysis & Tradeoff (3/7)
3 scenarios:
15
4 Scenario-based Quality Attribute
Analysis & Tradeoff (4/7)
Sensitive point 16
4 Scenario-based Quality Attribute
Analysis & Tradeoff (5/7)
Tradeoff point
Time-consuming 17
4 Scenario-based Quality Attribute
Analysis & Tradeoff (6/7)
18
4 Scenario-based Quality Attribute
Analysis & Tradeoff (7/7)
19
5 Adaptive Architecture
Modeling (1/3)
Scenario 1
Adapt the component catalog
GenericCatalog
SpecificCatalog
Sensitive point
3 phases:
1. Scenario-based QA analysis & tradeoff
2. Modeling of adaptive architecture 20
3. Runtime validation
5 Adaptive Architecture
Modeling (2/3)
Scenario 2
If exceeds 5 minutes, only order above $500 will
be sent to Admin
Tradeoff point
21
5 Adaptive Architecture
Modeling (3/3)
Scenario 3
If connector is too busy, it will switch to ordinary
HTTP protocol
24
6 Validation (3/3)
25
7 Discussion
Authors approach
Applicable to operational QAs only
Most suitable to ensure those difficult or
impossible QAs without additional runtime
information
Only applied to ensure performance-related QAs
26
8 Conclusion
Authors approach:
Leverages existing architectural analysis method
to find out QAs that cannot be ensured at design
time
The adaptive SA model is responsible for
monitoring runtime software systems &
environment
Useful to tradeoff QAs that involve runtime
information
27