SE Chap3
SE Chap3
1
Software Requirements
2
Software Requirements
❖ Requirements are descriptions of the services that a
software system must provide and the constraints under
which it must operate
5
Requirements Elicitation
Problems of Requirement Elicitation
Scope-related issues: The system's boundaries are unclear
or excessive details are provided, causing confusion or
ambiguity.
Understanding-related issues: Users lack clarity about
their needs and have limited knowledge of the problem
domain, leading to difficulties in accurately defining
requirements.
Volatility-related issues: The requirements undergo
changes over time, introducing uncertainty and making it
challenging to maintain consistent and stable project
specifications.
6
Types of requirements
9
Software Requirement Specifications
(SRS)
What is SRS
It is documenting the gathered requirements in a
structured and detailed manner
Software Requirements Specifications (SRS) (also called a
requirements document)
SRS is a formal report, which acts as a representation of software
that enables the customers to review whether it (SRS) is according
to their requirements.
The SRS is a specification for a specific software product,
program, or set of applications that perform particular functions in
a specific environment.
10
Cont’d
12
Cont’d
❖ Correctness:
✓User review is used to provide the accuracy of
requirements stated in the SRS.
✓SRS is said to be perfect if it covers all the
needs that are truly expected from the system.
13
Cont’d
❖ Completeness: The SRS is complete if, and only if, it
includes the following elements
Responses to
Completeness both valid and
invalid values
14
Cont’d
❖ Consistency
▪ The SRS is consistent if, and only if, no subset of individual
requirements described in its conflict.
❖ Unambiguousness
▪ SRS is unambiguous when every fixed requirement has only one
interpretation.
❖ Ranking for importance and stability
▪ The SRS is ranked for importance and stability.
▪ Typically, all requirements are not equally important.
❖ Modifiability
▪ SRS should be made as modifiable as likely and should be capable
of quickly obtain changes to the system to some extent.
▪ Modifications should be cross-referenced.
15
Cont’d
❖ Testability
▪ An SRS should be written in such a method that it is simple to
generate test cases and test plans from the report.
❖ Understandable by the customer
▪ An end user may be an expert in his/her explicit domain but might
not be trained in computer science.
▪ Hence, the purpose of formal notations and symbols should be
avoided too as much extent as possible.
▪ The language should be kept simple and clear.
16
Metrics, Verification and Validation
❖Metrics:
A metrics is a measurement of the level that any
impute belongs to a system product or process.
There are 4 functions related to software metrics:
Planning
Organizing
Controlling
Improving
17
Cont’d
Classification of Software Metrics:
Product Metrics:
Product metrics are used to evaluate the state of the
product, tracing risks and under covering prospective
problem areas.
The ability of team to control quality is evaluated.
Process Metrics:
Process metrics pay particular attention on enhancing the
long term process of the team or organisation.
18
What is Verification and Validation?
Verification and Validation is the process of investigating that a software
system satisfies specifications and standards and it fulfils the required
purpose.
▪ Verification: Are we building the product right?
▪ Verification is the process of checking that a software achieves its goal without
any bugs.
▪ It verifies whether the developed product fulfils the requirements that we have.
Requirements are verified by the analysts mainly
19
Cont’d
20
Verification Vs. Validation
21
Thank You
22