0% found this document useful (0 votes)
25 views16 pages

Online Food Ordering System SRS Document

Software Requirements Specification(SRS) on Online food delivery system

Uploaded by

asifmaham345
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views16 pages

Online Food Ordering System SRS Document

Software Requirements Specification(SRS) on Online food delivery system

Uploaded by

asifmaham345
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Software Requirements Specification(SRS)

Project Title: Online Food Ordering System


Group Members:
 Hafsa Asif (B-28368)
 Hadia Intizar(B-28667)
 Maliha Zahid (B-28324)
 Saniya Sheikh (B-29170)
Submitted to: Sir Ayaz Zafar

Software Requirements Specification (SRS):

Online Food Ordering System

Table of Contents .................................................................................................................................ii


1. Introduction.....................................................................................................................................1
1.1 Purpose...................................................................................................................................................1
1.2 Intended Audience and Reading Suggestions.........................................................................................1
1.3 Product Scope.........................................................................................................................................1
1.4 References..............................................................................................................................................1

2. Overall Description..........................................................................................................................2
2.1 Product Perspective................................................................................................................................2
2.2 Product Functions...................................................................................................................................2
2.3 User Classes and Characteristics.............................................................................................................2
2.4 Operating Environment..........................................................................................................................2
2.5 Design and Implementation Constraints................................................................................................2
2.6 User Documentation...............................................................................................................................2
2.7 Assumptions and Dependencies.............................................................................................................2
3. External Interface Requirements.......................................................................................................3
3.1 User Interfaces........................................................................................................................................3
3.2 Hardware Interfaces...............................................................................................................................3
3.3 Software Interfaces.................................................................................................................................3
3.4 Communications Interfaces....................................................................................................................3

4. Data Flow Diagrams (DFD) ................................................................................................................4


4.1 Level 0 – Context Diagram......................................................................................................................4
4.2 Level 1 – Expanded Processes.................................................................................................................4
4.3 Level 2 – Example of 1.0 Manage Customer Orders...............................................................................4

5. System Features...............................................................................................................................5
5.1 System Feature 1: Order Placement.......................................................................................................5
5.2 System Feature 2: Menu Management..................................................................................................5
5.3 System Feature 3: Order Tracking..........................................................................................................5

6. Other Nonfunctional Requirements.........................................................................................……….6


6.1 Performance Requirements....................................................................................................................6
6.2 Safety Requirements...............................................................................................................................6
6.3 Security Requirements............................................................................................................................6
6.4 Software Quality Attributes....................................................................................................................6
6.5 Business Rules.........................................................................................................................................6

7. Other Requirements.........................................................................................................................7

8. Conclusion.......................................................................................................................................8

1. Introduction

1.1 Purpose

The purpose of this document is to provide a complete and detailed specification for the Online
Food Ordering System. This system is designed to enable users (customers) to browse
restaurant menus, place food orders online, make secure payments, and track delivery status—
all from the convenience of their web or mobile devices.

This document will serve several key purposes:

 To guide developers in implementing system functionality as required.


 To help testers design thorough test cases based on clearly defined requirements.
 To provide project managers a clear understanding of the scope, constraints, and
objectives of the project.
 To communicate the features, expectations, and benefits to stakeholders.

1.2 Intended Audience and Reading Suggestions


This SRS is intended for the following audiences:

 Developers: To understand the system's functional and non-functional requirements for


development and Implementation.
 Testers: To create test plans and test cases.
 Project Managers: To manage the project scope, resources, and timeline.
 Stakeholders: To understand the system's features and ensure it aligns with business
goals.

1.3 Product Scope

The online food ordering system will allow customers to browse menus, place orders, and make
payments online. The system will also enable restaurants to manage their menus, orders, and
deliveries. The system aims to streamline the food ordering process, making it more efficient
and convenient for both customers and restaurants.

1.4 References

 IEEE Standard 830-1998: Recommended Practice for Software Requirements


Specifications

2. Overall Description

2.1 Product Perspective

The online food ordering system will be a web-based application accessible via browsers and
mobile devices. It will be an independent product and will interact with third-party services like
payment gateways and mapping APIs. The system will integrate with restaurant POS (Point of
Sale) systems where available, to automate order processing. Additionally, it will support user
authentication and role-based access control for customers, restaurant staff, and
administrators. The architecture will be modular to allow easy future updates or integration
with new technologies.

2.2 Product Functions

The system will provide the following functions:

Customer Functions:

1. User Registration & Login

 Register a new account.


 Login securely using credentials.
2. Browse & Search Menus

 View restaurants and their menus.


 Search for food by name, cuisine, or restaurant.

3. Order Placement

 Add items to cart.


 Edit cart (add/remove/modify quantity).
 Select delivery or pickup.
 Add delivery instructions.
 Place the order.

4. Payments

 Make secure online payments via integrated payment gateways.


 Receive order and payment confirmations.

5. Order Tracking

 View real-time status (e.g., preparing, out for delivery).


 See estimated delivery time and order history.

