SE Project
SE Project
Project
Group Members
21011519-057 (Manal Munawar)
21011519-111 (Mehvesh)
Degree: BSCS
University of Gujrat
Table of Contents
Online Food Delivery System ................................................................................................................. 3
Description ......................................................................................................................................... 3
Key Features ....................................................................................................................................... 3
1. User Authentication ............................................................................................................... 3
2. Restaurant Management ....................................................................................................... 3
3. Order Placement and Tracking .............................................................................................. 3
4. Payment Processing ............................................................................................................... 4
6. Rating and Feedback .............................................................................................................. 4
7. Promotions and Notifications ................................................................................................ 4
8. Admin Dashboard ..................................................................................................................... 4
Use Case Diagram ............................................................................................................................... 8
Actors & Actions ............................................................................................................................. 8
Use Case Diagram ........................................................................................................................... 9
Class Diagram: .................................................................................................................................. 12
Sequence Diagram ............................................................................................................................ 15
Activity Diagram ............................................................................................................................ 15
StateChart Diagram .......................................................................................................................... 15
Customer ...................................................................................................................................... 15
Delivery Personnel ....................................................................................................................... 16
Admin ........................................................................................................................................... 15
Restraunt owner ........................................................................................................................... 15
Project
Online Food Delivery System
Introduction
We're creating a special "Online Food Delivery System" that makes ordering food super easy
and enjoyable. It's for people who want yummy food delivered to their homes. This system
helps customers, restaurant owners, delivery folks, and bosses. It makes ordering food
smooth, helps restaurants manage their menus well, ensures deliveries go smoothly, and lets
the bosses see what's happening. This new system makes getting food easy and awesome for
everyone involved!
Key Features
1. User Authentication
The system offers secure user registration and login functionalities. Users can create
profiles, update personal information, and maintain delivery addresses for quick order
processing.
2. Restaurant Management
Restaurant owners can register their establishments, verify their accounts, and manage
their menus efficiently. They can add, update, and delete items, as well as handle
incoming orders and special offers.
2. Lack of Real-Time Tracking: Customers often face uncertainty regarding the status and location of their
orders during the delivery process, resulting in frustration and a lack of transparency.
3. Complex User Interfaces: User interfaces can be overwhelming for customers, restaurant owners, and
administrators, leading to difficulties in navigation and operation.
4. Poor Restaurant Management: Restaurant owners struggle to manage their menus, track orders, and
maintain accurate availability information, causing customer dissatisfaction and operational inefficiencies.
5. Delivery Logistics: Coordinating and optimizing delivery personnel assignments, routes, and timings poses a
significant challenge, often resulting in longer delivery times and increased operational costs.
6. User Management and Support: Handling user issues, verifying restaurant credentials, and providing
adequate support to all actors involved can be time-consuming and lead to inconsistencies.
7. Security and Privacy Concerns: Ensuring the security of customer information, payment details, and
personal data is critical, but vulnerabilities can lead to breaches and loss of trust.
8. System Maintenance: Post-launch, the system requires constant monitoring and maintenance to address
bugs, optimize performance, and implement updates and enhancements.
Solution
1. Smooth Orders: Make ordering easy, and help restaurants prepare food faster.
2. Real-Time Tracking: Show where orders are in real-time for happy customers.
3. Simple Interfaces: Make the system easy for everyone to use.
4. Better Restaurant Management: Help restaurants manage menus and orders well.
5. Quick Deliveries: Plan smart routes for fast and cost-effective deliveries.
6. Support and Management: Make sure customers and restaurants get help when needed.
7. Security First: Keep customer info safe with strong protection.
8. Always Improving: Regularly update and maintain the system for smooth experiences.
Project Requirements
FUNCTIONAL REQUIREMENTS:
REQUIREMENT REQUIREMENT DESCRIPTION
ID NAME
F-01 User Registration and Users should be able to create
Authentication: accounts, log in securely, and
manage their profiles.
2. Easy Payment:
The system should work with trusted payment methods for ordering food.
Payments must be secure and safe.
5. Menu Control:
Restaurants should easily change their menu, add new items, and take out old ones.
Food options should be sorted out nicely for people to see.
9. Special Deals:
The system should have discounts and cool offers.
People should see these offers and use them.
This involves identifying and listing all potential risks that could impact online food delivery system.
These risks could include issues like food safety concerns, delivery delays, technical glitches,
cyberattacks, customer dissatisfaction, and more.
Example: One potential risk is a cyberattack that could compromise customer data, including payment
information and personal details. Another risk could be a food safety issue arising from improper
handling during delivery
Risk Measurement and Assessment:
Once the risks are identified, you need to assess their potential impact and likelihood. This helps
prioritize risks based on their significance. You can use techniques like risk matrices, qualitative and
quantitative analysis, and expert judgment to assess the risks.
Example: Assess the potential impact and likelihood of a customer data breach. Evaluate the potential
financial loss from a cyberattack and the probability of it occurring. Similarly, assess the severity of a
food safety violation and its likelihood based on historical data.
Risk Mitigation:
This step involves developing strategies to reduce the impact of identified risks.For example, you
might implement food safety protocols ,train staff on cybersecurity practices, and establish customer
support processes to address complaints promptly.
Example: To mitigate the risk of a cyberattack, implement robust cybersecurity measures such as
encryption of customer data, regular security audits, and employee training on identifying phishing
attempts. For food safety, ensure that proper hygiene and handling protocols are followed by delivery
staff.
Risk Reporting and Monitoring:
Regular reporting and monitoring are essential to track the status of risks over time. Create a system
that provides timely updates on the status of identified risks, their progress towards mitigation, and any
new risks that may arise. This ensures that you can take swift action if risks start escalating.
Example: Implement a real-time monitoring system that alerts you if there is unusual activity on your
website or if there's a sudden increase in customer complaints. Set up regular reports on the status of
cybersecurity measures and food safety protocols.
Risk Governance:
Risk governance refers to the overall structure and processes in place to manage risks. This includes
defining roles and responsibilities for risk management, establishing clear communication channels,
and integrating risk management into your organization's decision-making processes.
Example: Designate a Chief Information Security Officer (CISO) responsible for overseeing
cybersecurity measures and a Food Safety Manager responsible for ensuring compliance with food
safety regulations.
Online Food Delivery System Gantt Chart
2. System Design
• Design database schema for customers, restaurants, orders, and deliveries.
• Create wireframes/mockups for the user interfaces.
• Design the architecture for the application components.
3. Frontend Development
• Develop customer registration and login pages.
• Implement restaurant menu browsing functionality.
• Create order placement and tracking interfaces.
• (Dependency: Completion of Phase 2)
4. Backend Development
• Build user management system for admin and restaurant owner.
• Develop order processing and delivery assignment logic.
• Implement payment gateway integration.
• (Dependency: Completion of Phase 2)
5. Restaurant Management
• Create a dashboard for restaurant owners to manage menus and orders.
• Develop functionality for updating menu items and availability.
• (Dependency: Completion of Phase 4)
6. Delivery Management
• Implement delivery personnel assignment and tracking features.
• Develop order status update mechanism for delivery personnel.
• (Dependency: Completion of Phase 4)
7. Admin Panel
• Develop admin interface for user management and system monitoring.
• Implement tools for handling user issues and verifying restaurants.
• (Dependency: Completion of Phase 4)
Restaurant Owner
▪ Register and Login
▪ Add, Update, and Delete Menu Items
▪ Manage Orders (Receive, Prepare, Mark as Ready, Cancel)
▪ Communicate with Customer and Delivery Personnel
▪ Respond to Customer Reviews
▪ Manage Restaurant Profile
Delivery Personnel
▪ Register and Login
▪ View Assigned Orders
▪ Update Order Status (Preparing, Out for Delivery, Delivered)
▪ Communicate with Customer and Restaurant
Admin
▪ Access Admin Dashboard
▪ Manage Users (Customers, Restaurant Owners, Delivery Personnel)
▪ Monitor System Activities
▪ View Analytics and Reports
▪ Manage Promotions and Discounts
Use Case Diagram
Use Case Diagram Description:
The Online Food Delivery System is a web-based platform that facilitates the process of ordering and
delivering food from various restaurants to customers. The system involves four main actors:
Customer, Restaurant Owner, Delivery Personnel, and Admin. Each actor performs specific actions to
interact with the system and achieve their respective objectives.
1. Customer:
Register Account: The Customer can create a new account on the platform by providing necessary
information like name, contact details, and address.
Browse Restaurants: The Customer can search and view a list of restaurants available on the
platform, filter them by cuisine or location, and explore their menus.
Place Order: The Customer can select items from the restaurant's menu, add them to the cart, and
place an order for home delivery or pickup.
Make Payment: The Customer can securely make payments for the placed order through various
payment methods integrated into the system.
Track Order: The Customer can track the status of their order in real-time, from the restaurant's
acceptance to the delivery personnel's location.
Rate and Review: After receiving the order, the Customer can provide feedback by rating the food
quality and leaving reviews for the restaurant's service.
2. Restaurant Owner:
Register Restaurant: The Restaurant Owner can register their eatery on the platform by providing
essential details such as restaurant name, location, and menu.
Manage Menu: The Restaurant Owner can add, modify, or remove food items from their menu,
including updating prices and descriptions.
Receive Orders: The Restaurant Owner receives notifications of new orders placed by customers and
can accept or reject them based on availability.
Update Order Status: The Restaurant Owner can update the status of the order, such as preparing,
ready for pickup, or dispatched for delivery.
View Sales Reports: The Restaurant Owner can access sales reports and analytics to gain insights into
their business performance.
3. Delivery Personnel:
Register as Delivery Personnel: The Delivery Personnel can register as a delivery agent by providing
relevant information and verifying their identity.
Receive Delivery Requests: The Delivery Personnel receive delivery requests from the system,
including information about the order and customer's location.
Accept/Reject Delivery: The Delivery Personnel can either accept or reject a delivery request based
on their availability and distance to the restaurant and customer.
Update Delivery Status: The Delivery Personnel can update the delivery status, such as en route,
delivered, or unable to deliver, to keep customers informed.
4. Admin:
Manage Users: The Admin oversees user management, including adding new users, verifying
identities, and resolving account-related issues.
Monitor System: The Admin monitors the system's overall performance, ensuring smooth operations,
and takes actions to address any technical issues that arise.
Handle Disputes: The Admin mediates and resolves any disputes that may arise between customers,
restaurant owners, or delivery personnel.
Manage Restaurants: The Admin can validate and approve restaurant registrations, ensuring that the
platform only includes legitimate establishments.
Generate Reports: The Admin can generate reports, such as user activity, order trends, and revenue
summaries, for analysis and decision-making.
Actor: Customer
Contains:
- Name of Actor: Customer
- Flow: Placing an Order and Receiving Delivery
- Description: The customer uses the online food delivery system to select items from restaurants, place an
order, and receive the food delivery at their provided location.
- Preconditions: The customer is registered and logged into the online food delivery system.
Flow: Placing an Order and Receiving Delivery
1. The customer logs into the online food delivery system.
2. The customer selects a restaurant and adds desired items to their cart.
3. After reviewing the cart, the customer proceeds to checkout.
4. The customer provides delivery address and payment details.
5. The customer confirms the order and payment.
6. The customer receives an order confirmation.
7. The customer waits for the food delivery.
8. The customer receives the delivery, confirms its receipt, and may provide feedback and ratings.
Summary: The customer uses the online food delivery system to select and order food items from a restaurant.
They provide delivery information, pay for the order, and receive the delivery at their location.
Actor: Admin
Contains:
- Name of Actor: Admin
- Flow: System Management
- -Description: The admin oversees the online food delivery system, manages orders, resolves issues, and
ensures smooth operations.
Preconditions: Admin has access to manage the online food delivery system.
Flow: System Management
1. The admin monitors orders and system performance.
2. The admin optimizes delivery personnel assignments.
3. The admin handles any issues that arise in the process.
Summary: Admin manages and maintains the online food delivery system, ensuring efficient order processing
and resolving any issues that may occur.
Collaboration Diagram
StateChart Diagram
Customer
Delivery Personnel
ADMIN
RESTRAUNT OWNER:
Class Diagram:
Component Diagram:
SEQUENCE DIAGRAM:
ACTIVITY DIAGRAM:
Deployment diagram: