Board Game Empire Web Application
Version 1.0
15nd February 2020
wip9247@conestogac.on.ca +1-(647)-860-0061
Table of Content
Project Description
Use Case Diagram
Use Case Narratives
User Story
Description of Project
Nowadays, board games have become more popular around the world.
Many people of different ages are attracted by board games and being
addicted. Some well-known board game like monopoly has its world-
class tournament (MONOPOLY World Championships). Lots of research
show that playing board games can stimulate humans’ brain and anti-
aging. Therefore, we would like to build a web application to promote
and sell board games to others via this project. This project will create an
E-Commerce platform including lots of elements like member system,
shopping cart, payment system integration API, etc. For the web
application in this project, we would like to build it contains three main
parts: Front-End, Back-End, and Database. We will create different parts
by different technologies approach. For Front-End, we will use HTML5,
CSS, and Javascript. For Back-End, we will use nodeJS and Express. For
the Database, we will use MongoDB and NoSQL. Before coding the
project, we will first use AdobeXD for UI/UX design to ensure the web
we built is eye-catching, innovative, and attractive to promote board
games to the world successfully.
Use Case Diagram
Here is the use case diagram of the project.
Use Case Narratives
Use Case 1: Manage items
Context of use: Admin wants to create new items, read all the purchasing items, update existing items or
delete existing items which is no available to buy now from the web application.
Scope: Items administration Panel
Level User goal
Primary Actors: Admin
Related use case NA
Stakeholders Admin, Customer
Preconditions: Admin is logging in to the web application as an admin.
Postconditions: CRUD operations of the items are successfully done by admin.
Flow of activities: Actor System
1. Some items sold out and system alert
admin.
2. Company purchases new products 3. Admin updates the sold-out items are in
database.
4. Admin adds new items in the database.
5. Sold out items in the application are now
being available to buy.
6. New items are being display in the
application and being available to buy.
7. Company found that some items are 8. Unavailable items and outdate items are
outdate or some items cannot be deleted from database.
purchased. 9. Application will not shows the
unavailable items.
10. Admin goes through all the items in 11. Admin can read all the available items in
the web to confirm there is no the application.
outstanding issue
Freq. of Occurrence: 2/week
Open issues: Is it secure enough to prevent hackers to hack the system and delete the items?
What authorization is needed to delete items?
Use Case 2: Launch campaign
Context of use: Admin wants to launch campaign for the customers and add the score or give some
discount to the customers who join the campaign.
Scope: Activity system and the user management panel
Level User goal
Primary Actors: Admin
Related use case Manage users
Stakeholders Manager, Admin, Customers
Preconditions: Admin is logging in to the web application as an admin.
Company side should decide which type of campaign that they would like to launch and
how to award the customers who join the campaign.
Postconditions: Customers can access the activity page and join the campaign.
Flow of activities: Actor System
1. Manager wants to launch the
campaign and let the customers to
join. 3. Activity page should show the details of
2. Admin adds the details in to the the activity which is being launched.
activity system.
4. Customer successfully access the 5. Activity system should be ready.
activity page and decide to join the 5.1. Once the customer clicks join, the
activity. system record and send the update
status of the customer to the database.
7. System sends the update status of the
6. Customer finishes the activity and customer to the database and being
wins the award. recorded.
7.1. Admin increases the score of the
customer or send the customer some
discount voucher after auditing.
8. The campaign is finished. 9. The campaign should be removed from
the activity page.
Freq. of Occurrence: 1/month
Open issues: What happens when customer join expired campaign?
Use Case 3: Manage orders
Context of use: Customer wants to create new order, read the details of order, update existing orders from
the web application.
Scope: Items order system
Level User goal
Primary Actors: Customer, Admin
Related use case Manage cart items, Manage payments
Stakeholders Admin, Customer
Preconditions: Customer confirms the items in the shopping cart that he or she would like to buy.
Postconditions: For CRU operations of the orders, they are successfully done by customer. For delete order
operation, it can be done by admin only and customer should not be able to see the order
once admin delete it.
Flow of activities: Actor System
1. Customer confirms the items that he
or she would like to buy in the
shopping cart.
2. Customer wants to create an order. 3. Details of order send to the system.
4. System just calculates the total price of
the items, taxes and shipping and send the
payment request to the customer.
5. Customer receives the payment 6. System verifies the payment and send the
request and make the payments record to the database.
6.1. System also generates the payment
recipe and show it to the customer.
7. Customer sees the recipe in the
browser if the payment is success.
8. Customer wants to read his order. 9. System fetches the records from the
database.
10. System displays the fetching details in the
browser.
11. Customer can be able to see his order
in the order page.
12. Customer wants to update his order 13. Old data in the database are being
before payment. removed.
13.1.Updated information is being sent to
the database and stored.
13.2. New information is displayed in the
order page.
14. Customer wants to delete the order
after payment.
15. Customer needs to inform admin to
see whether the order can be deleted
or not after payment.
15.1. If the items of the order haven’t 16. Admin queries the order that the customer
been shipped, the order can be wants to delete from the database.
deleted by the admin. 16.1. After fetching, admin can delete the
order from the system.
17. Once admin clicks delete, system
automatically refunds to the customer
payment account according to the record.
18. deleted order should be removed and not
shown in the system.
19. Customer will not see the deleted
order in the order page if it is
successfully deleted.
Freq. of Occurrence: Should be continuous
Open issues: Can the customer directly the order after payment?
User Story
As an admin,
I want the system can be easy for managing members, orders, and items
so that deals and user activity in the application can be smooth and they
will not find any difficulties to surf the application and hence board
games can be promoted via the web.
Clarification
If the system is user-friendly for admin managing members or all web
application activities, the admin can do it effectively. For example, the
customer wants to delete the order and raise the request, and the admin
will know it ASAP and process the refund quickly. As a result, the
customer will get a refund soon and think that the web application is
trusted. They will surf the web application if they want to buy board
games, and they may recommend their friends to surf the web. It will be
useful for promoting board games to the world and earning profits when
selling.