6. Profile Management

 Update personal details.


 Save addresses and payment methods.

7. Reviews & Ratings

 Rate restaurants and food items.


 Write reviews after order delivery.

Restaurant Staff Functions:

1. Menu Management

 Add, update, delete food items.


 Set availability and categorize items.
 Apply discounts or special offers.

2. Order Management

 View incoming orders.


 Update order status (e.g., received, preparing).
 Notify customers of order status changes.

3. Restaurant Profile Management

 Update contact info, hours of operation, etc.

4. Reporting

 View sales history and order analytics.

Administrator Functions:

1. User Management

 Manage user accounts (customers and restaurants).

2. Restaurant Management

 Add, update, or remove restaurants.

3. System Configuration

 Oversee settings, integrations (e.g., payment gateways).

4. Reporting & Analytics

 Generate system-wide reports on orders, users, and performance.

2.3 User Classes and Characteristics

Actors:

1. Customer (Primary Actor):

The main user of the system who interacts with all major functionalities.

 Connected to:

 Login
 View Menu
 Place Order
 Payment
 Log Out
2. Authentication Services (Supporting Actor):

Provides verification functionality.

Linked to:

 Login
3. Payment Services (Supporting Actor):

 Manages payment transactions.


 Linked to:

 Payment
 Log Out

Use Cases:

1. Login:

 Allows the customer to log in with credentials.


 Involves interaction with Authentication Services.

2. View Menu:

 Customers can browse available food items from various restaurants.

3. Place Order:

 Customers select items and submit an order for delivery or pickup.

4. Payment:

 Customers make payments via integrated payment services.

5. Log Out:

 Ends the session for the customer.


 Also signals Payment Services, likely for session closure or payment
confirmation.

System Boundary:

 The rectangle labeled "Online Food Delivery System" represents the system boundary.
 All use cases inside this boundary are functionalities provided by the system.
2.4 Operating Environment

The system will operate in the following environment:

 Web servers (e.g., Apache, Nginx)


 Database servers (e.g., MySQL, PostgreSQL)
 Operating systems (e.g., Linux, Windows Server)
 Web browsers (e.g., Chrome, Firefox, Safari)
 Mobile devices (iOS and Android)

2.5 Design and Implementation Constraints

 The system should be scalable to handle a large number of users and orders.
 The system should be secure to protect user data and prevent unauthorized access.
 The system should be user-friendly and easy to navigate.
 The system should be developed using open-source technologies (e.g., Python, Django).
 The system must be compliant with relevant data privacy regulations.

2.6 User Documentation


The following user documentation will be provided:

 User manual for customers


 User manual for restaurant staff
 Administrator manual
 Online help and FAQs

2.7 Assumptions and Dependencies

 Reliable internet connectivity is assumed for all users.


 Payment gateway integration will be handled by a third-party provider.
 Restaurant staff will have access to the necessary hardware (e.g., computers, tablets).

3. External Interface Requirements

3.1 User Interfaces

 Customers will interact with a web-based interface and mobile applications (iOS and
Android).
 Restaurant staff will use a web-based interface.
 The user interface will be intuitive, responsive, and accessible.
 The UI will follow a consistent design and branding.

3.2 Hardware Interfaces

 Web server
 Database server
 Mobile devices (for customers)
 Computers/tablets (for restaurant staff)
 Printers (for order printing in restaurants)

3.3 Software Interfaces

 Operating system
 Web browser
 Database management system
 Payment gateway API
 Mapping service API (e.g., Google Maps)

3.4 Communications Interfaces

 HTTP/HTTPS for communication between client and server


 TCP/IP for network communication

4. Data Flow Diagrams (DFD)

4.1 Level 0 – Context Diagram

External Entities:

 Customer
 Restaurant
 Payment Gateway

Process:

Online Food Ordering System

Data Flows:

 Customer → Order Details → System


 Customer → Payment Details → Payment Gateway
 Payment Gateway → Payment Confirmation → System
 System → Order Notification → Restaurant
 Restaurant → Menu Updates → System
 Customer → Menu Request → System
 System → Order Confirmation → Customer
DFD: Level 1 – Online Food Ordering System

This level breaks down the single process from Level 0 into 3 major sub-processes:

External Entities:

 Customer
 Restaurant
 Payment Gateway

Processes:

1.0: Manage Orders


2.0: Process Payments
3.0: Restaurant Coordination

Data Stores:

 D1: Customer Database


 D2: Order Database
 D3: Menu Database
 D4: Payment Records

Data Flow Details:

Customer Interactions:

 Customer → 1.0 Manage Orders: Sends Menu Request & Order Details
 1.0 → Customer: Receives Order Confirmation

Payment Process:

 1.0 → 2.0 Process Payments: Sends Payment Info


 2.0 → Payment Gateway: Payment Details
 Payment Gateway → 2.0: Payment Confirmation
 2.0 → 1.0: Payment Status
 2.0 → D4: Stores Payment Records

