The ATAM – A Method for Architecture Evaluation

Slides:



Advertisements
Similar presentations
ATAM Architecture Tradeoff Analysis Method
Advertisements

Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
Analysis Concepts and Principles
Fundamentals of Information Systems, Second Edition
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
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Architecture Tradeoff Analysis Method Based on presentations by Kim and Kazman
Evaluating Architectures: ATAM
CPSC 871 John D. McGregor Module 4 Session 3 Architecture Evaluation.
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design.
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,
An Introduction to Software Architecture
Software Requirements Engineering CSE 305 Lecture-2.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
SacProNet An Overview of Project Management Techniques.
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
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.
Chapter 9 요구사항 모델링: 시나리오 기반 방법론 Requirements Modeling: Scenario-Based Methods 임현승 강원대학교 Revised from the slides by Roger S. Pressman and Bruce R. Maxim.
Copyright 2002 Prentice-Hall, Inc. 1.1 Modern Systems Analysis and Design Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 1 The Systems Development.
McGraw-Hill/Irwin Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 3 Identification and Selection of Development Projects.
1 Computer Systems & Architecture Lesson 5 9. The ATAM.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
Overall Evaluation of Software Architecture By Ashwin Somaiah.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Project Management Project Integration Management Minder Chen, Ph.D. CSU Channel Islands
Module 4: Systems Development Chapter 13: Investigation and Analysis.
Evaluate Phase Pertemuan Matakuliah: A0774/Information Technology Capital Budgeting Tahun: 2009.
John D. McGregor Architecture Evaluation
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
~ pertemuan 4 ~ Oleh: Ir. Abdul Hayat, MTI 20-Mar-2009 [Abdul Hayat, [4]Project Integration Management, Semester Genap 2008/2009] 1 PROJECT INTEGRATION.
Analyzing an Architecture. Why analyze an architecture? Decide whether it solves the problem Compare to other architectures Assess what needs to change,
The Project Management Process Groups
CpSc 875 John D. McGregor C 12 – Security/ATAM. Attack surface of a product face_Analysis_Cheat_Sheet
MANAGEMENT INFORMATION SYSTEM
CHAPTER 2 SYSTEM PLANNING DFC4013 System Analysis & Design.
Chapter 2 Object-Oriented Paradigm Overview
Chapter 1 The Systems Development Environment
Software Quality Control and Quality Assurance: Introduction
Chapter 1 The Systems Development Environment
Requirements Engineering Process
Principles of Information Systems Eighth Edition
Requirements Analysis Scenes
Chapter 1 The Systems Development Environment
Software Documentation
Chapter 1 The Systems Development Environment
Campus Locator – Definition Phase (May04-04)
Chapter 1 The Systems Development Environment
Chapter 9 Requirements Modeling: Scenario-Based Methods
Analyzing an Architecture
Chapter 1 (pages 4-9); Overview of SDLC
Chapter 5 Designing the Architecture Shari L. Pfleeger Joanne M. Atlee
CLINICAL INFORMATION SYSTEM
An Introduction to Software Architecture
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
Software Architecture
Software Testing Lifecycle Practice
Terms: Data: Database: Database Management System: INTRODUCTION
Chapter 1 The Systems Development Environment
Software Reviews.
Presentation transcript:

The ATAM – A Method for Architecture Evaluation RiSE’s Seminars Clements’s book :: Chapters 3 Frederico Durão April 28, 2019

Summary Steps of ATAM The Phases of ATAM Step 1- 9; Phases 0 - 3 April 28, 2019

ATAM Steps :: Chapter 3 Summary of ATAM Steps Presentation Present the ATAM Present the business drivers Present the architecture Investigation and Analysis Identify the architecture approaches Generate the quality attributes utility tree Analyze the architectural approaches Testing Brainstorming and prioritize scenarios Reporting Present the results April 28, 2019

ATAM Steps :: Chapter 3 Step 1: Present the ATAM The evaluation leader presents the ATAM’s steps to the stakeholders, besides techniques and the outputs of the evaluation April 28, 2019

ATAM Steps :: Chapter 3 Step 2: Present the Business Drivers A project decision maker presents a overview from a business perspective; Business Context/Drivers Presentation (~12 slides / 45 minutes) Description of the business environment, history…(~3-4 slides) Description of the business constraints (~1-3 slides) Description of the technical constraints (~1-3 slides) Quality attributes requirements and from what business needs these are derived (~2-3 slides) Glossary(1 slide) April 28, 2019

