100 likes | 276 Views
The ATAM method. The ATAM method (1/2). Architecture Tradeoff Analysis Method Requirements for complex software systems Modifiability Performance Security Interoperability Portability Reliability How to make sure our system implements these quality attributes?.
E N D
The ATAM method (1/2) • Architecture Tradeoff Analysis Method • Requirements for complex software systems • Modifiability • Performance • Security • Interoperability • Portability • Reliability • How to make sure our system implements these quality attributes?
The ATAM method (2/2) • Method for evaluating software architectures relative to quality attribute goals • Reveals architectural risks • Consists of nine steps in four groups: • Presentation of system • Analysis addressing key quality attribute requirements • Testing involving important stakeholders • Reporting
Why ATAM? • Motivation • Clarified quality attribute requirements • Improved architecture documentation • Risk identification • Not ARID (Active Reviews for Intermediate Designs) because • Risks hard to identify when nothing implemented yet • Would have meant redundant extra work
Gencode and ATAM • Chief architect, project manager and software engineers arrange a meeting • The meeting will follow the steps of ATAM (presented in the following) • Schedule • First meeting after the first implementation phase • Assessment of architecture in its first implementation phase • Report deficiencies, make plan on how to change these • Follow-up meeting after second implementation phase • Assessment of situation against the findings from first meeting
1. Presentation of system • Present the ATAM (1st meeting) • Elina • Present business drivers • Client (Kari) makes an update on which business goals are motivating the development • What are the primary architectural drivers (e.g. some system component, security, speed etc.) • Present architecture • Chief architect (Petri) presents current state
2. Analysis • Identify architectural approaches • Generate quality attribute utility tree • Elicitation of quality factors • Present scenarios • Analyze architectural approaches against quality attributes
3. Testing • Brainstorm and prioritize scenarios • Analyze architectural approaches • Highly ranked scenarios from step 6 become test cases • Analysis may uncover additional architectural approaches and risks • Documentation
4. Reporting • Presentation of results • Documentation