Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 27

Quality Attribute

Tradeoff Through
Adaptive Architectures
at Runtime

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

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)

 Software systems should satisfy not only


functional requirements, but also quality
requirements.
 Quality – the degree to which software
possesses a desired combination of
attributes
 E.g. reliability, interoperability

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)

 Response time of the frontEnd determined by


the performance of catalog.

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)

Lower security Tradeoff point


to ensure performance

18
4 Scenario-based Quality Attribute
Analysis & Tradeoff (7/7)

Data are transferred over May lower the


SSL protected session processing speed

If lower than 10 jobs,


Abolish SSL support

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

Data are transferred over May lower the


SSL protected session processing speed

If lower than 10 jobs,


Abolish SSL support
22
6 Validation (1/3)
 Stress test
 Generates m threads
 Each thread sleep for t seconds (between 0 & n)
 Each thread browses 27 pets in pet store x times
(discrete number between 1 & p)
 Interval between 2 consecutive browsing is limited
to y seconds (continues random number between
0 & q)
3 phases:
1. Scenario-based QA analysis & tradeoff
2. Modeling of adaptive architecture 23
3. Runtime validation
6 Validation (2/3)

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

You might also like