Chapter 3
Chapter 3
Chapter 3
JIMMA UNIVERSITY
JIMMA INSTITUTE OF TECHNOLOGY
FACULTY OF COMPUTING AND INFORMATICS
CHAPTER THREE
REQUIREMENT ELICITATION AND ANALYSIS
Objectives
2
Requirements Elicitation
Components of Elicitation
The requirements elicitation process
Elicitation Techniques
Requirements Analysis & Negotiation
Activities for Requirements Analysis
Requirement Analysis Techniques
Activities for Requirements Negotiation
Resolution of Requirements Conflicts
Introduction
3
Traditional techniques
Introspection
Analysis of Existing Systems
Interviews
Open-ended
Structured
Collaborative techniques
Group techniques
Focus Groups
Brainstorming
JAD workshops
Prototyping
Introspection
13
Pros: Cons:
It is hard for analysts to imagine the
Introspection is an
environment in which the new system works.
easier technique to It doesn’t allow discussion with stakeholders
apply. and other experts.
There are almost no Therefore, it is not encouraged if not used in
costs for implementing combination with other techniques.
this technique. Analysts and stakeholders need to be well
It can act as a good known about the domain.
Introspection can be very inaccurate at
initial step to start
times because Requirement Analyst imagines
requirements
what is required rather than asking from the
elicitation.
user what he requires.
This technique is unlikely to reflect the
stakeholder’s goals and actual user
experiences.
Analysis of Existing Systems
17
of promising leads
Interview as many stakeholders as possible
Brainstorming
Focus Groups
Is a gathering of people who are representative of the users or
customers of a product to get feedback.
produces data and insights that would be less accessible without
interaction found in a group setting—listening to others’
verbalized experiences stimulates memories, ideas, and
experiences in participants
Brainstorming
22
Brainstorming refers to the process of systematic and liberal generation of a large
volume of ideas from a number of participants.
used to identify possible solutions to problems, and clarify details of
opportunities.
Early on in a project particularly when:
There is little expertise for the type of applications
Defining requirements
Designing a solution
“Governed by 6 “P”s”
The 6 “P”s
25
Participants
Session Leader
Users
Managers
Sponsor
Systems Analysts
Scribe
IS Staff
Prototyping
27
Provides early response to “I'll know it when I’ll see (or won’t see) it”
attitude
Effective in addressing the “Yes, But” and the “Undiscovered Ruins”
syndromes
Helps find new functionalities, discuss usability, and establish priorities
Discussion
29
HOW TO DO IT:
Requirements Analysis
30
The goal of analysis is to
discover the interaction
between requirements and to
highlight problematic
requirements(Conflicting,
overlapping, unrealistic etc. )
in the draft document.
Input - A draft system
requirements document
Output –A requirement
document which contains a
set of problematic
requirements
Conflict: negatively affect
each other
Overlap: affect each other but
not necessarily a conflict
Example for conflicting and overlapping
requirements
31
R1: The file server shall respond to requests within 0.5 seconds
R2: The file server shall serve up to 200 connection
Simultaneously
R1 and R2 are conflicting requirements. Because the file server hardware
resources may prevent requirements from being satisfied
simultaneously.
R3: The file server shall allow logged in users of storing up to 2GB of
data daily(total)
R4: The file server shall allow each logged in user to store up to 20MB
of data daily
R3 and R4 are overlapping requirements(no conflict). Because R3 and R4
affect each other, R5 might be extracted.
R5: the file server shall allow up to 100 users to login daily.
Requirements Analysis & Negotiation
33
Analysis checklists
A checklist is a list of questions which analysts may use to
assess each requirement
Interaction matrices
Interaction matrices are used to discover interactions
between requirements and to highlight conflicts and
overlaps
Analysis checklists
38
Requirement R1 R2 R3 R4 R5 R6
0 0 1000 0 1 1
R1
0 0 0 0 0 0
R2
1000 0 0 1000 0 1000
R3
0 0 1000 0 1 1
R4
1 0 0 1 0 0
R5
1 0 1000 1 0 0
R6
An Example for Interaction Matrix
43
Discussion
Why prioritize requirements?
48
Limited
resources
Schedule
Budget
Effort Customer
Resources expectations are high
Requirements Too many Reqs
Changing Reqs
Conflicting Reqs
50