SALecture7 PDF
SALecture7 PDF
Lecture 7
24-Feb-10
analyzable
24-Feb-10
Planned or unplanned
24-Feb-10
24-Feb-10
risk
24-Feb-10
Measuring techniques
Rely on quantitative measures over existing artifact
Architectural metrics
Simulations, prototypes
24-Feb-10
24-Feb-10
ATAM
Architecture Tradeoff Analysis Method
How well an architecture satisfies particular goals?
Provides insight into how quality goals interact, how they trade
off
Has its origins in SAAM (Software Architecture Analysis
Method) from the early 1990s
24-Feb-10
Participants in ATAM
The evaluation team
Project decision makers
Architecture stakeholders
10
24-Feb-10
12
scenarios
Mapping of architectural decisions to quality
requirements
A set of identified sensitivity and tradeoff points
A set of risks and non-risks
A set of risk themes
24-Feb-10
Other outputs
Secondary outputs
Architecture representation survives evaluation
Scenarios too
Analysis can serve as statement of rationale for architectural
decisions
Made or not
Intangible goals
Social, community sense
Better communication
Improved understanding
13
24-Feb-10
Phase 1
Evaluation
Phase 2
Evaluation continued
Phase 3
Follow-up
14
24-Feb-10
Step 2
Present business drivers
Step 3
Present architecture
Step 4
Identify architectural approaches
Step 5
Generate quality attribute utility tree
Step 6
Analyze architectural approaches
15
24-Feb-10
constraints
The business goals and context as they relate to the project
The major stakeholders
The architectural drivers (the major quality attribute goals)
16
24-Feb-10
17
24-Feb-10
18
24-Feb-10
19
24-Feb-10
system
utility
20
24-Feb-10
satisfy a scenario
21
24-Feb-10
22
24-Feb-10
23
24-Feb-10
24
24-Feb-10
Step 8
Analyze architectural approaches
Step 9
Present results
25
24-Feb-10
users etc.
26
24-Feb-10
architect
27
24-Feb-10
28
24-Feb-10
Other methods
CBAM
Cost-Based Analysis Method
Uses ATAM
Measuring technics
Answer specific questions about specific qualities
Need the presence of a design/implementation artifact (the
object to measure)
RMA rate monotonic analysis: quantitative technique for
ensuring that a set of fixed-priority processes can be scheduled
on a CPU
Can be performed as architecture is being evolved
24-Feb-10
CBAM
Biggest trade-offs influence economics
Resources
Earlier: costs
Of building system, not long term
stakeholders (utilities)
30
24-Feb-10
CBAM Utilities
Architectural strategy
Provides specific level of utility to stakeholders
Has cost
Takes time to implement
Utility-response curves
Depicts how the utility derived from a particular response varies as
Side effects
31
24-Feb-10
Some formulas
Overal utility of architectural strategy across scenarios
32
Strategy i
Scenario j
Benefit Bi
Benefit bi,j
Weight Wj
Utility U
Return over investment ROI, cost C
Bi = j (bi,j Wj)
bi,j = Uexpected-Ucurrent
Ri = Bi/Ci
24-Feb-10