-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Functionalities that must be included (refer to section 2 of instructions)
All functionalities in this list must appear in the final project
- Creation/Deletion/Update of data for the different users (customers, managers, riders and admins)
- Support data access for different users
- Customers can view review postings and past orders
- Riders can view their past work schedules and salaries
- Customers can browse/search for food items
- Admins can browse summary information (refer to Appendix 1)
- Managers can browse summary information (refer to Appendix 2)
- Riders can browse summary information (refer to Appendix 3)
- Database should be loaded with reasonably large tables (project demo) (refer project.pdf for websites which can help us to generate data)
Functionalities that are recommended to be included (refer to section 1 of instructions)
Functionalities listed here are good to have in the final project
Overall
- The application supports 4 types of users: customers, managers, riders and admins
- The application operates daily from 10AM to 10PM
- A week is defined as a duration consisting of 7 consecutive days
- A month is defined as a the duration consisting of 4 consecutive weeks
Restaurants & Managers
- Each restaurant has a menu listing their food items, availability and prices
- Food items are classified into categories to facilitate browsing
- A daily limit on the maximum number of orders that can be accepted for each food item can be specified by the restaurant manager
- The food item is automatically updated to be unavailable when the daily limit is reached
- The restaurant manager can update the menu information dynamically
Orders & Customers
- The total cost of each order is computed as the sum of the cost of the ordered food items and a delivery fee
- An order is not accepted if the total cost of the ordered food items is below a minimum amount that is specified by the restaurant manager
- The delivery fee for each order is determined by the admin based on some criteria
- Each dollar spent is a reward point earned by the customer
- The reward points can be used to offset the delivery fees for future orders
- Customers can make payment using a pre-registered credit card or choose to pay cash on delivery
- Customers can post reviews on the food after the order is completed
- Customers can give ratings on the delivery service after the order is completed
- Reviews on the food can be viewed by all customers
Promotions
- Each restaurant can order promotional prices for certain periods of time
- Each promotional campaign has a unique identifier
Delivery
- Each order's food items must be from a single restaurant
- Each order is assigned to a delivery rider who will collect and deliver the ordered items to the customer
- Assignment of delivery rider to order is determined by the FDS
- Time when order was placed by the customer is recorded
- Time when rider departs for the restaurant is recorded
- Time when rider arrives at the restaurant is recorded
- Time when rider departs from the restaurant to the customer is recorded
- Time when rider delivers the order is recorded
- The customer's 5 most recent delivery locations is recorded
- The customer can specify a new delivery location for the order, or choose from one of the 5 recent delivery locations
Riders
- Each rider is either a full-time or part-time employee
- Each full-time rider maintains a monthly work schedule
- Each part-time rider maintains a weekly work schedule
- Each weekly work schedule specifies the hour intervals that the rider is available for work each day
- Each hour interval must start and end on the hour and duration must not exceed 4 hours
- There must be at least 1 hour of break between two consecutive hour intervals
- Total number of hours in each weekly work schedule must be at least 10 and at most 48
- For full-time riders, the 4 weekly work schedules in a monthly work schedule must be equivalent
- Each weekly work schedule for a full-time rider must consist of 5 consecutive work days
- For full-time riders, each work day must consist of 8 work hours comprising of 2 4-hour periods with an hour break in between
- There must be at least 5 riders (part-time or full-time) working at each hourly interval
- Each part-time rider earns a weekly base salary
- Each full-time rider earns a monthly base salary
- On top of the base salary, each rider also earns a fee for each completed delivery
- The base salary is computed based on some criteria
Appendix 1: Summary information for admins
- Total number of new customers for each month
- Total number of orders for each month
- Total cost of all orders for each month
- Total number of orders and total cost of all orders for each customer for each month
- Total number of orders placed for each hour and for each delivery location area
- Total number of orders delivered by each rider for each month
- Total number of hours worked by each rider for each month
- Total amount of salary earned by each rider for each month
- Average delivery time for each rider for each month
- Total number of ratings received by each rider for each month
- Average rating received by each rider for each month
Appendix 2: Summary information for managers
- Total number of completed orders for each month
- Total cost of all completed orders (excluding delivery fees) for each month
- Top 5 favourite food items (in terms of number of orders) for each month
- The duration for each promotional campaign in terms of number of days/hours
- Average number of orders received during the promotion period per day
Appendix 3: Summary information for riders
- Total number of orders delivered by the rider, for each week
- Total number of orders delivered by the rider, for each month
- Total number of hours worked by the rider
- Total salary earned by the rider
Reactions are currently unavailable
Metadata
Metadata
Labels
No labels