Restaurant Handling:
 1.0 → 3.0 Restaurant Coordination: Sends Order Notification
 Restaurant → 3.0: Menu Update Info
 3.0 → D3: Stores Updated Menu

Storing Info:

 1.0 → D1: Stores Customer Info


 1.0 → D2: Stores Order Info

DFD: Level 2 : Manage Orders

External Entity: Customer

Sub-Processes:

1.1: Browse Menu


1.2: Select Items
1.3: Place Order
1.4: Generate Confirmation
Data Stores:

 D1: Customer Database


 D2: Order Database
 D3: Menu Database

Data Flow Details:

Browsing:

 Customer → 1.1 Browse Menu: Sends Menu Request


 1.1 → D3 Menu Database: Fetch Menu
 1.1 → Customer: Menu Items

Order Placement:

 Customer → 1.2 Select Items: Sends Selected Items


 1.2 → 1.3 Place Order: Order Data
 1.3 → D2: Save Order
 1.3 → D1: Store Customer Info

Confirmation:

 1.3 → 1.4 Generate Confirmation: Sends Order ID + Status


 1.4 → Customer: Order Confirmation
 1.4 → Process 3.0 (from Level 1): Send Order to Restaurant
5. System Features

5.1 System Feature 1: Order Placement

 Description: Customers can browse menus, add items to their cart, and place orders
online.
 Functional Requirements:

 The system shall allow customers to search for restaurants by name, cuisine, or
location.
 The system shall display restaurant menus with descriptions, prices, and images
of food items.
 The system shall allow customers to add items to their shopping cart.
 The system shall allow customers to modify the quantity of items in their
shopping cart.
 The system shall calculate the total order amount, including taxes and delivery
fees.
 The system shall allow customers to select a delivery address or pickup option.
 The system shall allow customers to specify delivery instructions.
 The system shall generate an order confirmation with an order number and
estimated delivery time.

5.2 System Feature 2: Menu Management


 Description: Restaurants can manage their menus, including adding, updating, and
deleting food items.
 Functional Requirements:

 The system shall allow restaurant staff to add new food items to the menu.
 The system shall allow restaurant staff to update existing food items (e.g., name,
description, price, image).
 The system shall allow restaurant staff to delete food items from the menu.
 The system shall allow restaurant staff to categorize food items (e.g., appetizers,
main courses, desserts).
 The system shall allow restaurant staff to set the availability of food items.
 The system shall allow restaurant staff to create and manage special offers or
discounts.

5.3 System Feature 3: Order Tracking

 Description: Customers can track the status of their orders in real-time.


 Functional Requirements:

 The system shall display the current status of an order (e.g., pending, confirmed,
preparing, out for delivery, delivered).
 The system shall provide an estimated delivery time.
 The system shall allow customers to view the order details, including the items
ordered and the delivery address.
 The system shall send notifications to customers when the order status changes
(e.g., via email or SMS).

6. Other Nonfunctional Requirements

6.1 Performance Requirements

 The system shall be able to handle 1000 concurrent users without significant
performance degradation.
 The system shall respond to user requests within 2 seconds.
 The system shall be available 24/7 with a 99.9% uptime.

6.2 Safety Requirements

 The system shall not cause any harm to the user's hardware or software.

6.3 Security Requirements

 The system shall protect user data (e.g., personal information, payment details) from
unauthorized access.
 The system shall use encryption to secure data transmission.
 The system shall implement user authentication and authorization.
 The system shall protect against common web vulnerabilities (e.g., SQL injection, cross-
site scripting).
 The system shall comply with PCI DSS standards for handling payment information.

6.4 Software Quality Attributes

 Usability: The system shall be easy to use and navigate for all user classes.
 Reliability: The system shall be reliable and operate without errors.
 Maintainability: The system shall be easy to maintain and modify.
 Scalability: The system shall be scalable to handle increasing user loads and data
volumes.
 Portability: The system shall be portable across different operating systems and
browsers.

6.5 Business Rules

 Restaurants must provide accurate and up-to-date menu information.


 Orders must be confirmed before they are sent to the restaurant.
 Payment must be processed before the order is delivered.
 Delivery times are estimates and may vary depending on traffic and other factors.
 Customers can only rate and review orders that have been delivered.

7. Other Requirements

 The system should support multiple languages.


 The system should be accessible to users with disabilities (e.g., following WCAG
guidelines).
 The system should provide reporting and analytics features for administrators and
restaurant owners.

8. Conclusion

The Online Food Ordering System outlined in this document is designed to provide an efficient,
secure, and user-friendly platform that caters to the needs of both customers and restaurants.
With detailed functional modules, well-structured data flow, and clear role-based interfaces,
the system is expected to optimize the food ordering experience.

This SRS ensures that all stakeholders have a shared understanding of the system’s
functionality, design, and implementation roadmap. With this foundation, the project can move
into design, development, and testing phases with clarity and precision.

You might also like