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.

Slides:



Advertisements
Similar presentations
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Advertisements

Evaluating a Software Architecture By Desalegn Bekele.
Software Architecture – Centric Methods and Agile Development by Craig Castaneda.
Chapter 7: Managing Risk
Copyright : Hi Tech Criminal Justice, Raymond E. Foster Public Policy and Criminal Justice Criminal Justice Criminal Justice Policy Analysis.
University of Southern California Center for Software Engineering C S E USC 02/16/05©USC-CSE1 LiGuo Huang Computer Science Department.
REJ - 1 REJ from Microsoft Chris Gibbs November 5 th, 2007 MBA 731.
Software Architecture for DSD DSD Team. Overview What is software architecture and why is it so important? The role of architecture in determining system.
The Process of Interaction Design. Overview What is Interaction Design? —Four basic activities —Three key characteristics Some practical issues —Who are.
Requirements - Why What and How? Sriram Mohan. Outline Why ? What ? How ?
Recall The Team Skills 1. Analyzing the Problem 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5. Refining the System.
Risk Management and Strategy Prioritisation Intelligence Step 8 - Risk Management and Strategy Prioritisaiton Considering the risks associated with action.
Overview of Advanced Design White Paper Farrokh Najmabadi Virtual Laboratory for Technology Meeting June 23, 1998 OFES Headquarters, Germantown.
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
Chapter 4 Capturing the Requirements 4th Edition Shari L. Pfleeger
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
Architecture Tradeoff Analysis Method Based on presentations by Kim and Kazman
Acquiring Information Systems and Applications
BUSINESS CASE Episode 3 - CAATS II Final Dissemination Event Ignacio Zozaya Boeing Research & Technology Europe CAATS II Brussels, 13 & 14 Oct 2009.
CPSC 871 John D. McGregor Module 4 Session 3 Architecture Evaluation.
Annual SERC Research Review, October 5-6, By Jennifer Bayuk Annual SERC Research Review October 5-6, 2011 University of Maryland Marriott Inn and.
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,
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.
Business Analysis and Essential Competencies
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
An Online Knowledge Base for Sustainable Military Facilities & Infrastructure Dr. Annie R. Pearce, Branch Head Sustainable Facilities & Infrastructure.
Acquiring Information Systems and Applications
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
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.
© Mahindra Satyam 2009 Decision Analysis and Resolution QMS Training.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
McGraw-Hill/Irwin Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 3 Identification and Selection of Development Projects.
Integrated Risk Management Charles Yoe, PhD Institute for Water Resources 2009.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Optimizing NASA IV&V Benefits Using Simulation Grant Number: NAG David M. Raffo, Ph.D College of Engineering and Computer Science School of Business.
Architecture Evaluation Cost Benefit Analysis Method (CBAM)
Software Life Cycle The software life cycle is the sequence of activities that occur during software development and maintenance.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
CSE 303 – Software Design and Architecture
Initiation Project Management Minder Chen, Ph.D. CSU Channel Islands
Requirements Engineering Process
John D. McGregor Architecture Evaluation
Chapter 2 – Software Processes Lecture 2 1Chapter 2 Software Processes.
Requirements Analysis
 CMMI  REQUIREMENT DEVELOPMENT  SPECIFIC AND GENERIC GOALS  SG1: Develop CUSTOMER Requirement  SG2: Develop Product Requirement  SG3: Analyze.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Professional Ethics and Responsibilities
Chapter 3: The Requirements Workflow [Arlow and Neustadt, 2005] CS 426 Senior Projects in Computer Science University of Nevada, Reno Department of Computer.
Medium-Term Debt Management Strategy (MTDS): A Framework MDB Meeting on Debt Issues July 10, 2008.
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,
 System Requirement Specification and System Planning.
Quality Attribute Workshop. Goal: To identify requirements Held early in development Includes stakeholders Outputs: Business Goals Quality Attribute Scenarios.
Selling and Negotiation Skills Session-3 Terms used in Negotiation TYPES OF NEGOTIATIONS.
Chapter 11 Project Management.
Requirement Prioritization
BANKING INFORMATION SYSTEMS
Identify the Risk of Not Doing BA
CHAPTER.2: Requirements Engineering Processes
UNIT II.
Analyzing an Architecture
ARB Schedule Locations
Analyzing an Architecture
System Analysis and Design:
Presentation transcript:

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 to Architectures (STRAW 2001) May14, 2001

