The ATAM method. The ATAM method (1/2) Architecture Tradeoff Analysis Method Requirements for complex software systems Modifiability Performance Security.

Slides:



Advertisements
Similar presentations
ATAM Architecture Tradeoff Analysis Method
Advertisements

Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
Evaluating a Software Architecture By Desalegn Bekele.
Software Architecture – Centric Methods and Agile Development by Craig Castaneda.
CPSC 872 John D. McGregor Session 22 Architecture Design, cont’d.
ACTIVELY ENGAGING THE STAKEHOLDER IN DEFINING REQUIREMENTS FOR THE BUSINESS, THE STAKEHOLDER, SOLUTION OR TRANSITION Requirements Elicitation.
Active Review for Intermediate Designs [Clements, 2000]
Introduction to Software Architecture. What is Software Architecture?  It is the body of methods and techniques that help us to manage the complexities.
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
Evaluating Software Architectures for Real- Time Systems R. Kazman, M. Klein, P. Clements Software Engineering Institute Carnegie Mellon University.
Lecture 17 Architecture Tradeoff Analysis Method ATAM
Software Architecture Quality. Outline Importance of assessing software architecture Better predict the quality of the system to be built How to improve.
Software architecture evaluation
Architecture and Requirements
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
Architecture Tradeoff Analysis Method Based on presentations by Kim and Kazman
1 The ATAM A Comprehensive Method for rchitecture Evaluation & The CBAM A Quantitative Approach to Architecture Design Deci $ ion Making CSSE 377 Software.
Methods and Models for Evaluating Software Product Line Architecture Hyotaeg Jung Computer Science Department Univ. of Texas at Dallas Software Architecture.
EVALUVATING SOFTWARE ARCHITECTURES FOR REAL-TIME SYSTEMS R.Kazman, M.Klein, P.Clements Software Engineering Institute Carnegie Mellon University.
Software Engineering Chapter 15 Construction Leads to Initial Operational Capability Fall 2001.
Evaluating Architectures: ATAM
CPSC 871 John D. McGregor Module 4 Session 3 Architecture Evaluation.
CLEANROOM SOFTWARE ENGINEERING.
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
WinCBAM: From Requirements Negotiation to Software Architecture Decisions Hoh In Rick Kazman David Olson Texas A&M SEI/CMU Texas A&M From Software Requirements.
ATAM –Cont’d SEG 3202 N. Elkadri.
Architecture Evaluation Evaluation Factors Evaluation by the designer Every time the designer makes a key design decision or completes a design milestone,
Database Systems: Design, Implementation, and Management
Identify steps for understanding and solving the
IT Requirements Management Balancing Needs and Expectations.
© Mahindra Satyam 2009 Decision Analysis and Resolution QMS Training.
Software Architecture CS3300 Fall Beware the Fuzzy Front End We are already almost 1/3 of the way done Need to negotiate deliverable schedule: SDP.
SOFTWARE ARCHITECT – DESIGN.  Introduction  Architecture Drivers  POS System Architecture  Mapping Between Perspective  Evaluate Architecture  Project.
1 Computer Systems & Architecture Lesson 5 9. The ATAM.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
Architecture Evaluation Cost Benefit Analysis Method (CBAM)
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
IAD 2263: System Analysis and Design Chapter 3: Investigating System Requirements.
Architecture Analysis Techniques
Overall Evaluation of Software Architecture By Ashwin Somaiah.
Evaluating Architectures. Quality Control Rarely fun, but always necessary 1.
CSE 303 – Software Design and Architecture
Evaluate Phase Pertemuan Matakuliah: A0774/Information Technology Capital Budgeting Tahun: 2009.
L ECTURE 18 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.
Software Requirements Specification Document (SRS)
John D. McGregor Architecture Evaluation
Architecture Tradeoff Analysis Method Software Engineering Institute Carnegie Mellon University Presented by: Senthil ayyasamy CS 590l- winter 2003.
S ystems Analysis Laboratory Helsinki University of Technology 1 Decision Analysis Raimo P. Hämäläinen Systems Analysis Laboratory Helsinki University.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Risk Assessment What is good about the Microsoft approach to threat modeling? What is bad about it? OCTAVE…  Advantage: ___________  Disadvantage: ___________.
Analyzing an Architecture. Why analyze an architecture? Decide whether it solves the problem Compare to other architectures Assess what needs to change,
CpSc 875 John D. McGregor C 12 – Security/ATAM. Attack surface of a product face_Analysis_Cheat_Sheet
Lecture 15 Attribute Driven Design Again Topics ATAM – team expertise and experience needed Chapter 24 Next Time: June 22, 2016 CSCE 742 Software Architecture.
Software Architecture in Practice
Software Architecture ATAM Process Presentation
Requirements Engineering
Lecture 17 ATAM Team Expertise
SYSTEM ANALYSIS AND DESIGN
Rational Unified Process
Analyzing an Architecture
Rational Unified Process (RUP)
Vanilson Burégio The Battlefield Control System – The First Case Study in Applying the ATAM Chapter 4 of: Clements, Paul et al., Evaluating.
Analyzing an Architecture
The ATAM – A Method for Architecture Evaluation
Software Architecture
John D. McGregor C 12 – Security/ATAM
Presentation transcript:

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?

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