SRS Example
SRS Example
Introduction
1.1 Purpose
This document describes the Blood Donation System which enables the management of blood
donations. It supports three main user roles:
Donor: A person who donates blood.
Recipient: A person who receives blood from the blood bank.
Administrator: The system admin responsible for managing blood bank records, donor data,
and overall system operations.
1.2 Scope
The system will:
Allow Donors to register, schedule donations, and track their donation history.
Allow Recipients to request blood, track their requests, and view blood availability.
Allow Administrators to manage donors, recipients, and blood bank inventory.
1.3 Definitions and Acronyms
Donor: A person who donates blood to the blood bank.
Recipient: A person who requires blood, typically due to surgery, medical conditions, etc.
Admin: An administrator or healthcare staff member responsible for managing the system.
2. Overall Description
2.1 Product Perspective
The system will be a web-based application accessible via browsers. Users will interact with the
system based on their roles (Donor, Recipient, Admin).
2.2 Product Features
Donor Features: Registration, blood donation scheduling (date and time), donation history.
Recipient Features: Blood request submission, tracking of blood availability.
Admin Features: Management of donor and recipient records, blood inventory management,
report generation.
2.3 User Classes and Characteristics
Donor: Needs to register and schedule blood donations (date and time). Can view past
donation history.
Recipient: Needs to request blood, view blood availability.
Admin: Manages the database, approves donors, and manages blood inventory.
2.4 Operating Environment
The system will run on Apache server and be accessible via any modern web browser
(Chrome, Firefox, Safari).
2.5 Constraints
The system must comply with relevant medical data security regulations.
The system must handle up to 1000 active users concurrently.
3. System Features
3.1 Feature 1: Donor Registration
Description: Donors can register by entering personal details and medical history. The admin
must approve the registration.
Functional Requirements:
o Donor enters name, contact details, blood type, and medical history.
o The system validates eligibility based on predefined criteria (age, weight, etc.).
Use Case:
o Actor: Donor
o Main Flow:
Use Case:
o Actor: Donor
o Precondition: Donor is registered and logged in.
o Main Flow:
o Recipients specify the required blood type and the urgency of the request (e.g.,
immediate, planned).
o System checks if the requested blood type is available in the blood bank.
Use Case:
o Actor: Recipient
o Main Flow:
o The system notifies the admin when a blood type is running low.
Use Case:
o Actor: Admin
o Main Flow:
o The system will notify the recipient when the requested blood becomes available.
Use Case:
o Actor: Recipient
o Main Flow:
6. Other Requirements
Reporting: The system should allow the admin to generate monthly reports on blood
donations, requests, and inventory usage.
Notifications: The system should send automated notifications via email or SMS for
appointments, requests, and reminders.