Board Game Shop Online: Project Assignment Solution

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 98

BOARD GAME SHOP ONLINE

Project Assignment Solution

– Hanoi, August 2022 –

Record of Changes
Versio Date A* In charge Change Description
n M, D
V1.0 14/9 A MinhVCHE161378 Complete and adjust Overview
*A - Added M - Modified D - Deleted

Contents
Record of Changes 2
I. Overview 4
1. User Requirements 4

GAMS-SRS_v1.0 Page 1 / 20
1.1 Actors 4
1.2 Use Case 4
2. Overall Functionalities 13
2.1 Screens Flow 13
2.2 Screen Descriptions 13
2.3 Screen Authorization 21
2.4 Non-UI Functions 23
3. System High Level Design 24
3.1 Database Design 24
3.2 Code Packages 28
II. Requirement Specifications 30
1. Public Feature 30
1.1 UC-1:View Home Page_Home Page 30
1.2 UC-2:View News List 32
1.3 UC-3:View News Detail 34
1.4 UC-4:View Product List 35
1.5 UC-5:View Product Details 37
UC-5:View Product Details 37
1.6 UC-6:View Cart Contents 39
1.7 UC-7:Provide Contact Details 41
1.8 UC-8: Cart Completion 45
UC-8 Cart Completion 45
1.9 UC-9: Feedback 46
1.10 UC-10:User login 47
1.11 UC-11:User Register 48
1.12 UC-12:Reset Password 49
1.13 UC-13:Change Password 50
1.14 UC-14:User Profile 51
2. Common Feature 52
2.1 UC-2_Login System52
2.1 UC14 - User Profile 53
2.1 UC15 - User Authorization - Manage User Permissions 55
3. Marketing Feature 57
3.* UC-23_Product List 57
3.2 UC-24_Product Details 59
3.3 UC-25_Customer List 60
3.4 UC-26_Customer Details 61
3.5 UC-27_Feedbacks List 62
3.6 UC-28_Feedbacks Details 63
3.7 UC18 - MKT Dashboard - View Marketing Dashboard 64
3.8 UC19 - Posts List - View Blog Post 65

GAMS-SRS_v1.0 Page 2 / 20
3.9 UC20 - Post Details - Read Blog Post 66
3.10 UC21 - Marketing - Slider Details and Blog Post Viewing 68
-None 69
4.Sale Feature 69
4.1 UC-28_Sale Dashboard 69
4.2 UC-29_Browse Orders 70
4.3 UC-30_View Order Details 71
5. Admin Feature 73
5.1 UC-31_Admin Dashboard 73
5.2 UC-32_Browse Users 74
5.3 UC-33_View User Details 75
5.4 UC-34_Manage Settings 77
3.2 UC-6_Register for Payroll Deduction 79
6. Customer Feature 80
6.1 UC16 - My Orders - View Order History 80
6.2 UC17 - Order Information - View Order Information 81
III. Design Specifications 83
1. Public Feature 83
1.1 System Access 83
IV. Appendix 89
1. Assumptions & Dependencies 89
2. Limitations & Exclusions 89
3. Business Rules 89

I. Overview
1. User Requirements
1.1 Actors

# Actor Description
-Admin in a BoardGame website is responsible for managing products, orders, user
accounts, payments, shipping, promotions, security, customer feedback and statistics
1 Admin
to ensure website operations are smooth. out smoothly and efficiently.

- A pivotal role in the system, primarily focusing on facilitating and managing the
sales processes within the project. This actor interacts with the system to ensure the
2 Sale
smooth execution of sales-related tasks and responsibilities

-Statistics, collect data on best-selling products, hot trends...


-Statistics and- collect data on customer reviews and comments
Marketin
3 -Create and manage advertisements on the web
g
-Update products and promotions

4 Customer - Searching for products, viewing details, comparing prices, reading reviews and
placing orders online.

GAMS-SRS_v1.0 Page 3 / 20
- Add products to cart, make payments, and track the status of their orders.
- Manage personal accounts, change personal information and reset passwords if
necessary.
- Contact the shop to get some advice to buy the product they want.

This is a user who visits the sales website without registering an account or logging in.
They are often people who are interested in shopping for products on the site and may
5 Guest
be considering options.

1.2 Use Case


a. Diagram(s)

Specifically:

GAMS-SRS_v1.0 Page 4 / 20
GAMS-SRS_v1.0 Page 5 / 20
GAMS-SRS_v1.0 Page 6 / 20
GAMS-SRS_v1.0 Page 7 / 20
GAMS-SRS_v1.0 Page 8 / 20
b. Descriptions

I
Feature Use case Use case description
D
Allows users to access and view the home page of the
website. This page typically displays featured products,
1 Home Page View Home Page
promotions, and links to other sections of the site. Users can
navigate to various sections from here.
Enables users to browse and access a list of available blogs.
Browse
2 Blogs_News List Users can see the blog titles, summaries, and publication
Blogs_News
dates. They can click on a blog to view its details.
Allows users to view the details of a specific blog post. This
View Blog_News
3 Blog_News Details includes the full blog content, comments, and the option to
Details
leave comments. Users can also share blogs on social media.
Permits users to browse through a list of board game
products. Users can see product thumbnails, names, prices,
4 Products List Browse Products
and short descriptions. Clicking on a product takes them to
the Product Details page.
Enables users to view detailed information about a product.
View Product This includes high-resolution images, a full product
5 Product Details
Details description, customer reviews, pricing, and availability.
Users can add the product to their cart from here.
Allows users to view the contents of their shopping cart.
View Cart They can see a list of added products, their quantities,
6 Cart Details
Contents individual prices, and a total order summary. Users can edit
or remove items in the cart.
Lets users provide contact information during the checkout
Provide Contact
7 Cart Contact process. Users enter their shipping address, payment details,
Details
and any discount codes.
Allows users to complete their purchase and checkout. This
Complete
8 Cart Completion involves verifying payment information, confirming the
Purchase
order, and receiving an order confirmation email.
Allows users to submit feedback or reviews for products.
9 Feedback Submit Feedback Users can rate products, write comments, and submit their
feedback, which may be visible to other users.
User Enables users to log in to their accounts on the website.
10 User Login
Authentication Users provide their username (or email) and password to

GAMS-SRS_v1.0 Page 9 / 20
gain access. Successful login redirects them to their profile
or the last visited page.
Allows new users to create an account on the website. Users
provide personal information such as name, email, and
11 User Register User Registration
password. After successful registration, they may be logged
in automatically.
Permits users to reset their forgotten passwords. Users enter
12 Reset Password Reset Password their registered email address, and a password reset link is
sent to their email.
Allows users to change their current passwords. Users
13 Change Password Change Password provide their old password and a new password, which is
then updated in the system.
Enables users to view and edit their user profile information.
Manage User
14 User Profile Users can update personal details, change their profile
Profile
picture, and manage communication preferences.

Manages user permissions and access control on the website.


User Access
15 User Authorization
Control
Administrators can assign roles and permissions to different
user types, such as regular users and moderators.

Allows users to view their order history and status. Users


16 My Orders View Order History can see a list of past orders, including order numbers, dates,
and current statuses (shipped, pending, etc.).
Permits users to access detailed information about a specific
View Order
17 Order Information
Information
order. This includes a breakdown of products in the order,
shipping details, and an option to track the shipment.
Provides access to a dashboard for marketing and
Marketing promotions. Administrators can manage marketing
18 MKT Dashboard
Dashboard campaigns, create discount codes, and track the performance
of marketing efforts.
Enables users to browse a list of posts or articles. Users can
19 Posts List Browse Posts see post titles, summaries, and publication dates. Clicking on
a post takes them to the Post Details page.
Allows users to view detailed information about a specific
post. This includes the full post content, comments, and the
20 Post Details View Post Details
option to leave comments. Users can also share posts on
social media.
Permits users to browse a list of image sliders or banners.
21 Sliders List Browse Sliders Users can see slider titles, descriptions, and preview images.
Clicking on a slider takes them to the Slider Details page.
Allows users to view detailed information about a specific
View Slider slider. This includes the full slider image, associated links,
22 Slider Details
Details and any call-to-action buttons. Users can navigate to linked
pages from here.
Browse Products Permits administrators to browse through a list of board
23 Products List
(admin) game products. Administrators can see product details,

GAMS-SRS_v1.0 Page 10 / 20
manage product inventory, and make updates as needed.
Enables administrators to view and edit detailed information
View Product
24 Product Details about a product. This includes images, descriptions, pricing,
Details (admin)
and availability.
Allows administrators to browse a list of registered
Browse
25 Customers List customers. They can see customer names, email addresses,
Customers
and contact information.
Enables administrators to view detailed information about a
View Customer
26 Customer Details specific customer. This includes customer profiles, order
Details
history, and contact details.
Permits administrators to browse a list of submitted
Browse
27 Feedbacks List feedback and reviews. Administrators can see feedback
Feedbacks
ratings, comments, and product associations.
Allows administrators to view detailed information about
View Feedback
28 Feedback Details specific feedback. This includes the feedback text, product
Details
reviewed, and user details.
Provides access to a dashboard for monitoring sales and
29 Sale Dashboard Sales Dashboard revenue. Administrators can view sales analytics, track
revenue trends, and identify top-selling products.
Allows administrators to browse a list of customer orders.
Browse Orders
30 Orders List They can see order details, customer information, and order
(admin)
statuses.
Enables administrators to view detailed information about a
View Order
31 Order Details specific order. This includes a breakdown of products,
Details (admin)
shipping details, and payment information.
Provides access to the main dashboard for website
Admin administration. Administrators can manage users, products,
32 Admin Dashboard
Dashboard orders, settings, and access various other administrative
functions.
Browse Users Allows administrators to browse a list of registered users.
33 Users List
(admin) They can see user profiles, roles, and contact information.
Enables administrators to view detailed information about a
View User
34 User Details specific user. This includes user profiles, activity history,
Details (admin)
and role assignments.
Permits administrators to manage website settings and
Manage Settings
35 Settings List configurations. They can control payment options, shipping
(admin)
policies, and other site-specific settings.
Allows administrators to manage banners related to events, sales,
Event,Sale,Discount Manage Banners
36 and discounts. They can upload banner images, set display dates,
Banner (admin)
and link banners to specific pages.
Enables administrators to manage advertisement banners. They
Manage Ad
37 Advertisment Banner can upload banner images, set display criteria, and track click-
Banners (admin)
through rates.
Allows users to browse the website as a guest without logging in.
40 Guest Browsing Browse as Guest
Guests can view products, blogs, and other publicly accessible

GAMS-SRS_v1.0 Page 11 / 20
content. They cannot access user-specific features.
Enables guests to access help and support resources. They can
Guest Help and Access Guest
41 view FAQ sections, contact customer support, or access self-help
Support Support
articles and guides.

2. Overall Functionalities
2.1 Screens Flow

2.2 Screen Descriptions


[Provide the descriptions for the screens in the Screens Flow above]

GAMS-SRS_v1.0 Page 12 / 20
# Featur
e Screen Description

1 Public Home Page Show sliders, hot posts, featured products + the slider with the latest posts, static
contacts/links

- Shown slider information includes its image and title; the user is redirected to the
slider's backlink on his/her clicking

- Shown post information includes its thumbnail, title, brief-info; the user is
redirected to the post's details on his/her clicking

- Shown product information includes its thumbnail, title, brief information; the
user is redirected to the product's details on his/her clicking

2 Public Blogs List This is a pop-up screen which allows the user to enter email & password to login;
on this page, there are also links for user to register new information or reset the
password for the case s/he forget it

3 Public Blog Details This is a pop-up screen which allows the user to register to the system by inputting
following information: full name, user title (Mr, Mrs, Ms,..), email, mobile,
address; User then needs to verify by clicking the link sent via email to him/her
before being able to access the system

4 Public Products List The user input his/her email to receive the reset password link. This link is sent to
the user's email for his/her password resetting.

- On clicking the link, the user is redirected to the password resetting page in which
s/he input new password (twice) for the system access

- Note that the link is only available for a specific time duration as configured in the
system config file.

5 Public Product Implementation of authorization mechanism in the system, including the specify the
Details role of logged-in user, his/her authorized page links (building the displayed menu
items (in the front end) and preventing unauthorized access via enter the links
directly)

6 Public Cart Details This is a pop-up screen which allows the user to edit his/her profile information,
including the registered ones & the avatar image. Please note that s/he is not
allowed to change the email

7 Public Cart Contact This is a pop-up screen which allows the user to change his/her password by
inputting his current password as well as new password (twice)

GAMS-SRS_v1.0 Page 13 / 20
# Featur
e Screen Description

8 Public Cart Show the posts pagination (sorted by updated date, paginated) + the cider with the
Completion post search box, post categories, the latest posts, and static contacts/links; Shown
post information includes its thumbnail, title, brief-info; the user is redirected to the
post's details on his/her clicking

9 Public Feedback Show post details (including title, author, updated date, category, and post details) +
the cider with the post search box, post categories, static contacts/links

10 Common User Login Show the paginated list of posts (include posts' id, thumbnail, title, category, author,
featured, and status information):

- The user can filter the post by category, author, status or search by title

- Sortable by title, category, author, featured, or status

- From each post, the user can choose to hide, show, view, edit it

- The page also have the button/link that allows the user to add new post

11 Common User Register Show detailed post information (thumbnail, category, title, brief information,
content, flag to turn the featurning on/off, status), from that allow the user to input
new post information, view or edit existing post information

