You are on page 1of 22

ITT06106

LECTURE 4
System requirements
BY Anold Nkata 11/02/2022 1
What is System requirements
 System requirements is a statement that identifies the functionality that is
needed by a system in order to satisfy the customer’s requirements
 The System requirements are description of features and functionalities of
the target system
 Requirements convey the expectations of users from the software product.
 System requirements are the most effective way of meeting the user
needs and reducing the cost of implementation

BY Anold Nkata 11/02/2022 2


Consequence of System requirements
 Good System requirements could lead a company to save a lot of money and
time,
 In other hand, bad System requirements can cause a company to waste a lot
of money and time
 System requirements are the most important part of any project of software
development, because
 If the system requirements are not fulfilled the project will not be complete
 The requirements can be obvious or hidden, known or unknown, expected or
unexpected
BY Anold Nkata
from client’s point of view 11/02/2022 3
Classification of the System requirements
 Business requirements: Provides the description
of the critical activities of an enterprise that
must be performed to meet the
organizational objective(s)
• User requirements: Describes what the user
expects from the system (Functional requirments)
• System requirements is a statement that
identifies the functionality that is needed by a
system in order to satisfy the customer’s
requirements of the business organization
BY Anold Nkata 11/02/2022 4
Types of System requirements
i. Functional requirements
 The Functional requirements describe ways a product must behave
 It explains the users requirements during the system development
 ii. Non functional requirements, also known as quality attributes of the system/
/describes the operation requirements for the system development
 The Non functional requirements describe the general software characteristics such as
in-service support requirements of the business eg. System response time,
Throughput, Performance, Scalability, Availability, security, disaster recovery,
accessibility and etc

BY Anold Nkata 11/02/2022 5


Cont…
 A functional requirement is a statement of what a product
(system, subsystem, system component, device or software
program) must do by defining the operation of the product
Example: The control system of the car shall prevent engine
over speed
 Functional requirement be stated in terms of what the product’s
outputs do in response to its inputs.
BY Anold Nkata 11/02/2022 6
Validation of the functional requirements

 The functional requirements is verified and validated through:


 Functional testing (software testing, integration testing, etc.)
 Functional requirements are always mandatory for the
successful project of software / system development
 Functional requirements must be met by the product unless
the requirement is changed.
BY Anold Nkata 11/02/2022 7
Requirement Engineering
 The process of gathering the system requirements from client, analyze and
document them is known as requirement engineering
 The goal of requirement engineering is to develop and maintain
sophisticated and descriptive System Requirements Specification document
 A complete Software Requirement Specifications must be: Clear, Correct,
Consistent, Coherent, Comprehensible, Modifiable, Verifiable, Prioritized,
Unambiguous, Traceable, Credible source

BY Anold Nkata 11/02/2022 8


Requirement Engineering Process
Requirement Engineering consists of four step which includes:
i. Feasibility Study
ii. Requirement Gathering
iii. System/ Software Requirement Specification
iv. System/Software Requirement Validation

BY Anold Nkata 11/02/2022 9


Feasibility study
 The process of coming up with a rough idea about what all functions the
software must perform and which all features are expected from the
software
 Based on feasibility study constraints (technical, economic and
etc ),which focuses on the goal of the organization,
 The analysts must check whether the desired system and its
functionality are feasible to develop.

BY Anold Nkata 11/02/2022 10


Requirement Gathering
 If the feasibility report is positive towards undertaking the project
 The next step is to start gathering requirements from the user.
 Analysts and engineers communicate with the client and end-users
to know their ideas on what the software should provide and which
features they want the system to include.

BY Anold Nkata 11/02/2022 11


Software Requirement Specification
 SRS is a document created by system analyst after the requirements are collected
from various stakeholders.
 SRS defines how the intended software will interact with hardware, external
interfaces, speed of operation, response time of system, portability of software
across various platforms, maintainability, speed of recovery after crashing,
Security, Quality, Limitations etc.
 The requirements received from client are written in natural language.
 It is the responsibility of system analyst to document the requirements in
technical language so that they can be comprehended and useful by the software
development
BY Anold Nkata team. 11/02/2022 12
Features of the SRS
 User Requirements are expressed in natural language.
 Technical requirements are expressed in structured language which is
used with the organization.
 Design description should be written in Pseudo code.
 Format of Forms and GUI screen prints.
 Conditional and mathematical notations for DFDs etc.

BY Anold Nkata 11/02/2022 13


Software Requirement Validation
 Requirement Validation is an activity of confirming whether the systems
requirement specifications developed meets the needs.
 Requirements can be checked against following conditions:
 If they can be practically implemented
 If they are valid and as per functionality and domain of software
 If there are any ambiguities
 If they are complete
 If they can be demonstrated
BY Anold Nkata 11/02/2022 14
Process of Requirement Elicitation
 Requirements gathering : The developers
discuss with the client and end users to know their
expectations from the software.
 Organizing Requirements:  The developers
prioritize and arrange the requirements in order of
importance, urgency and convenience.
 are documented and made available for next phase
processing

BY Anold Nkata 11/02/2022 15


Cont…
 Negotiation & discussion: The requirements come from various stakeholders
 If requirements are ambiguous or there are some conflicts in requirements of
various stakeholders,
 Then negotiated and discussion with stakeholders starts to prioritize and
reasonably compromised the requirements.
 To remove the ambiguity and conflicts, they are discussed for clarity and
correctness. Unrealistic requirements are compromised reasonably.
 Documentation: All formal & informal, functional and non-functional
requirements are documented and made available for next phase processing.
BY Anold Nkata 11/02/2022 16
Requirement Elicitation Techniques
1. Interview
Interviews are strong medium to collect requirements.
 Structured (closed) interviews, where every single information to gather is decided in advance, they
follow pattern and matter of discussion firmly.
 Non-structured (open) interviews, where information to gather is not decided in advance, more
flexible and less biased.
 Oral interviews
 Written interviews
 One-to-one interviews which are held between two persons across the table.
 Group interviews which are held between groups of participants
BY Anold Nkata 11/02/2022 17
Cont…
2. Prototyping
 Prototyping is building user interface without adding detail functionality for user to
interpret the features of intended software product
 It helps giving better idea of requirements
 If there is no software installed at client’s end for developer’s reference and the client
is not aware of its own requirements, the developer creates a prototype based on
initially mentioned requirements.
 The prototype is shown to the client and the feedback is noted
 The client feedback serves as an input for requirement gathering
BY Anold Nkata 11/02/2022 18
Cont…
3. Observation
 Team of experts visit the client’s organization or workplace
 They observe the actual working of the existing installed systems
 They observe the workflow at client’s end and how execution problems are
dealt
 The team itself draws some conclusions which aid to form requirements
expected from the software.
BY Anold Nkata 11/02/2022 19
Cont…
4. Brainstorming
 An informal debate is held among various stakeholders and all their
inputs are recorded for further requirements analysis.
5. Surveys
 Organization may conduct surveys among various stakeholders by
querying about their expectation and requirements from the upcoming
system.

BY Anold Nkata 11/02/2022 20


Cont..
6. Questionnaires
 A document with pre-defined set of objective questions and respective
options is handed over to all stakeholders to answer
 The questions and answers are later collected and compiled.
 A shortcoming of this technique is, if 

BY Anold Nkata 11/02/2022 21


END

BY Anold Nkata 11/02/2022 22

You might also like