# data[].attributes.body
- Shows a variety of products for users to see
- Users are able to see more information about them (e.g. description, amount, etc)
- Users can choose them with specifications (eg qty) and add them to cart

# data[].attributes.headline
Identify at least 5 key functions that are required in the web-app of the business

# data[].attributes.subject
Identify at least 5 key functions that are required in the web-app of the business

# data[].attributes.body
- User / customer / staff
- Products / Services
- Cart
- Orders, wish lists
- Customer service, feedback, loyalty program, etc
- Inventory
- Suppliers
- Reports - sales, inventory, staff, customers...
- Admin, ...

# data[].attributes.body
Business name

What products or services it provides, and for who?

Who are the main users of the web app?

# data[].attributes.body
What is the purpose of the function?

Describe its workflow, process

Identify Classes/objects involved in the function

# data[].attributes.headline
Classes/objects involved in each function

# data[].attributes.subject
Classes/objects involved in each function

# data[].attributes.body
- Class name
- Brief description
- Attributes
- Methods

# data[].attributes.body
gets and sets product information that displayed on the catalog listing

Attributes:
- name
- description
- price

Methods:
- accessors and mutators

# data[].attributes.body
Online grocery store for busy adult. Attractive discounts and reward points for every dollar spent.

# data[].attributes.body
Staff:

1. Send the products that customer order to the seller so that seller can prepare to deliver.

2. Create Invoice to compile all orders made by the customers into one bill for user to review and make payment.

3. Send notification to customer to notify them the order payment is successful.

Customers:

1. Create orders or cancel order to allow customer to select multiple products and input the quanlity in the shopping cart and also let them to input their address, pick up date and time and contact number at the checkout point.

2. Make payment to pay online to input their card number or using paynow. Pay the total amount according to the invoice order that they selected their products.

3. Fast processing speed which accept online payment quickly and securely will gets transferred from a customer's account to a retailer's account.

4. Confirmation of order receipt and wait the product to come.

# data[].attributes.body
1. Order/Payment Management - Select Payment Methods or scan QR Code → Key in card number → Confirm Order → Cancel Order  → Payment Success

# data[].attributes.body
Staff:

1. Pick up call or reply email

Customers:

1. Make feedback and rating when the order is completed and is allowing customer to skip the review as some of them might feel troublesome.

2. Self-Service Portal - Customer can go to the website to find related answer quickly from the available repository of Frequently Asked Questions.

3. Customer can send email or call to help.

# data[].attributes.body
1. Customer Service - Customer call in/ Email/ Initiate Live Chat→ Create Ticket → Is problem resolved → Escalate to Manager → Can resolve ticket →Cancel Order/Refund → Close ticket

# data[].attributes.body
To send the product to customer location that they requested.

Attributes:
-delivery_number
-delivery_date
-delivery_status

Methods:
-accessor and mutators

# data[].attributes.body
To represent an inquiry, complaint or request for help by the customers.

Attributes:
-ticket_number
-status
-comment

Methods:
-accessors and mutators

# data[].attributes.body
To let customers get help from the website to solve their issues through answers and questions.

Attributes:
-FAQ_number
-question
-answer

Methods:

# data[].attributes.body
To get feedback from customer when the order is completed.

Attributes:
-order_number
-rating
-comment

Methods:
-

# data[].attributes.body
1. Staff/User sign up
2. Staff/User login
3. Password Reset
4. OTP Verification
5. Remember Me
6. Delete Inactive accounts

# data[].attributes.body
User enters website - User can create an account - User enters email and password to login - If email and/or password is wrong, user is forced to key in again - If failed attempt > 3 times, prompt reset password - If email and/or password is correct, user is logged in