You are on page 1of 17

Project: UML Diagrams

Subject: Object Oriented Analysis & Design


Due Date: 5, June 2023

Submitted by
Ahmad Raza
4329-FBAS/BSSE/F21B
Anees ur Rehman
4339-FBAS/BSSE/F21B
Shafqat Hayat
4341-FBAS/BSSE/F21B
Shahid Ramzan
4346-FBAS/BSSE/F21B

Submitted to
Teacher Name: Syed Saqlain Hassan

Department of Computer Science and Software Engineering


INTERNATIONAL ISLAMIC UNIVERSITY ISLAMABAD
Semester Spring 2023
Table of Content
Revision History ------------------------------------------------------------------ 2
Abstract ---------------------------------------------------------------------------- 2
1. Business Introduction --------------------------------------------------------- 3
1.1 Purpose ------------------------------------------------------------------------------------- 3
1.2 Intonated Audience ----------------------------------------------------------------------- 3
1.3 Scope of the Product ---------------------------------------------------------------------- 3
2. Overall Description ------------------------------------------------------------- 3
2.1 Product Perspective ----------------------------------------------------------------------- 3
2.2 Product Functionalities ------------------------------------------------------------------- 3
2.3 Modules -------------------------------------------------------------------------------- 4
3. Functional Requirement -------------------------------------------------------- 4
3.1. User Signup --------------------------------------------------------------------------------- 4
3.2. User Login ----------------------------------------------------------------------------------- 4
3.3. Menu Item ---------------------------------------------------------------------------------- 4
3.4. Order Management ----------------------------------------------------------------------- 5
3.5. Payment Method ------------------------------------------------------------------------- 5
3.6. Admin Module ----------------------------------------------------------------------------- 5
4. Non-Functional Requirement -------------------------------------------------- 5
4.1. Performance -------------------------------------------------------------------------------- 5
4.2. Maintainability ----------------------------------------------------------------------------- 6
4.3. Security -------------------------------------------------------------------------------------- 6
4.2. Operating Environment ------------------------------------------------------------------ 6

Page 1
Revision History

Name Date Reason for Version


Change

1. Anees ur 6/1/23 Initial Draft 1.0


Rehman

2. Sahfqat Hayat

Abstract:
The online food delivery system is a web application that is designed for the user to
place order online and also can pay online and also this system can help the
restaurant to increase the profit of the business by reducing the time and accuracy in
taking order and also evaluating their profit/sales through check and balance module
that we will provide. The system also allows the admin user to quickly and easily
manage their food items in an online menu where customers can browse and order
online. For online place order Admin User will get proper notification that will help
them to track the order easily.

Currently, they are taking order through calls and there is incontinence and also time
delay in this method and sometime misinformation occur, so they want a automate
system who take order and delivery information and they just want to make a
delivery.

Page 2
1. Business Introduction:

1.1. Purpose:

Main Purpose of this system is to make a software app where user can select items and
place order online and can also have an option of making an online payment.

1.2. Intended Audience:

Main target audience is people from age between 12-27

1.3. Scope of the Product:

It will be a web page and app system that will be compatible on low level android, IOS
smartphone and web browser like chrome, safari and fire fox, and will also have a
software for check and balance installed in the admin system.

2. Overall Description:

2.1. Product Perspective: this will be an online food ordering software where customer
can place your order online and food will be deliver at the delivery address.
2.2. Product functionalities:
• Login /sign up
• Navigate order
• Filter items
• Food item description and rating
• Shopping cart
• Add or drop item from the cart
• Add quantity of the item in the cart
• Reviews of the food items
• Place order
• Accept order
• Online payment
• Issue Report
• Monitor order status(token/ID)
• Customize online Menu item
• Maintain all orders history in admin module

Page 3
2.3 Modules:
• User End
• Admin
• Online payment
• Tracking order range through google map.
• Contact us module

3. Functional Requirement: all the necessary requirement for the system will be
describe below:
3.1. User Signup:
This will be used when the end user doesn’t have an account

• User will fill information like username, password, contact number and email id.
• Password length should be eight character.
• Password should be given twice to match for confirmation.
• Username and password should be mailed to the respective email id by the system.
3.2. User Login:
These are the requirement for the user to login in the system.

• User can enter email id or username


• User Should enter the password to login
• If user forgot the password User should enter his/her email id and username
• User will be mail the link to create new password
• By retrieving the link user can create new password as user want
3.3 Menu Item:
The requirement for the navigating item, using filter and adding item in the Menu

• Customer can Navigate between the item and add filter (price and rating)
• Admin can Customize the Menu item and their prices

Page 4
3.4 Order Management:
The requirement for the Shopping cart and placing order and accepting it

• Customer can add multiple items in a single cart


• Customer can increase the quantity of the item in the cart
• Customer can drop item from the cart
• Customer can place order with additional information of delivery address and
contact information
• Delivery should be in range of 20km
• Admin will get a notification to accept an order
• Customer will get a token/ID for their order after admin has accepted their order.

3.5 Payment Method: the requirement for paying the order after the order is placed.

