Week 08 - ATAM - Architecture Tradeoff Analysis Method
Week 08 - ATAM - Architecture Tradeoff Analysis Method
Testing
CT059-3-2
The Architecture
Tradeoff Analysis
Method (ATAM) - A
method for architecture
evaluation
Topic & Structure of the lesson
Extra Notes
This Method is a method used to evaluate the quality
attributes (such as performance, availability, and security) of
software architectures. ATAM is used to mitigate risks in software
architectures in the early stages of the software development life
cycle (SDLC).Method evaluations expose architectural risks
that potentially inhibit the achievement of an organization’s
business goals.
Why architectural analysis
The earlier you find a problem in a software project, the better off
Module Code & Module Title Slide Title SLIDE 5
Slide 5Slide
(out of525)
Why use ATAM?
• For ensuring the right questions is asked as early as
possible – requirement and design stage
• It guide the stakeholders to look for conflict
• Find a resolution for those conflicts
• Use for analyse legacy systems (improvement on old
architecture) – Reverse Engineering.
*A legacy system is outdated computing software and/or hardware that is
still in use. The system still meets the needs it was originally designed for, but
doesn’t allow for growth.
Participants in ATAM:
• . •The evaluation team: •Architecture stakeholders:
• team leader • developers
• evolution leader • testers
• scenario and processing • users
scribe • builders of systems
• timekeeper
• process observe
• Project decision makers
Module Code & Module Title Slide Title SLIDE 6
Slide 6Slide
(out of625)
Benefit of ATAM
• Process benefit:
– Foster stakeholder communication & consensus
1. Presenting ATAM During this activity, describing the evaluation method to the
system stakeholders is required which typically includes customer
representatives, system architectural team, user representatives,
administrators, developers, testers, integrators, etc.
Presentation
2. Presenting In this activity, the project manager needs to explain the business
Business Drivers goal which motivates the development effort that will become
A.
the main architectural drivers for e.g. high availability, released time,
system performance, security, etc.
3. Presenting In this activity, the system architect needs to elaborate the
Architecture. proposed architecture which focuses on a solution to address
the business drivers.
4. Identifying During this activity, the system architect develops or identifies the
Architectural available
Approaches. architectural approaches. Why did we choose 3 tier ?
Investigation
Analysis
5. Generating the Utility Tree. In this activity, the system quality attributes are
Quality Attributes identified into level of scenarios (Redesign quality attributes/re-draw
B.
utility tree)
6. Analyzing the In this activity, the approaches aimed at meeting non-functional
Architectural requirement are further analyzed and points such as risks,
Approaches. sensitivity, and tradeoff are identified.
7. Brainstorm and In this activity, a broader set of scenarios are elicited from the
Prioritizing whole group of stakeholders, voted and selected
Testing
Scenarios.
C.
8. Analyzing the In this activity, step 6 is reiterated but including the broader set of
Architectural scenarios generated at step 7 to point out additional approaches,
Approaches risks, sensitivity, and tradeoff points which are then documented.
9. Present Results In this activity, the team report the findings along with any
Report
Q&A