12 Common Reset Show the paginated list of sliders (including sliders' id, title, image, backlink,
Password status)

- The user can filter the sliders by the status + search by title or backlink

- For each slider, the user can choose to hide, show, edit it

13 Common Change Show detailed slider information (image, title, backlink, status, notes)
Password

GAMS-SRS_v1.0 Page 14 / 20
# Featur
e Screen Description

14 Common User Profile Show the paginated list of registered users (include users' id, full name,, email, role,
status):

- The user can see their information of them

- Allow the user see the order.

-Can change username , address , phone number

- Can add , remove the address

- Mark the address

15 Common User Show detailed user information (avatar, full name, gender, email, mobile, role,
Authorization address, status), from that allow the user to add new, view or edit user information

- After adding, new generated login password would be email to the new user

- The admin can only edit/update the role and status of the user

16 Customer My Orders Show the products paginated (sorted by updated date) + the slider with the product
search box, product categories, the latest products, and static contacts/links;

- Shown product information includes its thumbnail, title, brief information,


original price, and sale price;

- The user is redirected to the product's details on his/her clicking on the product

- The user can choose to add the product to the cart or to feedback on the product
by clicking the product's Buy & Feedback buttons responsively

17 Customer Order Show product details (including title, category, images, original price, sale price,
Information and product details) + the slider with the product search box, product categories, the
latest products, and static contacts/links

GAMS-SRS_v1.0 Page 15 / 20
# Featur
e Screen Description

18 Marketing Posts List Show the cart details with list of the user's chosen products (including Id, title,
price, quantity, total cost) and the total order price + the slider with the product
search box, product categories, the latest products, and static contacts/links; The
user can

- Change the quantity of each product: the total cost is automatically adjusted

- Choose to delete/remove product by clicking on the deleting icon

- Click the Choose More Product button to go to Products List page

- Click the Check Out button to go to the Cart Contact page

Please note: the user's chosen products from the last browsing session remain in
his/her cart until s/he submits the cart. However, the product prices are updated
with the latest prices in the system

19 Marketing Post Details Show the list of user chosen product (including id, title, price, quantity, total cost),
the total order price and the receiver information (including full-name, gender,
email, mobile, address, notes) for user to edit/input + the slider with the product
search box, product categories, the latest products, and static contacts/links

- In case the user has logged in, the receiver information would be filled with the
user's information

- The user can click the Change button to come back to the Cart Details page for
changing the choosing products, click the Submit button to submit the order before
redirecting user to the Card Completion or Error page (due to technical error or any
out-of-stock product)

GAMS-SRS_v1.0 Page 16 / 20
# Featur
e Screen Description

20 Marketing Sliders List This page show the cart completion notes + the cider with the product search box,
product categories, the latest products, and static contacts/links; Before this page is
shown:

- The Order status is changed to submitted;

- The product's available quantities are updated accordingly

- The submitted order is assigned automatically to the active salers rotatedly

- If the receiver information (name, email, mobile, gender) is new or changed