• Customer will pay money to Delivery guy when it will be cash on delivery.
• Customer can do online Payment with the method that are available in our app

3.6 Admin Module: the requirement for the admin module will be

• Get notification to accept the customer order


• Admin have a check and balance module where admin can check how many items
has been delivered in a day and their payment history.
• Checking how many orders are pending today.

4. Non-Functional Requirement:
4.1. Performance:

The system which we are designing should be very fast, the loading speed of the
menu item and placing order and also when doing online payment between two
different systems, the performance should be fast so no delay
Happen. There should be quick response in time and the system should be able to
handle large amounts of order and transactions efficiently.

Page 5
4.2. Maintainability:

The system should be simple to upgrade and maintain over time in future. The
app should be upgradable, with clear instructions and documentation on how
to upgrade to new versions and releases. App should log errors and exceptions,
allowing developers to identify and fix issues quickly.
App should have a support system in place, including a dedicated support
team and a system for handling customer inquiries and feedback.

4.3. Security:

The system should be able to detect any unauthorized access and prevent to
usage of user important information. There should be someone who monitor
the restaurant sever because all log information will be there so any
unauthorized access can be prevented.

4.4. Operating Environment:

The Software can easily be used on window OS on Chrome, Fire Fox and
opera with hardware of minimum requirement that are commonly used like
core i3 and on the android phone the app will not take much space on phone
and can be easily used in android 8 and above and can use in any apple phone
from IPhone 6 and above.

Page 6
Use Case 1: User Registration:
• Primary Actor: User
• Preconditions: None
• Post conditions: User account is created and active
• Main Success Scenario:
1. User accesses the registration page.
2. User enters their personal details (name, email, password, etc.).
3. User submits the registration form.
4. System verifies the entered information and creates a new user account.
5. User receives a confirmation email or notification.
• Extensions:
1. If the entered email is already registered, the system displays an error message
and prompts the user to login.

Use Case 2: User Login:


• Primary Actor: User
• Pre-conditions: User has a registered account
• Post conditions: User is logged into their account
• Main Success Scenario:
1. User accesses the login page.
2. User enters their login credentials (email and password).
3. User submits the login form.
4. System verifies the entered information.
5. User is redirected to the homepage or a personalized dashboard.
• Extensions:
1. If the entered credentials are invalid, the system displays an error message to
enter valid details.
Use Case 3: Browse Menu and Place Order:
• Primary Actor: User
• Preconditions: User is logged into their account
• Post conditions: Order is placed and recorded in the system
• Main Success Scenario:
1. User views the available food items and their details (description, price, etc.).
2. User can select the desired food item.
3. User selects the desired quantity and customization options for the chosen food
items.
4. User adds the items to their cart.
5. User reviews their order in the cart and proceeds to checkout.
6. User selects the preferred delivery address and payment method.
7. User confirms the order and completes the payment process.
8. System confirms the order, generates an order number, and sends a notification to
the admin user for further processing.
• Extensions:
1. If the user abandons the order process before completing the payment method, the
system removes the incomplete order from the system and notifies the user.

Use Case 4: Manage Food Items:


• Primary Actor: Admin User
• Preconditions: Admin user is logged into their account
• Post conditions: Food items are added, edited, or deleted in the online menu
• Main Success Scenario:
1. Admin user accesses the admin dashboard or menu management section.
2. Admin user views the existing food items and their details.
3. Admin user can add new food items or edit/delete existing ones.
4. Admin user updates the menu with the desired changes.
5. System updates the menu.
• Extensions:
1. If the admin user makes an error e.g. (don’t fill price section or want to add
existing product again) while updating the menu, the system displays an error
message to try again.

Use Case 5: Track Order:


• Primary Actor: Customer
• Preconditions: User has placed an order and wants to track its status
• Post conditions: User is updated with the current status of their order

• Main Success Scenario:


1. User accesses the order tracking section or page.
2. User enters the order details or order number to search for their order.
3. System retrieves the order information, including the current status.
4. User views the order details, including items, payment status, and delivery
address.
5. User sees the current status of the order (e.g., preparing, cooking, out for
delivery).
6. User receives real-time updates or notifications as the order progresses.

Use Case 6: Process Payment:


• Primary Actor: Customer
• Preconditions: User has placed an order and selected a payment method
• Post conditions: Payment is processed, and order status is updated
• Main Success Scenario:
1. The customer selects the preferred payment method (e.g., Online, cash on
delivery).
2. If the customer chooses online payment:
• The customer enters their payment details (e.g., card number,
expiration date) or logs into their digital wallet account e.g. (Easy
paisa, Jazz Cash).
• The system securely processes the payment transaction.
3. If the customer chooses cash on delivery:
• The system records the selection of cash on delivery as the payment
method.
4. The system verifies the payment and confirms the successful transaction.
5. The system updates the order status to indicate that the payment has been
processed.
6. The customer receives a confirmation notification or receipt for the payment.

• Extensions:
1. If the payment transaction fails, the system notifies the user and provides
instructions to try again or choose an alternative payment method.

Use Case Diagram


Domain Model
Class Diagram
Activity Diagram
Sequence Diagram

You might also like