SRS Document Project
SRS Document Project
Specification
for
Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Software Requirements Specification for <Project> Page ii
Table of Contents
Table of Contents....................................................................................................................... ii
Revision History......................................................................................................................... ii
1. Introduction.......................................................................................................................... 1
1.1 Purpose...................................................................................................................................... 1
1.2 Document Conventions..............................................................................................................1
1.3 Intended Audience and Reading Suggestions..............................................................................1
1.4 Product Scope............................................................................................................................2
1.5 References..................................................................................................................................2
2. Overall Description.............................................................................................................. 3
2.1 Product Perspective....................................................................................................................3
2.2 Product Functions.......................................................................................................................4
2.3 User Classes and Characteristics.................................................................................................4
2.4 Operating Environment...............................................................................................................6
2.5 Design and Implementation Constraints......................................................................................7
2.6 User Documentation...................................................................................................................7
2.7 Assumptions and Dependencies..................................................................................................7
3. External Interface Requirements........................................................................................ 7
3.1 User Interfaces............................................................................................................................7
3.2 Hardware Interfaces....................................................................................................................9
3.3 Software Interfaces.....................................................................................................................9
3.4 Communications Interfaces.........................................................................................................9
4. System Features.................................................................................................................. 10
4.1 User Account Management.......................................................................................................10
4.2 Prescription Upload and Verification........................................................................................11
4.3 Medicine Order and Stock Management....................................................................................12
4.4 Real Time Order Tracking........................................................................................................12
4.5 Secure Payment Processing.......................................................................................................13
4.6 Feedback and Support System..................................................................................................14
5. Other Nonfunctional Requirements.................................................................................. 15
5.1 Performance Requirements.......................................................................................................15
5.2 Safety Requirements.................................................................................................................17
5.3 Security Requirements..............................................................................................................19
5.4 Software Quality Attributes......................................................................................................21
5.5 Business Rules.........................................................................................................................21
6. Other Requirements........................................................................................................... 22
Appendix A: Glossary.............................................................................................................. 22
Appendix B: Analysis Models.................................................................................................. 22
Appendix C: To Be Determined List....................................................................................... 23
Revision History
Name Date Reason For Changes Version
Software Requirements Specification for PharmaEase
Page 1
1. Introduction
1.1 Purpose
This document outlines the functional and non-functional requirements for Pharma Ease,
a medication delivery app created by Quick Med Logistics. The goal of the system is to
improve healthcare access by offering a convenient and secure platform for ordering and
delivering medications.
Pharma Ease is a web and mobile application enabling residents of Islamabad and nearby
areas to order medications online. It supports prescription uploads, inventory
management, secure payments, and real-time tracking.
1.5 References
The following documents are referenced throughout this Software Requirements
Specification (SRS) for Pharma Ease:
2. Overall Description
Pharma Ease integrates with local pharmacies and third-party logistics providers to
streamline medicine delivery. The system ensures compliance with regulatory
Software Requirements Specification for PharmaEase
Page 4
requirements and prioritizes user convenience and data security. Pharma Ease is a self-
contained system; however, it is part of Quick Med Logistics' broader digital
healthcare ecosystem. The product interfaces with several external systems and
components, including payment gateways, stock management systems (used by
pharmacies), and delivery systems.
2.3.1. Customer
Frequency of Use: Customers primarily interact with the app for browsing and
purchasing medicines, uploading prescriptions, making payments, tracking orders,
and providing feedback.
Technical Expertise: Typically, customers will have basic to moderate technical
expertise. They should be able to use mobile apps without difficulty but may not
have advanced knowledge of app functionality.
Security or Privilege Levels: Customers have restricted access to their personal
profiles, order history, and limited interaction with the pharmacists. They cannot
access sensitive system data (e.g., payment information for other users,
pharmacist details, or admin settings).
Educational Level: Customers may have varying educational backgrounds, but
generally, they will need a basic understanding of how to navigate the app and
follow prompts for prescription submission and payment.
2.3.2. Pharmacists:
Frequency of Use: Frequent, as pharmacists need to review prescriptions,
approve or reject orders, and provide assistance to customers. Pharmacists are
Software Requirements Specification for PharmaEase
Page 5
2.3.3. Admins:
Frequency of Use: Frequent, as admins are responsible for managing the overall
operation of the platform, including user accounts, system settings, and order
management. Admins have access to all features in the system, including user
management (customers, pharmacists, and delivery personnel), order monitoring,
payment and transaction management, generating reports, and system
configurations.
confirm deliveries, and report any issues with deliveries (e.g., wrong address,
unavailable customer).
Security or Privilege Levels: Delivery personnel have limited access to the app.
They cannot access customer personal or financial information. They only have
access to the order details related to their assigned deliveries and must confirm
receipt or delivery of goods.
Educational Level: Delivery personnel typically have a basic education level and
do not require specialized knowledge beyond the ability to navigate the app and
deliver medicines.
Mobile Platforms:
Android (8.0+)
iOS (12.0+)
a minimum of 2GB RAM
a minimum of 10GB of free storage.
Web Browsers:
Chrome
Firefox
Safari
Internet Connectivity:
3G/4G/5G
Wi-Fi
GPS Navigation:
Devices must support GPS navigation and real-time updates
for delivery status tracking.
Software Requirements Specification for PharmaEase
Page 7
Login/Sign-Up Screen:
Fields for entering email, password, and options for logging in via social accounts
(Google, Facebook).
Software Requirements Specification for PharmaEase
Page 8
Dashboard Screen:
Quick access to key actions: Upload Prescription, Track Orders, Order History,
and Profile Settings.
A prominent Logout button.
Smartphones:
Android devices: Versions 8.0 and above.
iOS devices: Versions 11 and above.
Tablets:
Android devices: Versions 8.0 and above
iOS devices: Versions 11 and above.
4. System Features
Stimulus 1: User opens the app and selects "Create Account" or "Sign In".
Response 1: The system displays the login screen or registration form.
Stimulus 2: User enters personal details (e.g., name, address, contact information)
and submits the form.
Response 2: The system validates the entered data and displays a success
message or errors if validation fails.
Stimulus 3: User clicks "Forgot Password" to recover their account.
Response 3: The system prompts the user to enter the registered email and sends
a password reset link.
REQ-1: The system must allow users to create and manage a personal profile,
including essential fields such as name, address, contact number, and email.
REQ-2: The system must validate the user’s email address and password for
account creation and login.
REQ-3: The system must provide the option to recover a forgotten password via
email.
Software Requirements Specification for PharmaEase
Page 11
REQ-4: The system must store user profile data securely with proper encryption
and access control.
REQ-5: The system must allow users to update their contact details and address
information as needed.
Stimulus 1: The customer uploads the prescription file via the app interface.
Response 1: The system displays a confirmation message, indicating that the
prescription is under review.
Stimulus 2: The pharmacist reviews the prescription and verifies its accuracy.
Response 2: The system updates the status to "Verified" or "Rejected" and notifies
both the customer and pharmacist.
After prescription verification, customers can place orders for the medicines. The
system checks the stock availability in real-time and informs the customer if the
medicines are in stock or not. If the medicine is unavailable, the system offers
alternatives, if any.
Priority: High
This feature manages the delivery of medicines to customers. Once the payment
information is confirmed, the system assigns the delivery to the logistics team, provides
tracking information, and ensures timely delivery. Customers will receive notifications
about the status of their delivery, including expected arrival time.
Priority: High
Stimulus 1: After payment details, the system triggers the delivery process.
Response 1: The system assigns the order to the delivery team and provides
tracking details to the customer.
Stimulus 2: The delivery team picks up the order from the pharmacy.
Response 2: The system updates the status of the delivery and sends notifications
to the customer.
Stimulus 3: The delivery team successfully completes the delivery.
Response 3: The system updates the status to "Delivered" and sends a notification
to the customer with delivery confirmation.
REQ-1: The system must provide real-time tracking information to the customer
during the delivery process.
REQ-2: The system must allow the delivery team to mark the delivery as completed
and update the system accordingly.
REQ-3: The system must provide notifications and status updates to the customer
at key delivery milestones (e.g., dispatched, in transit, delivered).
This feature allows customers to make payments for their medicine orders securely. The
system supports various payment methods, such as credit/debit cards, digital wallets, and
online banking. Payment transactions are processed securely, and the system provides
confirmation once the payment is successful.
Priority: High
Stimulus 1: The customer selects the "Proceed to Payment" option after reviewing
the order.
Response 1: The system displays available payment options (credit card, digital
wallet, etc.).
Software Requirements Specification for PharmaEase
Page 14
Stimulus 2: The customer selects a payment method and enters payment details.
Response 2: The system processes the payment and verifies the transaction.
Stimulus 3: The payment is confirmed as successful.
Response 3: The system updates the order status and provides the customer with
a receipt or confirmation.
REQ-1: The system must support multiple payment methods (credit/debit cards,
digital wallets, online banking).
REQ-2: The system must securely process payment transactions, ensuring
encryption and compliance with security standards.
REQ-3: The system must validate the payment details entered by the customer.
REQ-4: The system must notify the customer of successful or failed payment
transactions.
REQ-5: Upon successful payment, the system must update the order status to
"Payment Confirmed" and trigger the delivery process.
This feature allows customers to provide feedback and rate the service, including their
experience with the app, the prescription verification process, the quality of the delivered
medicines, and the overall service. Feedback helps improve the quality of the service, and
it is stored for review by the app administrators and pharmacists.
Priority: Medium
Stimulus 1: After the delivery is confirmed, the system prompts the customer to
leave feedback or rate the service.
Response 1: The system displays a feedback form with options for rating and
providing comments.
Software Requirements Specification for PharmaEase
Page 15
Response 2: The system stores the feedback and confirms submission with a
thank-you message.
REQ-2: The system must allow customers to submit text feedback in addition to
rating.
REQ-3: The system must store feedback securely and ensure that only authorized
users can access it.
REQ-4: The system must send a thank-you message upon successful feedback
submission.
REQ-5: The system must allow administrators to review customer feedback and
take appropriate actions, such as addressing complaints or rewarding positive
feedback.
REQ-1: The system must be able to load and display the user profile page within 3
seconds under normal network conditions (e.g., 3G or Wi-Fi).
RATIONALE: Fast access to the profile management page is critical for user
experience, especially when users are attempting to update their personal
Software Requirements Specification for PharmaEase
Page 16
REQ-2: The system should be able to handle the simultaneous upload of up to 300
prescriptions during peak usage times without experiencing significant delays or
failures.
REQ-3: In case of a failed payment, the system should provide feedback to the
user within 10 seconds of the failed transaction.
RATIONALE: Quick payment processing is critical for maintaining the flow of the
app and preventing cart abandonment. The system must handle a large number of
concurrent transactions, especially during sales or peak traffic, ensuring users can
complete their purchases smoothly.
REQ-1: The system must update delivery status and provide tracking information to
the user within 2 seconds after the delivery status changes (e.g., dispatched, in
transit, delivered).
REQ-2: The system must handle up to 300 concurrent delivery updates without
delays or failures.
REQ-3: The system should provide an estimated delivery time to the customer
within 5 seconds after the order is placed, based on real-time data.
REQ-2: The system should be able to process and display up to 300 feedback
submissions concurrently without affecting response time.
REQ-3: The system must aggregate feedback data and generate reports for
administrators in under 30 seconds for up to 300 feedback entries.
REQ-1: The system must ensure that all user personal data, including names,
addresses, and medical information, are stored securely and encrypted both in
transit and at rest, following the latest industry standards for data encryption
REQ-2: The app must comply with privacy regulations such as the Regulation
Standards of Drug Regulatory Authority of Pakistan, ensuring that users'
health-related data is protected and only accessible by authorized personnel.
REQ-3: All financial transactions must be processed through secure and compliant
payment gateways. Payment details must not be stored on the system but
transmitted securely to third-party payment processors.
REQ-4: The app must implement strong user authentication methods, including
two-factor authentication (2FA) for both users and pharmacists, to prevent
unauthorized access to sensitive data.
Software Requirements Specification for PharmaEase
Page 18
REQ-1: The app must ensure that the prescription uploaded by the customer is
verified by a licensed pharmacist before the order is processed to avoid incorrect or
harmful medication being dispensed.
REQ-2: The app must include a feature for customers to contact a pharmacist or
healthcare professional for consultation before placing an order, especially for
sensitive medications.
REQ-1: The app must provide emergency contact information or a helpline for
users in case of urgent issues related to their order (e.g., incorrect medication
delivered, allergic reaction).
REQ-2: The app must include safety warnings or disclaimers for medications that
may cause severe side effects or allergic reactions, prompting the user to consult a
healthcare provider before purchase.
REQ-3: The app must ensure that users receive a notification or alert in the event
that a recalled medicine is being delivered to them.
REQ-1: The app must meet the FDA (Food and Drug Administration) guidelines
for any software that may interact with prescription medications, especially for
prescription validation and medication ordering systems.
REQ-2: The app must provide clear and accurate labeling and instructions for each
medication available for purchase, including dosage information, side effects, and
any necessary warnings.
Software Requirements Specification for PharmaEase
Page 19
RATIONALE: Regulatory compliance ensures that the app adheres to legal and
safety standards required for pharmaceutical operations. Certification and
adherence to standards help protect both users and the organization from legal and
safety risks.
REQ-1: The system must include a "cancel order" feature for the customer if an
issue with the medication or prescription is detected. This will allow users to stop
the order before it is processed and delivered.
REQ-2: The system must automatically block any attempt to place an order for
medicines not supported by the app or in violation of legal or safety guidelines.
RATIONALE: These safeguards prevent errors and unauthorized actions that could
cause harm, such as dispensing the wrong medication or allowing an unsafe
transaction.
REQ-1: The app must require two-factor authentication (2FA) for all users
(customers, pharmacists, and administrators) during the login process: a password
and either a one-time passcode (OTP) sent via SMS/email or a time-based one-
time password (TOTP) via an authenticator app.
REQ-2: Users must be able to set and update their strong passwords, which must
include at least 8 characters and include a mix of uppercase letters, lowercase
letters, numbers, and special characters.
REQ-3: The system must lock a user's account after 3 consecutive failed login
attempts and require a password reset to regain access.
REQ-4: The app must provide an option for secure password recovery, including
email verification, security questions to reset the password.
REQ-1: All user data, including personal details, medical information, and payment
information, must be encrypted both during transmission and when stored in the
database.
REQ-2: All communication between the app and the backend servers must be
encrypted using TLS 1.2 or higher to ensure data confidentiality during
transmission.
REQ-3: The system must securely delete any user data that is no longer needed or
when the user requests the deletion of their account.
RATIONALE: Encrypting sensitive data ensures that the data remains unreadable
to unauthorized parties, proper deletion practices ensure that no unnecessary data
is retained.
REQ-1: The system must be able to restore data from backups within 4 hours of
any system failure or data loss incident, ensuring minimal downtime.
REQ-3: The system must maintain logs of all backup and recovery actions,
including timestamps and user access, to track the integrity and security of data
backups.
RATIONALE: Regular backups are crucial to ensure that data can be recovered in
case of accidental loss or system failure. Secure storage and efficient recovery
procedures are important for maintaining service continuity and preventing data
loss.
REQ-1: The system must undergo annual third-party security audits to verify its
compliance with security and privacy requirements.
REQ-2: The app must comply with Secure Payment certification for secure
payment processing and handling of financial information.
5.4.1 Usability
Usability is essential for ensuring that both customers and pharmacists can
efficiently and confidently use the app. Ease of use should take precedence over
ease of learning, as quick, clear interactions will improve user satisfaction and
reduce friction.
5.4.2 Reliability
Reliability is critical for ensuring that the app is available when needed, transactions
are completed correctly, and system failures are minimized. High availability and
rapid recovery times are essential to maintaining user trust and satisfaction.
5.4.3 Flexibility
.
Flexibility is important for adapting to changes in the market, such as adding new
suppliers, payment methods, or expanding services, without disrupting the core
functionality of the app.
5.4.4. Portability
Portability is essential for reaching the widest possible user base across multiple
platforms and devices, ensuring that the app can be easily deployed and used by
customers with different preferences.
5.4.5 Maintainability
Maintainability is vital for ensuring that the app can be easily updated, expanded,
and debugged over time. A modular, well-documented codebase reduces the
complexity and cost of maintenance.
6. Other Requirements
To be determined.
Appendix A: Glossary
1. Delivery Logistics:
Details regarding delivery logistics, such as partnerships with courier services,
delivery areas, real-time tracking features, and estimated delivery times need to be
finalized.
2. Notification System
The specific method of notifications (e.g., SMS, push notifications, email) for
updates such as order status, delivery tracking, or promotions.
3. Pricing Strategy
The exact pricing model for the service (e.g., subscription-based, per-order fee, or
free with delivery charges) and how it will vary based on regions, services, or
delivery speeds.