Software Requirements
◦ Essential descriptions of the features and functionalities that a
software system must possess.
◦ Software requirements refer to the detailed descriptions of what
the system should do, the service or services that it provides and
the constraints on its operation.
◦ These requirements are documented in the Software
Requirements Specification (SRS)
Dr. Uma Narayanan, CSE, IST
Dr. Uma Narayanan, CSE, IST
Functional Requirement
◦ Describe what the software should do.
◦ Specified by user
◦ Mandatory
◦ Eg:
◦ User Authentication: The system must allow users to log in using a
username and password.
Dr. Uma Narayanan, CSE, IST
Non - Functional Requirement
◦ Non-functional requirements describe how well the software
performs a task rather than what it should do.
◦ They define the quality attributes, performance criteria, and
constraints.
◦ Specified by technical people
◦ Not Mandatory
◦ Some of the non-functional requirements are Portability, Security,
Maintainability, Reliability, Scalability, Performance, Reusability,
Flexibility
Dr. Uma Narayanan, CSE, IST
Non - Functional Requirement
◦ Eg
◦ Performance: The system should process 1,000 transactions per
second.
◦ Usability: The software should be easy to use and have a user-
friendly interface.
◦ Reliability: The system must have 99.9% uptime.
◦ Security: Data must be encrypted during transmission and
storage.
Dr. Uma Narayanan, CSE, IST
Domain Requirement
◦ Specific to the domain or industry in which the software operates.
◦ They include terminology, rules, and standards relevant to that
particular domain.
◦ Domain requirements reflect the unique needs and constraints of a
particular industry. They ensure that the software is relevant and
compliant with industry-specific regulations and standards.
◦ Eg: Healthcare: The software must comply with HIPAA (Health
Insurance Portability and Accountability Act )regulations for handling
patient data.
◦ E-commerce: The software should support various payment gateways
like PayPal, Stripe, and credit cards.
Dr. Uma Narayanan, CSE, IST
Task
◦ Imagine that you are developing a library management software
for your college. Identify five functional requirements and five
nonfunctional requirements for the same.
Dr. Uma Narayanan, CSE, IST
Functional Requirement
◦ Allow librarian to add and remove members
◦ Allow the user to search for books based on title, ISBN and find the
location in library
◦ User can request, reserve and renew books
◦ Librarian can add and manage books
◦ System should notify the user and librarian about dues
◦ System calculate fine for overdue books
Dr. Uma Narayanan, CSE, IST
Non- Functional Requirement
◦ Reliability & Maintainability
◦ Error Recovery: Automatic detection and handling of system
errors.
◦ Regular Backups: Scheduled data backups to prevent loss.
◦ Maintainability: Easy updates and bug fixes without downtime.
Dr. Uma Narayanan, CSE, IST
Task 2
◦ Imagine that you are developing a school management system.
Identify five functional requirements and five non functional
requirements for the same.
Dr. Uma Narayanan, CSE, IST
Functional Requirements
◦ Details about students
◦ Attendance, Results and Notes
◦ Notify dues
◦ Academic calendar
◦ Add and remove students
◦ Report of student activities and performance
Dr. Uma Narayanan, CSE, IST
Non Functional Requirements
◦ Performance Requirements:
◦ Scalability: Should handle increased user loads during peak periods like
admissions or exam results.
◦ Security Requirements
◦ Data Protection: Student and staff data must be securely stored and
encrypted.
◦ Access Control: Only authorized users (admin, teachers, students,
parents) can access respective modules.
◦ Error Recovery: Automatic detection and handling of system errors.
◦ Regular Backups: Scheduled data backups to prevent loss.
◦ Maintainability: Easy updates and bug fixes without downtime.
Dr. Uma Narayanan, CSE, IST
User requirements
◦ User requirements
◦ Represented by Statements in natural language plus diagrams of
the services the system provides and its operational constraints.
Written for customers.
◦ System requirements
◦ A structured document setting out detailed descriptions of the
system’s functions, services and operational constraints.
◦ Often classified as functional or non-functional requirements.
◦ To guide system design, development, and testing
Dr. Uma Narayanan, CSE, IST
SYSTEM STAKEHOLDERS
◦ Any person or organization who is affected by the system in some
way and so who has a legitimate interest
◦ Stakeholder types
◦ End users
◦ System managers
◦ System owners
◦ External stakeholders
Dr. Uma Narayanan, CSE, IST