Requirements Analysis and Negotiation

Slides:



Advertisements
Similar presentations
Requirements Validation
Advertisements

©G. Kotonya and I. Sommerville 1998 Slide 1 Requirements Elicitation and Analysis Chapter 3.
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
Managing Conflict, Politics, and Negotiation
Requirements Engineering Process – 1
Managing Conflict, Politics, and Negotiation
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Chapter 6 Requirements Engineering Process.
Requirements Engineering
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
1 Using Interaction matrices for requirements analysis Objective – to discover the interactions between requirements and to highlight requirements conflicts.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Requirements Engineering Negotiation Process Lecture-18.
Requirements Engineering Requirements Elicitation Process Lecture-9.
Requirements Engineering Requirements Elicitation Process Lecture-6.
Slide 1 Requirements Elicitation and Analysis. Slide 2 Objectives u To describe the processes of requirements elicitation and analysis. u To introduce.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Requirements Validation
Requirements Engineering. Requirements engineering processes The processes used for RE vary widely depending on the application domain, the people involved.
Requirements Engineering Process
Requirements Engineering Processes. Syllabus l Definition of Requirement engineering process (REP) l Phases of Requirements Engineering Process: Requirements.
Requirements Engineering Requirements Management Lecture-25.
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
Requirements Analysis
CS223: Software Engineering Lecture 8: Requirement Engineering.
17-1 © 2006 The McGraw-Hill Companies, Inc. All rights reserved.McGraw-Hill/Irwin Organizational Conflict  The discord that arises when goals, interests.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Product Design Alternative Generation, Evaluation, and Selection.
Chapter 4 – Requirements Engineering Part 2 1Chapter 4 Requirements engineering.
1 Requirements Elicitation – 2 Lecture # Requirements Engineering Process Requirements Elicitation Requirements Analysis and Negotiation Requirements.
1 Requirements Analysis Lecture # Recap of Requirements Elicitation - 1 Requirements elicitation deals with discovering requirements for a software.
 The processes used for RE vary widely depending on the application domain, the people involved and the organisation developing the requirements.  However,
Software Development Module Code: CST 240 Chapter 6: Software Maintenance Al Khawarizmi International College, AL AIN, U.A.E Lecturer: Karamath Ateeq.
1 Requirements Management - II Lecture # Recap of Last Lecture We talked about requirements management and why is it necessary to manage requirements.
REQUIREMENTS ENGINEERING PROCESSES Chapter 6. Activities in Requirements Engineering processes  Requirements elicitation;  Requirements analysis; 
Requirements Errors Lecture # 14.
Requirements Engineering Processes
Chapter 4 Requirements engineering
Business & Management Topic 1 Stakeholders.
Software Requirements
Prototyping Lecture # 08.
Requirement Prioritization
Requirements Validation – II
Fundamentals of Information Systems, Sixth Edition
Requirements Engineering (continued)
Writing Requirements Lecture # 23.
Chapter 16 Participating in Groups and Teams.
CHAPTER.2: Requirements Engineering Processes
Handout 4: Handling conflict
Management Practices Lecture 8.
Improvement Selection:
Elaboration & Negotiation Process
Rational Perspectives on Decision Making Keys to Decision Making
Requirements Elicitation – 1
Example Fill in the grid so that every row, column and box contains each of the numbers 1 to 9:
SE-565 Software System Requirements III. Requirements Elicitation
Systems analysis and design, 6th edition Dennis, wixom, and roth
Systems analysis and design, 6th edition Dennis, wixom, and roth
Requirements Engineering Process
Requirements Engineering Processes
PDM: the Octograph.
QA Reviews Lecture # 6.
Requirements Engineering Process – 1
Requirements Management - I
Requirements Document
Personal and social development
Requirements Validation – I
Law and Justice: Chapter 4
Software Requirements
Software Requirements
INTRODUCTION OF REQUIREMENT ENGINEERING Chapter- one.
Presentation transcript:

Requirements Analysis and Negotiation Lecture # 13

Recap of Last Lecture Discussed requirements analysis, which is an iterative activity and checks for incomplete and inconsistent requirements Three stages of requirements analysis (necessity checking, completeness and consistency checking, and feasibility checking) Studied analysis checklists as a technique for requirements analysis

Today’s Topics We’ll spend some time discussing interaction matrices, another requirements analysis technique We’ll talk about requirements negotiation

Requirements Interactions - 1 A very important objective of requirements analysis is to discover the interactions between requirements and to highlight requirements conflicts and overlaps A requirements interaction matrix shows how requirements interact with each other, which can be constructed using a spreadsheet