(checking via the email0, the latest receiver information is stored in the system as
latest & historical system contact information (for the marketing's reference later)

- The customer/user would receive the order confirmation & payment guides via
his/her email. That information is shown on the page also. The payment
information (banking account,...) are taken from the system configuration file

21 Marketing Slider Details On receiving the bought products successfully, the receiver would receive a
confirmation email with the guides to feedback on each of the received product;
Beside, the user/receive could also give the feedback (on a specific product or
general feedback) via the website; The user also call this screen from the system
menu on the header;

The feedback information includes contact information (full name, gender, email,
mobile), rated star, the attached images and the contact's free-format feedback

The page slider is also shown with the product search box, product categories, static
contacts/links;

22 Marketing Products List Show the list of user's orders paginated + the cider with the product search box,
product categories, the latest products, and static contacts/links

- Each order include below information: id, ordered date, product (first product
name & number of other products if any), total cost, status;

- On clicking the link under the order id, user would be redirected to the Order
Information page

GAMS-SRS_v1.0 Page 17 / 20
# Featur
e Screen Description

23 Marketing Product Show the order details, including the information as below + the slider with the
Details product search box, product categories, the latest products, and static contacts/links

- The order id, order date, total cost, status

- The receiver information: full name, gendar, email, mobile

- This list of ordered products, each product include following information & the
links/buttons that allow the user to re-buy or feedback: thumbnail, name, category,
unit price, quantity, total cost

For the submitted orders, the user can choose to update (redirect the user to the Cart
Details page for that) or cancel the order

24 Marketing Customers Show statistics of posts, products, customers, feedbacks & the trend of new
List customers by day for the last 7 days (the start date & end date can be adjustable)

25 Marketing Customer Show the paginated list of products (include products' id, thumbnail, title, category,
Details list price, sale price, featured, and status information):

- The user can filter the product by category, status or search by title, brief info

- Sortable by title, category, list price, sale price, featured, or status

- From each product, the user can choose to hide, show, view, edit it

- The page also have the button/link that allows the user to add new product

26 Marketing Feedbacks Show detailed product information (thumbnail, category, title, brief information,
List attached images, description, quantity, list price, sale price, flag to turn the
featurning on/off, status), from that allow the user to input, view or edit them

GAMS-SRS_v1.0 Page 18 / 20
# Featur
e Screen Description

27 Marketing Feedback Show the list of customers / contacts paginated (include contacts' id, full name,
Details gender, email, mobile, status):

- The user can filter the customers by status + search by full name, email, mobile

- Sortable by full name, email, mobile, status

- From each customer, the user can choose to add new, view or edit it

28 Sale Sale Show detailed customer/contact information (full name, gender, email, mobile,
Dashboard address, status), from that allow the user to input, view or edit them (excep for the
status which is generated automatically - contact, potential or customer)

Besides, the screen also shows the list of customer/contact changes history in the
form of a table which includes following columns: email, full-name, gender,
mobile, address, updated by, updated date

29 Sale Order List Allows Sales personnel to access and browse a list of customer orders. They can
view detailed order information, customer details, and order statuses. This use case
empowers Sales personnel to efficiently manage and review customer orders.

30 Sale Order Details It offers a comprehensive view of individual orders, including item details,
quantities, prices, status, customer information (name, email, phone, address),
shipping specifics, payment method, and an order history log. This feature
simplifies order management and processing.

31 Admin Admin Show the trend of success/total orders, and the revenues trends by day for the last 7
Dashboard days for all or a specific salesperson (the start date, end date, sale, order status can
be adjustable)

GAMS-SRS_v1.0 Page 19 / 20
# Featur
e Screen Description

32 Admin Users List User List" allows administrators (Admins) to access and manage the list of users
registered on the website. Admins have the ability to view detailed information

about users, including their personal information, roles, and contact information .

33 Admin User Details Show the order details, including the following information:

- Basic order information: order id, customer full name, email, mobile, order date,
total cost, sale name, status

- The receiver information: full name, gendar, email, mobile, address

- This list of ordered products, each product include following information:


thumbnail, name, category, unit price, quantity, total cost

Sale Manager & the assigned Sale can change the order status & the sale notes

Sale Manager can assign the order to other sale

34 Admin Settings List Show statistics of new orders (success, canceled, submitted), revenues (total, by
product categories), customers (newly registered, newly bought), feedbacks
(average star: total, by product categories) & the trend of order counts (success, all)
by day for the last 7 days (the start date & end date can be adjustable)

GAMS-SRS_v1.0 Page 20 / 20
# Featur
e Screen Description

Show detailed user information (type, value, order, description, status), from that
allow the user to add new, view or edit setting information

2.3 Screen Authorization

In which:
● Admin: the organization leader/manager, acts as the system administrator
● Guest: unregistered users
● Customer: they are registered users who are actual customers or potential customers
● Marketing: the marketing members of the organization
● Sale: the sale members of the organization
● Sale Manager: the sale manager in the organization

Screen Admin Guest Customer Marketing Sale Sale Manager

Home Page x x x x x x

Blogs List x x x x x x

Blog Details x x x x x x

Products List(Public) x x x x x x

Product Details(Public) x x x x x x

Cart Details x

Cart Contact x

Cart Completion x

GAMS-SRS_v1.0 Page 21 / 20
Feedback x

User Login x

User Register x

Reset Password x

Change Password x x x x x

User Profile x x x x x

My Orders x

Order Information x

MKT Dashboard x

Posts List x

Post Details x

Sliders List x

Slider Details x

Products List(Marketing) x

Product Details(Marketing) x

Customers List x

Customer Details x

Feedbacks List x

Feedback Details x

Sale Dashboard x x

Sale Orders List x x

Sale Order Details x x

Admin Dashboard x

Users List x

User Details x

GAMS-SRS_v1.0 Page 22 / 20
Settings List x

Setting Details x

2.4 Non-UI Functions


[Provide the descriptions for the functions which have no UI (or not screens), i.e batch/cron job, service,
API, etc.]
I
Feature System Function Description
D
The UpdateProductInventory function is a batch job that
runs periodically to update the inventory levels of board
games in the system. It checks the actual physical stock
levels in the warehouse and synchronizes them with the
digital inventory records in the database. This ensures that
Board Game the website accurately reflects the availability of each
1 Inventory UpdateProductInventory product. If the system detects any discrepancies or low
Management stock levels, it may trigger alerts to the inventory
management team for restocking or reordering. The batch
job also manages product statuses, marking items as "out
of stock" if necessary. This function ensures that
customers can only purchase products that are in stock
and helps prevent overselling.
The UserSessionManagement function is responsible for
managing user sessions and authentication on the website.
It handles user login, session creation, and validation of
User UserSessionManagemen user credentials. It also manages session timeouts and user
2
Authentication t logouts to ensure security and user privacy. This function
plays a crucial role in ensuring that user accounts are
protected and that only authenticated users can access
restricted features.
The ProcessPayment function is responsible for handling
payment transactions on the website. It interfaces with
third-party payment gateways and processes customer
payments securely. It verifies payment information,
Payment authorizes transactions, and records payment status. In
3
Processing
ProcessPayment
case of failed payments or payment disputes, this function
initiates appropriate actions, such as notifying customers
and logging payment failures. It plays a vital role in the e-
commerce functionality, ensuring smooth and secure
payment processing for customers.
4 Order ManageOrders The ManageOrders function is a service responsible for
Management managing customer orders. It handles order creation,
updates, and order status changes. It communicates with
the inventory system to reserve products upon order
placement and release them upon order cancellation or
completion. This function also generates order invoices,

GAMS-SRS_v1.0 Page 23 / 20
I
Feature System Function Description
D
packing slips, and shipping labels for the fulfillment team.
It ensures that orders are processed accurately and
efficiently, enhancing customer satisfaction.
The UpdateProductReviews function manages user-
generated reviews and ratings for board game products. It
allows users to submit and edit reviews, rate products, and
view reviews from other customers. This function
User Review
5
and Rating
UpdateProductReviews calculates average product ratings and displays them on
product detail pages. It also includes moderation features
to monitor and filter inappropriate or spammy content.
User reviews and ratings enhance the shopping experience
and help customers make informed decisions.
The SendEmailNotifications function is responsible for
sending email notifications to users. It covers various
scenarios, including order confirmations, password resets,
shipping updates, and promotional campaigns. This
Email
6
Notification
SendEmailNotifications function ensures that users receive timely and relevant
email communications from the website. It also handles
subscription preferences, allowing users to opt in or out of
specific email categories. Proper email notifications
enhance user engagement and keep customers informed.
The ProductSearch function provides search and filtering
capabilities for board game products. It allows users to
search for products based on keywords, categories, and
Search and filters such as price range and game genre. This function
7
Filtering
ProductSearch
interfaces with the product database and returns relevant
search results. It enhances the user experience by
simplifying product discovery and helping customers find
the games they are interested in.

3. System High Level Design


3.1 Database Design
[Provide the tables relationship like example below]
a. Database Schema

GAMS-SRS_v1.0 Page 24 / 20
b. Table Descriptions
No Table Description
01 Categories caid integer
caname nvarchar(150)

Primary key: caid

02 Publisher pubid integer


pubname nvarchar(150)
[country] nvarchar(150)

Primary key: pubid


03 Code Sale csid integer
code nvarchar(50)
discount integer
csStatus integer
dateStart date
dateEnd date
Primary key: csid
Foreign key: category_id

04 Products pid integer


pname nvarchar(50)
rate float
price integer
priceSale integer

GAMS-SRS_v1.0 Page 25 / 20
quantity integer
pubid integer
saled integer
isDiscount bit
isSoldout bit
csid integer

Primary key: pid


Foreign key: pubid,csid

05 Comments comid int


[content] nvarchar(250)
create_at date
status int
pid nchar(10)
acid nchar(10)

Primary key: pid


Foreign key: pubid,csid

06 orderDetails odid int


pid nchar(10)
oid nchar(10)
price float
quantity int

Primary key: pid


Foreign key: pubid,csid

07 orders odid int


pid nchar(10)
oid nchar(10)
price float
quantity int

Primary key: pid


Foreign key: pubid,csid

08 Accounts acid int


email nvarchar(50)
emailConfirm bit
password nvarchar(50)
username nvarchar(50)
role int
created_at timestamp
status int
Primary key: acid

09 ShipmentDetails aaid int

GAMS-SRS_v1.0 Page 26 / 20
address nvarchar](50)
phonenumber nvarchar(50)
acid nvarchar (50)
Primary key: aaid

10 Contact contactid int


email nvarchar(50)

11 CategoriesNews canewId int


name nvarchar(150)
Primary keys: canewId
12 News nid integer
title nvarchar(150),
description varchar,
img nvarchar(150),
canewId int
-Primary keys: nid
-Foreign keys:canewId
13 Banner banid integer
img nvarchar(150)
status integer
create_at timestamp
-Primary keys: banid

14 ProductImg imid integer


img nvarchar(max)
pid integer
-Primary keys: imid
-Foreign keys: pid

15 ProductDetail pdid integer


numplayer integer
requiredAge integer
description nvarchar(max)
rules nvarchar(max)
timeplay nvarchar(max)
pid integer
Primary keys: pdid
-Foreign keys: pid
16 ProductCategories capid integer
caid integer
pid integer
-Primary keys: capid
-Foreign keys: caid, pid

3.2 Code Packages


[Provide the package diagram for each sub-system. The content of this section including the overall
package diagram, the explanation, package and class naming conventions in each package. Please see
the sample & description table format below]

GAMS-SRS_v1.0 Page 27 / 20
Package descriptions
No Package Description
01 Member_authorit <Description of the
y package>
02 registration <Description of the
package>
03 …

II. Requirement Specifications


1. Public Feature
1.1 UC-1:View Home Page_Home Page
a. Functional Description
UC ID and UC-1:View Home Page_Home Page
Name:
Created By: MinhVC Date Created: 16/Jun/2023
Primary Actor: Guest/User Secondary Actors: Admin/Sale/Maketing
Trigger: User accesses the website.
Description: Allows users to access and view the home page of the website. This page typically
displays featured products, promotions, and links to other sections of the site. Users
can navigate to various sections from here.
Preconditions: 1. User Authentication: The user must be authenticated, meaning they have
successfully accessed the app or website
2. Access Permissions: The user must have the necessary access permissions
to view the home page. Access rights should be checked to ensure the user
has the required privileges.
3. System Availability: The system hosting the home page must be
operational and available for user access.
4. Data Availability: The data required to populate the home page must be
accessible and up-to-date. This includes content such as articles, products,

GAMS-SRS_v1.0 Page 28 / 20
UC ID and UC-1:View Home Page_Home Page
Name:
news, or any dynamic elements on the page.
5. User Interface Ready: The user interface for the home page must be
developed and ready for display to the user.

Postconditions: 1. Home Page Displayed: The home page has been successfully displayed to
the user with all the necessary content and user interface elements.
2. User Can View Content: The user can view the content on the home page,
such as articles, products, general information, etc.
3. Data Updated (if needed): If the home page displays dynamic data, such as
the latest information, featured products, news, the data has been updated to
reflect the latest information.
4. Access Rights Checked (if needed): The system has checked the user's
access rights to ensure they have permission to view the home page.
5. System State Normalized (if prior errors occurred): If there were system
errors or issues before, the system state has been restored to normal after the
user views the home page.
6. Errors and Notifications (if errors occurred): If there were errors during
the process of viewing the home page (e.g., data errors, UI issues), the user
has been notified of the error and provided with guidance or contact
information for issue resolution.
7. Load Time and Performance (if relevant): Information regarding page
load times and performance may be recorded for monitoring and
optimization purposes.

Normal Flow 1. User opens the website.


2. The home page is displayed.
Alternative After logging in:
Flows: After logging in, users will automatically go to the Home Page
Exceptions: Error when surfing home page:
1. Not Logged In: Users are not logged in or their session has expired.
2. No Access Rights: Users lack the necessary permissions to access the home
page.
3. System Instability: System issues or maintenance are affecting access.
4. Data Not Found or Data Error: Errors when retrieving or accessing data.
5. Slow Page Load: Home page loads slowly due to weak network or heavy
data.
6. UI Errors: Display issues, browser incompatibility, or UI errors.
7. Security Breach: Security vulnerabilities or attacks.
8. Overload: Home page experiences overload due to sudden traffic or heavy
data.
Priority: Must Have
Frequency of High
Use:
Business FR1, FR2, FR3
Rules:
Other 1. User Authentication: Depending on the website or application's nature,
Information: user authentication may or may not be required to access the home page. If
user accounts are used, the home page might display personalized content

GAMS-SRS_v1.0 Page 29 / 20
UC ID and UC-1:View Home Page_Home Page
Name:
after user login.
2. Homepage Content: Provide details about what types of content are
typically found on the home page. This may include featured products,
announcements, news, promotional banners, navigation menus, search bars,
and more.
3. Homepage Customization: Some websites allow users to customize their
home page experience, such as selecting preferred topics, layouts, or
widgets. Mention if such customization options exist.

Assumptions:  User Authentication: It is assumed that users have already logged in to the
application or website before accessing the home page. This use case does
not handle the login process.
 Existing User Interface: It is assumed that there is an existing user
interface or homepage that has been developed and is ready for display to
users.

b. Business Rules
ID Business Rule Business Rule Description
FR
Access Rule Users must be logged in to view the home page.
1
Different roles may exist (e.g., regular users, administrators, editors).
FR Access Business rules should ensure that only users with valid permissions can
2 Permissions view the home page or specific content sections.

The home page may contain dynamic content such as the latest articles,
FR Dynamic
best-selling products, recent news, etc. Business rules need to ensure that
3 Content Display
this content is updated and displayed correctly.
1.2 UC-2:View News List
a. Functional Description
UC ID and UC-2:View News List
Name:
Created By: MinhVC Date Created: 16/Jun/2023
Primary Actor: Guest/User Secondary Actors: Admin/Sale/Maketing
Trigger: 1. User Clicks on "News" or "Articles" Tab: The user selects a specific tab
or menu option dedicated to news or articles, indicating their intention to
view a list of news articles.
2. User Performs a Search: The user enters search criteria related to news
articles and submits the search query, leading to the display of a list of
relevant news articles.
3. User Navigates to a News Section: If the application or website has
dedicated sections for news (e.g., sports news, tech news), the user may
navigate to one of these sections, triggering the display of news articles in
that category.
4. Scheduled News Feed: In some cases, the system may automatically trigger
the display of a news list based on a scheduled update or a specific event

GAMS-SRS_v1.0 Page 30 / 20
UC ID and UC-2:View News List
Name:
(e.g., daily news feed, breaking news alerts).
5. User Request for Notifications: If the user has requested notifications for
new articles, the system may notify the user when new articles are available,
leading to the display of the news list.
6. User Scrolling: In a continuous scroll or infinite scroll design, when the
user reaches the end of the current list of articles, the system may load
additional articles, triggering the display of more news items.

Description:
The "View News List" use case involves users accessing a list of news articles or
updates on a website or application. Users can browse through a collection of news
items to stay informed about recent developments, articles, or announcements. This
use case is common on news websites, blogs, and content-driven platforms.

Preconditions: User account has been created & authorized


Postconditions:  User logs in the system successfully
 The system tracked successful login into the Activity Log
Normal Flow 1. The user initiates the use case trigger.
2. The system responds by retrieving a list of news articles based on the user's
action or request.
3. The system displays the list of news articles, typically in a user-friendly
format, such as a grid or list, on the user's device.
4. The user can browse, read, and interact with the displayed news articles,
which may include clicking on individual articles for more details.

Alternative  If the user's access permissions are insufficient, the system may deny access
Flows: and display an error message.
 If there are no news articles available, the system may display a message
indicating that there are no articles to show.
 In the case of a search-triggered flow, the system may filter and display only
relevant articles based on the user's search criteria.
 If the system encounters errors in retrieving or displaying news articles, it
may generate error messages and prompt the user to retry or contact support.

3. User types in the Facebook account details and chooses to login


4. Facebook validates user’s login information successfully and redirect him/her
back to the system
5. Return to step 5 of normal flow.
Exceptions:  Insufficient access permissions for the user.
 System unavailability or technical errors.
 Lack of available news articles.
 Search criteria returning no results.
 Errors in loading or displaying news articles.

Priority: Must Have

GAMS-SRS_v1.0 Page 31 / 20
UC ID and UC-2:View News List
Name:
Frequency of High
Use:
Business FR1, FR2, FR3
Rules:
Other  Website Visitor/Registered User: Interested in accessing news articles and
Information: updates to stay informed about recent events or topics of interest.
 System: Responsible for retrieving and displaying news articles in a user-
friendly format, providing navigation options, and ensuring a seamless
reading experience.

Assumptions: 1. Existence of News Data: It is assumed that there is a dataset of news


articles or entries available within the system to be displayed in the news
list.
2. Valid News Data: The assumption is that the news data stored in the system
is valid, accurate, and has been verified for correctness and relevance.
3. User Authentication (if required): If accessing the news list requires user
authentication, it is assumed that the user has successfully logged in before
attempting to view the list.
4. Regular Data Updates: It is assumed that the news data is regularly
updated to ensure the freshness and relevance of the information.
5. Ready User Interface: The assumption is that the user interface to display
the news list has been developed and is ready for use.

b. Business Rules
ID Business Rule Business Rule Description
FR Only authenticated users are allowed to view the news list to
1 Access Control: ensure privacy and access control.
The news list can be sorted by criteria such as date, popularity,
category, or user preference. This rule defines the default sorting
FR
Sorting order and user options for reordering.
2

The system may provide notifications to users when new news


FR New News articles or posts are added to the list. This rule defines the
3 Notifications: notification mechanism and frequency.

1.3 UC-3:View News Detail


a. Functional Description
UC ID and View News Detail
Name:
Created By: MinhVC Date Created: 16/Jun/2023
Primary Actor: Customer Secondary Actors: None
Trigger: The trigger for this use case occurs when the user selects or clicks on a specific

GAMS-SRS_v1.0 Page 32 / 20
UC ID and View News Detail
Name:
news article from the list of news articles.

Description: Allows users to view the details of a specific blog post. This includes the full blog
content, comments, and the option to leave comments. Users can also share
Blogs_News on social media.
Preconditions:  The user must be logged into the system (if required for access).
 The system must be operational and accessible.
 The specific news article that the user wishes to view must exist and be
accessible.

Postconditions:  The user has successfully viewed the detailed content of the selected news
article.
 The user may choose to interact further with the article or return to the
news list.

Normal Flow 1. The user initiates the use case by selecting a news article from the list of
news articles.
2. The system retrieves the detailed content of the selected news article.
3. The system displays the detailed news article content, including the article's
title, text, images, and any additional information.
4. The user can read, scroll, and interact with the detailed news article content,
such as viewing images, following links, or sharing the article.

Alternative  If the user's access permissions are insufficient, the system may deny access
Flows: and display an error message.
 If the selected news article does not exist or is inaccessible, the system may
display an error message.

Exceptions:  Insufficient access permissions for the user.


 System unavailability or technical errors.
 The selected news article does not exist or is inaccessible.
 Errors in loading or displaying the detailed news article content.

Priority: Must Have


Frequency of
Use:
Business Rules: FR1, FR2, FR3
Other
Information:
Assumptions:

b. Business Rules
ID Business Rule Business Rule Description
FR Access Control:  Only authenticated and authorized users can view detailed
1 news articles.
 Some news articles may be marked as "premium" and
accessible only to users with specific subscription levels or

GAMS-SRS_v1.0 Page 33 / 20
premium access.

Content  Detailed news articles must exist and be accessible in the


FR
Availability: system before they can be viewed.
2

Content The content displayed in the detailed news article view should match the
FR
Consistency: content as it was originally published. Any updates or changes should be
3 clearly indicated
1.4 UC-4:View Product List
a. Functional Description
UC ID and
Name: UC-4:View Product List

Created By: MinhVC Date Created: 16/Jun/2023


Primary Actor: Customer Secondary Actors: None
Trigger: The trigger for this use case occurs when the customer/user expresses the intent to
view a list of available products. This could be through actions like clicking on a
"Products" tab, selecting a product category, or performing a search.

Description: Permits users to browse through a list of board game products. Users can see
product thumbnails, names, prices, and short descriptions. Clicking on a product
takes them to the Product Details page.
Preconditions:  The customer/user must have access to the system or website.
 The system must be operational and accessible.

Postconditions:  The customer/user has successfully viewed the list of available products.
 The customer/user may choose to interact further with individual products,
such as clicking on them for more information or adding them to a shopping
cart.

Normal Flow 1. The customer/user initiates the use case by selecting a category, performing
a search, or taking an action that leads to viewing the product list.
2. The system retrieves and displays a list of available products based on the
customer's/user's request.
3. The product list is presented in a user-friendly format, typically as a grid or
list, containing product names, images, prices, and brief descriptions.
4. The customer/user can browse, filter, sort, and interact with the product list.
They can click on individual products to view more details.

Alternative  If the customer/user's access permissions are insufficient, the system may
Flows: deny access and display an error message.
 If there are no products available in the selected category or matching the
search criteria, the system may display a message indicating that there are
no products to show.
 If there are technical issues or errors during the retrieval or display of the
product list, the system may generate error messages and prompt the
customer/user to retry or contact support.

GAMS-SRS_v1.0 Page 34 / 20
UC ID and
Name: UC-4:View Product List

Exceptions: 2.0.E1 System can’t authenticate the user


1. The Error Message screen is shown to the user
2. User cancels the logging in => UC stops, change to UC-1_View Home Page
3. User clicks “Forgot Password?” link => change to UC-3_Reset Password
4. User clicks “Register” link => change to UC-4_Register User Account
Priority: Must Have
Frequency of
Use:
Business Rules: FR1, FR2, FR3
Other
Information:
Assumptions: 1. Product Availability: It is assumed that there are products available for
display in the system's database or inventory. In other words, products have
been added and are in stock.
2. Data Accuracy: The product data, including names, descriptions, prices, and
images, are assumed to be accurate and up to date.
3. User Authentication: Users are required to log in to the system before
viewing the product list. User authentication is a prerequisite for accessing
the list.
4. System Availability: The system is assumed to be operational and
accessible when users attempt to view the product list.
5. User Interface Readiness: The user interface (UI) components and layouts
for presenting the product list have been designed and developed and are
ready for use.

b. Business Rules
ID Business Rule Business Rule Description
 Only authenticated users are allowed to view the
product list.
FR Access Control:
 Some products may be restricted and accessible only to
1
specific user groups or based on user roles.

 Products should be presented in a clear and user-


friendly format, including product names, images,
Product prices, and brief descriptions.
FR
Presentation:  The order in which products are displayed (e.g., by
2
popularity, price, or relevance) may follow specific
rules or user preferences.

GAMS-SRS_v1.0 Page 35 / 20
Product Products listed in the view must be available in stock for
FR Availability and purchase. Out-of-stock or discontinued products should not
3 Stock: appear in the list.

1.5 UC-5:View Product Details


a. Functional Description
UC ID and UC-5:View Product Details
Name:
Created By: MinhVC Date Created: 16/Jun/2023
Primary Actor: Customer Secondary Actors: None
Trigger: The trigger for this use case occurs when the customer/user selects a specific
product from the list of available products or performs an action that leads to
viewing the product details.

Description: Enables users to view detailed information about a product. This includes high-
resolution images, a full product description, customer reviews, pricing, and
availability. Users can add the product to their cart from here.
Preconditions:  The customer/user must have access to the system or website.
 The system must be operational and accessible.
 The specific product that the customer/user wishes to view must exist in the
system's database.

Postconditions:  The customer/user has successfully viewed the detailed information about
the selected product.
 The customer/user may choose to interact further with the product, such as
adding it to a shopping cart or returning to the product list.

Normal Flow 1. The customer/user initiates the use case by selecting a specific product from
the list of available products or performing an action that leads to viewing
the product details.
2. The system retrieves and displays detailed information about the selected
product, including its name, description, price, specifications, images, and
availability status.
3. The product details are presented in a user-friendly and informative format,
allowing the customer/user to make an informed decision.
4. The customer/user can interact with the product details, such as zooming in
on images, reading the product description, checking specifications, and
exploring additional product-related content.

Alternative  If the customer/user's access permissions are insufficient, the system may
Flows: deny access and display an error message.
 If the selected product does not exist or is inaccessible, the system may
display an error message.

Exceptions:  Insufficient access permissions for the customer/user.


 System unavailability or technical errors.

GAMS-SRS_v1.0 Page 36 / 20
UC ID and UC-5:View Product Details
Name:
 The selected product does not exist or is inaccessible.
 Errors in loading or displaying the product details.

Priority: Must Have


Frequency of
Use:
Business Rules: FR1, FR2, FR3
Other
Information:
Assumptions: 1. Product Availability: It is assumed that the specific product whose details
the customer/user wishes to view exists and is available in the system's
database or inventory.
2. Data Accuracy: The product details, including names, descriptions, prices,
specifications, images, and availability status, are assumed to be accurate
and up-to-date.
3. User Authentication: Users are required to log in to the system before
viewing product details. User authentication is a prerequisite for accessing
detailed product information.

b. Business Rules
ID Business Rule Business Rule Description
All product details, including names, descriptions,
FR Content Accuracy: prices, specifications, and images, should be accurate
1 and up-to-date.

 If product reviews and ratings are displayed,


rules for moderating and presenting this content
Product Reviews and should be established.
FR
Ratings (if applicable):  Users may be able to submit reviews and ratings,
2
and guidelines for user-generated content should
be defined.

The system may provide recommendations for related or


FR Product Recommendations: complementary products to enhance the user's shopping
3 experience.

1.6 UC-6:View Cart Contents


a. Functional Description
UC ID and UC-6:View Cart Contents
Name:
Created By: MinhVC Date Created: 16/Jun/2023
Primary Actor: Customer Secondary Actors: None
Trigger: User clicks Login button from the page header, or

GAMS-SRS_v1.0 Page 37 / 20
UC ID and UC-6:View Cart Contents
Name:
User accesses an authenticated feature (from a link or type the page URL directly
into the address bar)
Description: Allows users to view the contents of their shopping cart. They can see a list of
added products, their quantities, individual prices, and a total order summary. Users
can edit or remove items in the cart.
Preconditions:  The customer/user must be logged into the system.
 The system must be operational and accessible.
 The customer/user must have added one or more items to their shopping
cart.

Postconditions:  The customer/user has successfully viewed the contents of their shopping
cart and may choose to take further actions, such as updating quantities,
removing items, or proceeding to checkout.

Normal Flow 1. The customer/user initiates the use case by selecting the "View Cart" option
from the user interface.
2. The system retrieves and displays the current contents of the
customer/user's shopping cart.
3. The cart contents are presented in a clear and organized format, listing the
items, quantities, prices, and a subtotal.
4. The customer/user can review the items in their cart, update quantities,
remove items, or proceed to checkout.

Alternative  If the customer/user's access permissions are insufficient, the system may
Flows: deny access to view the cart contents and display an error message.
 If the customer/user has not added any items to their cart, the system may
display a message indicating that the cart is empty.
 If there are technical issues or errors during the retrieval or display of cart
contents, the system may generate error messages and prompt the
customer/user to retry or contact support.

Exceptions:  Insufficient access permissions for the customer/user.


 System unavailability or technical errors.
 The customer/user's shopping cart is empty.
 Errors in loading or displaying the cart contents.

Priority: Must Have


Frequency of
Use:
Business Rules: FR1, FR2, FR3
Other
Information:
Assumptions: 1. Cart Initialization: Users are assumed to have added one or more items to
their shopping cart before attempting to view the cart contents. An empty
cart is not typically accessible for viewing.
2. Cart Item Accuracy: The items displayed in the cart should accurately
reflect what the user has added, including item names, quantities, prices,
and any applied discounts.

GAMS-SRS_v1.0 Page 38 / 20
UC ID and UC-6:View Cart Contents
Name:
3. Currency and Pricing: Pricing information is displayed in the currency
relevant to the user's location or preferences, and currency conversion rules
are applied if necessary.

b. Business Rules
ID Business Rule Business Rule Description
 Cart contents should be presented in a clear and organized
format, listing item names, quantities, prices, and a
Cart Item
FR subtotal.
Presentation:
1  Users may have options to view additional details about
each cart item, such as product images or descriptions.

 The items displayed in the cart should accurately reflect


Cart Item
FR what the user has added, including item names, quantities,
Accuracy:
2 prices, and applied discounts.

 Users should be able to interact with the cart contents, such


as updating quantities, removing items, or clearing the
Cart Item entire cart.
FR
Interactivity:  The system should validate and update cart items based on
3
user actions.

1.7 UC-7:Provide Contact Details


a. Functional Description
UC ID and UC-7:Provide Contact Details
Name:
Created By: MinhVC Date Created: 16/Jun/2023
Primary Actor: Customer Secondary Actors: None
Trigger:  The trigger for this use case occurs when the customer/user reaches a point
in the process (e.g., checkout, registration) where they are prompted to
provide contact details.

Description: Lets users provide contact information during the checkout process. Users enter
their shipping address, payment details, and any discount codes.
Preconditions:  The customer/user must be logged into the system (if applicable).
 The system must be operational and accessible.
 The customer/user must have initiated a process that requires the
submission of contact details, such as making a purchase or registering an
account.

Postconditions:  The customer/user has successfully provided their contact details, which are
securely stored in the system for further communication and order

GAMS-SRS_v1.0 Page 39 / 20
UC ID and UC-7:Provide Contact Details
Name:
processing.

Normal Flow 1. The customer/user initiates the use case by reaching the point in the process
where contact details are required.
2. The system presents a form or interface for the customer/user to enter their
contact information. This may include fields for name, address, phone
number, and email address.
3. The customer/user enters their contact details into the provided fields.
4. The system validates the entered contact details for completeness and
accuracy.
5. If there are validation errors, the system notifies the customer/user and
provides feedback to correct the information.
6. If the contact details are valid, the system securely stores the information in
the customer/user's account or order record.
7. The customer/user may continue with the process, such as completing a
purchase or finishing the account registration.

Alternative  If the customer/user's access permissions are insufficient, the system may
Flows: deny access to the contact details submission form and display an error
message.
 If there are technical issues or errors during the submission or storage of
contact details, the system may generate error messages and prompt the
customer/user to retry or contact support.

Exceptions:  Insufficient access permissions for the customer/user.


 System unavailability or technical errors during contact details submission.
 Validation errors in the provided contact details.
 Errors in securely storing the contact details.

Priority: Must Have


Frequency of 1. E-commerce Platforms: On e-commerce websites, users typically provide
Use: contact details during the checkout process. The frequency depends on how
often users make purchases.
2. Account Registration: Users may also provide contact details when
registering for an account on a website or application. This occurs when
users create new accounts, and it's generally not as frequent as the checkout
process.
3. Profile Updates: Users might update their contact details periodically,
especially when their information changes (e.g., moving to a new address,
changing email addresses, updating phone numbers).
4. Subscription Services: In subscription-based services, users may provide
contact details during the initial subscription setup. The frequency depends
on user subscriptions and renewals.

GAMS-SRS_v1.0 Page 40 / 20
UC ID and UC-7:Provide Contact Details
Name:
Business Rules: FR1, FR2, FR3
Other 1. Multi-language Support: If the system serves a diverse user base, it should
Information: provide support for multiple languages when collecting and displaying
contact details.
2. Error Handling and Feedback: The system should provide clear and
informative error messages to guide users in correcting any validation errors
when providing contact details.
3. Consent Management: If the system collects user consent for
communication (e.g., newsletters, promotional offers), it should maintain a
record of user preferences and provide mechanisms for users to update their
preferences or opt-out.
4. User Confirmation: Users may need to confirm the accuracy of their
provided contact details before final submission to reduce data entry errors.
5. Verification Mechanisms: For certain critical contact information (e.g.,
email addresses), the system may implement verification mechanisms (e.g.,
sending a verification email) to ensure data accuracy.

Assumptions: 1. System Availability: The system is assumed to be operational and


accessible when users attempt to provide their contact details.
2. User Intent: Users have a legitimate intent to provide their contact details,
which may occur during processes such as account registration, checkout,
or profile updates.
3. Contact Data Format: Users will enter their contact information in the
specified format (e.g., name, address, phone number, email) following any
guidelines provided by the system.

b. Business Rules
ID Business Rule Business Rule Description
 Contact details should be securely stored in compliance
Data Privacy and with data protection and privacy regulations.
FR
Security:  User consent for communication (if applicable) should
1
be collected and managed according to privacy laws.

 Users are responsible for providing accurate and up-to-


Data Accuracy and date contact details.
FR
Updates:  Users should have the ability to update their contact
2
information as needed.

 Users may have the option to specify their


communication preferences, such as opting in or out of
Communication
FR marketing emails.
Preferences:
3  Users' communication preferences should be respected
by the system.

GAMS-SRS_v1.0 Page 41 / 20
1.8 UC-8: Cart Completion
a. Functionalities
Provide the functional description for the use cases using the template/guides below
Functional Description Template
UC ID and UC-8 Cart Completion
Name:
Created By: Datvm Date Created: 16/9/2023
Primary Actor: Customer Secondary Actors: None
Trigger: The customer clicks on the "Complete Purchase" button on the shopping cart page.
Description: This use case describes the process of a customer completing a purchase by
confirming and finalizing the items in their shopping cart.
Preconditions: The customer has items in their shopping cart.
The customer is logged in.
Postconditions: The order is placed and saved in the order history.
Inventory is updated to reflect the purchased items.
Payment is processed successfully.
Normal Flow: The customer navigates to the shopping cart.
The customer reviews the items in the cart.
The customer clicks on the "Proceed to Checkout" button.
The system prompts the customer to confirm their delivery address and payment
method.
The customer confirms the details.
The system processes the payment through the payment gateway.
Upon successful payment, the system confirms the order.
An order confirmation email is sent to the customer.
The system updates the inventory to reduce the available quantity of purchased
items.
The order is added to the customer's order history.
Alternative If the customer chooses to edit their cart during the checkout process, they can go
Flows: back to the shopping cart and make changes before proceeding.
If the payment fails, the system notifies the customer and provides options to retry
the payment or use a different payment method.
Exceptions: If the customer is not logged in, they are prompted to log in or create an account
before proceeding with the purchase.
Priority: High
Frequency of Frequent
Use:
Business Rules: Customers can only complete a purchase if the items in their cart are available in
the inventory.
Payment processing must be secure and compliant with industry standards.
Other This use case is a critical part of the e-commerce system's functionality and must be
Information: robust and reliable.
Assumptions: Customers have already added items to their shopping cart.
The payment gateway is available and functional during the checkout process.
The system has access to up-to-date inventory information.

GAMS-SRS_v1.0 Page 42 / 20
b. Business Rules
Provide the business rules those are applied only to the use case
ID Business Rule Business Rule Description
FR
Password Encoding User’s password must be encoded with MD5 hashing
1

1.9 UC-9: Feedback


a. Functionalities
Provide the functional description for the use cases using the template/guides below
Functional Description Template
UC ID and UC-9: Feedback
Name:
Created By: Datvm Date Created: 18/9/2023
Primary Actor: Customer Secondary Actors: None
Trigger: The customer submits feedback through the company's website or application.
Description: This use case describes the process of a customer providing feedback about a
product or service.
Preconditions: The customer must have access to the company's website or application.
The customer must be logged in (if required for feedback submission).
Postconditions: The feedback is recorded in the company's database.
The customer may receive a confirmation message acknowledging their feedback.
Normal Flow: The customer accesses the feedback submission page.
The customer enters their feedback in the provided form.
The customer submits the feedback.
The system records the feedback in the database.
The system sends a confirmation message to the customer (optional).
Alternative If the customer is not logged in, they may be prompted to log in or continue
Flows: without logging in.
If there are technical issues during submission, an error message is displayed, and
the customer is given the option to retry.
Exceptions: The customer may encounter validation errors if they do not provide required
information.
The system may experience downtime or technical issues.
Priority: Must Have
Frequency of High
Use:
Business Rules: Feedback should include a description and may include optional fields such as
product/service name, category, and severity.
Feedback must adhere to the company's terms of service and content guidelines.
Other Feedback may be used to improve products/services, resolve customer issues, and
Information: gather insights.
Assumptions: Customers have internet access and can use the company's website or application.
The company has a system in place to manage and respond to customer feedback.

b. Business Rules
Provide the business rules those are applied only to the use case

GAMS-SRS_v1.0 Page 43 / 20
ID Business Rule Business Rule Description
FR
Password Encoding User’s password must be encoded with MD5 hashing
1

1.10 UC-10:User login


a. Functionalities
Provide the functional description for the use cases using the template/guides below
Functional Description Template
UC ID and UC-10: User login
Name:
Created By: Datvm Date Created: 18/9/2023
Primary Actor: User Secondary Actors: None
Trigger: User attempts to access a secure system or application.
Description: This use case describes the process of a user logging into a secure system or
application.
Preconditions: The user must have a valid account in the system.
The system or application is running and accessible.
Postconditions: The user is either successfully logged in or denied access.
Normal Flow: The user accesses the login page.
The system displays the login form.
The user enters their username and password.
The system validates the user's credentials.
If the credentials are valid, the system logs the user in and grants access.
If the credentials are invalid, an error message is displayed, and the user is
prompted to re-enter their credentials.
Once logged in, the user can access the system's features and functions.

Alternative If the user forgets their password, they can request a password reset link.
Flows: After multiple failed login attempts, the user may be temporarily locked out for
security reasons.
Exceptions: Technical issues may prevent the user from logging in (e.g., server downtime).
User account may be locked or disabled by an administrator.

Priority: High
Frequency of Very high
Use:
Business Rules: Users must have a valid account to log in.
Passwords may require a minimum length and complexity.
Account lockout policy may apply after a certain number of failed login attempts.
Password reset mechanisms should be in place for forgotten passwords.
Other Multi-factor authentication (MFA) may be implemented for additional security.
Information: User sessions should have a timeout to automatically log users out after a period of
inactivity.
Assumptions: Users have been properly registered and provided with login credentials.
The system has been set up to handle user authentication and authorization.
Security measures are in place to protect user credentials and data during login.

GAMS-SRS_v1.0 Page 44 / 20
b. Business Rules
Provide the business rules those are applied only to the use case
ID Business Rule Business Rule Description
FR
Password Encoding User’s password must be encoded with MD5 hashing
1

1.11 UC-11:User Register


a. Functionalities
Provide the functional description for the use cases using the template/guides below
Functional Description Template
UC ID and UC-11: User Register
Name:
Created By: Datvm Date Created: 19/9/2023
Primary Actor: User Secondary Actors: None
Trigger: The user wants to create a new account on the system.
Description: This use case describes the process of a user registering for a new account on the
system.
Preconditions: The user has access to the registration page.
The system is operational and online.
Postconditions: A new user account is created in the system.
The user is logged into their newly created account.
Normal Flow: User navigates to the registration page.
User enters their personal information, including name, email address, and
password.
User submits the registration form.
System validates the provided information.
If validation is successful, the system creates a new user account and logs the user
in.
User is redirected to their dashboard or the home page.
Alternative If validation in step 4 fails, the system displays error messages and prompts the
Flows: user to correct their input.
If the provided email address is already associated with an existing account, the
system should inform the user and ask them to use a different email address.
Exceptions: If the system is offline or experiencing technical issues, the registration process
cannot proceed.
If there are security breaches or suspicious activities during registration, the system
may trigger security measures, such as account verification.
Priority: High
Frequency of Frequent
Use:
Business Rules: Passwords must meet specified complexity requirements.
Usernames or email addresses must be unique within the system.
Users may need to agree to terms and conditions during registration.
Other The registration form may include additional fields for optional information like
Information: profile pictures, phone numbers, etc.

GAMS-SRS_v1.0 Page 45 / 20
Assumptions: Users have access to a device with an internet connection to complete the
registration process.
The system follows best practices for user data security and privacy.
Please note that this is just an example, and the actual details may vary depending
on your specific system or application requirements.

b. Business Rules
Provide the business rules those are applied only to the use case
ID Business Rule Business Rule Description
FR
Password Encoding User’s password must be encoded with MD5 hashing
1

1.12 UC-12:Reset Password


a. Functionalities
Provide the functional description for the use cases using the template/guides below
Functional Description Template
UC ID and UC-12:Reset Password
Name:
Created By: Datvm Date Created: 19/9/2023
Primary Actor: User Secondary Actors: None
Trigger: User initiates a password reset request, typically by clicking on a "Forgot Password"
link on the login page.
Description: This use case outlines the process of resetting a user's forgotten password in a
system. It is triggered when a user initiates a password reset request, typically by
clicking on a "Forgot Password" link on the login page. The primary actor is the
user, and there are no secondary actors involved.
Preconditions: The user must have an existing account in the system.
The user must be logged out or in a state where they cannot access their account due
to a forgotten password.
Postconditions: The user's password is successfully reset.
The user is notified of the password reset.
Normal Flow: User initiates the password reset process by providing their email.
The system verifies the email, sends a reset link to the user, and guides them
through setting a new password.
The user's password is updated, and they are redirected to the login page with a
confirmation message.
Alternative If the user's email is not found in the system, the process ends.
Flows:
Exceptions: Technical issues with sending the reset email are handled with error messages.
Invalid or expired reset tokens are addressed with error messages and a request to
start the process again.
Priority: High
Frequency of High
Use:
Business Rules: Password reset tokens should have an expiration time.
Password complexity rules should be enforced.
Other Security measures, such as CAPTCHA or additional identity verification, may be

GAMS-SRS_v1.0 Page 46 / 20
Information: included.
Users are assumed to have access to their email accounts for the reset link.
Assumptions: Users are responsible for the security of their email accounts.

b. Business Rules
Provide the business rules those are applied only to the use case
ID Business Rule Business Rule Description
FR
Password Encoding User’s password must be encoded with MD5 hashing
1

1.13 UC-13:Change Password


a. Functionalities
Provide the functional description for the use cases using the template/guides below
Functional Description Template
UC ID and UC-13: Change Password
Name:
Created By: Datvm Date Created: 19/9/2023
Primary Actor: Registered User Secondary Actors: None
Trigger: The user decides to change their password.
Description: This use case describes the process of a registered user changing their password
within the system.
Preconditions: The user must be logged into their account.
The user must have navigated to the account settings or profile page.
Postconditions: The user's password is successfully updated in the system.
The user is logged out and prompted to log in with the new password.
Normal Flow: User clicks on the "Change Password" option in the account settings.
User is prompted to enter their current password.
User enters their current password.
User is prompted to enter a new password.
User enters a new password.
User confirms the new password.
System validates the current password.
System validates the new password against password strength criteria.
If validations are successful, the system updates the user's password.
User is logged out and prompted to log in with the new password.
Alternative None
Flows:
Exceptions: If the current password entered by the user is incorrect, an error message is
displayed, and the password change process is halted.
If the new password does not meet the system's password strength criteria, the user
is prompted to choose a stronger password.
If there is a system error during the password change process, an error message is
displayed, and the process is halted.
Priority: Must Have
Frequency of High
Use:
Business Rules: Passwords must meet minimum complexity requirements (e.g., length, special

GAMS-SRS_v1.0 Page 47 / 20
characters).
Users should not be able to change their password without logging into their
account.
Other None
Information:
Assumptions: The user knows their current password.
The user has access to their registered email address for potential password reset
requests.

b. Business Rules
Provide the business rules those are applied only to the use case
ID Business Rule Business Rule Description
FR
Password Encoding User’s password must be encoded with MD5 hashing
1

1.14 UC-14:User Profile


a. Functionalities
Provide the functional description for the use cases using the template/guides below
Functional Description Template
UC ID and UC-14: User Profile
Name:
Created By: datvm Date Created: 19/9/2023
Primary Actor: Registered User Secondary Actors: None
Trigger: The user logs in or accesses their profile settings.
Description: This use case describes the process of a registered user accessing and managing
their user profile settings on a website or application.
Preconditions: The user must be registered and logged in.
The user has an existing user profile.
Postconditions: The user can view and edit their user profile information.
Changes made to the user profile are saved and reflected in the system.
Normal Flow: User logs in to the website/application.
User navigates to the "User Profile" section.
User can view their existing profile information (e.g., name, email, profile picture).
User has the option to edit their profile information (e.g., update name, email,
password, profile picture).
User makes desired changes and saves them.
The system updates the user's profile with the new information.
Alternative If the user forgets their password, they can initiate a password reset flow.
Flows:
Exceptions: If the user's session expires, they are prompted to log in again.
Priority: Must Have
Frequency of High
Use:
Business Rules: User profile information must be stored securely.
Password change requests require re-authentication.
Other User profile settings may include additional options such as notification
Information: preferences, privacy settings, and contact information.

GAMS-SRS_v1.0 Page 48 / 20
Assumptions: The system has a registration and login process in place.
User profiles are associated with registered accounts.
Users have permission to edit their own profiles.
Please note that this is a sample template, and you should customize it according to
your specific project's needs and requirements.

b. Business Rules
Provide the business rules those are applied only to the use case
ID Business Rule Business Rule Description
FR
Password Encoding User’s password must be encoded with MD5 hashing
1

2. Common Feature
2.1 UC-2_Login System
a. Functional Description
UC ID and UC-2_Login System
Name:
Created By: MinhNNT Date Created: 16/Jun/2023
Primary Actor: Customer Secondary Actors: None
Trigger: User clicks Login button from the page header, or
User accesses an authenticated feature (from a link or type the page URL directly
into the address bar)
Description: As a user, I want to be able to log into the system so that I can use the system’s
authenticated features and access my personalized account.
Preconditions: User account has been created & authorized
Postconditions:  User logs in the system successfully
 The system tracked successful login into the Activity Log
Normal Flow 2.0 Login System
1. User accesses the User Login screen
2. User types in the login details or choo other login options (see 2.1 and 2.2)
3. User clicks the Login button
4. System validates the login details (see 2.0.E1)
5. System allows user to access
6. System tracks user’s success login to the Activity Log
7. System accesses the Home Page (or the previous calling page if any)
Alternative 2.1 Google Login
Flows: 1. User chooses to login system using Google account
2. System redirects the user to the Google’s Login screen
3. User types in the Google account details and chooses to login
4. Google validates user’s login information successfully and redirect him/her back
to the system
5. Return to step 5 of normal flow.

GAMS-SRS_v1.0 Page 49 / 20
UC ID and UC-2_Login System
Name:
2.2 Facebook Login
1. User chooses to login system using Facebook account
2. System redirects the user to the Facebook’s Login screen
3. User types in the Facebook account details and chooses to login
4. Facebook validates user’s login information successfully and redirect him/her
back to the system
5. Return to step 5 of normal flow.
Exceptions: 2.0.E1 System can’t authenticate the user
1. The Error Message screen is shown to the user
2. User cancels the logging in => UC stops, change to UC-1_View Home Page
3. User clicks “Forgot Password?” link => change to UC-3_Reset Password
4. User clicks “Register” link => change to UC-4_Register User Account
Priority: Must Have
Frequency of
Use:
Business Rules: FR1, FR2, FR3
Other
Information:
Assumptions:

b. Business Rules
ID Business Rule Business Rule Description
FR Password
User’s password must be encoded with MD5 hashing
1 Encoding
User can’t be authenticated to login the system if below cases
FR Invalid  His/her logging-in details are incorrect
2 Logging In  His/her account has not been verified
 His/her account has been locked or blocked
FR Account If user inputs wrong logging-in details 6 times continuously, his/her
3 Locking account would be locked in 30 minutes

2.1 UC14 - User Profile


a. Functional Description

UC ID and UC14 - User Profile


Name:

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: User Secondary Actors: N/A

GAMS-SRS_v1.0 Page 50 / 20
Trigger: Users accessing profile management

Description: Users can manage their profile information.

Preconditions: User is logged in.

Postconditions: Profile management page is displayed.

Normal Flow: 14.0 User Profile

1. User clicks on the "Profile" link in the application's navigation menu.

2. System displays the user's profile information

3. User clicks the "Edit Profile" button.

4. User makes changes to their profile information.

5. System validates the changes.

6. the user clicks the "Save Changes" button.

7. System updates the user's profile with the new information.

Alternative Validation Errors During Editing


Flows:
1 System displays error messages.

2 User corrects the errors.

3 User clicks the "Save Changes" button again.

4 System revalidates the changes.

GAMS-SRS_v1.0 Page 51 / 20
Exceptions: Validation Errors During Editing

- If there are validation errors (e.g., invalid email format) when the user tries to save
changes:

1 System displays error messages.

2 User corrects the errors.

3 User clicks the "Save Changes" button again.

4 System revalidates the changes.

5 If there are still validation errors, the system repeats steps 3.2.1 to 3.2.4.

6 If there are no validation errors, the system proceeds with steps 4.0 onward.

Priority: High, Must Have

 Frequency: Moderate
Frequency of  Users may access their user profiles periodically to update information or
Use: manage preferences.

Business Rules: BR1, BR2, BR3

 Users often use this feature to update personal information, change profile
Other pictures, or manage communication preferences.
Information:  User profile data should be kept up-to-date.

 Users are logged into their accounts.


Assumptions:  Users want to view and potentially edit their profile information.
 Users are providing accurate information when editing their profiles.

b. Business Rules

ID Business Rule Business Rule Description

User Users must authenticate using valid credentials (e.g.,


BR1 Authentication username/password).

BR2 Data Validation Input data must be validated for accuracy, completeness, and security.

GAMS-SRS_v1.0 Page 52 / 20
BR3 Data Privacy User data must be handled in compliance with data privacy regulations.

2.1 UC15 - User Authorization - Manage User Permissions


a. Functional Description

UC ID and UC15 - User Authorization - Manage User Permissions


Name:

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: Users Secondary Actors:

Trigger: Users accessing permissions and roles management

Description: Users can manage permissions and roles.

Preconditions: User is logged in.

Postconditions: Permissions and roles management page is displayed.

Normal Flow: 1. User clicks on the "Permissions" link in the application's navigation menu.

2. System displays the user's permissions and roles.

3 User selects a permission or role to manage.

4 User makes changes to the selected permission or role.

5 the user clicks the "Save Changes" button.

6 System updates the selected permission or role.

Alternative Validation Errors During Editing


Flows:
1 System displays error messages.

2 User corrects the errors.

3 User clicks the "Save Changes" button again.

GAMS-SRS_v1.0 Page 53 / 20
4 System revalidates the changes.

Exceptions: Validation Errors During Editing

- If there are validation errors when the user tries to save changes to a permission or
role:

1 System displays error messages.

2 User corrects the errors.

3 User clicks the "Save Changes" button again.

4 System revalidates the changes.

Priority: High, Must Have

 Frequency: Low to Moderate


Frequency of  User authorization is performed by administrators to manage roles and
Use: permissions. It occurs as needed but not frequently.

Business Rules: BR1, BR2, BR3

 User roles and permissions should be clearly defined to ensure proper


Other access control.
Information:  Admins should be aware of their responsibilities in managing user roles.

 Users are logged into their accounts.


Assumptions:  Users want to view and potentially edit their profile information.
 Users are providing accurate information when editing their profiles.

b. Business Rules

User Users must authenticate using valid credentials (e.g.,


BR1 Authentication username/password).

BR2 Data Validation Input data must be validated for accuracy, completeness, and security.

BR3 Data Privacy User data must be handled in compliance with data privacy regulations.

GAMS-SRS_v1.0 Page 54 / 20
3. Marketing Feature
3.* UC-23_Product List
a. Functional Description

ID and Name: UC-23 Product List


Created By: TuanTN Date Created: 16/9/2023
Primary Actor: Marketing Secondary Actors: Admin
This use case permits Marketing to browse through a list of board game products,
Description: view product details, manage product inventory, and make updates as needed
Trigger: Marketing accesses the product list functionality in the panel.
1. The Marketing is logged into the panel.
Preconditions: 2. The system is operational and accessible.
1. The Marketing views the list of board game products.
Postconditions: 2. The Marketing may update product information or inventory.
Normal Flow: 1. The Marketing logs into the admin panel.
2. The Marketing selects the "Products List" option.
3. The system displays a list of board game products, including product details.
4. The Marketing can view and manage product information and inventory.
Alternative If the marketing administrator does not have permission to access the
Flows: Products List page, they will be redirected to the login page.
If the marketing administrator clicks the Cancel button, any changes they
have made will not be saved.

Exceptions: If the system is unavailable, the marketing administrator will receive an


error message.
If the marketing administrator tries to make a change to a product that is
already out of stock, they will receive an error message.

Priority: High
Frequency of Daily
Use:
Business Rules:
Only marketing administrators have access to the Products List page.
Products must have a unique name and category.
Product inventory levels must be accurate.
Product prices must be greater than zero.

Other The marketing administrator has the necessary permissions to access the
Information: Products List page.
The marketing administrator is familiar with the system and how to use it.
The system is available and functioning properly.

Assumptions: None

GAMS-SRS_v1.0 Page 55 / 20
b. Business Rules
3.2 UC-24_Product Details
a. Functional Description

ID and Name: UC-24 Product Details


Created By: TuanTN Date Created: 16/9/2023
Primary Actor: Marketing Secondary Actors: Admin

This use case enables Marketing to view and edit detailed information about a
Description: product, including images, descriptions, pricing, and availability
Trigger: Marketing accesses the product details editing functionality in the admin panel.
1. The Marketing is logged into the panel.
Preconditions: 2. The system is operational and accessible.
1. The Marketing views and may edit the product's detailed information.
Postconditions:
Normal Flow: 1. The Marketing logs into the panel.
2. The Marketing selects the "View Product Details " option.
3. The system displays detailed information about the selected product, including
images, descriptions, pricing, and availability.
4. The Marketing may make edits to the product's information.

Alternative If the Marketing is not logged in, the system will prompt the Marketing to log
Flows: in.
If the product does not exist, the system will display a message informing
the Marketing that the product does not exist.

Exceptions: If the system cannot save the changes, the system will display an error
message to the Marketing .

Priority: High
Frequency of
Use:
Medium

Business Rules: The product details page must include all of the required information,
including the images, descriptions, pricing, and availability.
The Marketing must be logged in to view the product details page.
The Marketing must be able to edit the detailed information about the
product.

Other The product details page may also include additional information, such as
Information: product reviews and related products.

Assumptions: The Marketing has a stable internet connection.


The Marketing is using a supported browser.

GAMS-SRS_v1.0 Page 56 / 20
b. Business Rules
3.3 UC-25_Customer List
a. Functional Description

ID and Name: UC-25 Customer List


Created By: TuanTN Date Created: 17/9/2023
Primary Actor: Marketing Secondary Actors:

This use case shows statistics of posts, products, customers, feedbacks, and the
Description: trend of new customers by day for the last 7 days. It allows for adjusting the start
date and end date.
Trigger: Marketing accesses the customer statistics and trend functionality
1. The Marketing is logged into the panel.
Preconditions: 2. The system is operational and accessible.
The Marketing views the customer statistics and trend information.
Postconditions:

Normal Flow: 1. The Marketing logs into the panel.


2. The Marketing selects the "Customers List" option.
3. The system displays statistics including:
- Number of posts
- Number of products
- Number of registered customers
- Number of feedbacks
- Trend of new customers by day for the last 7 days
4. The Marketing can adjust the start date and end date for the trend analysis.

Alternative If the Marketing is not logged in, the system will prompt the Marketing to log in.
Flows: If the Marketing does not have permission to browse the customer list, the system will
display an error message.
Exceptions: If the system cannot retrieve the customer list, the system will display an error
message.
Priority: Medium
Frequency of Medium
Use:
Business Rules:Marketing must be logged in.
Marketing must have permission to browse the customer list.
Other The customer list page may also include additional information, such as the customer's
Information: registration date and last login date.
Assumptions: The Marketing has a stable internet connection. The Marketing is using a supported
browser.

GAMS-SRS_v1.0 Page 57 / 20
b. Business Rules
3.4 UC-26_Customer Details
a. Functional Description

ID and Name: UC-26 Customer Details


Created By: TuanTN Date Created: 16/9/2023
Primary Actor: Marketing Secondary Actors: Admin

This use case enables Marketing to view detailed information about a specific
Description: customer, including customer profiles, order history, and contact details.
Trigger: Marketing accesses the customer details viewing functionality in the panel..
1. The Marketing is logged into the panel.
Preconditions: 2. The system is operational and accessible.
The Marketing views the detailed information of the selected customer.
Postconditions:
Normal Flow: 1. The Marketing logs into the panel.
2. The Marketing selects the "View Customer Details" option.
3. The system prompts the Marketing to select a specific customer.
4. The Marketing selects a customer.
5. The system displays the detailed information of the selected customer, including
customer profiles, order history, and contact details.

Alternative If the customer does not exist in the system, the system will display an error
Flows: message.
If the Marketing is not logged in, the system will redirect the administrator to
the login page.

Exceptions: The system may experience a technical error and be unable to display the
customer's information.
The customer's information may be incomplete or inaccurate.

Priority: High
Frequency of Medium
Use:
Business Rules: The Marketing must have permission to view customer details.
The customer's personal information must be protected and only accessible
to authorized users.

Other -
Information:
Assumptions: The administrator has a basic understanding of the system.
The customer's information is accurate and up-to-date.

GAMS-SRS_v1.0 Page 58 / 20
b. Business Rules
3.5 UC-27_Feedbacks List
a. Functional Description

ID and Name: UC-27 Feedbacks List


Created By: TuanTN Date Created: 16/9/2023
Primary Actor: Marketing Secondary Actors: Admin

This use case permits Marketing to browse a list of submitted feedback and
Description: reviews, allowing them to see feedback ratings, comments, and product
associations
Trigger: Marketing accesses the feedback browsing functionality in the panel.
1. The Marketing is logged into the panel.
Preconditions: 2. The system is operational and accessible.
1. The Marketing views the list of submitted feedback and reviews.
Postconditions:
Normal Flow: 1. The Marketing logs into the panel.
2. The Marketing selects the "Browse Feedbacks" option.
3. The system displays a list of submitted feedback and reviews, including feedback
ratings, comments, and product associations.
4. The Marketing can view the details of individual feedback entries.

Alternative If there is no feedback submitted, the system will display an empty list.
Flows: If the Marketing is not logged in, the system will redirect the Marketing to the
login page.

Exceptions: The system may experience a technical error and be unable to display the list
of feedback.

Priority: High
Frequency of Medium
Use:
Business Rules: The Marketing must have permission to view feedback.
Customer feedback must be protected and only accessible to authorized
users.

Other None
Information:
Assumptions: The Marketing has a basic understanding of the system.
Customer feedback is accurate and up-to-date.

GAMS-SRS_v1.0 Page 59 / 20
b. Business Rules
3.6 UC-28_Feedbacks Details
a. Functional Description

ID and Name: UC-27 Feedbacks Details


Created By: TuanTN Date Created: 16/9/2023
Primary Actor: Marketing Secondary Actors: Admin

This use case allows Marketing to view detailed information about specific
Description: feedback, including the feedback text, product reviewed, and user details.
Trigger: Marketing accesses the feedback details viewing functionality in the panel.

1. The Marketing is logged into the panel.


Preconditions: 2. The system is operational and accessible.
1. The Marketing views the detailed information of the selected feedback.
Postconditions:
Normal Flow: 1. The Marketing logs into the panel.
2. The Marketing selects the "View Feedback Details" option.
3. The system prompts the Marketing to select a specific feedback.
4. The Marketing selects a feedback entry.
5. The system displays the detailed information of the selected feedback, including
the feedback text, product reviewed, and user details.

Alternative If the feedback does not exist in the system, the system will display an error
Flows: message.
If the Marketing is not logged in, the system will redirect the Marketing to the
login page.

Exceptions: The system may experience a technical error and be unable to display the
feedback details.

Priority: Medium
Frequency of Medium
Use:
Business Rules: The Marketing must have permission to view feedback details.
Customer feedback must be protected and only accessible to authorized
users.

Other - None
Information:
Assumptions: The Marketing has a basic understanding of the system.
Customer feedback is accurate and up-to-date.

GAMS-SRS_v1.0 Page 60 / 20
b. Business Rules

3.7 UC18 - MKT Dashboard - View Marketing Dashboard


a. Functional Description

UC ID and UC18 - MKT Dashboard - View Marketing Dashboard


Name:

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: Marketing Secondary Actors: Customer

Trigger: Users with marketing roles accessing marketing dashboard

Description: Users with marketing roles can access the dashboard.

Preconditions: User is logged in and has a marketing role.

Postconditions: Marketing dashboard is displayed.

Normal Flow: 1. User with marketing roles clicks on the "Marketing Dashboard" link in the
application's navigation menu.

2. System displays the marketing dashboard with relevant data and tools.

Alternative None
Flows:

Exceptions: None

Priority: High, Must Have

 Frequency: Low to Moderate


Frequency of  Marketing administrators access the dashboard as needed to manage
Use: marketing campaigns and promotions, but it is not an everyday task.

Business Rules: None

 The marketing dashboard is a powerful tool for administrators to manage


Other marketing campaigns and promotions.

GAMS-SRS_v1.0 Page 61 / 20
 Data analytics may be integrated to track the performance of marketing
Information: efforts.

 Users with marketing roles are authorized to access and manage the
Assumptions: marketing dashboard.
 Marketing administrators are responsible for creating and managing
marketing campaigns.

b. Business Rules
3.8 UC19 - Posts List - View Blog Post
a. Functional Description

UC ID and UC19 - Posts List - View Blog Post


Name:

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: Marketing Secondary Actors: Customer

Trigger: Users accessing blog post list

Description: Users can view a list of blog posts.

Preconditions: User is logged in.

Postconditions: Blog post list page is displayed.

Normal Flow: 1. User clicks on the "Blog Posts" link in the application's navigation menu.

2. System displays a list of blog posts with titles and summaries.

3. User clicks on a specific blog post to read it.

Alternative None
Flows:

Exceptions: None

Priority: High, Must Have

GAMS-SRS_v1.0 Page 62 / 20
 Frequency: Moderate
Frequency of  Users browse posts when they are interested in blog content. It occurs
Use: regularly but not necessarily daily.

Business Rules: None

 This feature allows users to engage with blog content, which can drive
Other website traffic.
Information:  It may include filters and sorting options for better content discovery.

 Users want to browse and view blog posts.


Assumptions:  Users have access to the website's blog section.
 Users are interested in reading blog content.

b. Business Rules

3.9 UC20 - Post Details - Read Blog Post


a. Functional Description

UC ID and UC20 - Post Details - Read Blog Post


Name:

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: Marketing Secondary Actors: Customer

Trigger: Users accessing full blog post content

Description: Enables users to read the full content of a selected blog post along with any
associated information, such as comments and author details.

Preconditions: User is logged in.

Postconditions: Full blog post content is displayed.

Normal Flow: 1. User clicks on a specific blog post to read it.

2. System displays the full content of the selected blog post along with any
associated information, such as comments and author details.

Alternative None

GAMS-SRS_v1.0 Page 63 / 20
Flows:

Exceptions: None

Priority: High, Must Have

 Frequency: Moderate
Frequency of  Users view post details when they want to read a specific blog post. It
Use: happens whenever users engage with blog content.

Business Rules: None

 Post Details should provide a rich reading experience with comments and
Other social sharing options.
Information:  Content sharing may help promote the website.

 Users want to view detailed information about a specific blog post.


Assumptions:  Users have clicked on a specific blog post.
 Users may want to leave comments and share blog posts.

b. Business Rules

-None

3.10 UC21 - Marketing - Slider Details and Blog Post Viewing


a. Functional Description

UC ID and UC21 - Marketing - Slider Details and Blog Post Viewing


Name:

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: Marketing Secondary Actors: Customer

Trigger: Users accessing slider details and blog post content

Description: Allows users to read the full content of a selected blog post along with any
associated information, such as comments and author details. Users can also provide
feedback.

Preconditions: User has successfully received purchased products.

GAMS-SRS_v1.0 Page 64 / 20
Postconditions: User provides feedback and ratings for specific products or general feedback.

Normal Flow: 1. User clicks on a specific slider to read it.

2. System displays the full content of the selected slider along with any associated
information, such as comments and author details.

Alternative None
Flows:

Exceptions: None

Priority: High, Must Have

 Frequency: Moderate
Frequency of  Users may browse sliders when they visit the website to see featured
Use: content or promotions. It occurs regularly but not necessarily daily.

Business Rules: None

 Sliders List showcases featured content or promotions on the


Other website.
Information:  Clicking on sliders should provide users with more information or
lead them to relevant pages.

 Users want to browse image sliders or banners.


Assumptions:  Users have access to the website's slider section.
 Users may click on specific sliders for more information.

b. Business Rules
-None
4.Sale Feature

4.1 UC-28_Sale Dashboard

ID and Name: UC-28 Sale Dashboard

GAMS-SRS_v1.0 Page 65 / 20
Date Created:
Created By: VinhNQ 17/09/2023

Primary Actor: Sale Secondary Actors: Admin

Description: Provides access to a dashboard for monitoring sales and revenue. Administrators
can view sales analytics, track revenue trends, and identify top-selling products.

Trigger: The trigger for this use case could be when a Sale user or an Admin logs into the
system and selects the "Sale Dashboard" option.

Preconditions: . 1. The user (Sale or Admin) must be authenticated and authorized to access the
Sale Dashboard.

Postconditions: After the execution of the use case, the user (Sale or Admin) gains access to the
Sale Dashboard.

Normal Flow: 1. The Sale user or Admin logs into the system.

2. The user selects the "Sale Dashboard" option from the system's menu.

3. The system loads the Sale Dashboard, displaying sales analytics, revenue trends,
and top-selling product information.

Alternative If the user lacks the necessary permissions to access the Sale Dashboard, the
Flows: system will display an access denied message, and the use case ends.

Exceptions: None

Priority: Medium

Business Rules: Any specific business rules related to the Sale Dashboard, such as data refresh
intervals or access levels, should be documented here.

Frequency of The frequency of this use case's execution depends on the monitoring needs of Sale
Use: users and Admins.

Other
Information:

GAMS-SRS_v1.0 Page 66 / 20
4.2 UC-29_Browse Orders

ID and Name: UC-29- Browse Orders


Date Created:
Created By: VinhNQ 17/09/2023

Primary Actor: Sale Secondary Actors: Admin


Allows administrators to browse a list of customer orders. They can see order
Description: details, customer information, and order statuses.

Trigger: The trigger for this use case could be when a Sale user or Admin initiates a request
to access and browse the list of customer orders.

Preconditions: . 1. The user (Sale or Admin) must be authenticated and authorized to access and
browse orders

Postconditions: After the execution of the use case, the user (Sale or Admin) gains access to the list
of customer orders.

Normal Flow: 1. The Sale user or Admin logs into the system.

2. The user selects the "Browse Orders" option from the system's menu.

3. The system loads the list of customer orders, displaying order details, customer
information, and order statuses.

Alternative If the user lacks the necessary permissions to access and browse orders, the system
Flows: will display an access denied message, and the use case ends.

Exceptions: None

Priority: High

Business Rules: Any specific business rules related to browsing orders, such as search criteria or
filtering options, should be documented here.

Frequency of The frequency of this use case's execution depends on the need to manage and
Use: review customer orders by Sale users and Admins.

GAMS-SRS_v1.0 Page 67 / 20
Other
Information:

4.3 UC-30_View Order Details

ID and Name: UC-30 View Order Details


Date Created:
Created By: VinhNQ 17/09/2023

Primary Actor: Sale Secondary Actors: Admin

Description: The "Order Details" use case provides a comprehensive view of individual orders. It
includes details such as item specifics, quantities, prices, order status, customer
information (name, email, phone, address), shipping details, payment method, and
an order history log. This feature greatly simplifies the management and processing
of orders..

Trigger: The trigger for this use case could be when a Sale user initiates a request to view the
detailed information of a specific order.

Preconditions: 1. The user (Sale) must be authenticated and authorized to access order details.

2. There should be an existing order for which details need to be displayed.

Postconditions: After the execution of the use case, the system successfully displays the
comprehensive details of the selected order.

Normal Flow:

1. A Sale user selects a specific order and triggers the "Order Details" use case.

2. The system retrieves and displays detailed order information, including item
specifics, quantities, prices, order status, customer information, shipping specifics,
payment method, and order history.

3. The Sale user can review all the relevant details of the order to facilitate efficient
order management.

GAMS-SRS_v1.0 Page 68 / 20
4.Update and edit the order

Alternative If the selected order does not exist or is not accessible to the Sale user, the system
Flows: will display an error message, and the use case ends.

Exceptions: None

Priority: High

Business Rules: Any specific business rules that govern the display or handling of order details
should be referenced here

Frequency of The frequency of this use case's execution depends on the number of orders and the
Use: tasks performed by Sale users.

Other Any additional information or special requirements related to this use case can be
Information: documented here, such as quality attributes or performance expectations.

5. Admin Feature
5.1 UC-31_Admin Dashboard
a. Functional Description
ID and Name: UC-31 Admin Dashborad
Created By: VinhNQ Date Created: 16/9/2023
Primary Actor: Admin Secondary Actors:

Description: Show the trend of success/total orders, and the revenues trends by day for the last 7
days for all or a specific salesperson (the start date, end date, sale, order status can
be adjustable)
Trigger: Admin want to see website statistics
PRE-1. Admin is logged into website.
Preconditions: PRE-2. The account have role is admin

Postconditions: POST-1: The admin successfully interacts with the admin dashboard.

GAMS-SRS_v1.0 Page 69 / 20
POST-2: Any changes made in the admin dashboard are saved (if applicable).

Normal Flow:
1. Admin logs in to the website.

2. Admin selects "Admin Dashboard" from the menu.

3. The system displays the admin dashboard with options to view statistics.

4. The system retrieves and displays the trend of success/total orders and revenue
trends by day.

5. Admin can adjust the start date, end date, sale, and order status filters as needed.

6. Admin interacts with the statistics data.

7. Admin logs out when done


Alternative none
Flows:
Exceptions:
Priority: High
Frequency of - Only authenticated admins with appropriate permissions can access the admin
Use: dashboard.
- Changes made in the admin dashboard should be reflected in the system
Business Rules:
- Only authenticated admins with appropriate permissions can access the admin dashboard.
Other - Admins have been properly registered and have the necessary credentials
Information:
Assumptions:

b. Business Rules

5.2 UC-32_Browse Users


a. Functional Description

ID and Name: UC-32 Browse Users


Date Created 17/09/2023
Created By: Nancy Anderson
Secondary Actors:
Primary Actor: Admin

Description: This use case allows administrators to browse a list of registered users. They can
view user profiles, roles, and contact information.

Trigger: Admin wants to view the list of registered users.

GAMS-SRS_v1.0 Page 70 / 20
Preconditions: 1. PRE-1: Admin is logged into the system.

2. PRE-2: The admin's account has the role of admin.

Postconditions: . 1. POST-1: The admin successfully views the list of registered users.

2. POST-2: Any changes made by the admin (if applicable) are saved.

Normal Flow: 1. Admin logs in to the system.

2. Admin selects "Users List" from the admin dashboard or menu.

3. The system retrieves and displays a list of registered users.

4. Admin can click on a user's profile to view detailed information, including


their roles and contact details.

5. Admin can navigate back to the user list.

6. Admin logs out when done.

Frequency of
Use: This use case may be used periodically by admin users to manage and review
registered users.

Alternative Flows:

Exceptions: None

Priority: Medium

Business Rules: - Only authenticated admins with appropriate permissions can access the Users
List.

- Admins can view user profiles, roles, and contact information but cannot
modify user data directly through this use case.

Other
Information:

GAMS-SRS_v1.0 Page 71 / 20
5.3 UC-33_View User Details
a. Functional Description

ID and Name: UC-33 View User Details

Created By: VinhNQ Date Created: 17/09/2023

Primary Actor: Admin Secondary Actors:

Description: Allows administrators to browse a list of registered users. They can see user
profiles, roles, and contact information.

Trigger: Admin wants to view or modify the details of a specific user's orders.

Preconditions: . 1. PRE-1: Admin is logged into the system.

2. PRE-2: The admin's account has the role of admin.

Postconditions: None

GAMS-SRS_v1.0 Page 72 / 20
Normal Flow: 1. Admin logs in to the system.

2. Admin selects "Users Detail" from the admin dashboard or menu.

3. The system prompts the admin to search for a specific user by name, email, or
other identifier.

4. Admin enters the search criteria and initiates the search.

5. The system retrieves and displays a list of users matching the search criteria.

6. Admin selects a specific user from the list.

7. The system displays detailed user information, including basic user information
and a list of their orders.

8. Admin can click on a specific order to view detailed order information.

9. Admin can view basic order information (order ID, customer details, order date,
total cost, sale information, status).

10. Admin can view receiver information (receiver's name, gender, contact details,
address).

11. Admin can view the list of ordered products, including product details
(thumbnail, name, category, unit price, quantity, total cost).

12. Admin can modify order status and sale notes if needed.

13. Admin can assign the order to another salesperson if needed.

14. Admin can navigate back to the user's details or the list of users.

15. Admin logs out when done

Exceptions: None

Priority: Medium

Business Rules: -Only authenticated admins with appropriate permissions can access the Users
Detail.

- Admins can view and modify order information, including order status, sale
notes, and assignment to other salespeople.

GAMS-SRS_v1.0 Page 73 / 20
- Sale Managers have the authority to change order status and assign orders to
other salespeople.

Frequency of This use case may be used periodically by admin users to manage and review user
Use: details and orders.

Other - Admins have been properly registered and have the necessary credentials.
Information:
5.4 UC-34_Manage Settings

a. Functional Description

ID and Name:
UC-34 Manage Settings

Created By: VinhNQ Date Created: 17/09/2023

Primary Actor: Admin Secondary Actors:

Description: This use case enables administrators to manage website settings and configurations,
including payment options, shipping policies, and other site-specific settings. It also
provides statistics related to new orders, revenues, customers, feedback, and order
counts for the last 7 days, with adjustable start and end dates.

Trigger: Admin wants to access and manage website settings and view statistics.

Preconditions: . 1. PRE-1: Admin is logged into the system.

2. PRE-2: The admin's account has the role of admin.

Postconditions: None

GAMS-SRS_v1.0 Page 74 / 20
Normal Flow: 1. Admin logs in to the system.

2. Admin selects "Settings List" from the admin dashboard or menu.

3. The system displays a list of website settings and configurations that can be
managed.

4. Admin can select a specific setting to modify or configure it.

5. Admin can make changes to the selected settings as needed.

6. Admin can view statistics related to:

- New orders (success, canceled, submitted)

- Revenues (total, by product categories)

- Customers (newly registered, newly bought)

- Feedback (average star rating: total, by product categories)

- Trend of order counts (success, all) by day for the last 7 days with adjustable
start and end dates.

7. Admin can navigate back to the settings list or the admin dashboard.

8. Admin logs out when done.

Exceptions: None

Priority: Medium

Business Rules: -Only authenticated admins with appropriate permissions can access the Settings
List.

- Admins can modify and configure website settings as needed.

Frequency of This use case may be used periodically by admin users to manage website settings
Use: and review statistics.

Other
Information:

GAMS-SRS_v1.0 Page 75 / 20
5.5 UC-35_Settings List

a. Functional Description

3.2 UC-6_Register for Payroll Deduction


a. Functional Description

ID and Name: UC-6 Register for Payroll Deduction


Created By: Nancy Anderson Date Created: 9/15/13
Primary Actor: Patron Secondary Actors: Payroll System
Description: Cafeteria patrons who use the COS and have meals delivered must be registered for
payroll deduction. For noncash purchases made through the COS, the cafeteria will
issue a payment request to the Payroll System, which will deduct the meal costs
from the next scheduled employee payday direct deposit.
Trigger: Patron requests to register for payroll deduction, or Patron says yes when COS asks
if he wants to register
Preconditions: PRE-1. Patron is logged into COS.
Postconditions: POST-2. Patron is registered for payroll deduction.
Normal Flow: 6.0 Register for Payroll Deduction
1. COS asks Payroll System if Patron is eligible to register for payroll deduction.
2. Payroll System confirms that Patron is eligible to register for payroll deduction.
3. COS asks Patron to confirm his desire to register for payroll deduction.
4. If so, COS asks Payroll System to establish payroll deduction for Patron.
5. Payroll System confirms that payroll deduction is established.
6. COS informs Patron that payroll deduction is established.
Alternative None
Flows:
Exceptions: 6.0.E1 Patron is not eligible for payroll deduction
6.0.E2 Patron is already enrolled for payroll deduction
Priority: High
Business Rules: BR-86 and BR-88 govern an employee’s eligibility to enroll for payroll deduction.
Other Expect high frequency of executing this use case within first 2 weeks after system is
Information: released.

b. Business Rules
None

GAMS-SRS_v1.0 Page 76 / 20
6. Customer Feature
6.1 UC16 - My Orders - View Order History
a. Functional Description

UC ID and Name: UC16 - My Orders - View Order History

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: Customers Secondary Actors:

Trigger: Users accessing order history

Description: Users can view their order history.

Preconditions: User is logged in.

Postconditions: Order history page is displayed.

Normal Flow: 1. User clicks on the "Order History" link in the application's navigation menu.

2. System displays the user's order history.

3. User views past orders and their details.

Alternative Flows: None

Exceptions: None

Priority: High, Must Have

Frequency of Use:

Business Rules: BR3, BR5

Other
Information:

GAMS-SRS_v1.0 Page 77 / 20
Assumptions:

b. Business Rules

Data
BR3 Privacy User data must be handled in compliance with data privacy regulations.

Security measures (e.g., encryption, authorization) must be in place to protect


BR5 Security data.

6.2 UC17 - Order Information - View Order Information


a. Functional Description

UC ID and UC17 - Order Information - View Order Information


Name:

Created By: ThanhNT Date Created: 17 September 2023

Primary Actor: Customers Secondary Actors:

Trigger: Users accessing detailed order information

Description: Users can view detailed information about an order.

Preconditions: User is logged in.

Postconditions: Order details page is displayed.

Normal Flow: 1. User clicks on the "Order Details" link in the application's navigation menu.

2. System displays detailed information about the selected order.

3. User views order details, including products, prices, and shipping information.

Alternative None
Flows:

GAMS-SRS_v1.0 Page 78 / 20
Exceptions: None

Priority: High, Must Have

 Frequency: Low to Moderate


Frequency of  Users view detailed order information infrequently, typically when they
Use: need specific details about an order.

Business Rules: BR3, BR5

 Access to order details helps users verify the contents of a specific order
Other and track shipments.
Information:  Order details should be presented clearly and accurately.

 Users have placed orders on the website.


Assumptions:  Users are logged into their accounts.
 Users want to access detailed information about a specific order.

b. Business Rules

Data
BR3 Privacy User data must be handled in compliance with data privacy regulations.

Security measures (e.g., encryption, authorization) must be in place to protect


BR5 Security data.

III. Design Specifications


1. Public Feature
1.1 System Access
a. User Login
This screen allows user to be authenticated to the system screens/functionalities.
Related use cases:
 UC02_Login System

UI Design

GAMS-SRS_v1.0 Page 79 / 20
Field Name Field Type Description
Email* Text Box This is for user to input valid email address for logging in
Password
Password* This is for user to input password for logging in
Box
User clicks to authenticate him/herself into the system with
Login Button
provided email & password
User clicks to redirect to the User Register page for
Register Button
registering new user account to access the system
Forgot User clicks to redirect to the Password Reset page for
Hyperlink
Password? resetting his/her forgot password
Login with
Hyperlink Allow user to login with his/her Google account
Google
Login with
Hyperlink Allow user to login with his/her Facebook account
Facebook

Database Access
Table CRUD Description
User R Verify UserName & Password information
Setting, User R Specify the authorizations of the logged-in user

SQL Commands:
1/ Verify UserName & Password information
SELECT user_id, full_name, email, image_url, status
FROM user WHERE user_name = ? AND password = ?

2/ Specify the authorizations of the logged-in user


SELECT mapped_values FROM setting WHERE setting_id = ?
SELECT setting_name, mapped_values FROM setting WHERE setting_id IN (?)

GAMS-SRS_v1.0 Page 80 / 20
b. Setting List
UI Design

Field Name Field Type Description


Search Fields
Combo Box Filled with the list of current active setting types
Setting Type Single- Allow to filter the list by setting type;
Choice Default value is “All Types”
Combo Box Values: All Statuses (default), Active, and Inactive
Setting
Single- Allow to filter the list by status
Status
Choice Default value: “All Statuses”
Text Box Allow to search using the name or map values
Search Phase
String (30) Default value: blank
Click to refresh the list with the defined filter(s) and search
Search Button
phrase.
Click to open the Setting Details page for adding new setting
Add New Hyperlink
(master data)
Data Table
ID Integer Auto-increased identifier of the setting
Name Text Name of the setting
Mapped
Text Supplementary information for the setting
Values
Type Text Type of the setting
Display order of the setting: the order of the setting type,
Order Integer
displayed among the list of settings with the same type
Data Actions
Click to open the Setting Details page for updating the relevant
Edit icon
setting (master data)
Shown when the data status is inactive. This is to activate the
Activate icon
relevant setting (master data)
Shown when the data status is active. This is to deactivate the
Deactivate Ion
relevant setting (master data)

Database Access
Table CRUD Description

GAMS-SRS_v1.0 Page 81 / 20
Query the list of current settings from the database
Setting RU
Update status of a specific setting

SQL Commands:
1/ Query the list of current settings from the database
SELECT setting_id, setting_name, mapped_values, type_id, display_order, status
FROM setting WHERE (setting_type = ?) AND (status = ?) AND (setting_name LIKE ?)

2/ Update status of a specific setting


UPDATE setting SET status = ? WHERE setting_id = ?

c. Setting Details

UI Design

Field Name Field Type Description


Text Box
Name* Name of the setting
String (20)
Combo
Box Type of the setting, filled with the list of setting types
Type*
(Single Default value: the first type in the list
Choice)
Mapped Text Box
Supplementary information for the setting (if any)
Values String (50)
Text Box
Display order of the setting: the order of the setting type,
Order Integer
displayed among the list of settings with the same type
(>=0)
On/Off Status of the setting: Active or Inactive
Status
button Default value: Active
Text Area
Description String Description of the setting
(200)
Submit Button Click to store new or updated setting details

GAMS-SRS_v1.0 Page 82 / 20
Click to reset the changes use has made on the screen fields
Reset Button
back to the initial values when the screen is loaded
Database Access

d.Profile User

e.Shopping Cart
UI Design

GAMS-SRS_v1.0 Page 83 / 20
GAMS-SRS_v1.0 Page 84 / 20
GAMS-SRS_v1.0 Page 85 / 20
f.Product detail
UI Design

Field Name Field Type Description


Product Name Text Show name of product
Price Text Show price of product
Number of player Text Number of player can play this game
Time play Text Time limit to play game

GAMS-SRS_v1.0 Page 86 / 20
Required Age Text Required age can play game
Category Text The category of game
Quantity Text The quantity of product
Buy Now Button Redirect user to cart
Add to cart Button Add product to cart
Related product Text Show related product to user
Detail
Text,table Show author, weight, country,size of product
Information
Description Text Show description , more information about product
Rules Text Show how to play this game

Database Access

Table CRUD Description


Query the list product detail by ID from the database
ProductDetail R
Category R Query the list Category by ID from the database

SQL Commands:
1/ Query the list product detail by ID from the database
select*from Products p join ProductDetail pd on p.pid = pd.pdid where p.pid =

2/ Query the list Category by Pid from the database


SELECT \n"
+ " C.[caid],\n"
+ " C.[caname],\n"
+ " PC.[capid],\n"
+ " P.[pid],\n"
+ " P.[pname],\n"
+ " P.[rate],\n"
+ " P.[price],\n"
+ " P.[img],\n"
+ " P.[priceSale],\n"
+ " P.[quantity],\n"
+ " P.[pubid],\n"
+ " P.[created_at],\n"
+ " P.[saled],\n"
+ " P.[isDiscount],\n"
+ " P.[isSoldout],\n"
+ " P.[csid]\n"
+ "FROM \n"
+ " [WebBoardGame4].[dbo].[Categories] AS C\n"
+ "INNER JOIN \n"
+ " [WebBoardGame4].[dbo].[ProductCategory] AS PC\n"
+ "ON \n"
+ " C.[caid] = PC.[caid]\n"

GAMS-SRS_v1.0 Page 87 / 20
+ "INNER JOIN \n"
+ " [WebBoardGame4].[dbo].[Products] AS P\n"
+ "ON \n"
+ " PC.[pid] = P.[pid]\n"
+ " where c.caid =

g.Register
UI Design

GAMS-SRS_v1.0 Page 88 / 20
h. User List

GAMS-SRS_v1.0 Page 89 / 20
UI Design

h. User Detail

GAMS-SRS_v1.0 Page 90 / 20
h. ManageProduct
UI Design

Field
Field Name Description
Type
Product Name Text Show name of product
Price Text Show price of product
Quantity Text Show quantity of product
Date Text Date create product
User can choose Detail, Update, Hide, User was
Detail Link
redirected to product detail page, update product page
Total Products Text Total of product
Total Users Text Total number of users registered

Total Orders Text Total number of orders

Search Button Allow user search products by name, price, etc

Add product Link Redirect to add product page

Update product Form Form allow admin update product information

Hide product Button Button allow admin hide product

GAMS-SRS_v1.0 Page 91 / 20
Previous/Next/1,2,3,4…. Button
Pagination, each page will have 10 products

Database Access

Table CRUD Description


Query list the product ,Count Total Product, Add new product , Hide ,
Product CRUD Update and Delete Product from the database

Orders R Show total Orders, Total Price from Order


Account R Show total Users
1/ Query list the product from the database
SELECT TOP (1000) [pid]
,[pname]
,[rate]
,[price]
,[img]
,[priceSale]
,[quantity]
,[pubid]
,[saled]
,[isDiscount]
,[isSoldout]
,[csid]
,[created_at]
FROM [WebBoardGame].[dbo].[Products]
2/ Query Count Total Product from the database
select count(*) from Products
3/ Query Add new product from the database
INSERT INTO [WebBoardGame4].[dbo].[ProductDetail] \n"
+ "(numplayer, requiredAge, description, rules, timeplay, pid)\n"
+ "VALUES\n"
+ "(?, ?, ?, ?, ?,? )

4/ Query Update product from the database


"UPDATE [WebBoardGame].[dbo].[Products] SET " + "pname = ?, " + "price = ?, " + "quantity
= ? " + "WHERE pid = ?";
5/ Query Update product from the database
DELETE FROM [WebBoardGame].[dbo].[Products] WHERE pid = ?
6/ Query count total Orders
SELECT COUNT(*) AS total_orders FROM [WebBoardGame].[dbo].[orders]
7/ Query count Total Price from Order
SELECT SUM(TotalAmount) AS total_price FROM [WebBoardGame].[dbo].[orders]
8/ Query count total Users
SELECT COUNT(*) AS total_users FROM [WebBoardGame4].[dbo].[Accounts]

GAMS-SRS_v1.0 Page 92 / 20
9/ Query Pagination
select * from Products order by pid offset ? rows fetch next 10 rows only

i. Cart Contact

GAMS-SRS_v1.0 Page 93 / 20
j. Order List

k. Order Information

GAMS-SRS_v1.0 Page 94 / 20
l. News Details

GAMS-SRS_v1.0 Page 95 / 20
GAMS-SRS_v1.0 Page 96 / 20
m. Post List

Field Name Field Type Description


News ID Text Show id of News
Create at Text Show time of News was created
title Text Show title of news
categories Text show category of news
User name Text Show user name who create news

Add new post button link to add new post jsp to create a new post
button edit button link to update post to edit post

button delete post buttton Total number of orders

Search text Allow user search post by name.

GAMS-SRS_v1.0 Page 97 / 20
n. Add New Post

IV. Appendix
1. Assumptions & Dependencies
AS-1: Systems with appropriate user interfaces will be available for cafeteria employees to process the expected
volume of meals ordered.
AS-2: Cafeteria staff and vehicles will be available to deliver all meals for specified delivery time slots within
15 minutes of the requested delivery time.
DE-1: If a restaurant has its own on-line ordering system, the Cafeteria Ordering System must be able to
communicate with it bi-directionally.

2. Limitations & Exclusions


3. Business Rules

GAMS-SRS_v1.0 Page 98 / 20

You might also like