Analyzing an Architecture Methods ATAM Architecture Tradeoff Analysis

  • Slides: 20
Download presentation
Analyzing an Architecture

Analyzing an Architecture

Methods • ATAM – Architecture Trade-off Analysis • CBAM – Cost Benefit Analysis •

Methods • ATAM – Architecture Trade-off Analysis • CBAM – Cost Benefit Analysis • Architecture Review

ATAM

ATAM

ATAM Participants • Evaluation Team • Project Decision Makers – Sponsor, Customer, Management •

ATAM Participants • Evaluation Team • Project Decision Makers – Sponsor, Customer, Management • Architecture Stakeholder – Developers, Users, Testers, etc.

Evaluation Team • • Team Leader Evaluation Leader Scenario Scribe Proceedings Scribe Timekeeper Process

Evaluation Team • • Team Leader Evaluation Leader Scenario Scribe Proceedings Scribe Timekeeper Process Observer Process Evaluator Questioner

Outputs • • Concise presentation of the Architecture Articulation of Business Goals Quality Requirements

Outputs • • Concise presentation of the Architecture Articulation of Business Goals Quality Requirements – collection of scenarios Mapping of Architectural decisions to qualities Identified sensitivity and trade-off points Set of risks and non-risks Set of risk themes

Phases of ATAM • 0 - Partnership and Preparation • 1 – Evaluation 1

Phases of ATAM • 0 - Partnership and Preparation • 1 – Evaluation 1 -- 1 day – 2 TO 3 WEEKS BREAK HERE! • 2 – Evaluation 2 – 2 days • 4 – Follow-up -- 1 week

Evaluation Steps – Phase 1 • 1 - Present the ATAM • 2 -

Evaluation Steps – Phase 1 • 1 - Present the ATAM • 2 - Present Business Drivers – Most important functions – Constraints – technical, economic, political – Business goals – Major stakeholders – Architectural drivers

Evaluation Steps • 3 – Present Architecture (~20 slides; 30 minutes) • 4 –

Evaluation Steps • 3 – Present Architecture (~20 slides; 30 minutes) • 4 – Identify Architectural Approaches • 5 – Quality Attribute Utility Tree

Evaluation Steps • 6 – Analyze Architectural Approaches

Evaluation Steps • 6 – Analyze Architectural Approaches

Evaluation Steps – Phase 2 • 7 – Brainstorm and prioritize scenarios • 8

Evaluation Steps – Phase 2 • 7 – Brainstorm and prioritize scenarios • 8 - Analyze Architectural Approaches • 9 – Present Results

CBAM

CBAM

CBAM • • Goal of CBAM is quantifying decisions Utility – a measure of

CBAM • • Goal of CBAM is quantifying decisions Utility – a measure of value Cost – to implement a given strategy Use outputs of ATAM • This is a subjective process!

Scenario • For each scenario of ATAM: – Generate a set of scenarios –

Scenario • For each scenario of ATAM: – Generate a set of scenarios – The set has a range of responses – The response measure needs to be quantified

Assign Utility Values • This can be hard! • Look at plots in text

Assign Utility Values • This can be hard! • Look at plots in text (pg. 311) • Start by establishing worst-case and bestcase limits (0 and 100) • They also tried to find a current and desired value

Priorities • Prioritize the scenarios in order first • The add a weight for

Priorities • Prioritize the scenarios in order first • The add a weight for each one

Architectural Strategies • Expected value of the response – (Interpolate on the plot) •

Architectural Strategies • Expected value of the response – (Interpolate on the plot) • Effect on other attributes • Cost to implement

Benefit • Bi = S (bi, j * Wj) • bi, j change in

Benefit • Bi = S (bi, j * Wj) • bi, j change in response to in attribute j to strategy in attribute I • W is weight of scenarios

ROI • R=B/C

ROI • R=B/C

Summary • ATAM and CBAM provide structure • CBAM can be hard, since quantification

Summary • ATAM and CBAM provide structure • CBAM can be hard, since quantification is called for! • Next week we consider a less structured alternative.