Requirements Interactions - 2 Each requirement is compared with other requirements, and the matrix is filled as follows: For requirements which conflict, fill in a 1 For requirements which overlap, fill in a 1000 For requirements which are independent, fill in a 0 Consider an example

An Interaction Matrix Requirement R1 R2 R3 R4 R5 R6 1000 1

Comments on Interaction Matrices - 1 If you can’t decide whether requirements conflict, you should assume that a conflict exists. If an error is made it is usually fairly cheap to fix; it can be much more expensive to resolve undetected conflicts

Comments on Interaction Matrices - 2 In the example, we are considering, we can see that R1 overlaps with R3 and conflicts with R5 and R6 R2 is an independent requirement R3 overlaps with R1, R4, and R6

Comments on Interaction Matrices - 3 The advantage of using numeric values for conflicts and overlaps is that you can sum each row and column to find the number of conflicts and the number of overlaps Requirements which have high values for one or both of these figures should be carefully examined

Comments on Interaction Matrices - 4 A large number of conflicts or overlaps means that any changes to that requirement will probably have a major impact of the rest of the requirements Interaction matrices work only when there is relatively small number of requirements, as each requirement is compared with every other requirement

Comments on Interaction Matrices - 5 The upper limit should be about 200 requirements These overlaps and conflicts have to be discussed and resolved during requirements negotiation, which we’ll discuss next

Requirements Negotiations

Requirements Negotiation - 1 Disagreements about requirements are inevitable when a system has many stakeholders. Conflicts are not ‘failures’ but reflect different stakeholder needs and priorities Requirements negotiation is the process of discussing requirements conflicts and reaching a compromise that all stakeholders can agree to

Requirements Negotiation - 2 In planning a requirements engineering process, it is important to leave enough time for negotiation. Finding an acceptable compromise can be time-consuming

Requirements Negotiation - 3 The final requirements will always be a compromise which is governed by the needs of the organization in general, the specific requirements of different stakeholders, design and implementation constraints, and the budget and schedule for the system development

Requirements Negotiation Stages Requirements discussion Requirements prioritization Requirements agreement

Requirements Discussion Requirements which have been highlighted as problematic are discussed and the stakeholders involved present their views about the requirements

Requirements Prioritization Disputed requirements are prioritized to identify critical requirements and to help the decision making process

Requirements Agreement Solutions to the requirements problems are identified and a compromised set of requirements are reached. Generally, this will involve making changes to some of the requirements

Requirements Negotiation Process Conflicting and incomplete requirements Unnecessary requirements Infeasible requirements Requirements discussion Requirements prioritization Requirements agreement Requirements Negotiation

Comments on Requirements Negotiation - 1 In principle, requirements negotiation should be an objective process The judgments should be the requirements for the system should be based on technical and organizational needs Reality is, however, often different

Comments on Requirements Negotiation - 2 Negotiations are rarely conducted using only logical and technical arguments They are influenced by organizational and political considerations, and the personalities of the people involved

Comments on Requirements Negotiation - 3 A strong personality may force their priorities on other stakeholders Requirements may be accepted or rejected because they strengthen the political influence in the organization of some stakeholders End-users may be resistant to change and may block requirements, etc.

Comments on Requirements Negotiation - 4 The majority of time in requirements negotiation is usually spent resolving requirements conflicts. A requirement conflicts with other requirements if they ask for different things Example of access of data in a distributed system

Comments on Requirements Negotiation - 5 Even after years of experience, many companies do not allow enough time for resolution of conflicts in requirements Conflicts should not be viewed as ‘failures’, they are natural and inevitable – rather healthy

Resolution of Requirements Conflicts Meetings are the most effective way to negotiate requirements and resolve requirements conflicts All requirements which are in conflict should be discussed individually Negotiation meetings should be conducted in three stages

Stages of Negotiation Meetings Information stage Discussion stage Resolution stage

Information Stage An information stage where the nature of the problems associated with a requirement is explained

Discussion Stage A discussion stage where the stakeholders involved discuss how these problems might be resolved All stakeholders with an interest in the requirement should be given the opportunity to comment. Priorities may be assigned to requirements at this stage

Resolution Stage A resolution stage where actions concerning the requirement are agreed These actions might be to delete the requirement, to suggest specific modifications to the requirement or to elicit further information about the requirement

Summary Interaction matrices are very useful for capturing interactions among requirements Requirements negotiation is always necessary to resolve requirements conflicts and remove requirements overlaps. Negotiation involves information interchange, discussion and resolution of disagreements

References ‘Requirements Engineering: Processes and Techniques’ by G. Kotonya and I. Sommerville, John Wiley & Sons, 1998