Lecture 6
Lecture 6
1. Requirements Elicitation or gathering of Requirements - collecting and identifying the requirements for a
system or project from various stakeholders, such as customers, end-users, business analysts, and subject matter
experts.
2. Requirements analysis or modeling - Requirements are gathered, modeled and analyzed using modeling tools
such as DFD, object oriented modeling techniques, ERD, etc.
3. Requirements documentation – Here the Requirements that are gathered and modeled are put together in a
document, typically know as the SRS
4. Requirements Review – This consists of, reviewing the SRS by all stakeholders. The reviewed and approved SRS
forms the basis for the work products to be created in the later parts of the Software life cycle.
Requirements Management
• Stages include:
• Requirements discovery,
• Requirements classification and organization,
• Requirements prioritization and negotiation,
• Requirements specification.
Requirement Elicitation - Process activities
• Requirements discovery
• Interacting with stakeholders to discover their requirements. Domain requirements
are also discovered at this stage.
• Requirements classification and organization
• Groups related requirements and organizes them into coherent clusters.
• Prioritization and negotiation
• Prioritizing requirements and resolving requirements conflicts.
• Requirements specification
• Requirements are documented and input into the next round of the spiral.
Requirement Elicitation - Gathering
Captures information from the view point of various users to identify what is
to be built
Requirement Elicitation - Evaluation
For every requirement X, get answers to question, “why do you need X?”
Requirement Elicitation - Prioritization
Brings together the information collected from the previous steps into a set
of requirements consistent with the goals identified during fact finding.
Consolidation is required to put together all the requirements in a way that
can be analyzed further.
Requirements Analysis and Design
• The software requirements document is the official statement of what is required of the
system developers.
• Should include both a definition of user requirements and a specification of the
system requirements.
Requirements Review
The systems development process transforms the existing (as is) system into the proposed (to
be) system
Requirements determination
The single most critical step of the entire SDLC
Changes can be made easily in this stage
Most (>50%) system failures are due to problems with requirements
The iterative process of OOSAD is effective because:
Small batches of requirements can be identified and implemented incrementally
The system will evolve over time
Requirements Determination
Be neutral
Listen
Seek a diverse view
Interviews Steps
Selecting Interviewees
Based on information needs
Best to get different perspectives
Managers
Users
Ideally, all key stakeholders
Keep organizational politics in mind
Designing Interview Questions
Types of Questions
Closed-Ended Questions
How many telephone orders are received per day?
How do customers place orders?
What additional information would you like the new system to provide?
Open-Ended Questions
What do you think about the current system?
What are some of the problems you face on a daily basis?
How do you decide what types of marketing campaign to run?
Probing Questions
Why?
Can you give me an example?
Can you explain that in a bit more detail?
Organizing Interview Questions
Unstructured interview useful early in information gathering
Goal is broad, roughly defined information
Structured interview useful later in process
Goal is very specific information
Interview Preparation Steps
Three techniques help users discover their needs for the new system:
Business Process Automation (BPA)
Business Process Improvement (BPI)
Business Process Reengineering (BPR)
Creating a
Requirements Definition
Activity-based costing
Same as duration analysis but applied to costs
Benchmarking
Studying how other organizations perform the same business process
Requirements Analysis
Strategies(Cont.)