ATAM Steps :: Chapter 3 Step 3: Present the Architecture A lead architect or a architecture team presents the architecture in the appropriated level of detail; In this presentation the architect should cover: Technical constraints such as operating system, hardware, or middleware prescribed for use; Other systems with which the system must interact; Architectural approaches used to meet quality attribute requirements; Architectural Views Functional, concurrency, code and physical views Architectural Presentation (~20 slides;60 minutes) April 28, 2019

ATAM Steps :: Chapter 3 Step 4: Identify the Architectural Approaches The architect identify the architectural approaches and styles Architectural styles define important structures of the system and describe how the system can grow, respond to changes, withstand attacks, integrate with other system… Example: Concurrent Pipeline Style Sequence of data transformation; Each component can be replaced or modified; Elements can be reused elsewhere; Evaluators can reason this style in terms of performance implications; April 28, 2019

ATAM Steps :: Chapter 3 Step 5: Generate the Quality Attribute Utility Tree The evaluation team works with the project decision maker to identify, prioritize, and refine the system most important quality attribute goals. Utility trees translate the business drivers of a system into concrete quality attribute scenarios Utility Performance Data Latency (M,L) Minimize storage latency (H,M) Deliver video in real time Transaction Throughput (M,M) Maximize average throughput to the authentication server April 28, 2019

ATAM Steps :: Chapter 3 Step 5: Generate the Quality Attribute Utility Tree {2} Scenarios A short statement describing an interaction of one of the stakeholders with the system User, maintainer, developer, product line manager Useful in understanding run time qualities such as performance or availability Structures Stimulus – the user interaction Environment – the system state Response – how the system should respond to the system Types Use Case Scenarios Growth Scenarios Exploratory Scenarios April 28, 2019

ATAM Steps :: Chapter 3 Step 5: Generate the Quality Attribute Utility Tree {3} Use Case Scenarios Describes a user’s intended interaction with the completed running system The user wants to examine budgetary and actual data under different fiscal years without reentering project data (usability) Growth Scenarios Represent typical anticipated changes to a system ”Double the maximum number of tracks to be handled by the system and keep to 200 ms the maximum latency of track data to the screen” (Performance consequences) April 28, 2019

ATAM Steps :: Chapter 3 Step 5: Generate the Quality Attribute Utility Tree {4} Exploratory Scenarios To expose the limits or boundary conditions of the current design; “Improve the system’s availability from 98% to 99,999%”; April 28, 2019

ATAM Steps :: Chapter 3 Step 6: Analyze the Architectural Approaches At this point there is A set of concrete quality requirements + a set of architectural approaches => Size up how well suited they are to each other; Now the evaluation team can probe the architectural approaches that realize the important quality attributes. Outputs of this Phase: The architectural approaches or decisions relevant to each priority utility tree scenario; The analyst questions associated with each approach; The architect’s response to the questions; The risks, nonriks, sensitivity points and tradeoff points identified; At the end of this steps, the evaluation team should have a clear picture of the most important aspects of the entire architecture April 28, 2019

ATAM Steps :: Chapter 3 Step 7: Brainstorm and Prioritize Scenarios Use of Scenarios to: Represent stakeholders interests; Understand quality attribute requirements; The evaluation team ask the stakeholders to brainstorm: Use Case Scenarios In this case stakeholder is an end user Growth Scenarios Modifications, changes in performance or availability Exploratory Scenarios Limits, dramatic new performance attributes April 28, 2019

ATAM Steps :: Chapter 3 Step 7: Brainstorm and Prioritize Scenarios {2} Once the Scenarios are collected… The stakeholders merge the similar scenarios; Then they vote for the most important scenarios (30% of total scenarios); Each stakeholders casts his votes publicity; The evaluation leader orders the scenarios; The scenario “above the line” are selected to the subsequent steps; The result is compared with the utility tree result; Three things will happen after these steps: The scenario will match essentially duplicated an already-existing leaf node; The scenario will go into a new leaf of an existing branch; The scenario will fit in no branch of the tree because it expresses a quality attribute no previously accounted for; April 28, 2019

