Microsoft SQL Server

Chapter 3 - Database Tables, Columns and Rows

Assignment - List Tables and Columns - Food Delivery Application


Objective:

You are required to create a list of tables and columns for a Food Delivery Application that manages customers, restaurants, orders, deliveries, and payments. Your task is to identify relevant tables and specify key columns for each.

Requirements:

You will need to define the necessary tables and columns to support the following functionalities required for the Food Delivery Application.

1. Customer Management

  • Tracking customer details (name, contact info, delivery addresses)
  • Managing customer registration and login information
  • Storing customer order history and preferences
  • Managing customer reviews and ratings for restaurants and deliveries

2. Restaurant Management

  • Managing restaurant profiles (name, location, contact info)
  • Tracking restaurant menus and available items
  • Managing restaurant ratings and reviews from customers
  • Handling restaurant hours of operation and availability for delivery

3. Menu and Item Management

  • Managing menu items for each restaurant (dish name, price, category)
  • Tracking availability of menu items (in stock, out of stock)
  • Handling item customizations (e.g., toppings, size options)
  • Managing food descriptions and nutritional information

4. Order Management

  • Recording customer orders (restaurant, menu items, total price)
  • Managing order status (pending, preparing, ready for delivery)
  • Tracking order modifications and special requests
  • Handling order cancellations and refunds

5. Delivery Management

  • Assigning delivery drivers to orders
  • Tracking delivery status (en route, delivered, delayed)
  • Managing real-time location tracking of delivery drivers
  • Handling delivery times and estimated arrival notifications for customers

6. Payment Management

  • Managing different payment methods (credit card, debit card, wallet, cash on delivery)
  • Tracking payment status (paid, pending, refunded)
  • Handling payment gateways and transaction records
  • Managing promotional discounts, coupons, and offers for customers

7. Reviews and Ratings Management

  • Allowing customers to rate restaurants, food items, and delivery experiences
  • Tracking user reviews and star ratings for restaurants and drivers
  • Handling review moderation and reporting inappropriate feedback
  • Displaying average ratings for restaurants and menu items

8. Promotions and Offers Management

  • Managing promotional codes and discount offers for customers
  • Tracking usage of promotional codes and applicable restaurants
  • Handling restaurant-specific deals and offers
  • Managing loyalty programs and rewards for repeat customers

9. Delivery Driver Management

  • Tracking delivery driver details (name, contact info, vehicle details)
  • Managing delivery driver schedules and availability
  • Handling driver performance ratings and feedback
  • Tracking delivery times and performance metrics

10. Reporting and Analytics

  • Real-time dashboards for tracking orders, payments, and deliveries
  • Customizable reports on restaurant performance, customer activity, and delivery efficiency
  • Data visualization tools for analyzing revenue, order trends, and customer preferences
  • Tracking driver efficiency, customer retention, and overall platform usage

11. Inventory and Stock Management (For Restaurants)

  • Tracking available stock of food items and ingredients
  • Managing supplier orders for restaurants
  • Handling low-stock alerts and restocking schedules
  • Tracking inventory costs and supplier payments

12. Security and Access Control

  • Role-based access control for admins, restaurants, drivers, and customers
  • Managing secure login and authentication processes
  • Monitoring access to sensitive information (customer addresses, payment details)
  • Handling user reports and platform violations (fraudulent accounts, misconduct)

13. Customer Support and Issue Resolution

  • Allowing customers to report issues with orders, payments, or deliveries
  • Managing customer support tickets and resolution status
  • Handling refunds, compensation, and re-delivery in case of issues
  • Tracking common customer issues and providing FAQs or chat support

14. Location and Delivery Zone Management

  • Managing delivery zones for each restaurant
  • Handling location-based restrictions for food delivery
  • Tracking geofencing and restaurant availability by region
  • Displaying restaurant options based on customer location

Sample Tables:

Note: These are just a few example tables; you will need to design additional tables based on the functionalities outlined above for the Food Delivery Application.

Customers
Restaurants
Orders
MenuItems
Deliveries


Sample Columns:

Table Name: Orders

Sample Columns:

  • OrderID: Unique identifier for each order (Primary Key)
  • CustomerID: Foreign key referencing the Customer table
  • RestaurantID: Foreign key referencing the Restaurant table
  • TotalPrice: Total price of the order
  • OrderStatus: Current status of the order (Pending, Preparing, Delivered)

Additional Guidelines:

  • Ensure every table has a primary key.
  • Define foreign keys where needed to establish relationships between tables.
  • Include important columns relevant to the business scenario (e.g., for deliveries, include columns like DeliveryDriverID, EstimatedArrivalTime, and DeliveryStatus).

Final Notes:

We recommend that you define the necessary tables and columns, along with sample data, using tools like Google Sheets or any relational database design tool.

Students enrolled in our online Zoom class will receive guidance throughout this assignment, and their progress will be manually reviewed incrementally until they reach a certain level of completion.

As a beginner, it is recommended that you complete the table and column listings for 50-75% of the functionalities mentioned above. Completing listings for 100% of the functionalities is a real BONUS.


GOOD LUCK WITH YOUR ASSIGNMENT!!!

Don't forget to contact us if you need any further assistance with your assignments, and most importantly, for a manual review and approval of your work.

Tansy SQL Course - Assignment - List Tables and Columns - Food Delivery Application - Video Thumbnail

SAMPLE TABLE DESIGN

Image Description
Comments(0 comments)

Comments Not Found