RE Chapter 3f
RE Chapter 3f
REQUIREMENT ELICITATION
AND ANALYSIS
CHAPTER-3
Elicitation
Elaboration
Negotiation
Specification
Validation
Requirements Management
• Some of these tasks may occur in parallel and all are adapted to the needs of the
project
• All strive to define what the customer wants
• All serve to establish a solid foundation for the design and construction of the
Cont….
4
RE tasks
5
1. Inception: This phase gives an outline of how to get started on a project. A basic
understanding of the problem is gained and the nature of the solution is addressed.
2. Elicitation: This phase focuses on gathering the requirements from the
stakeholders. Understanding the kind of requirements needed from the customer is
very crucial for a developer.
3. Elaboration: it takes the requirements that have been stated and gathered in the
first two phases and refines them. to indulge in modelling activities and develop a
prototype that elaborates on the features and constraints using the necessary tools
and functions.
4. Negotiation: This phase emphasizes discussion and exchanging conversation on
what is needed and what is to be eliminated.
5. Specification: In the specification phase, the requirements engineer gathers all the
requirements and develops a working model.
6. Validation: This phase focuses on checking for errors and debugging.
7. Requirements Management: is a set of activities where the entire team takes part
in identifying, controlling, tracking, and establishing the requirements
Requirements Inception
6
During inception, the requirements engineer asks a set of questions to
establish…
a common vision of a product and basic scope for the project
Business requirements
represent top level of abstraction in the requirements chain
define the vision and scope
Aligning with user requirements and software functional requirements
Requirements that don't help the project achieve its business objectives shouldn't be
included.
The product vision
Aligns all stakeholders in a common direction.
Describes what the product is about and what it eventually could become.
The project scope
Identifies what portion of the ultimate long-term product vision the current project will
address.
Draws the boundary between what's in and what's out.
Defines the project's limitations.
Vision and Scope Document
10
Vision and Scope Document
collects the business requirements into a single document
Some organizations create a project charter or a business case
document that serves a similar purpose.
Organizations that build commercial software often create a market
requirements document (MRD).
A template for a vision and scope document
11
Elicitation and Analysis Process
12
Application Problem to be
domain solved
Stakeholder Business
needs and context
constraints
Elicitation activities
14
Requirements
Requirements problems
document
Requirements
negotiation
Elicitation stages
16
Objective setting
The organisational objectives should be established including general
goals of the business, an outline description of the problem to be
solved, why the system is necessary and the constraints on the system.
Background knowledge acquisition
Background information about the system includes information about
the organisation where the system is to be installed, the application
domain of the system and information about existing systems
Knowledge organisation
The large amount of knowledge which has been collected in the
previous stage must be organised and collated.
Stakeholder requirements collection
System stakeholders are consulted to discover their requirements.
The requirements elicitation process
17
Goal Domain
Problem to be Application prioritisation requirements
solved domain
Domain Organisational
System Existing knowledge
constraints systems requirements
filtering
Elicitation
18
19
20
This is a technique that translates the needs of the customer into
technical requirements for software
It emphasizes an understanding of what is valuable to the customer
goals stated for a product or system during meetings with the customer
Expected requirements: These requirements are implicit to the
Interviews
Scenarios
Observations and social analysis
Requirements reuse
Prototyping
Interviews
23
Prepare
Conduct
Opening
Body
Closing
Follow through
Scenarios
26
Throw-away prototyping
intended to help elicit and develop the system requirements.
The requirements which should be prototyped are those which cause
most difficulties to customers and which are the hardest to understand.
Requirements which are well-understood need not be implemented by
the prototype.
Evolutionary prototyping
intended to deliver a workable system quickly to the customer.
Therefore, the requirements which should be supported by the initial
versions of this prototype are those which are well-understood and
which can deliver useful end-user functionality. It is only after
extensive use that poorly understood requirements should be
implemented.
Prototyping costs and problems
35
Paper prototyping
a paper mock-up of the system is developed and used
for system experiments
‘Wizard of Oz’ prototyping
a person simulates the responses of the system in
response to some user inputs
Executable prototyping
a fourth generation language or other rapid
development environment is used to develop an
executable prototype
Executable prototype development
37
Prioritize requirements
Cont…
39
Ask: Why?
Root cause analysis
weight
Some may perhaps not deserve to be corrected, at least for
the moment
Goal-oriented modelling can help understand these causes
10/22/2023
High, medium, and low
44
approach
subjective and imprecise
stakeholders must agree on
–not important (the user can live without the capability if necessary)
and
– not urgent (the user can wait, perhaps forever).
Requirements Analysis
46
Problem analysis
Development of product vision and project scope
Elicitation