Download presentation
Presentation is loading. Please wait.
Published byVirgil Jefferson Modified over 9 years ago
1
CPSC 871 John D. McGregor Module 4 Session 3 Architecture Evaluation
2
Architecture adds value Value is a synonym for desirableness If the value of something increases it is because it has become more desirable for some reason A “value chain” represents a sequence of stages, each of which makes the “thing”, for which this is the value chain, more desirable. The value chain for a software product is the series of activities that craft a solution.
3
Porter’s Value Chain
4
Adding value How does architecture add value? (How does it make the product more desirable?) – Increased probability that customers like the product – Increased probability of highly reliable operation – Increased probability that the product will have the qualities desired – Increased predictability of implementation
5
Adding value - 2 Even architecture evaluation adds value It removes defects making the architecture more desirable as a basis for building a product Question: How do we measure these increases in value?
6
http://www.vico.org/pages/PatronsDisseny/Pa ttern%20Presentation%20Abstra/ http://www.vico.org/pages/PatronsDisseny/Pa ttern%20Presentation%20Abstra/ http://www.dossier- andreas.net/software_architecture/pac.html http://www.dossier- andreas.net/software_architecture/pac.html http://www.innovatingtomorrow.net/2008/04 /04/pac-software-architecture http://www.innovatingtomorrow.net/2008/04 /04/pac-software-architecture
7
Architecture TradeOff Analysis Method (ATAM) The purpose of the ATAM is to assess the consequences of architectural decisions in light of quality attribute requirements. http://www.sei.cmu.edu/reports/00tr004.pdf
8
Conceptual Flow of ATAM Analysis Architectural Decisions Scenarios Quality Attributes Architectural Approaches Business Drivers Software Architecture Risks Sensitivity Points Tradeoffs Non-Risks impacts Risk Themes distilled into
9
Phase 0 – Partnership and preparation Phase 1 – Evaluation Phase 2 – Evaluation continued Phase 3 – Follow-up
10
Phase 0 Logistics are agreed to – Meeting dates – Who must attend – Team membership Agenda is agreed to Collect initial information
11
Overview of Phase 1 Step 1 – Present the ATAM Step 2 – Present business drivers Step 3 – Present architecture Step 4 – Identify architectural approaches Step 5 – Generate quality attribute utility tree Step 6 – Analyse architectural approaches
12
Present Business Drivers Describe – The system’s most important functions – Any relevant technical, managerial, economic, or political constraints – The business goals and context as they relate to the project – The major stakeholders – The architectural drivers (the major quality attribute goals)
13
Present Architecture Driving architectural requirements, measurable quantities associated with these, standards/models/approaches for meeting these Important architectural information – Context diagram – Module or layer view – Component and connector view – Deployment view
14
Present Architecture - 2 Architectural approaches, patterns, tactics employed, what quality attributes they address and how they address those attributes Use of COTS and their integration Most important use case scenarios Most important change scenarios Issues/risk w.r.t. meeting the diving requirements
15
Step 4: identify architectural approaches Catalog the evident patterns and approaches – Based on step 3 – Serves as the basis for later analysis
16
Quality Attribute Scenario Stimulus Stimulus source Environment Artifact Response Response measure
17
Quality Attribute Scenario Stimulus – requests computation of a data set Stimulus source – software architect Environment – desktop machine with 4 G memory and dual core processor Artifact – data for a set of products Response – the vector of values is created Response measure – the vector is calculated in less than 30 milliseconds per value
18
Step 5: Generate quality attribute utility tree Utility tree – Present the quality attribute goals in detail Quality attribute goals are – Identified, prioritised, refined – Expressed as scenarios Utility is an expression of the overall goodness of the system – Quality attributes form the second level being components of utility
19
Step 5: Generate quality attribute utility tree con’t Scenarios are prioritised – Depending on how important they are and – Depending on how difficult it will be for the architecture to satisfy a scenario
20
Step 6: Analyse architectural approaches Examine the highest ranked scenarios The goal is for the evaluation team to be convinced that the approach is appropriate for meeting the attribute-specific requirements Scenario walkthroughs Identify and record a set of sensitivity points and tradeoff points, risks and non-risks – Sensitivity and tradeoff points are candidate risks
21
Phase 2 Step 7 – Brainstorm and prioritise scenarios Step 8 – Analyse architectural approaches Step 9 – Present results
22
Step 7: Brainstorm and prioritise scenarios Utility tree shows architects view on the quality attributes Here the focus is on the other stakeholders view on the quality attributes and scenarios based on these – Which are the mot meaningful and important scenarios w.r.t. users etc.
23
Step 8: Analyse architectural approaches Highest ranked scenarios from step 7 are presented to the architect – Explain how relevant architectural decisions contribute to realising each one
24
Step 9: Present results Outputs: – The architectural approaches documented – The set of scenarios and their prioritisation from the brainstorming – The utility tree – The risks discovered – The non-risks documented – The sensitivity points and tradeoff points found
25
Conceptual Flow of ATAM Analysis Architectural Decisions Scenarios Quality Attributes Architectural Approaches Business Drivers Software Architecture Risks Sensitivity Points Tradeoffs Non-Risks impacts Risk Themes distilled into
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.