ATAM Steps :: Chapter 3 Step 7: Producers of system stakeholders Definition Interest SW Architect Person responsible for the architecture of the system and responsible for making tradeoffs among competing quality pressures Moderation and mediation all of the quality concerns of the other stakeholder Developer Code or designer Clarity of architecture description, high cohesion of parts, limited coupling of parts, clear interconnection mechanisms Standard Expert Developer responsible for knowing the details of standards (current and future) to which the software must conform Separation of concerns, modifiability, interoperability Project Manager Person who allocates resources to teams, is responsible for meeting schedule and budget, interfaces with customer Clear structuring architecture to drive team formation, work breakdown structure, milestones and deadlines, etc Product Line manager or “reuse czar” Person who has a vision for how this architecture and related assets can be reused further by the organization Reusability, Flexibility April 28, 2019

ATAM Steps :: Chapter 3 Step 7: Consumers of the system Stakeholder Definition Interest Customer Purchaser on the system Schedule of completion, over all budget, usefulness of the system, meeting customers expectations End User Use of the implemented system Functionality, usability Step 7: Servicers of the system Stakeholder Definition Interest System Administrator Person running the system Ease in finding the location that may arise April 28, 2019

ATAM Steps :: Chapter 3 Step 8: Analyze the Architectural Approaches The architect carry out the highest-ranked scenarios from step 7 The evaluation team performs the same activities as in Step 6 This Step is a testing activity: it is to be hopped that little new information will be uncovered April 28, 2019

ATAM Steps :: Chapter 3 Step 9: Present the Results The collected information from the ATAM needs to be summarized and presented back to the stakeholders Verbal report + slides + more complete document written report including: The architectural approaches documented A set of scenarios and their prioritization The set of attribute-based questions The utility tree The risk discovered The nonrisks documented The sensitivity points and tradeoff points found April 28, 2019

ATAM Steps :: Chapter 3 The Phases of the ATAM Consist of 4 phases Partnership Preparation Phase 1 Phase 2 Phase 3 April 28, 2019

ATAM Steps :: Chapter 3 The Phases of the ATAM – PHASE 0 Partnership Involves the communication with the client, the sponsor of the evaluation For that The client should have a basic understanding of the evaluation method; The client should describe the system and architecture being evaluated; A contracted or statement of work should be negotiated and signed; Issues of proprietary information should be resolved; It’s a good time to talk about cost and benefits of architecture evaluation April 28, 2019

Desirable Characteristics ATAM Steps :: Chapter 3 The Phases of the ATAM – PHASE 0 Preparation Forming the evaluation team; Holding an evaluation team kickoff meeting; Making the necessary preparations for Phase 1; Set the roles for each member; Role Responsibilities Desirable Characteristics Team Leader Sets up the evaluation; coordinates with client Well-organized, with managerial skills Evaluation Leader Runs evaluation Comfortable in front of an audience. Questioner Raises issues of architectural interest that perhaps the stakeholders have not considered Good architectural insights; Experience with systems in similar domain. April 28, 2019

ATAM Steps :: Chapter 3 The Phases of the ATAM – PHASE 1 Concentrates on Steps 1 through 6 Besides this steps the team needs to determine: Whether the remainder of the evaluation is feasible and should proceed; Whether more architectural documentation is required; Which stakeholders should be present for Phase 2; April 28, 2019

ATAM Steps :: Chapter 3 The Phases of the ATAM – PHASE 2 New stakeholders add the group that has participated of Phase 1; Steps 1 to 6 are encored for the new stakeholders and; Steps 7 to 9 are carried out. April 28, 2019

ATAM Steps :: Chapter 3 The Phases of the ATAM – PHASE 3 The following tasks must be accomplished Produce the final report Cataloging what you did, found, concluded; Use of the template; Collect data for measurement and process improvement Improve ideas about what worked particularly well and what could stand to be improved; Data comes evaluation team and client; Generation of surveys; Update the artifact repositories Record the cost and benefit information; Stored scenarios produced; Store a list of the analysis questions used; April 28, 2019

The beauty of the life will never be realized by the luxury eyes ATAM Steps :: Chapter 3 The beauty of the life will never be realized by the luxury eyes April 28, 2019

References CLEMENTS, P. Software Product Line. Springer-Verlag, 2005. April 28, 2019