Outline Why Are We Here? Where Have We Been? –WinWin, ATAM, CBAM –An Integrated Process –Examples Where Are We Going?

Why Are We Here? Concurrent process between requirements negotiation and architectural design is inevitable But the link between all of these is currently vague. Requirements Architecture & design Coding Testing Issues Discussed Development Phase Requirements Architecture & design Coding Testing * Raymonde Guindon, “Human Factors: Behavioral Science”, 1990

Where Have We Been? A framework for successful requirements negotiation WinWin and negotiation support agents ATAM CBAM A method for analyzing architectural decisions A method for looking at the economic consequences of architectural decisions requirements architecture ???

WinWin WinWin assists stakeholders in negotiating their requirements. They identify their win conditions. They negotiate the conflicts among their win conditions via a rigorous process.

The ATAM The ATAM looks at the consequences of architectural decisions in the light of the system’s stated business goals. It elicits and documents risks, sensitivity points, and tradeoffs among the key architectural decisions. Presenting: ATAM Steps/Business Case/Architecture Analysis: Architectural Approaches Testing : Scenario Brainstorming Reporting

The CBAM …takes over where the ATAM left off. It quantifies the costs and benefits of the architectural strategies that the system’s stakeholders are considering and produces a Desirability metric. It also quantifies the uncertainty surrounding these decisions. Business Goals Architecture Decisions P A S M $ Benefit $ $ Cost $

An Integrated Process We propose WinCBAM: –an integrated process –allows requirements to be negotiated in terms of the Desirability (Benefit/Cost) of their realizations as architectural decisions. This is more comprehensive than either process on its own. –Requirements negotiation with risk reduction (alleviating uncertainty through architectural decision) –Mutual satisfied (win-win) architecture selection –Faster renegotiation and architecture V&V (by tracesability)

Steps of the Integrated Process Elicit Win Conditions Identify Conflict Issues Explore Options/ Architecture Strategies (ASs) Reach Agreements (requirements) CBAM Steps Step 4. Assess QA Benefits Step 5. Quantify the ASs’ Benefits Step 6. Quantifying the ASs’ Cost and Schedule Implications Step 7. Calculate Desirability Step 1Step 2 Step 3 Step 8 WinWin Spiral Model

Traceability: WinWin Win Conditions Requirements

Traceability: CBAM Business Goals Architectural Strategies System Responses Scenarios Cost Benefits Schedule

Traceability: WinCBAM Win Conditions Business Goals Requirements/Scenarios Architectural Strategies System Responses Cost Benefits Schedule

Example 1 – Conflict Resolved USC/CSE Repository System Stakeholders developed requirements and easyWinWin was applied, e.g. User: Manager U2 System must be easily accessible from any location M2 Project to be complete within two months M7 Impossible for unauthorized people to access

Conflict Identified in Requirement Level Requirements U2, M7 conflict identified M2 also identified as a potential conflict Win Conditions Conflicts with Win Conditions Direct Conflict Potential Conflict Cost Schedule U1S2M1, M2M1M2 U2M7M2, M9, P6M1M2

AS Implications U2 M7 Security++ Usability- Security-- Usability++ AS 8 : Replace sockets with SSL Usability 0.7 Security 0.6 Availability 0.5 ….. Benefit = 73 Cost = 2 p.w. High benefit; low cost/schedule impact => conflict resolved!

Example 2 – Conflict Identified Requirements P5 and P8 were not identified as a conflict via easyWinWin Project Manager: P5 Sufficient resources allocated to maintain system. P8 Cross-communication capability of the system.

AS Implications P5 P8 Interoperability++ Maintainability++ AS 9 : Common message broker Maintainbility -0.8 Interoperability 0.9 Availability -0.3 ….. Benefit = 13 Cost = 6 p.m. Low benefit; high cost/schedule impact => conflict/tradeoff found! X

The Pudding The WinCBAM links Win conditions through to architectural decisions. We not only know what decision was made, but why: –this “why” is one that meets the stakeholders win conditions and is economically feasible and with an acceptable level of risk/uncertainty. This is the point of the combined method.

Where Are We Going? Using Desirability results to influence the choice of Win conditions and feed this back into the negotiation. Using Portfolio theory to choose sets of architectural strategies, rather than individual ones. Do a case study! (Volunteers?)