Active Review for Intermediate Designs [Clements, 2000]

Slides:



Advertisements
Similar presentations
ATAM Architecture Tradeoff Analysis Method
Advertisements

Achieve Benefit from IT Projects. Aim This presentation is prepared to support and give a general overview of the ‘How to Achieve Benefits from IT Projects’
1 Software Testing and Quality Assurance Lecture 13 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Pedigreed Attribute eLicitation Method (PALM) Onno Dijkstra.
Hospital Information System (HIS) Stakeholder Consultation
Evaluating a Software Architecture By Desalegn Bekele.
ARGUMENTATIVE ESSAY. DEVELOPING AN AN ARGUMENT BE SURE OF THE QUESTION’S REQUIREMENTS IDENTIFY KEY ISSUES OF THE ESSAY QUESTION PAY ATTENTION TO THE COMMAND.
Testing Without Executing the Code Pavlina Koleva Junior QA Engineer WinCore Telerik QA Academy Telerik QA Academy.
7.1 A Bridge to Design & Construction
© S. Demeyer, S. Ducasse, O. Nierstrasz Reverse Engineering.1 2. Reverse Engineering What and Why Setting Direction  Most Valuable First First Contact.
1 Software Requirement Analysis Deployment Package for the Basic Profile Version 0.1, January 11th 2008.
Lecture 17 Architecture Tradeoff Analysis Method ATAM
Analysis Concepts and Principles
©2003 Prentice Hall Business Publishing, Accounting Information Systems, 9/e, Romney/Steinbart 18-1 Accounting Information Systems 9 th Edition Marshall.
SE 555 Software Requirements & Specification Requirements Validation.
Software Architecture Quality. Outline Importance of assessing software architecture Better predict the quality of the system to be built How to improve.
Mastering OOA/OOD with UML. Contents Introduction Requirements Overview OOAOOD.
Software Quality Assurance For Software Engineering && Architecture and Design.
Software architecture evaluation
Architecture Tradeoff Analysis Method Based on presentations by Kim and Kazman
Methods and Models for Evaluating Software Product Line Architecture Hyotaeg Jung Computer Science Department Univ. of Texas at Dallas Software Architecture.
Web Development Process Description
RUP Requirements RUP Artifacts and Deliverables
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Evaluating Architectures: ATAM
CPSC 871 John D. McGregor Module 4 Session 3 Architecture Evaluation.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
1 IBM Software Group ® Mastering Requirements Management with Use Cases Module 4: Analyze the Problem.
ATAM –Cont’d SEG 3202 N. Elkadri.
Advanced Topics in Requirement Engineering. Requirements Elicitation Elicit means to gather, acquire, extract, and obtain, etc. Requirements elicitation.
Architecture Evaluation Evaluation Factors Evaluation by the designer Every time the designer makes a key design decision or completes a design milestone,
1 REQUIREMENT ENGINEERING Chapter 7. 2 REQUIREMENT ENGINEERING Definition Establishing what the customer requires from a software system. OR It helps.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
System Analysis and Design Dr. Taysir Hassan Abdel Hamid Lecture 5: Analysis Chapter 3: Requirements Determination November 10, 2013.
Team Skill 2 Understanding User and Stakeholder Needs Requirements Workshop (11)
Systems Design Approaches The Waterfall vs. Iterative Methodologies.
Software Requirements Engineering: What, Why, Who, When, and How
Software Engineering Saeed Akhtar The University of Lahore Lecture 7 Originally shared for: mashhoood.webs.com.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
1 Computer Systems & Architecture Lesson 5 9. The ATAM.
Lecture 7: Requirements Engineering
Lecture-3.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Chapter 6: Thinking about requirements and describing them.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Systems Engineering Simulation Modeling Maintenance Analysis Availability Research Repair Testing Training Copyright © 2009, David Emery & D&S Consultants,
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
By Germaine Cheung Hong Kong Computer Institute
Architecture Analysis Techniques
Overall Evaluation of Software Architecture By Ashwin Somaiah.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Audit Evidence Process
Requirement Engineering
John D. McGregor Architecture Evaluation
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
An Agile Requirements Approach 1. Step 1: Get Organized  Meet with your team and agree on the basic software processes you will employ.  Decide how.
The ATAM method. The ATAM method (1/2) Architecture Tradeoff Analysis Method Requirements for complex software systems Modifiability Performance Security.
Analyzing an Architecture. Why analyze an architecture? Decide whether it solves the problem Compare to other architectures Assess what needs to change,
Chapter 16: Architecture and Requirements
CASE Tools and Joint and Rapid Application Development
Quality Management Perfectqaservices.
Software Requirements analysis & specifications
Analyzing an Architecture
Analyzing an Architecture
The ATAM – A Method for Architecture Evaluation
Software Architecture
Presentation transcript:

Active Review for Intermediate Designs [Clements, 2000]

Introduction A piloted software design review technique A blend of stakeholder-centric, scenario-based, architecture evaluation method (ATAM and ADR) Goal: expose design to allow early feedback Designers want: To know if the design is tenable To unveil the design to the community of software writers

Benefits Provides valuable insight into design’s viability Allow for timely discovery of errors, inconsistencies, or inadequacies

Active Design Reviews (ADR) Effective technique for ensuring quality, detailed designs in software [Parnas, 85] Actively engaging reviewers to utilize the design in a series of exercises Conventional design review: Examine stacks of documentation Checklist to ensure design meets certain standards

ADRs evaluate detailed designs of modules Questions address: Quality and completeness of documentation Sufficiency, fitness, and suitability of the services provided by the design

Architecture Tradeoff Analysis Method (ATAM) A scenario-based design review techniques Scenarios proven to be valuable in the evaluation of system and software designs Relies on the present of the stakeholders Elicits business goals for system and its architecture Uses those goals and stakeholder participation to focus attention to key portions of the architecture

Benefits of ATAM Benefits: Financial gains Forced preparation Captured rationale Early detection of problems Validation of requirements Improved architecture

Phases in ATAM

Example Utility Tree Performance Utility Usability Maintainability Transaction response time (H, M) Performance Throughput 150 transactions/sec Training Utility Usability Normal operations Database vendor releases new version Maintainability

ARID ADR/ATAM hybrid ADR requires active reviewer participation ATAM embraced stakeholder-generated scenarios Three groups of participants: ARID review team (facilitator, scribe, process observer) Lead designer Reviewers (stakeholders)

Overview of ARID Steps

Phase One Phase 1: Pre-meeting (between lead designer and facilitator) Identify reviewers Prepare design presentation Facilitator ask “first order” questions Identify areas to improve presentation Set the pace for the presentation A practice to the designer

Phase One … (2) Prepare seed scenarios Prepare for the review meeting Designer and facilitator prepare sample set of scenarios E.g. a user in a particular context asks for help, and the system provides help for that context. Prepare for the review meeting Produce copies of presentation, seed scenarios, and review agenda

Phase Two Phase 2: Review Meeting Present ARID method (30 mins by facilitator) Present design (no questions nor suggestions allowed except on factual clarification) Scribe jots down every questions Brainstorm and prioritize scenarios Perform review Provides pseudo code to solve problems posed by the scenario Present conclusions

Output of ARID Initial Architecture System overview from a business perspective: Most important functions Any relevant technical, managerial, economic, or political constraint Business goals that relate to the project Major stakeholders Major quality attributes Set of seed of scenarios

Output of ARID … (2) Set of scenarios and their prioritization from the brainstorming The Utility Tree Issues and problems