0% found this document useful (0 votes)
11 views309 pages

SEP490 G39 SDU Report3 Software-Requirement-Specification.docx (1)

Uploaded by

ngockhue8409
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views309 pages

SEP490 G39 SDU Report3 Software-Requirement-Specification.docx (1)

Uploaded by

ngockhue8409
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 309

CAPSTONE PROJECT REPORT

Report 3 – Software Requirement Specification

– Hanoi, May 2024–

1 | Page
Table of Contents
I. Record of Changes.................................................................................................................. 8
II. Software Requirement Specification..................................................................................... 9
1. Overall Requirements....................................................................................................... 9
1.1 Context Diagram.......................................................................................................9
1.2 Main Workflows....................................................................................................... 9
1.2.1 Create project.............................................................................................. 10
1.2.2 Create campaign..........................................................................................11
1.2.3 Finish a campaign........................................................................................ 11
1.2.4 Support a campaign.....................................................................................12
1.3. User Requirements.................................................................................................13
1.3.1 Actors...........................................................................................................13
1.3.2 Use Cases................................................................................................... 14
1.3.2.1 Use-case diagrams of Guest.............................................................. 14
1.3.2.2 Use-case diagrams of User................................................................ 15
1.3.2.3 Use-case diagrams of Innovator......................................................... 16
1.3.2.4 Use-case diagrams of Backer............................................................. 16
1.3.2.5 Use-case diagrams of Project manager..............................................17
1.3.2.6 Use-case diagrams of Employee........................................................ 18
1.3.2.7 Use-case diagrams of Salesman........................................................ 19
1.3.2.8 Use-case diagrams of System admin................................................. 20
1.4 System Functional Overview..................................................................................21
1.4.1 Screens Flow............................................................................................... 21
1.4.2 Screen Authorization....................................................................................21
1.4.3 Non-UI Functions......................................................................................... 25
1.5 Entity Relationship Diagram.................................................................................. 25
2. Use Case Specifications..................................................................................................26
2.1 Public View.............................................................................................................26
2.1.1 View homepage........................................................................................... 26
2.1.2 View system information.............................................................................. 27
2.1.3 View list project public..................................................................................28
2.1.4 View project public detail............................................................................. 30
2.1.5 View list campaign public.............................................................................31
2.1.6 View campaign public detail.........................................................................33
2.1.7 View list reward of campaign....................................................................... 35
2.1.8 View list project process public.................................................................... 37
2.1.9 View list comment of project........................................................................ 40
2.1.10 View user detail..........................................................................................41
2.2 Authentication....................................................................................................... 43
2.2.1 Register........................................................................................................43
2.2.2 Login............................................................................................................ 46
2.2.3 Verify code................................................................................................... 48
2.2.4 Forgot password.......................................................................................... 51

2 | Page
2.2.5 Logout.......................................................................................................... 53
2.3 Update Profile Information.................................................................................... 55
2.3.1 View personal information............................................................................55
2.3.2 Update profile...............................................................................................57
2.3.4 Change password........................................................................................ 59
2.3.5 Identity verification....................................................................................... 61
2.4 Manage Project Information..................................................................................63
2.4.1 View list project information......................................................................... 63
2.4.2 Search project information........................................................................... 64
2.4.3 Create project information............................................................................66
2.4.3.1 Salesman............................................................................................ 66
2.4.3.2 Innovator............................................................................................. 70
2.4.4 View project information detail..................................................................... 74
2.4.5 Update project information draft...................................................................75
2.4.5.1 Salesman............................................................................................ 75
2.4.5.2 Innovator............................................................................................. 79
2.4.6 Delete project information draft....................................................................83
2.5 Manage System....................................................................................................84
2.5.1 View system static....................................................................................... 84
2.5.2 Manage user................................................................................................ 86
2.5.2.1 View list user....................................................................................... 86
2.5.2.2 Search user.........................................................................................88
2.5.2.3 Lock user............................................................................................ 90
2.5.3 Manage employee....................................................................................... 92
2.5.3.1 View list employee.............................................................................. 92
2.5.3.2 Search employee................................................................................ 94
2.5.3.3 Create employee.................................................................................96
2.5.3.4 Lock employee.................................................................................... 98
2.5.3 Manage department...................................................................................100
2.5.3.1 View list department..........................................................................100
2.5.3.2 Search department........................................................................... 102
2.5.3.3 Create department............................................................................ 104
2.5.3.4 View department detail......................................................................107
2.5.3.5 Update department........................................................................... 109
2.5.3.6 Delete department............................................................................. 111
2.6 Manage Request.................................................................................................114
2.6.1 View list request......................................................................................... 114
2.6.2 View request detail..................................................................................... 115
2.6.2 Search request...........................................................................................117
2.6.3 Approve/Reject request..............................................................................119
2.7 Manage Project...................................................................................................122
2.7.1 View list project.......................................................................................... 122
2.7.2 Search project............................................................................................124
2.7.3 View project detail......................................................................................126

3 | Page
2.7.4 Manage project employee permission....................................................... 128
2.7.4.1 View list project employee.................................................................128
2.7.4.2 Search project employee.................................................................. 130
2.7.4.3 Update project permission................................................................ 131
2.7.5 Manage project contract............................................................................ 133
2.7.5.1 View list project contract................................................................... 133
2.7.5.1.1 Department Manager............................................................... 133
2.7.5.1.2 Innovator.................................................................................. 135
2.7.5.2 Search project contract..................................................................... 136
2.7.5.3 Create contract................................................................................. 138
2.7.5.4 Update contract.................................................................................140
2.7.5.5 Delete contract.................................................................................. 143
2.7.6 Manage project implementation.................................................................145
2.7.6.1 Manage project content.................................................................... 145
2.7.6.1.1 Update project content............................................................. 145
2.7.6.1.2 Update project status............................................................... 148
2.7.6.2 Manage project campaign.................................................................150
2.7.6.2.1 View list project campaign........................................................150
2.7.6.2.2 Search project campaign......................................................... 152
2.7.6.2.3 Create project campaign.......................................................... 153
2.7.6.2.4 View project campaign detail................................................... 155
2.7.6.2.5 Update project campaign......................................................... 157
2.6.5.2.6 Update campaign status.......................................................... 161
2.6.5.2.7 Add campaign reward.............................................................. 163
2.6.5.2.8 Update campaign reward......................................................... 165
2.6.5.2.9 Delete campaign reward.......................................................... 167
2.7.6.3 Manage project process....................................................................169
2.7.6.3.1 View list project process...........................................................169
2.7.6.3.2 Search project process............................................................ 171
2.7.6.3.3 Create project process............................................................. 172
2.7.6.3.4 View project process detail...................................................... 174
2.7.6.4 Manage project marketing................................................................ 176
2.7.6.4.1 View list project marketing....................................................... 176
2.7.6.4.2 Search project marketing......................................................... 178
2.7.6.4.3 Create project marketing..........................................................180
2.7.6.4.4 View project marketing detail................................................... 185
2.7.6.3.4 Update project marketing......................................................... 186
2.7.7 View project static...................................................................................... 191
2.7.8 Manage project transaction........................................................................193
2.7.8.1 View list project transaction...............................................................193
2.7.8.2 Search project transaction................................................................ 195
2.7.8.3 View project transaction detail.......................................................... 197
2.8 User functions.....................................................................................................200
2.8.1 Notification................................................................................................. 200

4 | Page
2.8.1.1 View list notification...........................................................................200
2.8.1.2 Read notification............................................................................... 201
2.8.2 Comment in project....................................................................................203
2.8.2.1 View list comment............................................................................. 203
2.8.2.2 Create comment............................................................................... 205
2.8.2.3 Reply comment................................................................................. 206
2.8.2.4 Delete comment................................................................................ 208
2.8.3 Manage payment....................................................................................... 210
2.8.3.1 Create transaction.............................................................................210
2.8.3.2 View list transaction.......................................................................... 212
2.8.2.3 Search transaction............................................................................ 213
2.8.2.4 View transaction detail...................................................................... 214
2.8.2.5 Pay.................................................................................................... 216
2.8.2.6 Delete transaction............................................................................. 218
2.8.3 Manage report............................................................................................220
2.8.3.1 Create report..................................................................................... 220
2.8.3.2 View list report...................................................................................222
2.8.3.3 Search report........................................................................................ 1
2.8.3.4 View report detail.................................................................................. 1
2.8.3.5 Chat...................................................................................................... 1
2.8.3.6 Confirm report....................................................................................... 1
2.8.4 Manage project supported............................................................................. 1
2.8.4.1 View list project supported.................................................................... 1
2.8.4.2 Search project supported......................................................................1
3. Functional Requirements.................................................................................................. 1
3.1 Common................................................................................................................. 1
3.1.1 Header........................................................................................................... 1
3.1.2 Footer.............................................................................................................1
3.1.3 Sidebar...........................................................................................................1
3.1.4 Popup confirm................................................................................................1
3.2 Public View............................................................................................................. 1
3.2.1 Home............................................................................................................. 1
3.2.2 View system information................................................................................ 1
3.2.2.1 Policy.................................................................................................... 1
3.2.2.2 Terms.................................................................................................... 1
3.2.2.3 FAQ....................................................................................................... 1
3.2.2.4 Legal..................................................................................................... 1
3.2.2.5 About us................................................................................................ 1
3.2.3 List project public........................................................................................... 1
3.2.4 Project public detail........................................................................................1
3.2.5 List campaign public...................................................................................... 1
3.2.6 Campaign public detail...................................................................................1
3.2.7 List reward of campaign.................................................................................1
3.2.8 List project process public..............................................................................1

5 | Page
3.2.8 List comment of project..................................................................................1
3.2.9 User detail......................................................................................................1
3.3 Authentication......................................................................................................... 1
3.3.1 Register..........................................................................................................1
3.3.2 Login.............................................................................................................. 1
3.3.3 Forgot password............................................................................................ 1
3.3.4 Verify code..................................................................................................... 1
3.3.3 Logout............................................................................................................ 1
3.4 Update profile information.......................................................................................1
3.4.1 Profile detail................................................................................................... 1
3.4.2 Update profile.................................................................................................1
3.4.3 Change password.......................................................................................... 1
3.4.4 Identity verification......................................................................................... 1
3.5 Project information..................................................................................................1
3.5.1 List project information...................................................................................1
3.5.2 Create/Update project information................................................................. 1
3.5.3 Project information detail............................................................................... 1
3.6 Manage User.......................................................................................................... 1
3.7 Manage Employee..................................................................................................1
3.8 Manage Department............................................................................................... 1
3.8.1 List department.............................................................................................. 1
3.8.2 Create/Update department............................................................................ 1
3.8.3 Department detail...........................................................................................1
3.9 Manage Request.................................................................................................... 1
3.10 Manage Project.....................................................................................................1
3.10.1 List Project................................................................................................... 1
3.10.2 Project Detail................................................................................................1
3.10.3 Update Project Content................................................................................1
3.11 Manage Project Employee.................................................................................... 1
3.11.1 List Project Employee.................................................................................. 1
3.11.2 Update Employee Permission......................................................................1
3.12 Manage Contract.................................................................................................. 1
3.12.1 List Contract.................................................................................................1
3.12.2 Create/Update Contract............................................................................... 1
3.13 Manage Campaign............................................................................................... 1
3.13.1 List campaign...............................................................................................1
3.13.2 Create campaign..........................................................................................1
3.13.3 Update campaign.........................................................................................1
3.13.4 Campaign detail........................................................................................... 1
3.14 Manage Project Progress..................................................................................... 1
3.14.1 List Project Progress....................................................................................1
3.14.2 Create Project Progress...............................................................................1
3.15 Manage Project Marketing....................................................................................1
3.15.1 List Project Marketing.................................................................................. 1

6 | Page
3.15.2 Create Project Marketing............................................................................. 1
3.15.3 Update Project Marketing............................................................................ 1
3.16 Manage Payment..................................................................................................1
3.16.1 Create transaction........................................................................................1
3.16.2 List transaction.............................................................................................1
3.16.2 Transaction detail/ Payment........................................................................ 1
3.17 Manage Report manh doing................................................................................. 1
3.17.1 List Report....................................................................................................1
3.17.2 Create report................................................................................................1
3.17.3 Chat............................................................................................................. 1
3.18 Notification............................................................................................................ 1
3.18.1 Dropdown notification.................................................................................. 1
3.18.2 List notification............................................................................................. 1
3.19 Static..................................................................................................................... 1
3.19.1 System static................................................................................................1
3.18.2 Project static................................................................................................ 1
4. Non-Functional Requirements..........................................................................................1
4.1 External Interfaces.................................................................................................... 1
4.2 Quality Attributes..................................................................................................... 1
4.2.1 Usability......................................................................................................... 1
4.2.2 Reliability........................................................................................................1
4.2.3 Performance.................................................................................................. 1
4.2.4 Security............................................................................................................ 1
4.2.4 Maintainability................................................................................................ 1
5. Requirement Appendix.....................................................................................................1
5.1 Business Rules.......................................................................................................... 1
5.2 Application Messages List........................................................................................1

7 | Page
I. Record of Changes

Date A* In charge Change Description


M,
D
20/05/2024 A CongNT Create the Software Requirement Specification report

*A - Added M - Modified D - Deleted

8 | Page
II. Software Requirement Specification
1. Overall Requirements
1.1 Context Diagram

SeedUp is a community crowdfunding platform specializing in supporting small projects with


limited capital, innovative initiatives bringing social benefits, and charitable efforts.

Figure 1.1 Context diagram for SeedUp System.


1.2 Main Workflows

9 | Page
1.2.1 Create project

Figure 1.2.1.1 Workflows for create project by user

Figure 1.2.1.2 Workflows for create project by salesman

10 | Page
1.2.2 Create campaign

Figure 1.2.2 Workflows for create campaign

1.2.3 Finish a campaign

Figure 1.2.1 Workflows for create project

11 | Page
1.2.4 Support a campaign

Figure 1.2.1 Workflows for Support a campaign

12 | Page
1.3. User Requirements
1.3.1 Actors

# Actor Description
This is a user who is not logged into the system. They can view
basic information about projects, individuals, etc. They only have
1 Guest
rights to view information, not to perform management activities or
change data.
This is a system user. Once logged in, they will have functions such
as searching and viewing project lists. They can view and comment
2 User
on projects. They can create projects and become innovators, or
support projects to become backers, etc.
This is where project owners can submit their project information. If
3 Innovator their project is approved, SeedUp will contact the innovator to
discuss the process of creating the project on the system
This is a project backer who can view project progress, check
4 Backer
transactions and refunds.
A project employee is in charge of contacting potential innovators
5 Salesman
and uploading initial project information to the system.
This is the employee in charge of project management. This person
6 Project manager will be in charge of approving the project, managing and approving
issues related to the project.
This is a marketing staff, they will create marketing campaigns to
support the project and make it known to many people and to
7 Employee
modify and update project details, including information about
campaigns within the project.
This is the system admin who has full control over the system,
8 System admin manages departments and divides people into appropriate
departments.
Customer This is the customer service who handles user reports, feedback, and
9
service chats directly with users
10 Email provider This is an email service provider
Payment
11 This is a payment service provider
provider

Figure 1.3.1 Context diagram for SeedUp System.

13 | Page
1.3.2 Use Cases
1.3.2.1 Use-case diagrams of Guest

Figure 2.1 Use-case diagrams of Guests.

14 | Page
1.3.2.2 Use-case diagrams of User

Figure 2.2 Use-case diagrams of User.

15 | Page
1.3.2.3 Use-case diagrams of Innovator

Figure 2.3 Use-case diagrams of Innovator.

1.3.2.4 Use-case diagrams of Backer

16 | Page
Figure 2.4 Use-case diagrams of Backer.

1.3.2.5 Use-case diagrams of Project manager

17 | Page
Figure 2.5 Use-case diagrams of Project manager.

1.3.2.6 Use-case diagrams of Employee

Figure 2.6 Use-case diagrams of Employees.

18 | Page
1.3.2.7 Use-case diagrams of Salesman

Figure 2.7 Use-case diagrams of Salesman

19 | Page
1.3.2.8 Use-case diagrams of System admin

Figure 2.8 Use-case diagrams of System admin

20 | Page
1.4 System Functional Overview
1.4.1 Screens Flow

1.4.2 Screen Authorization

C
P U
R S
O T
J E O
S S
E M M
C A
G A C P E
R U L
U D T L R
E S E
E M o
E E S
S I M Y S
N R M
S N A E E
A
N E R
N
A V
G I
E C
R E

Login X X X X X X

Register X X

21 | Page
Reset
X X X X
password
Change
X X X X X
password
Home
X X
page
Term and
X X
policy
List
public X X
project
Project
X X
detail
List
project
X X
campaig
n
List
X X
reward
List
public
project X X
progress
update
View
X X X X X X
profile
Update
X X X X X
profile
Manage
salesman
X
created
project
Manage
created X
project
List
support X
project
List
unpublic
project X
progress
update
List
supporte X
d

22 | Page
transacti
on
Manage
project
- List
X X
project
-
Delete X
project
-
Lock/Un
X
lock
project
Create
X
project
Update
X
project
Project
descripti X X
on
Manage
project X
team
Manage
project
campaig
n
-
Create
project X X
campaig
n
-
Update
project X X
campaig
n
- List
project
X X
campaig
n
-
Delete
project X X
campaig
n
-
X
Lock/Un

23 | Page
lock
project
campaig
n
Project
campaig
n X X
descripti
on
Manage
X
reward
Manage
project
X X
update
progress
Manage
X
contract
Contract
descripti X
on
Manage
project
marketin
X X
g
campaig
n
Project
finance X
statistic
List
project X X
support
View
project
X X
informati
on detail
List
approve X
request
Manage
system
X
employe
e
Manage
X
customer
Manage
departme X
nt

24 | Page
Admin
dashboar X
d

1.4.3 Non-UI Functions

Feature System
# Description
Function
Automatically
transferred to
1 the transferred Automatically transferred to the appropriate
project employee
appropriate
employee
2 Authorization Authorization Check user permissions

1.5 Entity Relationship Diagram

25 | Page
2. Use Case Specifications

2.1 Public View


2.1.1 View homepage

UC ID and Name: UC-01 View homepage

Created By: VietHQ Created Date: 20/05/2024

Primary Actor: Guess Secondary Actor: N/A

Trigger: The guess accesses the website's homepage URL

Description: This use case describes the process by which a user views the homepage
of the website. The homepage provides an overview of the website's
purpose, highlights key features, and offers navigation to other sections.

1. The website must be online and accessible.


Preconditions: 2. The user has a device with internet connectivity.

Postconditions: 1. The user successfully views the homepage.


2. The homepage content is displayed correctly.
3. The user can navigate to other sections from the homepage.

1. The user opens a web browser and enters the URL of the website's
Normal Flow: homepage.
2. The system receives the request and processes it.
3. The system retrieves the necessary content for the homepage.
4. The system displays the homepage to the user, including:
a. Header with navigation menu
b. Main content area with featured information
c. Footer with additional links and information
5. The user views the homepage and interacts with its elements (e.g.,
clicks on links, reads information).

Alternative Flows: N/A

26 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The homepage should be optimized for both desktop and mobile devices.

Business Rule Home page displays total number of projects, total amount raised, total
number of creators, list of featured projects, list of new projects, list of
featured creators

Assumptions: The user has a compatible web browser.

The user has basic knowledge of how to navigate a website.

2.1.2 View system information

UC ID and Name: UC-02 View system information

Created By: ThanhVNM Created Date: 20/05/2024

Primary Actor: Guest Secondary Actor: None

Trigger: The guess accesses the website's system information URL

Description: This use case describes the process for a registered user to view the
system information, which includes details about the privacy policy,
terms of use, FAQ, legal information, about us.

1. The website must be online and accessible.


Preconditions: 2. The user has a device with internet connectivity.

27 | Page
Postconditions: The user successfully views the system information.

1. The guest navigates to the homepage.


Normal Flow: 2. The system displays the homepage with a textlink “Tìm hiểu
thêm” to view system information.
3. The user clicks on the textlink to view system information.
4. The system displays the system information page, including
privacy policy, terms of use, FAQ, legal information, about us.
5. The user views the system information.

Alternative Flows: N/A

EX-1: System Unavailable


Exceptions:
● If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Occasional

Other Information: Ensure that the system information is up-to-date and accurately reflects
the current state of the system.

Business Rule N/A

Assumptions: The user is familiar with navigating the homepage.

The system information page is designed to be easily understandable by


the user.

2.1.3 View list project public

UC ID and Name: UC-03 View list project public

28 | Page
Created By: ThanhVNM Created Date: 20/05/2024

Primary Actor: Guest Secondary Actor: None

Trigger: A guest user decides to browse public projects on the platform.

Description: This use case describes the process for a user to view public projects
available on the platform. The user can see a list of public projects, view
details of individual projects, search projects and access any available
resources or descriptions provided.

1. The user has accessed the platform.


Preconditions: 2. The system is online and available.

Postconditions: The user successfully views a list of public projects and can access the
details of individual projects.

1. The guest navigates to the homepage.


Normal Flow: 2. The system displays the homepage with a textlink “Dự án” to
view list public project.
3. The system displays a list of public projects with brief
descriptions.

Alternative Flows: AF-1: No Public Projects Available

● At step 3, if there are no public projects available, the system


displays a message indicating that no projects are currently
available.
● Message: MSC17

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the list of public projects is updated regularly and accurately
reflects the current state of available projects.

29 | Page
Business Rule Only projects marked as public or have been public by their creators
should be listed.

Project details should be accessible without requiring user registration or


login.

Assumptions: The public projects page is easily accessible from the main website.

The system has a reliable mechanism for retrieving and displaying project
details.

2.1.4 View project public detail

UC ID and Name: UC-04 View project public detail

Created By: ThanhVNM Created Date: 20/05/2024

Primary Actor: Guest Secondary Actor: None

Trigger: A guest decides to view details of a public project listed on the platform.

Description: This use case describes the process for a guest to view the details of a
public project. The user will be able to see project information such as the
project name, description, owner, status, and other relevant details.

1. The user has accessed the project listing page.


Preconditions: 2. The project is marked as public.
3. The system is online and available.

Postconditions: 1. The user successfully views the details of the public project.
2. The system logs the user's access to the project details page.
1. The user navigates to the project listing page.
Normal Flow: 2. The system displays a list of public projects.
3. The user selects a project from the list.
4. The system retrieves the details of the selected project.
5. The system displays the project details page, including
information such as the project name, description, owner, status,
and other relevant details.
6. The user views the project details.

30 | Page
Alternative Flows: AF-1: Project Not Found

● At step 4, if the system cannot find the project details, it navigate


to screen 404 .
● Message: MSC25

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the project details are up-to-date and accurately reflect the
current status of the project.

Business Rule Only public projects should be accessible to guests

Assumptions: The user is familiar with navigating the project listing page.

The system has a reliable mechanism for retrieving and displaying project
details.

The public project information is designed to be easily understandable by


the user.

2.1.5 View list campaign public

UC ID and Name: UC-05 View list campaign public

Created By: VietHQ Created Date: 20/05/2024

Primary Actor: Guest Secondary Actor: N/A

31 | Page
Trigger: The user clicks on the "Danh sách chiến dịch" (List of Campaigns)
section from the project detail page.

Description: This use case describes the process by which a guest user views the list of
campaigns associated with a specific project.

1. The website must be online and accessible.


Preconditions: 2. The project and associated campaign must exist.
3. The user has a device with internet connectivity.

Postconditions: 1. The user successfully views the list of campaigns for the project.
2. The campaigns are displayed correctly.
1. The user navigates to the project's detail page by clicking on a link
Normal Flow: or entering the URL.
2. The system receives the request and processes it.
3. The system retrieves the project details and associated sections.
4. The system displays the project detail page to the user, including:
● Content section
● Campaigns list section
● Campaign details section
● Rewards section
● Updates section
● Comments section
5. The user clicks on the "Danh sách chiến dịch" (List of Campaigns)
section to view the list of campaigns.
6. The system retrieves and displays the list of campaigns associated
with the project, including:
● Campaign title
● Brief description
● Campaign duration
● Status
● Key objectives
7. The user views the list of campaigns and can select a specific
campaign to view more details.

32 | Page
Alternative Flows: A1: No Campaigns Available

1. The user navigates to the project's detail page and clicks on the
"Danh sách chiến dịch" (List of Campaigns) section.
2. The system retrieves the campaigns but finds that no campaigns
are available.
3. The system displays a message indicating that there are no
campaigns yet.
4. The user views the message and can decide to monitor for future
campaigns.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The campaigns section should be optimized for both desktop and mobile
devices.

The campaigns should be displayed in a paginated or scrollable format to


handle a large number of campaigns efficiently.

Business Rule The campaigns should load within a reasonable time (e.g., under 3
seconds) for a standard user.

Assumptions: The user has a compatible web browser.

2.1.6 View campaign public detail

UC ID and Name: UC-06 View campaign public detail

33 | Page
Created By: VietHQ Created Date: 20/05/2024

Primary Actor: Guest Secondary Actor: N/A

Trigger: The user clicks on the "Campaign" section from the project detail page to
view the details of a specific campaign.

Description: This use case describes the process by which a user views the detailed
information about a specific campaign associated with a project. The
campaign detail page provides comprehensive information about the
campaign

4. The website must be online and accessible.


Preconditions: 5. The project and associated campaign must exist.
6. The user has a device with internet connectivity.

Postconditions: 3. The user successfully views the details of the selected campaign.
4. The campaign details are displayed correctly.

1. The user navigates to the project's detail page by clicking on a link


Normal Flow: or entering the URL.
2. The system receives the request and processes it.
3. The system retrieves the project details and associated sections.
4. The system displays the project detail page to the user, including:
● Content section
● Campaigns list section
● Campaign details section
● Rewards section
● Updates section
● Comments section
5. The user clicks on the "Campaigns" section to view the list of
campaigns.
6. The system retrieves and displays the list of campaigns associated
with the project.
7. The user selects a specific campaign from the list to view its
details.
8. The system retrieves and displays the details of the selected
campaign
9. The user views the campaign details and can interact with them.

34 | Page
Alternative Flows: A1: No Campaigns Available

5. The user navigates to the project's detail page and clicks on the
"Campaigns" section.
6. The system retrieves the campaigns but finds that no campaigns
are available.
7. The system displays a message indicating that there are no
campaigns yet.
8. The user views the message and can decide to monitor for future
campaigns.

EX-1: System Unavailable


Exceptions:
2. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The section should be optimized for both desktop and mobile devices.

Business Rule The campaign details must comply with the website's community
guidelines and moderation policies.

Assumptions: The user has a compatible web browser.

2.1.7 View list reward of campaign

UC ID and Name: UC-07 View list reward of campaign

35 | Page
Created By: VietHQ Created Date: 20/05/2024

Primary Actor: Guest Secondary Actor: N/A

Trigger: The user clicks on a link or button to view the rewards associated with a
specific campaign.

Description: This use case describes the process by which a user views the list of
rewards offered for a specific campaign.

7. The website must be online and accessible.


Preconditions: 8. The campaign must exist and have associated rewards.
9. The user has a device with internet connectivity.

Postconditions: 5. The user successfully views the list of rewards for the campaign.
6. The rewards are displayed correctly.
7. The user can navigate back to other sections of the project detail
page or other projects.

10. The user navigates to the project's detail page by clicking on a link
Normal Flow: or entering the URL.
11. The system receives the request and processes it.
12. The system retrieves the project details and associated sections.
13. The system displays the project detail page to the user, including:
● Content section
● Campaigns list section
● Campaign details section
● Rewards section
● Updates section
● Comments section
14. The user clicks on the "Phần quà" section to view the list of
rewards.
15. The system retrieves and displays the list of rewards related to the
selected campaign, including:
● Reward title
● Reward description
● Eligibility criteria
● Steps to claim the reward
● Availability (e.g., limited quantity)
16. The user views the rewards and can interact with them (e.g., read

36 | Page
details, back the reward).

Alternative Flows: A1: No Rewards Available

1. The user navigates to the project's detail page and clicks on the
"Rewards" section.
2. The system retrieves the rewards of current campaign but finds
that no rewards are available for the selected campaign.
3. The system displays a message indicating that there are no
rewards yet.
4. The user views the message and can decide to monitor for future
rewards.

EX-1: System Unavailable


Exceptions:
3. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Medium

Other Information: The section should be optimized for both desktop and mobile devices.

Business Rule The rewards must comply with the website's community guidelines and
moderation policies.

Assumptions: The user has a compatible web browser.

2.1.8 View list project process public

37 | Page
UC ID and Name: UC-08 View list project process public

Created By: VietHQ Created Date: 20/05/2024

Primary Actor: Guest Secondary Actor: N/A

Trigger: The user clicks on a link to view the list of projects or directly navigates
to a specific project's detail page.

Description: This use case describes the process by which a user views the progress
and updates related to a specific project. The project detail page provides
comprehensive information about the project's content, campaigns,
rewards, updates, and comments.

10. The website must be online and accessible.


Preconditions: 11. The user has a device with internet connectivity.

Postconditions: 8. The user successfully views the list of project processes (updates).
9. The updates are displayed correctly.
10. The user can navigate back to other sections of the project detail
page or other projects.

1. The user navigates to the project's detail page by clicking on a link


Normal Flow: or entering the URL.
2. The system receives the request and processes it.
3. The system retrieves the project details and associated sections.
4. The system displays the project detail page to the user, including:
● Content section
● Campaigns list section
● Campaign details section
● Rewards section
● Updates section
● Comments section
5. The user clicks on the "Updates" section to view the project
processes.
6. The system retrieves and displays the list of updates related to the
project, including:
● Update title
● Update content
● Timestamp of when the update was posted
7. The user views the updates and can interact with them (e.g., read,

38 | Page
like, comment).

Alternative Flows: A1: No Updates Available

1. The user navigates to the project's detail page and clicks on the
"Updates" section.
2. The system retrieves the updates but finds that no updates are
available.
3. The system displays a message indicating that there are no
updates yet.
4. The user views the message and can decide to monitor for future
updates.

EX-1: System Unavailable


Exceptions:
4. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The updates section should be optimized for both desktop and mobile
devices.

The updates should be displayed in a paginated or scrollable format to


handle a large number of updates efficiently.

Business Rule The updates must comply with the website's community guidelines and
moderation policies.

Only progress with view mode is ‘Public’ is displayed

Assumptions: The user has a compatible web browser.

39 | Page
2.1.9 View list comment of project

UC ID and Name: UC-09 View user detail

Created By: VietHQ Created Date: 22/05/2024

Primary Actor: Guess Secondary Actor: N/A

Trigger: The user clicks on the "Comments" section or link associated with a
project.

Description: This use case describes the process by which a user views the list of
comments on a specific project

1. The website must be online and accessible.


Preconditions: 2. The project must exist and have a comments section.
3. The user has a device with internet connectivity

Postconditions: 1. The user successfully views the list of comments on the project.
2. The comments are displayed correctly.

1. The user navigates to the project detail page and clicks on the
Normal Flow: "Comments" section or link.
2. The system receives the request and processes it.
3. The system retrieves the list of comments associated with the
project.
4. The system displays the comments section to the user, including:
● Commenter's username
● Comment text
● Timestamp of when the comment was posted
● Option to reply to a comment
5. The user views the comments and can interact with them (e.g., like,
reply).

40 | Page
Alternative Flows: A1: No Comments Available

1. The user navigates to the project page and clicks on the


"Comments" section or link.
2. The system retrieves the comments but finds that no comments are
available.
3. The system displays the message “Chưa có bình luận nào cho dự
án này. Hãy là người bình luận đầu tiên” indicating that there are
no comments yet.
4. The user views the message and can decide to add a new comment

EX-1: System Unavailable


Exceptions:
If the system is down or unavailable, the user is informed of the issue and
asked to try again later.

Priority: Low

Frequency of Use: Medium

Other Information: The comments section should be optimized for both desktop and mobile
devices.

The comments should be displayed in a paginated or scrollable format to


handle large numbers of comments efficiently.

Business Rule The comments must comply with the website's community guidelines and
moderation policies.

Users may need to be authenticated to post comments.

Assumptions: The user has a compatible web browser.

The user has basic knowledge of how to navigate a website.

2.1.10 View user detail

41 | Page
UC ID and Name: UC-10 View user detail

Created By: VietHQ Created Date: 22/05/2024

Primary Actor: Guess Secondary Actor: N/A

Trigger: The user clicks on a link to view another user's profile or enters the URL
of the user's profile page.

Description: This use case describes the process by which a user views the public
details of another user's profile. The profile page provides an overview of
the user's public information,

1. The website must be online and accessible.


Preconditions: 2. The user has a device with internet connectivity.

Postconditions: 1. The user successfully views the public details of another user's
profile.
2. The profile page content is displayed correctly.

1. The user navigates to the profile page of another user by clicking


Normal Flow: on a link or entering the URL.
2. The system receives the request and processes it.
3. The system retrieves the necessary public profile information of the
target user.
4. The system displays the profile page to the user, including: Profile
picture, User's name, User’s email, Bio or brief description
5. The user views the profile page and can interact with its elements
(e.g., click on links to posts or connections).

Alternative Flows: N/A

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

42 | Page
Priority: Low

Frequency of Use: Low

Other Information: The profile page should be optimized for both desktop and mobile devices.

The public profile content should be easily updatable by the profile owner.

The profile includes: Profile picture, User's name, User’s email, Bio or
Business Rule brief description

Assumptions: The user has a compatible web browser.

The user has basic knowledge of how to navigate a website.

2.2 Authentication

2.2.1 Register

UC ID and Name: UC-11 Register

Created By: CongNT Created Date: 19/05/2024

Primary Actor: Guess Secondary Actor: None

Trigger: A guest user decides to create a new account on the platform.

Description: This use case describes the process for a guest user to register for a new
account. The user will need to provide their name, email, password,
confirm password, and agree to the terms and conditions. The fields for
name, email, and password are limited to a maximum of 255 characters.

43 | Page
1. The guest user has accessed the registration page.
Preconditions: 2. The system is online and available.

Postconditions: 1. The user account is created and stored in the database.


2. The user is logged in and redirected to the homepage or a
welcome page.

1. The guest user navigates to the registration page.


Normal Flow: 2. The system displays the registration form with fields for name,
email, password, confirm password, and a checkbox to agree to
terms and conditions.
3. The guest user enters their name (max 255 characters, no special
characters).
4. The guest user enters their email address (max 255 characters,
have @).
5. The guest user enters their password (max 255 characters,
password must be at least 8 characters long, contain uppercase
letters, lowercase letters, numbers and special characters).
6. The guest user re-enters their password in the confirm password
field.
7. The guest user checks the box to agree to the terms and
conditions.
8. The guest user submits the registration form.

9. The system validates the inputs:


● Ensures all required fields are filled.
● Check that the email is in a valid format.
● Verifies that the password and confirm password fields
match.
● Ensures that the checkbox for agreeing to terms and
conditions is checked.
10. The system creates the new user account. The system logs in the
new user and redirects them to the homepage or welcome page.
11. System show message MSC09

Alternative Flows: AF-1: Invalid Email Format

1. At step 9a, if the name, email, password, confirm password or


agreed term is not entered, the system displays an error message.
2. Message is MSC01, MSC03, MSC06, MSC07, MSC08

AF-2: Invalid Email Format

44 | Page
3. At step 9b, if the email is not in a valid format, the system
displays an error message prompting the user to enter a valid
email address.
4. Message is MSC02

AF-3: Passwords Do Not Match

1. At step 9c, if the password and confirm password fields do not


match, the system displays an error message prompting the user to
ensure the passwords match.
2. Message is MSC05

AF-4: Terms and Conditions Not Agreed

1. At step 9d, if the checkbox for agreeing to terms and conditions is


not checked, the system displays an error message prompting the
user to agree to the terms and conditions.
2. Message is MSC06

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent - This use case is expected to be used by all new users
registering on the platform.

Other Information: This use case is crucial for onboarding new users and increasing the user
base.

Ensure that all error messages are user-friendly and provide clear
guidance on how to correct the input.

Business Rule Each email address must be unique and not already associated with an
existing account.

Passwords must follow the platform's security guidelines (e.g., minimum


length, complexity).

45 | Page
Assumptions: The registration page is easily accessible from the main website.

The system has a reliable mechanism for validating emails and


passwords.

The terms and conditions are clearly displayed and accessible for the user
to read before agreeing.

2.2.2 Login

UC ID and Name: UC-12 Login

Created By: CongNT Created Date: 19/05/2024

Primary Actor: User, Secondary Actor: None

Admin,

Department manager,

Salesman,

Customer service,

Employee

Trigger: A user decides to log into the platform.

Description: This use case describes the process for a user to log into their account.
The user must click the login button on the header to navigate to the login
page, then enter their email and password (each field limited to a
maximum of 255 characters) and click the login button to access their
account.

1. The user has accessed the login page.


Preconditions: 2. The system is online and available.

Postconditions: 1. The user is authenticated and logged into the system.


2. The user is redirected to the homepage or their designated landing
page.

46 | Page
1. The user navigates to the login page by clicking the login button
Normal Flow: on the header.
2. The system displays the login form with fields for email and
password.
3. The user enters their email address (max 255 characters, must
contain @).
4. The user enters their password (max 255 characters).
5. The user clicks the login button.
6. The system validates the inputs:
● Ensures both fields are filled.
● Check that the email is in a valid format.
● Verifies the email and password against the stored
credentials.
7. If all validations pass, the system logs in the user and redirects
them to the homepage or designated landing page.
8. The system displays a success message (MSC15).

Alternative Flows: AF-1: Missing Fields

1. At step 6a, if the email or password field is not filled, the system
displays an error message prompting the user to enter the required
information.
● Message is MSC01, MSC06.

AF-2: Invalid Email Format

1. At step 6b, if the email is not in a valid format, the system


displays an error message prompting the user to enter a valid
email address.
● Message is MSC03.

AF-3: Authentication Failure

1. At step 6c, if the email and password do not match any stored
credentials, the system displays an error message indicating that
the login credentials are incorrect.
● Message is MSC05.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

47 | Page
Priority: High

Frequency of Use: Frequent - This use case is expected to be used regularly by all users of
the platform.

Other Information: This use case is essential for user access and security.

Ensure that all error messages are user-friendly and provide clear
guidance on how to correct the input.

Business Rule Each user must have a unique email address associated with their
account.

Passwords must follow the platform's security guidelines (e.g., minimum


length, complexity).

Assumptions: The login page is easily accessible from the main website.

The system has a reliable mechanism for validating emails and


passwords.

User sessions are secure, and login attempts are protected against
unauthorized access.

2.2.3 Verify code

UC ID and Name: UC-13 Verify code

Created By: CongNT Created Date: 20/05/2024

Primary Actor: User, Secondary Actor: None

Department manager,

Salesman,

Customer service,

48 | Page
Employee

Trigger: A user receives a verification code via email after registering and
decides to verify their account.

Description: This use case describes the process for a user to verify their account using
a code sent to their email. The user must enter the code on the verification
page and click the verify button. If needed, the user can request the
system to resend the verification code. Each code is valid for 5 minutes.

1. The user has completed the registration process and received a


Preconditions: verification code via email.
2. The user has accessed the email verification page.
3. The system is online and available.

Postconditions: 1. The user's account is verified and activated.


2. The user is redirected to the homepage or a welcome page.

1. The user navigates to the email verification page.


Normal Flow: 2. The system displays the email verification form with a field to
enter the verification code and a button to request a new code.
3. The user enters the received verification code.
4. The user clicks the verify button.
5. The system validates the code:
● Ensures the code is filled.
● Checks that the code is correct and within the valid time
frame.
6. If the code is valid, the system verifies the user's account.
7. The system logs in the user and redirects them to the homepage or
a welcome page.
8. The system displays a success message (MSC21).

Alternative Flows: AF-1: Missing Code

1. At step 5a, if the verification code field is not filled, the system
displays an error message prompting the user to enter the code.
● Message is MSC22.

AF-2: Incorrect or Expired Code

1. At step 5b, if the verification code is incorrect or has expired, the


system displays an error message prompting the user to enter a
valid code or request a new code.

49 | Page
● Message is MSC22.

AF-3: Resend Code

1. The user clicks the button to request a new verification code.


2. The system generates a new verification code and sends it to the
user's email.
3. The system displays a message indicating that a new code has
been sent (MSC04).
4. The user enters the new code and follows the normal flow from
step 3.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Frequent - This use case is expected to be used by all new users verifying
their accounts.

Frequency of Use: This use case is essential for ensuring that users' email addresses are valid
and accounts are secure.

Ensure that all error messages are user-friendly and provide clear
guidance on how to correct the input.

Other Information: This use case is essential for ensuring that users' email addresses are valid
and accounts are secure.

Ensure that all error messages are user-friendly and provide clear
guidance on how to correct the input.

Business Rule Each verification code is unique and valid for 5 minutes.

Users can request a new code if the current one expires or is lost.

Assumptions: The email verification page is easily accessible from the registration
process.

The system has a reliable mechanism for generating and sending


verification codes.

User sessions are secure, and verification attempts are protected against
unauthorized access.

50 | Page
2.2.4 Forgot password

UC ID and Name: UC-14 Forgot password

Created By: CongNT Created Date: 20/05/2024

Primary Actor: User, Secondary Actor: None

Department manager,

Salesman,

Customer service,

Employee

Trigger: A user decides to reset their forgotten password.

Description: This use case describes the process for a user to reset their forgotten
password. The user clicks the "Forgot Password" button on the login
form, enters their email on the forgot password page, and clicks the
confirm button. The email must be valid and include an "@" symbol. If
the user clicks the back button, they are redirected to the login page. After
successfully submitting their email, the system sends a verification code
to the user's email. The user then enters this code on the verification page,
and if the code is correct, the system sends a new password to the user's
email. The user can then use this new password to log in.

1. The user has accessed the login page.


Preconditions: 2. The system is online and available.

Postconditions: 1. The user receives a verification code via email.


2. The user receives a new password via email after entering the
correct verification code.
3. The user can log in using the new password.

51 | Page
1. The user navigates to the login page.
Normal Flow: 2. The user clicks the "Forgot Password" button.
3. The system displays the forgot password form with a field to enter
the email and a back button.
4. The user enters their email address (max 255 characters, must
contain @).
5. The user clicks the confirm button.
6. The system validates the email input:
● Ensures the email field is filled.
● Check that the email is in a valid format.
7. If the email is valid, the system sends a verification code to the
user's email.
8. The system redirects the user to the verification page.
9. The user enters the verification code they received via email.
10. The user clicks the verify button.
11. The system validates the code:
● Ensures the code is filled.
● Checks that the code is correct and within the valid time
frame.
12. If the code is valid, the system sends a new password to the user's
email. The system displays a success message (MSC20).

Alternative Flows: AF-1: Missing or Invalid Email

1. At step 6a, if the email field is not filled, the system displays an
error message prompting the user to enter their email.
○ Message is MSC01.
2. At step 6b, if the email is not in a valid format, the system
displays an error message prompting the user to enter a valid
email address.
○ Message is MSC02.

AF-2: Back to Login

1. The user clicks the back button on the forgot password page.
2. The system redirects the user back to the login page.

AF-3: Incorrect or Expired Code

1. At step 11a, if the code field is not filled, the system displays an
error message prompting the user to enter the code.
○ Message is MSC22.
2. At step 11b, if the code is incorrect or has expired, the system
displays an error message prompting the user to enter a valid code
or request a new one.

52 | Page
○ Message is MSC23.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent - This use case is expected to be used by users who have
forgotten their passwords.

Other Information: This use case is crucial for account recovery and user access.

Ensure that all error messages are user-friendly and provide clear
guidance on how to correct the input.

Business Rule Each email address must be unique and not already associated with an
existing account.

Verification codes are unique and valid for a specific time frame (e.g., 5
minutes).

Assumptions: ● The forgot password page is easily accessible from the login page.
● The system has a reliable mechanism for generating and sending
verification codes and new passwords.
● User sessions are secure, and password reset attempts are
protected against unauthorized access.

2.2.5 Logout

UC ID and Name: UC-15 Logout

Created By: CongNT Created Date: 21/05/2024

53 | Page
Primary Actor: User, Secondary Actor: None

Department manager,

Salesman,

Customer service,

Employee

Trigger: A user decides to log out of the platform.

Description: This use case describes the process for a user to log out of their account.
The user clicks the logout button, and the system logs them out, ending
their session and redirects them to the login page or homepage.

1. The user is logged into the system.


Preconditions: 2. The system is online and available.

Postconditions: 1. The user's session is terminated.


2. The user is redirected to the login page or homepage.

1. The user clicks the logout button.


Normal Flow: 2. The system terminates the user's session.
3. The system redirects the user to the login page or homepage.
4. The system displays a success message (MSC24).

Alternative Flows: None

54 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent - This use case is expected to be used regularly by all users
logging out of the platform.

Other Information: This use case is essential for ensuring the security of user accounts.

Ensure that the logout process is quick and user-friendly.

Business Rule The user's session must be securely terminated to prevent unauthorized
access.

Assumptions: The logout button is easily accessible from any page within the platform.

The system has a reliable mechanism for terminating user sessions.

User sessions are secure, and logout attempts are protected against
unauthorized access.

2.3 Update Profile Information

2.3.1 View personal information

UC ID and Name: UC-16 View personal information

Created By: ManhCQ Created Date: 19/05/2024

Primary Actor: User, Secondary Actor: None

Admin,

Department manager,

55 | Page
Salesman,

Customer service,

Employee

Trigger: The actor wants to view their personal information.

Description: This use case describes the process by which an actor can view their
personal information by selecting the "Profile" option from the user menu
located in the header.

Preconditions: 1. The actor must be logged into the system.


2. The actor must have access to the user menu in the header.

Postconditions: The actor's personal information is displayed on the screen.

1. The actor logs into the system.


Normal Flow: 2. The actor navigates to the header.
3. The actor clicks on the user menu.
4. The actor selects the "Profile" option.
5. The system retrieves the actor's personal information from the
database.
6. The system displays the actor's personal information on the
screen.

Alternative Flows: The actor may choose to update their personal information.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Not often

56 | Page
Other Information: The system should ensure that the user's profile information is up-to-date
and accurately reflects any recent changes or updates.

Business Rule Only authenticated users can access the "Hồ sơ cá nhân" (Personal
Profile) section.

Assumptions: Users understand how to navigate the system’s user interface to access
their profiles. The system is equipped with adequate security measures to
protect user data and privacy during profile viewing

2.3.2 Update profile

UC ID and Name: UC-17 Update profile

Created By: ManhCQ Created Date: 19/05/2024

Primary Actor: User, Secondary Actor: None

Admin,

Department manager,

Salesman,

Customer service,

Employee

Trigger: The actor wants to update their profile information, avatar, and
background image.

Description: This use case describes the process in which an actor updates their profile
information by accessing the "Profile" option in the user menu and using
the update feature.

Preconditions: 1. The actor must be logged in to the system.


2. The actor must have access to the user menu in the header.
3. The actor must have the necessary permissions to update their

57 | Page
profile.

Postconditions: The actor's updated profile information is saved in the system.

1. Actor logs into the system.


Normal Flow: 2. Actor navigates to the header.
3. Actor clicks on the user menu.
4. Actor selects the “Profile” option.
5. The system displays the actor’s personal information.
6. The actor clicks on the pencil icon next to the information they
want to update.
7. The system opens a dialog box with the current editable
information fields.
8. If the actor enters the correct format, the system displays the
message MSC010 MSC012, and only when entered correctly can
the information be updated.
9. Actor clicks on the “Update Information” button.
10. System shows message MSC013
11. The system validates the updated information.
12. The system saves the updated information and confirms the
changes.
13. The system displays the updated personal information.

Alternative Flows: 1. While in the Profile interface, the actor can change his
background image and avatar image.

EX-1: System Unavailable


Exceptions:
If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Medium

Other Information: All updates must comply with data protection regulations and privacy
policies.

Business Rule Only authorized actors can update their profile information.

58 | Page
Assumptions: The system has appropriate authentication mechanisms to ensure the
accuracy of the data.

2.3.4 Change password

UC ID and Name: UC-18 Change Password

Created By: ManhCQ Created Date: 20/05/2024

Primary Actor: User Secondary Actor: None

Admin

Department Manager

Salesman

Customer Service

Employee

Trigger: The actor wants to change their password.

Description: This use case describes the process by which an actor changes their
password by selecting the "Change Password" option from the user menu
located in the header.

Preconditions: The actor must be logged into the system.

Postconditions: The actor's password is successfully changed and updated in the system.

59 | Page
UC ID and Name: UC-18 Change Password

1. The actor logs in to the system.


Normal Flow: 2. The actor navigates to the header.
3. The actor clicks on the user menu.
4. The actor selects the "Change Password" option.
5. The system displays a form to change the password with fields for
the current password, new password, and re-entered password.
6. The actor enters the current password.
7. The actor enters the new password.
8. The actor re-enters the new password to confirm.
9. The system validates the entered password:
10. The current password matches the password in the database.
11. The new password and re-entered password match otherwise it.
12. The system updates the actor's password in the database.
13. The system displays a success message which displays message
MSC16.

Alternative Flows: 1. The re-entered password does not match the new password.The
system displays message MSG11.
2. The current password entered is incorrect.The system displays the
message MSG14

If the system is down or unavailable, the actor is notified of the problem


Exceptions: and asked to try again later.

Priority: Medium

Frequency of Use: This use case is expected to be used whenever an actor needs to change
their password for security or other reasons.

Other Information: The system must enforce password strength requirements for new
passwords.

Business Rule Only authorized actors may change their passwords.

New passwords must meet the system's security standards.

60 | Page
UC ID and Name: UC-18 Change Password

Assumptions: The system has an established method for securely updating the
password.

2.3.5 Identity verification

UC ID and Name: UC-19 Identification verification

Created By: ManhCQ Created Date: 21/05/2024

Primary Actor: User Secondary Actor: None

Trigger: The actor needs to authenticate their identity by providing ID Card


information.

Description: This use case describes the process in which the actor provides his
ID information to authenticate his identity. The system checks the
validity of the provided ID photo and reports any errors.

The actor must be logged in to the system.


Preconditions:

Postconditions: The actor's identity is authenticated if the ID information and photo


are valid.

61 | Page
1. User clicks on the avatar icon on the header, the system will
Normal Flow: display a series of other options.
2. User clicks on ‘Personal Profile’
3. The system navigates to the profile management page
4. User selects ‘Identity Verification’
5. The system displays the verification interface
6. User uploads 2 required photos and enters the required
information and presses the ‘Update’ button
7. The system automatically checks the accuracy
8. The system updates the information and notifies that the
information has been successfully verified MSC19.
9. The system redirects the user to the account management
page

Alternative Flows: Invalid ID card photo will display an error message MSC18

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of
the issue and asked to try again later.

Priority: Medium

Frequency of Use: This use case is expected to be used whenever identity


authentication is required to access sensitive information or services.

Other Information: The system must ensure secure handling of ID Card information in
accordance with data protection regulations.

Business Rule Only authorized Actors can submit ID Card information for
authentication.

The system must verify the authenticity and clarity of the ID photo.

Assumptions: The actor has a valid ID.

The system has a mechanism to verify the ID information and photo.

62 | Page
2.4 Manage Project Information
2.4.1 View list project information

UC ID and Name: UC-20 View list project information

Created By: ThanhVNM Created Date: 20/05/2024

Primary Actor: Salesman, Innovator Secondary Actor: None

Trigger: Salesman or innovator want to see list project information that salesman
created

Description: This use case describes the process for a salesman or innovator to view a
list of projects, including key information such as project information
name, project information file, project status, owner. This information is
used to make informed decisions and strategies.

1. The user is logged into their account as a salesman.


Preconditions: 2. The system is online and available.

Postconditions: The user successfully views the list of projects information

Salesman
Normal Flow: 1. Salesman click on “Quản lý thông tin dự án” on sidebar
2. The system displays the project information list, including “Tên
dự án”, “Tổng quan dự án”, “File dự án”, “Trạng thái”, “Dự án
được duyệt”, “Trạng thái dự án”.
Innovator
1. Innovator click on avatar in the header
2. System drop down a list of option
3. Innovator choose “Quản lý dự án” on dropdown
4. The system displays the project information list, including “Tên
dự án”, “Tổng quan dự án”, “File dự án”, “Trạng thái”, “Dự án
được duyệt”, “Trạng thái dự án”.

63 | Page
Alternative Flows: AF-1: No Projects Information Available

● At step 2 of salesman and step 3 of innovator, if there are no


public projects available, the system displays a message indicating
that no projects are currently available.
● Message: MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the project list is updated regularly and accurately reflects the
current state of all projects.

Business Rule Only users with the role of salesman or innovator should have access to
this detailed project information.

The information displayed should be relevant to the user's role and


support their decision-making processes.

Assumptions: The system has a reliable mechanism for retrieving and displaying project
information lists.

2.4.2 Search project information

UC ID and Name: UC-21 Search project information

Created By: ThanhVNM Created Date: 20/05/2024

Primary Actor: Salesman, Innovator Secondary Actor: None

Trigger: Salesman or innovator want to search list project information that


salesman created

64 | Page
Description: This use case describes the process for a salesman or innovator to search
a list of projects, including key information such as project information
name, project information file, project status, owner. This information is
used to make informed decisions and strategies.

1. The user is logged into their account as a salesman.


Preconditions: 2. The system is online and available.

Postconditions: The user successfully views the list of projects information have
information match with search field value
1. Salesman or innovator navigate to the screen view list project
Normal Flow: information.
2. Salesman or innovator enter name or path of name of the project
information in the search field and click ‘Tìm kiếm”
3. The system displays the project information list, including “Tên
dự án”, “Tổng quan dự án”, “File dự án”, “Trạng thái”, “Dự án
được duyệt”, “Trạng thái dự án” match with the name or the name
path in search field.

Alternative Flows: AF-1: No Projects Information Available

● At step 3, if there are no public projects available, the system


displays a message indicating that no projects are currently
available.
● Message: MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the project list is updated regularly and accurately reflects the
current state of all projects.

Business Rule Only users with the role of salesman or innovator should have access to
this detailed project information.

The information displayed should be relevant to the user's role and

65 | Page
support their decision-making processes.

The result must match with the value in the search field

Assumptions: The system has a reliable mechanism for retrieving and displaying project
information lists.

2.4.3 Create project information


2.4.3.1 Salesman

UC ID and Name: UC-22a Create project information

Created By: VietHQ Created Date: 20/05/2024

Primary Actor: Salesman Secondary Actor: None

Trigger: The salesman clicks on the "Thêm dự án" (Add Project) button to create a
new project information.

Description: This use case describes the process by which a salesman creates a new
project information by filling out a form with the necessary project
information and submitting it for approval to the department head or just
save as draft.

1. The salesman must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: The project information creation request is submitted to the department


head for approval or project information is saved draft.

The system acknowledges the receipt of the request and displays a


confirmation message to the salesman.

66 | Page
1. The salesman logs into the system and navigates to the project
Normal Flow: management module.
2. The salesman clicks on the "Thêm dự án" (Add Project) button.
3. The system displays a form for creating a new project with the
following fields:
● Tên dự án (Project Name)
● Tổng quan dự án (Project Overview)
● Link video dự án (Project Video Link)
● Lĩnh vực (Field)
● Chủ dự án (Project Owner)
● File dự án (Project Files)
4. The salesman fills out the form with the necessary information:

The salesman fills out the form with the necessary information:

● Tên dự án (Project Name): The salesman enters the project


name.
○ Validation:
■ Required.
■ Minimum length: 5 characters.
■ Maximum length: 100 characters.
■ If left empty, the system displays a message: "Tên
dự án là bắt buộc." (Project Name is required.)
■ If the length is less than 5 or more than 100
characters, the system displays a message: "Tên dự
án phải có độ dài từ 5 đến 100 ký tự." (Project
Name must be between 5 and 100 characters long.)
● Tổng quan dự án (Project Overview): The salesman enters the
project overview.
○ Validation:
■ Required.
■ Minimum length: 20 characters.
■ Maximum length: 1000 characters.
■ If left empty, the system displays a message: "Tổng
quan dự án là bắt buộc." (Project Overview is
required.)
■ If the length is less than 20 or more than 1000
characters, the system displays a message: "Tổng
quan dự án phải có độ dài từ 20 đến 1000 ký tự."
(Project Overview must be between 20 and 1000
characters long.)
● Link video dự án (Project Video Link): The salesman enters the
URL of the project video.
○ Validation:

67 | Page
■ Required.
■ Must be a valid URL.
■ If left empty, the system displays a message: "Link
video dự án là bắt buộc." (Project Video Link is
required.)
■ If the URL is invalid, the system displays a
message: "Link video không hợp lệ." (Invalid
video link.)
● Lĩnh vực (Field): The salesman selects the project field from a
dropdown list.
○ Validation: Required.
○ If not selected, the system displays a message: "Lĩnh vực
là bắt buộc." (Field is required.)
● Chủ dự án (Project Owner): The salesman enters the project
owner's name.
○ Validation:
■ Required.
■ Minimum length: 3 characters.
■ Maximum length: 100 characters.
■ If left empty, the system displays a message: "Chủ
dự án là bắt buộc." (Project Owner is required.)
■ If the length is less than 3 or more than 100
characters, the system displays a message: "Chủ dự
án phải có độ dài từ 3 đến 100 ký tự." (Project
Owner must be between 3 and 100 characters
long.)
● File dự án (Project Files): The salesman uploads up to 5 project
files.
○ Validation:
■ A maximum of 5 files is allowed. If more than 5
files are uploaded, the system displays a message:
"Chỉ cho phép tải lên tối đa 5 tệp." (A maximum of
5 files is allowed.)
■ Only files with .doc, .docx, and .pdf extensions are
accepted. If a file with an invalid extension is
uploaded, the system displays a message: "Chỉ
chấp nhận tệp có định dạng Word hoặc PDF."
(Only Word or PDF files are accepted.)
5. The salesman reviews the entered information to ensure it is
accurate.
6. The salesman clicks the "Xác nhận" (Confirm) button to submit
the form.
7. The system validates the entered information. If any validation

68 | Page
fails, the system highlights the corresponding field and displays
the appropriate error message.
8. If all validations pass, the system submits the project creation
request to the department head for approval.
9. The system displays a confirmation message to the salesman:
"Tạo thông tin dự án thành công."

Alternative Flows: A1: Validation Error

1. At step 6, The salesman fills out the form and clicks the "Xác
nhận" (Confirm) button.
2. The system detects one or more validation errors.
3. The system highlights the fields with errors and displays the
appropriate error messages.
4. The salesman corrects the errors and resubmits the form.

A1: Save as Draft

1. At step 6, The salesman fills out the form and clicks the "Lưu
tạm" (Confirm) button.
2. The system saves project information without creating a request
for the department manager.
3. The system display message “Tạo thông tin dự án thành công”

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The system should provide clear feedback to the salesman regarding the
status of the form submission and any errors encountered.

Business Rule The system validates the data of form and displays an error message to
the user

69 | Page
Assumptions: The salesman has the necessary permissions to access the project
management module and create new project information.

The department head is responsible for reviewing and approving project


creation requests.

2.4.3.2 Innovator

UC ID and Name: UC-22b Create project information

Created By: ThanVNM Created Date: 20/05/2024

Primary Actor: Innovator Secondary Actor: None

Trigger: The innovator clicks on the "Thêm dự án" (Add Project) button to create
a new project information.

Description: This use case describes the process by which an innovator creates a new
project information by filling out a form with the necessary project
information and submitting it for approval to the department head or just
save as draft.

1. The innovator must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: The project information creation request is submitted to the department


head for approval or project information is saved draft.

The system acknowledges the receipt of the request and displays a


confirmation message to the innovator.

70 | Page
1. The innovator logs into the system and navigates to the project
Normal Flow: management module.
2. The innovator clicks on the "Thêm dự án" (Add Project) button.
3. The innovator displays a form for creating a new project with the
following fields:
a. Tên dự án (Project Name)
b. Tổng quan dự án (Project Overview)
c. Link video dự án (Project Video Link)
d. Lĩnh vực (Field)
e. Chủ dự án (Project Owner)
f. File dự án (Project Files)
4. The innovator fills out the form with the necessary information:
5. The innovator fills out the form with the necessary information:
a. Tên dự án (Project Name): The innovator enters the
project name.
i. Validation:
1. Required.
2. Minimum length: 5 characters.
3. Maximum length: 100 characters.
4. If left empty, the system displays a
message: "Tên dự án là bắt buộc." (Project
Name is required.)
5. If the length is less than 5 or more than 100
characters, the system displays a message:
"Tên dự án phải có độ dài từ 5 đến 100 ký
tự." (Project Name must be between 5 and
100 characters long.)
b. Tổng quan dự án (Project Overview): The innovator
enters the project overview.
i. Validation:
1. Required.
2. Minimum length: 20 characters.
3. Maximum length: 1000 characters.
4. If left empty, the system displays a
message: "Tổng quan dự án là bắt buộc."
(Project Overview is required.)
5. If the length is less than 20 or more than
1000 characters, the system displays a
message: "Tổng quan dự án phải có độ dài
từ 20 đến 1000 ký tự." (Project Overview
must be between 20 and 1000 characters
long.)
c. Link video dự án (Project Video Link): The innovator

71 | Page
enters the URL of the project video.
i. Validation:
1. Required.
2. Must be a valid URL.
3. If left empty, the system displays a
message: "Link video dự án là bắt buộc."
(Project Video Link is required.)
4. If the URL is invalid, the system displays a
message: "Link video không hợp lệ."
(Invalid video link.)
d. Lĩnh vực (Field): The innovator selects the project field
from a dropdown list.
i. Validation: Required.
ii. If not selected, the system displays a message:
"Lĩnh vực là bắt buộc." (Field is required.)
e. File dự án (Project Files): The innovator uploads up to 5
project files.
i. Validation:
1. A maximum of 5 files is allowed. If more
than 5 files are uploaded, the system
displays a message: "Chỉ cho phép tải lên
tối đa 5 tệp." (A maximum of 5 files is
allowed.)
2. Only files with .doc, .docx, and .pdf
extensions are accepted. If a file with an
invalid extension is uploaded, the system
displays a message: "Chỉ chấp nhận tệp có
định dạng Word hoặc PDF." (Only Word or
PDF files are accepted.)
6. The innovator reviews the entered information to ensure it is
accurate.
7. The innovator clicks the "Xác nhận" (Confirm) button to submit
the form.
8. The system validates the entered information. If any validation
fails, the system highlights the corresponding field and displays
the appropriate error message.
9. If all validations pass, the system submits the project creation
request to the department head for approval.
10. The system displays a confirmation message to the innovator:
"Tạo thông tin dự án thành công."

72 | Page
Alternative Flows: A1: Validation Error

1. At step 6, The innovator fills out the form and clicks the "Xác
nhận" (Confirm) button.
2. The system detects one or more validation errors.
3. The system highlights the fields with errors and displays the
appropriate error messages.
4. The innovator corrects the errors and resubmits the form.

A1: Save as Draft

1. At step 6, The innovator fills out the form and clicks the "Lưu
tạm" (Confirm) button.
2. The system saves project information without creating a request
for the department manager.
3. The system display message “Tạo thông tin dự án thành công”

EX-1: System Unavailable


Exceptions:
2. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The system should provide clear feedback to the salesman regarding the
status of the form submission and any errors encountered.

Business Rule The system validates the data of form and displays an error message to
the user

Assumptions: The innovator has the necessary permissions to access the project
management module and create new project information.

The department head is responsible for reviewing and approving project


creation requests.

73 | Page
2.4.4 View project information detail

UC ID and Name: UC-23 View project information detail

Created By: ThanhVNM Created Date: 20/05/2024

Primary Actor: Salesman, Innovator Secondary Actor: None

Trigger: Salesman or Innovator click on name of the project information

Description: This use case describes the process for a salesman or innovator to view
the details of a project information they have created. The user will be
able to see project information such as the project name, summary,
project video, project category, status, owner and file.

1. The salesman or innovator must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: 1. The user successfully views the details of the project information.
2. The system logs the user's access to the project information details
page.
1. Salesman or innovator navigate to view list project information
Normal Flow: 2. Salesman or innovator click on name of a project information
3. The system displays the project information details page,
including information such as the project name, summary, project
video, project category, status, owner and file.

Alternative Flows: AF-1: Project Information Not Found

● At step 4, if the system cannot find the project details, it navigates


to screen 404 .
● Message: MSC25

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

74 | Page
Frequency of Use: Frequent

Other Information: Ensure that the project information details are up-to-date and accurately
reflect the current status of the project.

Business Rule Only projects information that salesman or belong to innovator can be
seen

Assumptions: The user is familiar with navigating the project information listing page.

The system has a reliable mechanism for retrieving and displaying project
information details.

The project information detail is designed to be easily understandable by


the user.

2.4.5 Update project information draft


2.4.5.1 Salesman

UC ID and Name: UC-24a Update project information

Created By: ThanhVNM Created Date: 20/05/2024

Primary Actor: Salesman Secondary Actor: None

Trigger: The salesman clicks on the "Edit" icon button to update project
information.

Description: This use case describes the process by which a salesman updates
information by changing form with the necessary project information and
submitting it for approval to the department head or just save as draft.

1. The salesman must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: The project information update request is submitted to the department


head for approval or project information is saved draft.

75 | Page
The system acknowledges the receipt of the request and displays a
confirmation message to the salesman.

1. The salesman logs into the system and navigates to the project
Normal Flow: management module.
2. The salesman clicks on the "Edit" icon button.
3. The system displays a form with old project:
○ Tên dự án (Project Name)
○ Tổng quan dự án (Project Overview)
○ Link video dự án (Project Video Link)
○ Lĩnh vực (Field)
○ Chủ dự án (Project Owner)
○ File dự án (Project Files)
4. The salesman change new information, it can be:
○ Tên dự án (Project Name): The salesman enters the
project name.
■ Validation:
● Required.
● Minimum length: 5 characters.
● Maximum length: 100 characters.
● If left empty, the system displays a
message: "Tên dự án là bắt buộc." (Project
Name is required.)
● If the length is less than 5 or more than 100
characters, the system displays a message:
"Tên dự án phải có độ dài từ 5 đến 100 ký
tự." (Project Name must be between 5 and
100 characters long.)
○ Tổng quan dự án (Project Overview): The salesman
enters the project overview.
■ Validation:
● Required.
● Minimum length: 20 characters.
● Maximum length: 1000 characters.
● If left empty, the system displays a
message: "Tổng quan dự án là bắt buộc."
(Project Overview is required.)
● If the length is less than 20 or more than
1000 characters, the system displays a
message: "Tổng quan dự án phải có độ dài
từ 20 đến 1000 ký tự." (Project Overview
must be between 20 and 1000 characters

76 | Page
long.)
○ Link video dự án (Project Video Link): The salesman
enters the URL of the project video.
■ Validation:
● Required.
● Must be a valid URL.
● If left empty, the system displays a
message: "Link video dự án là bắt buộc."
(Project Video Link is required.)
● If the URL is invalid, the system displays a
message: "Link video không hợp lệ."
(Invalid video link.)
○ Lĩnh vực (Field): The salesman selects the project field
from a dropdown list.
■ Validation: Required.
■ If not selected, the system displays a message:
"Lĩnh vực là bắt buộc." (Field is required.)
○ Chủ dự án (Project Owner): The salesman enters the
project owner's name.
■ Validation:
● Required.
● Minimum length: 3 characters.
● Maximum length: 100 characters.
● If left empty, the system displays a
message: "Chủ dự án là bắt buộc." (Project
Owner is required.)
● If the length is less than 3 or more than 100
characters, the system displays a message:
"Chủ dự án phải có độ dài từ 3 đến 100 ký
tự." (Project Owner must be between 3 and
100 characters long.)
○ File dự án (Project Files): The salesman uploads up to 5
project files.
■ Validation:
● A maximum of 5 files is allowed. If more
than 5 files are uploaded, the system
displays a message: "Chỉ cho phép tải lên
tối đa 5 tệp." (A maximum of 5 files is
allowed.)
● Only files with .doc, .docx, and .pdf
extensions are accepted. If a file with an
invalid extension is uploaded, the system
displays a message: "Chỉ chấp nhận tệp có

77 | Page
định dạng Word hoặc PDF." (Only Word or
PDF files are accepted.)
5. The salesman reviews the entered information to ensure it is
accurate.
6. The salesman clicks the "Xác nhận" (Confirm) button to submit
the form.
7. The system validates the entered information. If any validation
fails, the system highlights the corresponding field and displays
the appropriate error message.
8. If all validations pass, the system submits the project creation
request to the department head for approval.
9. The system displays a confirmation message to the salesman:
"Tạo thông tin dự án thành công."

Alternative Flows: A1: Validation Error

1. At step 6, The salesman fills out the form and clicks the "Xác
nhận" (Confirm) button.
2. The system detects one or more validation errors.
3. The system highlights the fields with errors and displays the
appropriate error messages.
4. The salesman corrects the errors and resubmits the form.

A1: Save as Draft

1. At step 6, The salesman fills out the form and clicks the "Lưu
tạm" (Confirm) button.
2. The system saves project information without creating a request
for the department manager.
3. The system display message “Cập nhật thông tin dự án thành
công”

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

78 | Page
Other Information: The system should provide clear feedback to the salesman regarding the
status of the form submission and any errors encountered.

Business Rule The system validates the data of form and displays an error message to
the user

Can only update project information if the project information status is


draft

Assumptions: The salesman has the necessary permissions to access the project
management module and create new project information.

The department head is responsible for reviewing and approving project


creation requests.

2.4.5.2 Innovator

UC ID and Name: UC-24b Create project information

Created By: ThanVNM Created Date: 20/05/2024

Primary Actor: Innovator Secondary Actor: None

Trigger: The innovator clicks on the "Edit" icon button to update project
information.

Description: This use case describes the process by which an innovator updates a
project information by changing a form with the necessary project
information and submitting it for approval to the department head or just
save as draft.

1. The innovator must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: The project information creation request is submitted to the department


head for approval or project information is saved draft.

79 | Page
The system acknowledges the receipt of the request and displays a
confirmation message to the innovator.

1. The innovator logs into the system and navigates to the project
Normal Flow: management module.
2. The innovator clicks on the "Thêm dự án" (Add Project) button.
3. The system displays a form with old project:
○ Tên dự án (Project Name)
○ Tổng quan dự án (Project Overview)
○ Link video dự án (Project Video Link)
○ Lĩnh vực (Field)
○ Chủ dự án (Project Owner)
○ File dự án (Project Files)
4. The innovator change new information, it can be:
○ Tên dự án (Project Name): The innovator enters the
project name.
■ Validation:
● Required.
● Minimum length: 5 characters.
● Maximum length: 100 characters.
● If left empty, the system displays a
message: "Tên dự án là bắt buộc." (Project
Name is required.)
● If the length is less than 5 or more than 100
characters, the system displays a message:
"Tên dự án phải có độ dài từ 5 đến 100 ký
tự." (Project Name must be between 5 and
100 characters long.)
○ Tổng quan dự án (Project Overview): The innovator
enters the project overview.
■ Validation:
● Required.
● Minimum length: 20 characters.
● Maximum length: 1000 characters.
● If left empty, the system displays a
message: "Tổng quan dự án là bắt buộc."
(Project Overview is required.)
● If the length is less than 20 or more than
1000 characters, the system displays a
message: "Tổng quan dự án phải có độ dài
từ 20 đến 1000 ký tự." (Project Overview
must be between 20 and 1000 characters

80 | Page
long.)
○ Link video dự án (Project Video Link): The innovator
enters the URL of the project video.
■ Validation:
● Required.
● Must be a valid URL.
● If left empty, the system displays a
message: "Link video dự án là bắt buộc."
(Project Video Link is required.)
● If the URL is invalid, the system displays a
message: "Link video không hợp lệ."
(Invalid video link.)
○ Lĩnh vực (Field): The innovator selects the project field
from a dropdown list.
■ Validation: Required.
■ If not selected, the system displays a message:
"Lĩnh vực là bắt buộc." (Field is required.)
○ File dự án (Project Files): The innovator uploads up to 5
project files.
■ Validation:
● A maximum of 5 files is allowed. If more
than 5 files are uploaded, the system
displays a message: "Chỉ cho phép tải lên
tối đa 5 tệp." (A maximum of 5 files is
allowed.)
● Only files with .doc, .docx, and .pdf
extensions are accepted. If a file with an
invalid extension is uploaded, the system
displays a message: "Chỉ chấp nhận tệp có
định dạng Word hoặc PDF." (Only Word or
PDF files are accepted.)
5. The innovator reviews the entered information to ensure it is
accurate.
6. The innovator clicks the "Xác nhận" (Confirm) button to submit
the form.
7. The system validates the entered information. If any validation
fails, the system highlights the corresponding field and displays
the appropriate error message.
8. If all validations pass, the system submits the project creation
request to the department head for approval.
9. The system displays a confirmation message to the innovator:
"Tạo thông tin dự án thành công."

81 | Page
Alternative Flows: A1: Validation Error

1. At step 6, The innovator fills out the form and clicks the "Xác
nhận" (Confirm) button.
2. The system detects one or more validation errors.
3. The system highlights the fields with errors and displays the
appropriate error messages.
4. The innovator corrects the errors and resubmits the form.

A1: Save as Draft

1. At step 6, The innovator fills out the form and clicks the "Lưu
tạm" (Confirm) button.
2. The system saves project information without creating a request
for the department manager.
3. The system display message “Tạo thông tin dự án thành công”

EX-1: System Unavailable


Exceptions:
3. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The system should provide clear feedback to the salesman regarding the
status of the form submission and any errors encountered.

Business Rule The system validates the data of form and displays an error message to
the user

Can only update project information if the project information status is


draft

Assumptions: The innovator has the necessary permissions to access the project
management module and create new project information.

The department head is responsible for reviewing and approving project


creation requests.

82 | Page
2.4.6 Delete project information draft

UC ID and Name: UC-25 Delete project information draft

Created By: ThanhVNM Created Date: 21/02/2024

Primary Actor: Salesman, Innovator Secondary Actor: None

Trigger: The salesman or innovator clicks on the "Delete" icon button to delete
project information.

Description: This use case describes the process for a project owner to delete a draft of
project information from the platform. The draft is removed from the
system and is no longer accessible.

1. The user is logged into their account as a salesman or innovator.


Preconditions: 2. The system is online and available.
3. The draft of project information exists and is accessible to the
project owner or salesman who creates it.

Postconditions: 1. The draft of project information is deleted from the system.


2. The system confirms the deletion to the user.
1. Salesman or innovator navigate to view list project information
Normal Flow: 2. Salesman or innovator clicks on the "Delete" icon button to delete
project information.
3. System display a pop up to confirm to delete project information
4. Salesman or innovator click on “Xác nhân” to confirm delete
project information draft
5. The system display MSC41

Alternative Flows: A1: Cancel delete project information

4. At step 4, The innovator or salesman chooses the "Hủy" (Cancel)


button.
5. The system back to the list view

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

83 | Page
Priority: Medium

Frequency of Use: Occasional

Other Information: Ensure that the deletion process is irreversible and that the user is clearly
informed of this before confirming.

Business Rule Only the project owner or the salesman who creates it can delete their
own drafts.

Once deleted, the draft cannot be recovered.

Only draft can be delete

Assumptions: The drafts section is easily accessible from the project management page.

The system has a reliable mechanism for deleting project drafts and
updating the database accordingly.

2.5 Manage System


2.5.1 View system static

UC ID and Name: UC-26 System static

Created By: CongNT Created Date: 21/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to view the system reports by clicking the "Bảng
điều khiển" tab on the sidebar.

Description: This use case describes the process for an admin to view system reports.
The admin navigates to the management screen and clicks on the "Bảng
điều khiển" tab in the sidebar. The system then displays the system report
screen, showing the total number of users, total number of employees,
total number of departments, and various user information charts
including system access data through Google Analytics.

84 | Page
1. The admin is logged into the system.
Preconditions: 2. The system is online and available.
3. The admin has the necessary permissions to view system reports.

Postconditions: 1. The admin successfully views the system reports, including user
statistics and charts.
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the management screen.
3. The admin clicks the "Bảng điều khiển" tab in the sidebar.
4. The system displays the system report screen.
5. The system report screen shows the total number of users.
6. The system report screen shows the total number of employees.
7. The system report screen shows the total number of departments.
8. The system report screen displays various user information charts,
including system access data via Google Analytics.

Alternative Flows: None

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium - This use case is expected to be used by admins regularly to
monitor system statistics.

Other Information: This use case is crucial for system monitoring and management.

Ensure that the system report screen is user-friendly and provides


accurate, up-to-date information.

Business Rule The system must have access to the necessary data sources to generate the
reports and charts.

85 | Page
Google Analytics integration must be set up and functional.

Assumptions: The admin has the necessary permissions to access the "Bảng điều khiển"
tab and view the system reports.

The system has a reliable mechanism for retrieving and displaying user
statistics and Google Analytics data.

2.5.2 Manage user


2.5.2.1 View list user

UC ID and Name: UC-27 View list user

Created By: CongNT Created Date: 22/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to view the list of system users by selecting the
"Quản lý người dùng" tab on the sidebar.

Description: This use case describes the process for an admin to view the list of system
users. The admin navigates to the management screen, selects the "Quản
lý người dùng" tab on the sidebar, and the system displays a paginated list
of users with important information such as name, email, and user status.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin has the necessary permissions to view the user
management tab.

Postconditions: 1. The admin successfully views a paginated list of users with


important information displayed.

86 | Page
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the management screen.
3. The admin selects the "Quản lý người dùng" tab on the sidebar.
4. The system displays the user management screen with a paginated
list of users.
5. The list displays the following information for each user:
● Name
● Email
● User status
● …
6. The admin can navigate through the pages to view more users.

Alternative Flows: AF-1: No Data Available

1. If there are no users in the system, the system displays a message


indicating that no data is available.
2. The message may read: "No users found" or a similar
user-friendly notification.
3. The admin can still navigate the user management interface, but
will not see any user entries.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: This use case is crucial for user management and monitoring.

Ensure that the user management screen is user-friendly and provides


accurate, up-to-date information.

Include a clear message for cases where no user data is available to


enhance user experience.

Business Rule The system must have access to the user database to retrieve and display
user information.

87 | Page
Pagination should be implemented to handle large numbers of users
efficiently.

Assumptions: The admin has the necessary permissions to access the "Quản lý người
dùng" tab and view the user list.

The system has a reliable mechanism for retrieving and displaying user
information.

2.5.2.2 Search user

UC ID and Name: UC-28Search user

Created By: CongNT Created Date: 22/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to search for a user by entering a username in the
search field on the user management screen.

Description: This use case describes the process for an admin to search for a specific
user in the user list by entering a username. The admin uses the search
functionality to filter the list of users based on the input.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin has navigated to the user management screen where
the search functionality is available.

Postconditions: 1. The admin successfully searches for a user, and the list displays
users matching the search criteria.

88 | Page
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the user management screen.
3. The admin locates the search field on the user management
screen.
4. The admin enters a username into the search field.
5. The system filters the list of users based on the entered username.
6. The system displays users whose usernames match the search
criteria.
7. If no matching users are found, the system displays a message
indicating no results found.

Alternative Flows: AF-1: No Matching Users

1. If there are no users whose usernames match the search criteria,


the system displays a message indicating that no users were
found.
2. The message may read: "No users found matching the search
criteria." - MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium - This use case is used as needed when the admin wants to find
specific users from a potentially large list.

Other Information: This use case enhances the usability of the user management screen by
allowing for efficient user searches.

Ensure that the search functionality is fast and accurate, providing


relevant results based on the entered username.

Business Rule The search functionality should only return users whose usernames match
the search input, using partial matching if applicable.

89 | Page
Assumptions: The admin has the necessary permissions to access the user management
screen and perform searches.

The system has a reliable mechanism for filtering and displaying user
search results.

2.5.2.3 Lock user

UC ID and Name: UC-29 Lock user

Created By: CongNT Created Date: 22/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to lock a user account that is currently active or
unlock a user account that is currently locked by interacting with the
corresponding lock icon in the user management table.

Description: This use case describes the process for an admin to lock or unlock a user
account. The admin clicks on the lock icon corresponding to a user in the
table on the user management screen, and a confirmation popup appears.
The admin confirms or cancels the action based on the prompt.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin is on the user management screen where the lock icons
are displayed.

Postconditions: 1. The user account is locked or unlocked based on the admin's


confirmation.
2. The system updates the user status accordingly.

90 | Page
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the user management screen.
3. The system displays a list of users with lock/unlock icons for each
user.
4. The admin identifies the user they wish to lock or unlock.
5. The admin clicks on the lock icon for the selected user.
6. A confirmation popup appears, asking the admin to confirm the
action.
7. The popup contains options to "Confirm" or "Cancel."
8. The admin clicks "Confirm" to proceed with the action.
9. The system updates the user’s status:
10. If locked, the user’s account is set to a locked status.
11. If unlocked, the user’s account is set to an active status.
12. The system closes the popup and updates the user list to reflect the
new status. Message MSC30

Alternative Flows: AF-1: Action Canceled

1. If the admin clicks "Cancel" on the confirmation popup, the popup


closes, and no changes are made to the user’s status.
2. The user status remains unchanged.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Low

Frequency of Use: Low - This use case is used as needed when the admin needs to change
the status of user accounts.

Other Information: Ensure that the confirmation popup is clear and provides a
straightforward option to confirm or cancel the action.

The user status update should be reflected immediately in the user


management screen.

Business Rule Only active users can be locked, and only locked users can be unlocked.

The system must handle user status changes reliably and update the user

91 | Page
list accordingly.

Assumptions: The admin has the necessary permissions to lock or unlock user accounts.

The system has a reliable mechanism for updating and displaying user
statuses.

2.5.3 Manage employee


2.5.3.1 View list employee

UC ID and Name: UC-30 View list employee

Created By: CongNT Created Date: 22/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin selects the "Quản lý nhân viên" tab on the sidebar in the
management screen.

Description: This use case describes the process for an admin to view a list of
employees. The admin navigates to the management screen, selects the
"Quản lý nhân viên" tab, and the system displays a list of employees with
basic information such as name, email, and status.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin has navigated to the management screen where the
"Quản lý nhân viên" tab is available.

Postconditions: 1. The admin successfully views a list of employees with their basic
information displayed.

92 | Page
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the management screen.
3. The admin selects the "Quản lý nhân viên" tab on the sidebar.
4. The system displays the employee management screen with a list
of employees.
5. The list shows the following information for each employee:
● Name
● Email
● Status
● …
6. The admin can view the employee information and navigate
through the list if needed.

Alternative Flows: AF-1: No Employees Found

1. If there are no employees in the system, the system displays a


message indicating that no employees are available.
2. The message may read: "No employees found." MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Medium - This use case is used whenever the admin needs to review
employee information.

Other Information: Ensure that the employee management screen is user-friendly and
displays up-to-date information.

Include clear messaging for cases where no employee data is available.

Business Rule The system must have access to the employee database to retrieve and
display employee information.

Ensure the list is paginated if there are a large number of employees to


handle efficiently.

93 | Page
Assumptions: The admin has the necessary permissions to access the "Quản lý nhân
viên" tab and view the employee list.

The system has a reliable mechanism for retrieving and displaying


employee information.

2.5.3.2 Search employee

UC ID and Name: UC-31 Search employee

Created By: CongNT Created Date: 22/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to search for an employee by entering the employee's
name in the search field on the employee management screen.

Description: This use case describes the process for an admin to search for an
employee by entering their name. The admin uses the search functionality
to filter the list of employees based on the input.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin is on the employee management screen where the
search functionality is available.

Postconditions: 1. The admin successfully searches for an employee, and the list
displays employees matching the search criteria.

94 | Page
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the employee management screen.
3. The system displays a list of employees with a search field.
4. The admin enters the name of the employee they wish to find into
the search field.
5. The system filters the list of employees based on the entered
name.
6. The system displays employees whose names match the search
criteria.
7. If no matching employees are found, the system displays a
message indicating no results found.

Alternative Flows: AF-1: No Matching Employees

1. If there are no employees whose names match the search criteria,


the system displays a message indicating that no employees were
found.
2. The message may read: "No employees found matching the search
criteria." MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium - This use case is used as needed when the admin wants to find
specific employees from a potentially large list.

Other Information: This use case enhances the usability of the employee management screen
by allowing for efficient employee searches.

Ensure that the search functionality is responsive and provides accurate


results based on the entered name.

Business Rule The search functionality should return employees whose names match the
search input, using partial matching if applicable.

95 | Page
Assumptions: The admin has the necessary permissions to access the employee
management screen and perform searches.

The system has a reliable mechanism for filtering and displaying


employee search results.

2.5.3.3 Create employee

UC ID and Name: UC-32 Create employee

Created By: CongNT Created Date: 22/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin clicks the "Thêm mới nhân viên" button on the employee
management screen.

Description: This use case describes the process for an admin to create a new
employee by filling out a form in a popup. The admin must enter the
employee's name, email, and role. The name should not exceed 255
characters and must not contain special characters, the email must be
unique within the system, and the role can be Sale, Quản lý, Nhân viên,
or chăm sóc khách hàng.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin is on the employee management screen.

Postconditions: 1. The new employee is successfully created and added to the


employee list in the system.
2. The system displays the updated list of employees, including the
newly added employee.

96 | Page
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the employee management screen.
3. The system displays a list of employees with a "Thêm mới nhân
viên" button.
4. The admin clicks the "Thêm mới nhân viên" button.
5. The system opens a popup form for adding a new employee.
6. The admin enters the following information into the form:
● Name (max 255 characters, no special characters)
● Email (must be unique within the system)
● Role (dropdown with options: Sale, Quản lý, Nhân viên,
chăm sóc khách hàng)
7. The admin submits the form.
8. The system validates the input:
● Ensures the name does not exceed 255 characters and
contains no special characters.
● Ensures the email is in a valid format and is unique within
the system.
● Ensures a role is selected from the available options.
9. The system creates the new employee with the provided
information.
10. The system closes the popup and updates the employee list to
include the new employee. Show message MSC29

Alternative Flows: AF-1: Invalid Input

1. At step 8, if any input is invalid, the system displays an error


message specifying the issue.
2. The admin corrects the input and resubmits the form.

Message is MSC01, MSC02, MSC08,

AF-2: Duplicate Email

1. At step 8b, if the email already exists in the system, the system
displays an error message indicating the email is already in use.
2. The admin enters a different, unique email and resubmits the
form.

Message is MSC27

AF-3: No Role Selected

1. At step 8c, if no role is selected, the system displays an error


message prompting the admin to select a role.
2. The admin selects a role and resubmits the form.

97 | Page
Message is MSC28

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Highs

Frequency of Use: Medium - This use case is used whenever a new employee needs to be
added to the system.

Other Information: Ensure the popup form is user-friendly and provides clear guidance for
entering the required information.

The validation messages should be clear and helpful.

Business Rule The name field must not exceed 255 characters and must not contain
special characters.

The email must be unique within the system and in a valid format.

The role must be one of the predefined options: Sale, Quản lý, Nhân viên,
chăm sóc khách hàng.

Assumptions: The admin has the necessary permissions to add new employees.

The system has a reliable mechanism for validating and storing employee
information.

2.5.3.4 Lock employee

UC ID and Name: UC-33 Lock employee

Created By: CongNT Created Date: 22/05/2024

Primary Actor: Admin Secondary Actor: None

98 | Page
Trigger: The admin decides to lock an employee's account and clicks the lock
icon corresponding to the employee in the employee list.

Description: This use case describes the process for an admin to lock or unlock an
employee's account. The admin clicks the lock icon next to an employee
in the employee list, which triggers a confirmation popup. If the admin
confirms, the action is executed; otherwise, it is canceled.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin is on the employee management screen with a list of
employees.

Postconditions: 1. The employee's account status is successfully updated (locked or


unlocked).
2. The system updates the employee list to reflect the new status.

1. The admin logs into the system.


Normal Flow: 2. The admin navigates to the employee management screen.
3. The system displays a list of employees with lock icons next to
each employee.
4. The admin clicks the lock icon next to the employee they wish to
lock or unlock.
5. The system displays a confirmation popup asking the admin to
confirm the action.
6. The admin confirms the action.
7. The system updates the employee's status (locked or unlocked) in
the database.
8. The system updates the employee list to reflect the new status.
Message MSC30

Alternative Flows: AF-1: Action Canceled

1. At step 6, if the admin cancels the action, the system closes the
popup and no changes are made to the employee's status.

AF-2: No Data Available

1. If there are no employees listed, the system displays a message


indicating no data available.

99 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: Ensure the confirmation popup provides clear and concise information
about the action being taken.

The lock icon should visually indicate the current status of the employee
(locked or unlocked).

Business Rule Only admins have the permission to lock or unlock employee accounts.

The system should log the action for auditing purposes.

Assumptions: The admin has the necessary permissions to lock or unlock employee
accounts.

The system has a reliable mechanism for updating and displaying


employee status.

2.5.3 Manage department


2.5.3.1 View list department

UC ID and Name: UC-34 View list department

Created By: CongNT Created Date: 23/05/2024

Primary Actor: Admin, Secondary Actor: None

Department manager,

100 | Page
Employee

Trigger: The user (admin, department manager, or employee) navigates to the


department management screen by selecting the appropriate tab from the
sidebar.

Description: This use case describes the process for viewing a list of departments.
Admins can view all departments, while department managers and
employees can only view their own departments. The list includes basic
information such as department name, field of activity, and number of
employees.

1. The user is logged into the system.


Preconditions: 2. The system is online and available.

Postconditions: 1. The user can view a list of departments with relevant information.

1. The user logs into the system.


Normal Flow: 2. The user navigates to the management screen.
3. The system displays the sidebar with appropriate tabs.
● If the user is an admin, they select the "Quản lý phòng
ban" tab.
● If the user is a department manager or employee, they
select the "Danh sách phòng ban" tab.
4. The system displays the department list screen.
● If the user is an admin, the system displays a list of all
departments.
● If the user is a department manager or employee, the
system displays a list of the user's own department(s).
5. The system displays basic information for each department, such
as department name, field of activity, and number of employees.

Alternative Flows: AF-1: No Data Available

1. If there are no departments to display, the system shows a


message indicating that no data is available. Message MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

101 | Page
Priority: Medium

Frequency of Use: Medium

Other Information: Ensure the department list screen is user-friendly and displays
information clearly.

The system should filter and display departments based on the user's role
and permissions.

Business Rule Admins can view all departments in the system.

Department managers and employees can only view their own


departments.

Assumptions: The user has the necessary permissions to view the department list.

The system has a reliable mechanism for filtering and displaying


department information.

2.5.3.2 Search department

UC ID and Name: UC-35 Search department

Created By: CongNT Created Date: 23/05/2024

Primary Actor: Admin, Secondary Actor: None

Department manager,

Employee

Trigger: The user wants to find a specific department by its name.

Description: This use case describes the process for a user (admin, department
manager, or employee) to search for a department by name in the
department list.

1. The user is logged into the system.


Preconditions: 2. The system is online and available.

102 | Page
3. The user has access to the department list screen.

Postconditions: 1. The system displays search results based on the entered


department name.
1. The user logs into the system.
Normal Flow: 2. The user navigates to the management screen.
3. The system displays the sidebar with appropriate tabs.
● If the user is an admin, they select the "Quản lý phòng
ban" tab.
● If the user is a department manager or employee, they
select the "Danh sách phòng ban" tab.
1. The system displays the department list screen.
2. The user enters the department name into the search bar.
3. The user clicks the search button.
4. The system searches for departments matching the entered name.
5. The system displays the search results with basic information for
each matching department, such as department name, field of
activity, and number of employees.

Alternative Flows: AF-1: No Matching Departments

1. If no departments match the entered name, the system displays a


message indicating no data is available. Message MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: Ensure the search function is user-friendly and provides quick, accurate
results.

Business Rule Users can only search for departments they have permission to view
(admins can search all departments, while department managers and
employees can only search their own departments).

103 | Page
Assumptions: The user has the necessary permissions to search for departments.

The system has a reliable mechanism for searching and displaying


department information.

2.5.3.3 Create department

UC ID and Name: UC-36 Create department

Created By: CongNT Created Date: 23/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to create a new department.

Description: This use case describes the process for an admin to create a new
department. The admin will fill in the department name, description,
select a manager from a dropdown list, and choose the field and category
from an API-provided list.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin has access to the department list screen.

Postconditions: 1. A new department is created and stored in the database.


2. The admin is redirected back to the department list screen.

104 | Page
1. The admin logs into the system.
Normal Flow: 2. The admin navigates to the management screen.
3. The system displays the sidebar with appropriate tabs.
4. The admin selects the "Quản lý phòng ban" tab.
5. The system displays the department list screen.
6. The admin clicks the "Thêm mới phòng ban" button.
7. The system navigates to the "Thêm phòng ban" screen.
8. The system displays a form with fields for:
● Tên phòng ban (max 255)
● Mô tả phòng ban (max 1000)
● Quản lý (dropdown “danh sách quản lý”)
● Lĩnh vực (dropdown)
● Danh mục (dropdown)
9. The admin fills in the department name, description, selects a
manager, field, and category.
10. The admin clicks the "Thêm mới" button.
11. The system validates the inputs:
● Ensures the department name is not empty and does not exceed
255 characters.
● Ensures the description does not exceed 1000 characters.
● Ensures a manager, field, and category are selected.
12. The system creates the new department.
13. The system redirects the admin back to the department list screen.
14. The system displays a confirmation message indicating the
department has been successfully created. Message MSC32

Alternative Flows: AF-1: Admin Cancels Creation

1. At step 10, if the admin clicks the "Hủy" button, the system
cancels the creation process and redirects the admin back to the
department list screen without making any changes.

AF-2: Department Name Invalid

1. At step 11a, if the department name is empty or exceeds 255


characters, the system displays an error message prompting the
admin to correct the input.
2. The admin corrects the department name and resubmits the form.
Message MSC35

AF-3: Description Invalid

1. At step 11b, if the description exceeds 1000 characters, the system


displays an error message prompting the admin to correct the
input.
2. The admin corrects the description and resubmits the form.

105 | Page
Message MSC36

AF-4: Manager Not Selected

1. At step 11c, if no manager is selected, the system displays an error


message prompting the admin to select a manager.
2. The admin selects a manager from the dropdown and resubmits
the form. Message MSC37

AF-5: Field Not Selected

1. At step 11d, if no field is selected, the system displays an error


message prompting the admin to select a field.
2. The admin selects a field from the dropdown and resubmits the
form. Message MSC38

AF-6: Category Not Selected

1. At step 11e, if no category is selected, the system displays an error


message prompting the admin to select a category.
2. The admin selects a category from the dropdown and resubmits
the form. Message MSC39

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Hight

Frequency of Use: Medium

Other Information: Ensure the form is user-friendly and all dropdowns are populated
correctly.

Business Rule Department names must be unique within the system.

The description field should provide clear information about the


department's function and responsibilities.

Managers must be selected from a list of existing users with appropriate


permissions.

106 | Page
Assumptions: The admin has the necessary permissions to create departments.

The system has a reliable mechanism for validating and storing


department information.

The API list category is available and provides accurate data for
selection.

2.5.3.4 View department detail

UC ID and Name: UC-37 View department detail

Created By: CongNT Created Date: 23/05/2024

Primary Actor: Admin, Secondary Actor: None

Department manager,

Employee

Trigger: The user clicks on the department name in the department list.

Description: This use case describes the process for viewing the details of a
department. When the user clicks on a department name in the
department list, they are taken to a department detail screen that displays
comprehensive information about the department.

1. The user is logged into the system.


Preconditions: 2. The system is online and available.
3. The user has access to the department list screen.

Postconditions: 1. The user is able to view detailed information about the selected
department.

107 | Page
1. The user logs into the system.
Normal Flow: 2. The user navigates to the management screen.
3. The system displays the sidebar with appropriate tabs.
4. The user selects the "Department Management" tab (Admin) or
"Department List" tab (Department Manager and Employee).
5. The system displays the department list screen.
6. The user clicks on the department name they wish to view.
7. The system retrieves the details of the selected department.
8. The system displays the department detail screen showing:
● Department name
● Field of operation
● Number of employees
● Department manager
● List of employees

Alternative Flows: AF-1: No Data Available

1. At step 8, if the department details are not available, the system


displays a message indicating that no data is available.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: Ensure the department detail screen is user-friendly and displays all
relevant information clearly.

Business Rule The user must have the necessary permissions to view department details.

Assumptions: The system has a reliable mechanism for retrieving department details.

The department list is comprehensive and up-to-date.

108 | Page
2.5.3.5 Update department

UC ID and Name: UC-38 Update department

Created By: CongNT Created Date: 23/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to update the information of an existing department.

Description: This use case describes the process for an admin to update an existing
department's information. The admin will click the edit icon next to the
department in the list, which will open a form pre-filled with the current
department information. The admin can then update the necessary fields.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin has access to the department list screen.
4. There are existing departments in the system.

Postconditions: 1. The department information is updated and saved in the database.


2. The admin is redirected back to the department list screen.

1. The admin logs into the system.


Normal Flow: 2. The admin navigates to the management screen.
3. The system displays the sidebar with appropriate tabs.
4. The admin selects the "Department Management" tab.
5. The system displays the department list screen.
6. The admin clicks the pen icon next to the department they wish to
update.
7. The system navigates to the "Update Department" screen.
8. The system displays a form pre-filled with the current department
information, including:
● Department Name (max 255 characters)
● Department Description (max 1000 characters)
● Manager (dropdown from the list of managers)
● Field (dropdown from the list of fields)
● Category (dropdown from the API list category)
9. The admin updates the department name, description, selects a
manager, field, and category as needed.

109 | Page
10. The admin clicks the "Update" button.
11. The system validates the inputs:
● Ensures the department name is not empty and does not
exceed 255 characters.
● Ensures the description does not exceed 1000 characters.
● Ensures a manager, field, and category are selected.
12. The system updates the department information.
13. The system redirects the admin back to the department list screen.
14. The system displays a confirmation message indicating the
department has been successfully updated. Message MSC33

Alternative Flows: AF-1: Admin Cancels Update

1. At step 10, if the admin clicks the "Cancel" button, the system
cancels the update process and redirects the admin back to the
department list screen without making any changes.

AF-2: Department Name Invalid

1. At step 11a, if the department name is empty or exceeds 255


characters, the system displays an error message prompting the
admin to correct the input.
2. The admin corrects the department name and resubmits the form.
Message MSC35

AF-3: Description Invalid

1. At step 11b, if the description exceeds 1000 characters, the system


displays an error message prompting the admin to correct the
input.
2. The admin corrects the description and resubmits the form.
Message MSC36

AF-4: Manager Not Selected

1. At step 11c, if no manager is selected, the system displays an error


message prompting the admin to select a manager.
2. The admin selects a manager from the dropdown and resubmits
the form. Message MSC37

AF-5: Field Not Selected

1. At step 11d, if no field is selected, the system displays an error


message prompting the admin to select a field.
2. The admin selects a field from the dropdown and resubmits the
form. Message MSC38

AF-6: Category Not Selected

110 | Page
1. At step 11e, if no category is selected, the system displays an error
message prompting the admin to select a category.
2. The admin selects a category from the dropdown and resubmits
the form. Message MSC39

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: Ensure the form is user-friendly and all dropdowns are populated
correctly.

Business Rule Department names must be unique within the system.

The description field should provide clear information about the


department's function and responsibilities.

Managers must be selected from a list of existing users with appropriate


permissions.

Assumptions: The admin has the necessary permissions to update department


information.

The system has a reliable mechanism for retrieving and saving


department information.

The API list category is available and provides accurate data for
selection.

2.5.3.6 Delete department

111 | Page
UC ID and Name: UC-39 Delete department

Created By: CongNT Created Date: 23/05/2024

Primary Actor: Admin Secondary Actor: None

Trigger: The admin decides to delete a department that has no active projects.

Description: This use case describes the process for an admin to delete an existing
department. The admin will click the delete icon next to the department in
the list. The system will check if the department has any active projects.
If there are no active projects, the system will prompt the admin for
confirmation before deleting the department.

1. The admin is logged into the system.


Preconditions: 2. The system is online and available.
3. The admin has access to the department list screen.
4. There are existing departments in the system.

Postconditions: 1. The department is removed from the system if no active projects


are associated with it.
2. The admin is redirected back to the department list screen.

1. The admin logs into the system.


Normal Flow: 2. The admin navigates to the management screen.
3. The system displays the sidebar with appropriate tabs.
4. The admin selects the "Department Management" tab.
5. The system displays the department list screen.
6. The admin clicks the delete icon next to the department they wish
to delete.
7. The system checks if the department has any active projects.
8. If there are no active projects, the system displays a confirmation
popup.
9. The admin confirms the deletion.
10. The system deletes the department.
11. The system redirects the admin back to the department list screen.
12. The system displays a confirmation message indicating the
department has been successfully deleted. Message MSC33

112 | Page
Alternative Flows: AF-1: Admin Cancels Deletion

1. At step 9, if the admin clicks the "Cancel" button on the


confirmation popup, the system cancels the deletion process and
redirects the admin back to the department list screen without
making any changes.

AF-2: Department Has Active Projects

1. At step 7, if the system finds that the department has active


projects, the system displays an error message indicating that the
department cannot be deleted because it has active projects.
2. The admin is redirected back to the department list screen.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: Ensure the confirmation popup is clear and asks the admin to confirm the
deletion explicitly.

Business Rule Departments with active projects cannot be deleted.

The system should provide clear feedback to the admin regarding the
status of the deletion process.

Assumptions: The admin has the necessary permissions to delete department


information.

The system has a reliable mechanism for checking the status of projects
associated with a department.

The system can accurately delete the department and all associated data.

113 | Page
2.6 Manage Request
2.6.1 View list request

UC ID and Name: UC-40 View list requests

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The department manager logs into the system and navigates to the
"Danh sách chờ duyệt" section to view the list of pending requests.

Description: This use case describes the process by which a department manager views
a list of requests sent to the department for which the department manager
is responsible. The department manager reviews these requests and makes
decisions to either approve or reject them.

Preconditions: 1. The department manager must be logged into the system.


2. The system must be online and accessible.

Postconditions: 1. The department manager successfully views the list of requests.


2. The department manager can navigate to detailed views of
individual requests.
3. The department manager can make decisions to approve or reject
requests
1. The department manager logs into the system using their
Normal Flow: credentials.
2. The department manager navigates to the "Danh sách chờ duyệt"
module from the main dashboard.
3. The system retrieves the list of pending requests and displays
them in a table format, including details:
● Request ID
● Request Type
● Requestor Name
● Date of Request
● Status (Pending)

114 | Page
Alternative Flows: A1: No Pending Requests

1. The department manager navigates to the "Danh sách chờ duyệt"


module.
2. The system retrieves the list but finds that there are no pending
requests.
3. The system displays a message indicating that there are no
pending requests to review “Không có dữ liệu”.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The requests list should be optimized for both desktop and mobile
devices.

The system should provide clear feedback to the department manager


regarding the status of the review process.

Business Rule Requests must be reviewed and decided upon within a specified time
frame to ensure timely processing.

Only requests sent to the department this manager is responsible for are
displayed

Assumptions: The department manager has the necessary permissions to access and
manage requests.

2.6.2 View request detail

UC ID and Name: UC-41 View request detail

115 | Page
Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The department manager logs into the system and navigates to the
"Danh sách chờ duyệt" section to view the list of pending requests.

Description: This use case describes the process by which a department manager views
a list of requests sent to the department for which the department manager
is responsible. The department manager reviews these requests and makes
decisions to either approve or reject them.

Preconditions: 1. The department manager must be logged into the system.


2. The system must be online and accessible.
3. There must be pending requests for the department manager to
review

Postconditions: 1. The department manager successfully views the details of a


specific request.

1. The department manager logs into the system using their


Normal Flow: credentials.
2. The department manager navigates to the "Danh sách chờ duyệt"
module from the main dashboard.
3. The system retrieves the list of pending requests and displays
them in a table format, including details such as:
● Request ID
● Request Type
● Requestor Name
● Date of Request
● Status (Pending)
4. The department manager scans the list of requests and selects a
specific request to review.
5. The system displays detailed information about the selected
request, which may include:
● Request Type
● Description
● Relevant Attachments
● Additional Information specific depend of the type of request

116 | Page
Alternative Flows: N/A

EX-1: System Unavailable


Exceptions:
2. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The requests list should be optimized for both desktop and mobile
devices.

The system should provide clear feedback to the department manager


regarding the status of the review process.

Business Rule Only requests sent to the department this manager is responsible for are
displayed

Assumptions: The department manager has the necessary permissions to access and
manage requests.

2.6.2 Search request

UC ID and Name: UC-42 Search requests

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The department manager wants to search for specific requests based on
certain criteria.

117 | Page
Description: This use case describes the process by which a department manager
searches for specific requests using search criteria

Preconditions: 1. The department manager must be logged into the system.


2. The system must be online and accessible.

Postconditions: 1. The department manager successfully views a filtered list of


requests based on the search criteria.
2. The system displays the search results.

Normal Flow: 3. The department manager complete actions to view list request

The department manager locates the search bar or search filters on the
request management page.

The department manager enters or selects search criteria, which may


include:

● Request ID
● Request Type
● Requestor Name
● Date of Request (range)
● Status (e.g., Pending, Approved, Rejected)

The department manager clicks the "Search" button to initiate the search.

The system processes the search criteria and retrieves matching requests
from the database.

The system displays the list of requests that match the search criteria in a
table format

The department manager reviews the search results.

118 | Page
Alternative Flows: A1: No Matching Requests Found

1. The department manager enters or selects search criteria and


clicks the "Search" button.
2. The system processes the search criteria and finds no matching
requests.
3. The system displays a message indicating that no requests match
the search criteria.
4. The department manager can adjust the search criteria and
perform the search again.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Low

Frequency of Use: Medium

Other Information: The requests list should be optimized for both desktop and mobile
devices.

Business Rule N/A

Assumptions: The department manager has the necessary permissions to access and
search requests.

There are sufficient existing requests in the system for the search function
to operate effectively.

2.6.3 Approve/Reject request

UC ID and Name: UC-43 Approve/reject requests

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager Secondary Actor: None

119 | Page
Trigger: The department manager reviews pending requests and decides to either
approve or reject them

Description: This use case describes the process by which a department manager
reviews and makes decisions to approve or reject various pending
requests

Preconditions: 1. The department manager must be logged into the system.


2. The system must be online and accessible.

Postconditions: 1. The request status is updated to either "Approved" or "Rejected".


2. Notifications are sent to the requestors informing them of the
decision.

120 | Page
1. The department manager logs into the system using their
Normal Flow: credentials.
2. The department manager navigates to the "Danh sách chờ duyệt"
module from the main dashboard.
3. The system retrieves the list of pending requests and displays
them in a table format, including details such as:
● Request ID
● Request Type
● Requestor Name
● Date of Request
● Status (Pending)
4. The department manager scans the list of requests and selects a
specific request to review.
5. The system displays detailed information about the selected
request
6. The department manager reviews the request details thoroughly.
7. The department manager makes a decision to either approve or
reject the request by clicking on the respective button ("Approve"
as icon ‘v’ and or "Reject" as icon ‘X’).
➢ If the department manager clicks "Approve":
❖ The system updates the request status to "Approved".
❖ The system sends a notification to the requestor indicating the
approval of the request.
➢ If the department manager clicks "Reject":
❖ The system prompts the department manager to provide a reason
for rejection.
❖ The department manager enters the reason for rejection and
confirms the action.
❖ The system updates the request status to "Rejected".
8. The department manager navigates back to the list of requests to
review the next pending request.

Alternative Flows: A1: No Pending Requests

1. The department manager navigates to the "Manage Requests"


module.
2. The system retrieves the list but finds that there are no pending
requests.
3. The system displays a message indicating that there are no
pending requests to review.

121 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Medium

Other Information: The requests list should be optimized for both desktop and mobile
devices.

The system should provide clear feedback to the department manager


regarding the status of the review process.

Business Rule Requests must be reviewed and decided upon within a specified time
frame to ensure timely processing.

Only requests sent to the department this manager is responsible for are
displayed

Assumptions: The department manager has the necessary permissions to access and
manage requests.

2.7 Manage Project


2.7.1 View list project

UC ID and Name: UC-44 View list project

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager, Secondary Actor: None


Employee, Admin

Trigger: Any of the following actors (Department Manager, Employee, Admin)


logs into the system and selects the "Danh sách hệ thống" (System List)
option from the sidebar to view the list of projects.

122 | Page
Description: This use case describes a process in which a department manager,
employee, or administrator views a list of all projects depending on each
user's project management permissions.

Preconditions: 1. The actor must be logged into the system.


2. The system must be online and accessible.

Postconditions: 1. The actor successfully views the list of projects.


2. The actor can access details of individual projects if needed

Normal Flow: 1. The actor logs into the system using their credentials.
2. The actor navigates to the sidebar menu and selects the "Danh
sách hệ thống" (System List) option.
3. The system retrieves the list of projects from the database and
displays them in a table format, including details:
● Project Name
● Project Data
● Project Owner
● Status (e.g., Active, Inactive)
● Introduce staff
● Project type
● Updated status
● Created Date
● Last update
● Update status
● Action
4. The actor scans the list of projects to review the available projects.

Alternative Flows: A1: No Projects Available

1. The actor selects the "Danh sách hệ thống" (System List) option
from the sidebar.
2. The system retrieves the list but finds that there are no projects
available.
3. The system displays a message indicating that there are no
projects to display.

123 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The project list should be optimized for both desktop and mobile devices.

Business Rule The actor must have appropriate permissions to view the list of projects

Assumptions: The actor has the necessary permissions to access the list of projects.

2.7.2 Search project

UC ID and Name: UC-45 Search project

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager, Secondary Actor: None


Employee, Admin

Trigger: Any of the following actors (Department Manager, Employee, Admin)


logs into the system and uses the search functionality to find specific
projects based on search criteria.

Description: This use case describes a process in which a department manager,


employee, or administrator searches for specific projects using various
criteria

Preconditions: 1. The actor must be logged into the system.


2. The system must be online and accessible.

124 | Page
Postconditions: 1. The actor successfully views a list of projects that match the
search criteria.
2. The actor can access details of individual projects from the search
results if needed.

Normal Flow: 1. The actor logs into the system using their credentials.
2. The actor navigates to the "Danh sách hệ thống" (System List)
option from the sidebar.
3. The system displays the list of projects with a search bar or filter
options.
4. The actor enters or selects search criteria, which may include:
● Project Name
● Project Owner
● Status (e.g., Active, Inactive)
● Created Date (range)
● Updated Date (range)
5. The actor clicks the "Tìm kiếm" button to initiate the search.
6. The system processes the search criteria and retrieves matching
projects from the database.
7. The system displays the list of projects that match the search
criteria in a table format, including details such as:
● Project Name
● Project Data
● Project Owner
● Status (e.g., Active, Inactive)
● Introduced Staff
● Project Type
● Updated Status
● Created Date
● Last Update
● Update Status
● Action
8. The actor reviews the search results and selects a specific project
to view more detailed information if needed.

125 | Page
Alternative Flows: A1: No Matching Projects Found

1. The actor enters search criteria and clicks the "Tìm kiếm" button.
2. The system processes the search but finds no matching projects.
3. The system displays a message indicating that no projects match
the search criteria.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The search functionality should be optimized for both desktop and mobile
devices..

Business Rule The actor must have appropriate permissions to view and search the list
of projects

Assumptions: The actor has the necessary permissions to access the list of projects.

2.7.3 View project detail

UC ID and Name: UC-46 View project detail

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager, Secondary Actor: None


Employee, Admin

126 | Page
Trigger: Any of the following actors (Department Manager, Employee, Admin)
choose to view specific detail of a project

Description: This use case describes a process in which a department manager,


employee, or administrator views details of a specific project

Preconditions: 1. The actor must be logged into the system.


2. The system must be online and accessible.

Postconditions: 1. The actor successfully views the details of a specific project.

Normal Flow: 1. The actor logs into the system using their credentials.
2. The actor complete actions to view list projects ( refer to 2.7.1)
3. The actor click to the name of a specific project
4. The system display project detail

Alternative Flows: A1: No Projects Available

1. At step 2, The actor selects to view the list of projects


2. The system retrieves the list but finds that there are no projects
available.
3. The system displays a message indicating that there are no
projects to display.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The project detail should be optimized for both desktop and mobile
devices.

Business Rule The actor must have appropriate permissions to view the details of the

127 | Page
project

Assumptions: The actor has the necessary permissions to access the project.

2.7.4 Manage project employee permission


2.7.4.1 View list project employee

UC ID and Name: UC-47 View list project employee

Created By: CongNT Created Date: 24/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The Department Manager wants to view the list of employees assigned
to a specific project.

Description: This use case describes how a Department Manager can view the list of
employees assigned to a project. The manager navigates through the
project management screens to view details about project employees,
including their basic information and roles.

1. The Department Manager is logged into the system.


Preconditions: 2. The system is online and available.
3. The Department Manager has access to the project list and project
management screens.

Postconditions: 1. The Department Manager can view detailed information about


employees assigned to the selected project.

128 | Page
Normal Flow: 1. The Department Manager logs into the system.
2. The Department Manager navigates to the project list screen.
3. The system displays the list of projects.
4. The Department Manager selects the project of interest by
clicking on the project name.
5. The system redirects the Department Manager to the project
management screen.
6. The Department Manager selects the "Manage Permissions" tab.
7. The system displays the list of employees assigned to the selected
project, showing the following information:
● Employee Name
● Email
● Role/Permissions

Alternative Flows: AF-1: No Employees Assigned

1. At step 7, if no employees are assigned to the project, the system


displays a message indicating that no employees are currently
assigned. Message MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Hight

Frequency of Use: Hight

Other Information: Ensure the list of employees is up-to-date and accurately reflects current
project assignments.

Business Rule The Department Manager must have the necessary permissions to view
employee details for the selected project.

Assumptions: The project list and employee assignments are maintained accurately
within the system.

The Department Manager has appropriate access rights to view employee


details.

129 | Page
2.7.4.2 Search project employee

UC ID and Name: UC-48 Search project employee

Created By: CongNT Created Date: 24/05/2024

Primary Actor: Department manage Secondary Actor: None

Trigger: The Department Manager wants to find a specific employee within the
project employee list by entering the employee's name.

Description: This use case describes how a Department Manager can search for a
specific employee within the project management screen by entering the
employee's name. The system will filter the employee list based on the
search criteria.

1. The Department Manager is logged into the system.


Preconditions: 2. The Department Manager has navigated to the project
management screen and selected the "Manage Permissions" tab.
3. The list of employees for the project is displayed.

Postconditions: 1. The system displays a filtered list of employees based on the


search criteria.
1. The Department Manager accesses the project management screen
Normal Flow: and selects the "Manage Permissions" tab.
2. The system displays the list of employees assigned to the project.
3. The Department Manager enters the name of the employee they
wish to search for in the search field.
4. The Department Manager clicks the "Search" button.
5. The system filters the employee list based on the entered name
and displays the matching employees.

130 | Page
Alternative Flows: AF-1: No Matching Employees

1. If no employees match the search criteria, the system displays a


message indicating that no employees were found. Message
MSC26

AF-2: Empty Search Query

1. If the Department Manager submits an empty search query, the


system displays the full list of employees without filtering.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: Ensure the search functionality is responsive and provides relevant results
based on partial or full names.

Business Rule The search should be case-insensitive and support partial name matches.

Assumptions: The employee data is accurately maintained in the system and is


searchable by name.

2.7.4.3 Update project permission

UC ID and Name: UC-49 Update project permission

Created By: CongNT Created Date: 25/05/2024

Primary Actor: Department manage Secondary Actor: None

131 | Page
Trigger: The Department Manager needs to update the permissions of an
employee within a project.

Description: This use case describes how a Department Manager can update the
permissions of an employee within a project. The Department Manager
will click the "edit" icon next to the employee's name in the project
management screen, which will open a popup for selecting new
permissions. The Department Manager can then confirm or cancel the
changes.

1. The Department Manager is logged into the system.


Preconditions: 2. The Department Manager has navigated to the project
management screen and selected the "Manage Permissions" tab.
3. The list of employees for the project is displayed.

Postconditions: 1. The employee's permissions are updated based on the selection if


confirmed.
2. If canceled, the permissions remain unchanged.

1. The Department Manager accesses the project management screen


Normal Flow: and selects the "Manage Permissions" tab.
2. The system displays the list of employees with their current
permissions.
3. The Department Manager clicks the "edit" icon (pen) next to the
employee's name whose permissions need to be updated.
4. The system opens a popup displaying a form to update the
employee's permissions.
5. The Department Manager selects the new permissions from the
dropdown options.
6. The Department Manager clicks the "Confirm" button to apply the
changes or the "Cancel" button to discard changes.
7. If "Confirm" is selected, the system updates the employee's
permissions and saves the changes. The updated permissions are
reflected in the employee's details. Message MSC43
8. If "Cancel" is selected, the popup closes without making any
changes.

Alternative Flows: AF-1: No Changes Made

1. If the Department Manager opens the popup but does not change
any permissions, clicking "Confirm" will result in no updates
being applied.

132 | Page
AF-2: Error in Saving Changes

1. If there is an issue saving the updated permissions, the system


displays an error message and prompts the Department Manager
to try again.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Hight

Frequency of Use: Medium

Other Information: Ensure the permissions update process is straightforward and that any
errors are communicated clearly.

Business Rule Permissions must be updated in real-time and accurately reflect the new
settings chosen by the Department Manager.

Assumptions: The Department Manager has appropriate access rights to update


employee permissions.

The system provides a list of valid permission options for selection.

2.7.5 Manage project contract


2.7.5.1 View list project contract

2.7.5.1.1 Department Manager

UC ID and Name: UC-50a View list contract

Created By: VietHQ Created Date: 23/05/2024

133 | Page
Primary Actor: Department manager Secondary Actor: None

Trigger: The department manager logs into the system, views a specific project,
and selects the "Quản lý hợp đồng" (Manage Contracts) option from the
sidebar to view the list of contracts related to that project.

Description: This use case describes the process by which a department manager views
a list of contracts associated with a specific project.

1. The department manager must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: 1. The department manager successfully views the list of contracts


associated with the selected project.

Normal Flow: 5. The actor logs into the system using their credentials.
6. The actor complete actions to view list project detail (refer to
2.7.3)
7. In the project details view, the department manager locates and
clicks the "Quản lý hợp đồng" (Manage Contracts) option from
the sidebar.
8. The system retrieves and displays the list of contracts associated
with the selected project in a table format, including details such
as:
● Contract Title
● Contract Overview
● Contract Files
● Actions
9. The department manager reviews the list of contracts.

Alternative Flows: A1: No Contracts Available

1. The department manager clicks the "Quản lý hợp đồng" (Manage


Contracts) option.
2. The system retrieves the list but finds that there are no contracts
associated with the selected project.
3. The system displays a message indicating that there are no
contracts available for the selected project.

134 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Low

Other Information: The contract list should be optimized for both desktop and mobile
devices.

Business Rule The department manager must have appropriate permissions to view and
manage contracts.

Assumptions: The actor has the necessary permissions to access the project.

2.7.5.1.2 Innovator

UC ID and Name: UC-50b View list contract

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Innovator Secondary Actor: None

Trigger: The Innovator logs into the system, views a specific project, and choose
to view the list of contracts related to that project.

Description: This use case describes the process by which an innovator views a list of
contracts associated with a specific project that was created by himself .

1. The Innovator must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: 1. The Innovator successfully views the list of contracts associated


with the selected project.

135 | Page
Normal Flow: 1. The innovator logs into the system using their credentials.
2. The innovator access list of project created screen ( refer to 2.8.4)
3. The system display a list of created project
4. The innovator click to ‘Danh sách hợp đồng’ of a specific project
5. The system retrieves and displays the list of contracts associated
with the selected project in a table format, including details such
as:
● Contract Title
● Contract Overview
● Contract Files
6. The innovator views the list of contracts.

Alternative Flows: A1: No Contracts Available

1. At step 4, The system retrieves the list but finds that there are no
contracts associated with the selected project.
2. The system displays a message indicating that there are no
contracts available for the selected project.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Low

Other Information: The contract list should be optimized for both desktop and mobile
devices.

Business Rule Only project has been published can display list of contract for innovator

Assumptions: The actor has the necessary permissions to access the project.

2.7.5.2 Search project contract

136 | Page
UC ID and Name: UC-51 Search contract

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager, Secondary Actor: None


Innovator

Trigger: The department manager or innovator has viewed the list of project
contracts and choose to filter the contracts based on specific criteria.

Description: This use case describes the process by which a department manager or
innovator filters the list of contracts to view only those that match
selected criteria.

1. The department manager or innovator must be logged into the


Preconditions: system.
2. The department manager or innovator must have completed the
"View List Project Contract" use case and is on the contract list
page.

Postconditions: 1. The department manager or innovator successfully views a filtered


list of contracts that match the selected criteria.

Normal Flow: 1. The department manager or innovator has viewed the list of
project contracts.
2. The department manager or innovator locates the filter options on
the contract list page.
3. The department manager or innovator enters filtering criteria
Contract Title
4. The department manager or innovator clicks the "Apply Filter"
button to apply the selected filters.
5. The system processes the filter criteria and retrieves contracts that
match the criteria from the database.
6. The system updates the list to display only the filtered contracts
Parties Involved
7. The department manager or innovator reviews the filtered list of
contracts.

137 | Page
Alternative Flows: A1: No Contracts Available

1. At step 6, The system retrieves the list but finds that there are no
contracts associated with the selected project.
2. The system displays a message indicating that there are no
contracts available for the selected project.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The contract list should be optimized for both desktop and mobile
devices.

Business Rule Only project has been published can display list of contract for innovator

Assumptions: The actor has the necessary permissions to access the project.

2.7.5.3 Create contract

UC ID and Name: UC-52 Create contract

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The department manager logs into the system, navigates to the list of
project contracts, and selects the "Tạo hợp đồng" (Create Contract)
button to initiate the creation of a new contract.

138 | Page
Description: This use case describes the process by which a department manager
creates a new contract by filling out a form with the required details and
submitting it for saving.

1. The department manager must be logged into the system.


Preconditions: 2. The department manager must have completed the "View List
Project Contracts" use case and is on the contract list page.
3. The system must be online and accessible.

Postconditions: 1. A new contract is successfully created and saved in the system.

Normal Flow: 1. The department manager logs into the system using their
credentials.
2. The department manager navigates to the "Danh sách hợp đồng"
(List of Contracts) option from the sidebar.
3. The department manager selects the "Tạo hợp đồng" (Create
Contract) button to initiate the creation of a new contract.
4. The system displays a form with the following fields:
● Tên hợp đồng (Contract Title): Required, maximum 255
characters.
● Tổng quan hợp đồng (Contract Overview): Required, maximum
1000 characters.
● Tải file (Upload File): Required, accepts only PDF and Word
documents.
5. The department manager fills out the form with the necessary
details.
6. Validation Checks:
● If the Contract Title field is empty or exceeds 255 characters, the
system displays an error message: "Tên hợp đồng không được để
trống và không vượt quá 255 ký tự" (Contract Title cannot be
empty and must not exceed 255 characters).
● If the Contract Overview field is empty or exceeds 1000
characters, the system displays an error message: "Tổng quan hợp
đồng không được để trống và không vượt quá 1000 ký tự"
(Contract Overview cannot be empty and must not exceed 1000
characters).
● If the Upload File field is empty or the file type is not PDF or
Word, the system displays an error message: "Vui lòng tải lên file
định dạng PDF hoặc Word" (Please upload a PDF or Word file).
7. The department manager corrects any validation errors and
resubmits the form.
8. The department manager clicks the "Xác nhận" (Confirm) button
to submit the contract details.
9. The system saves the new contract in the database.
10. The system displays a confirmation message indicating that the
contract has been successfully created and saved.

139 | Page
Alternative Flows: A1: Validation Error

1. The department manager fills out the form with incorrect or


incomplete information.
2. The system performs validation checks and identifies errors.
3. The system displays appropriate error messages for each
validation issue.
4. The department manager corrects the errors and resubmits the
form.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Low

Other Information: The form and validation messages should be optimized for both desktop
and mobile devices.

The system should ensure that all uploaded files are securely handled and
stored.

Business Rule The contract title and overview must adhere to specified length
constraints.

Only files in PDF and Word formats are acceptable for upload.

Assumptions: The department manager has the necessary permissions to create and save
new contracts.

The system has the capability to handle file uploads and enforce file type
restrictions.

2.7.5.4 Update contract

UC ID and Name: UC-53 Update contract

140 | Page
Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The department manager logs into the system, navigates to the list of
project contracts, selects a specific contract to update, and initiates the
update process.

Description: This use case describes the process by which a department manager
updates the details of an existing contract. The manager modifies the
contract information through a form and submits the updated details for
saving.

1. The department manager must be logged into the system.


Preconditions:

Postconditions: 1. The contract is successfully updated with the new details and
saved in the system.

Normal Flow: 1. The department manager logs into the system using their
credentials.
2. The department manager navigates to the "Danh sách hợp đồng"
(List of Contracts) option from the sidebar.
3. The department manager selects a specific contract from the list to
update.
4. The system retrieves and displays the current details of the
selected contract in an update form, including:
● Tên hợp đồng (Contract Title): Currently entered value, editable,
max 255 characters.
● Tổng quan hợp đồng (Contract Overview): Currently entered
value, editable, max 1000 characters.
● Tải file (Upload File): Currently uploaded file, can be replaced
with a new file (PDF or Word).
5. The department manager modifies the contract details as needed:
6. Updates the Contract Title field.
7. Updates the Contract Overview field.
8. Uploads a new file if needed (PDF or Word).
9. Validation Checks:
● If the Contract Title field is empty or exceeds 255 characters, the
system displays an error message: "Tên hợp đồng không được để
trống và không vượt quá 255 ký tự" (Contract Title cannot be
empty and must not exceed 255 characters).
● If the Contract Overview field is empty or exceeds 1000
characters, the system displays an error message: "Tổng quan hợp
đồng không được để trống và không vượt quá 1000 ký tự"

141 | Page
(Contract Overview cannot be empty and must not exceed 1000
characters).
● If the Upload File field is not in the required format or is empty
when a file is expected, the system displays an error message: "Vui
lòng tải lên file định dạng PDF hoặc Word" (Please upload a PDF
or Word file).
10. The department manager corrects any validation errors and
resubmits the form.
11. The department manager clicks the "Xác nhận" (Confirm) button
to submit the updated contract details.
12. The system updates the contract information in the database.
13. The system displays a confirmation message indicating that the
contract has been successfully updated and saved.

Alternative Flows: N/A

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Low

Other Information: The form and validation messages should be optimized for both desktop
and mobile devices.

The system should ensure that all uploaded files are securely handled and
stored.

Business Rule The contract title and overview must adhere to specified length
constraints.

Only files in PDF and Word formats are acceptable for upload.

Assumptions: The department manager has the necessary permissions to create and save
new contracts.

142 | Page
The system has the capability to handle file uploads and enforce file type
restrictions.

2.7.5.5 Delete contract

UC ID and Name: UC-54 Delete contract

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The department manager logs into the system, navigates to the list of
project contracts, and selects a specific contract to delete.

Description: This use case describes the process by which a department manager
deletes an existing contract from the system. The manager initiates the
delete action and confirms the deletion.

1. The department manager must be logged into the system.


Preconditions: 2. The selected contract must exist in the system

Postconditions: 1. The selected contract is successfully deleted from the system and
removed from the contract list.

Normal Flow: 1. The department manager logs into the system using their
credentials.
2. The department manager complete use case “View list project
contract”
3. The department manager locates and selects a specific contract
from the list that they wish to delete by click icon bin.
4. The system displays a confirmation dialog with the following
message: "Bạn có chắc chắn muốn xóa hợp đồng này không?"
(Are you sure you want to delete this contract?).
5. The department manager confirms the deletion by clicking the
"Xác nhận" (Confirm) button in the dialog.
6. The system processes the deletion request and removes the
selected contract from the database.
7. The system updates the list of contracts to reflect the deletion and
displays a confirmation message: "Hợp đồng đã được xóa thành
công" (Contract has been successfully deleted).
8. The department manager reviews the updated contract list to
ensure the contract has been removed.

143 | Page
Alternative Flows: A1: Cancellation of Deletion

1. The department manager initiates the deletion process.


2. The system displays the confirmation dialog.
3. The department manager decides not to proceed and clicks the
"Hủy" (Cancel) button.
4. The system cancels the deletion process and returns to the contract
list page without making changes.

A2: Contract Not Found

1. The department manager attempts to delete a contract.


2. The system finds that the contract no longer exists in the database.
3. The system displays an error message: "Hợp đồng không tìm thấy"
(Contract not found) and returns to the contract list page.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Low

Other Information: The confirmation dialog should be clear and provide options to cancel or
confirm the deletion.

The system should ensure that the deletion is irreversible and that all
associated data is removed securely.

Business Rule Only department managers with appropriate permissions can delete
contracts.

The deletion action must be confirmed to prevent accidental deletions.

Assumptions: The department manager has the necessary permissions to delete


contracts.

The system has the capability to handle deletion requests and update the
contract list accordingly.

144 | Page
2.7.6 Manage project implementation
2.7.6.1 Manage project content

2.7.6.1.1 Update project content


2.7.6.1.1.1 Department manager

UC ID and Name: UC-55a Update project content

Created By: ThanhVNM Created Date: 21/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: A department manager decides to update the content of a project.

Description: This use case describes the process for a department manager to directly
update the content of a project on the platform. The updates are
immediately applied and visible to all relevant users.

1. The user is logged into their account as a department manager.


Preconditions: 2. The system is online and available.
3. The project exists and is accessible to the department manager.

Postconditions: 1. The project content is updated in the system.


2. The updated content is visible to all relevant users.
1. The department manager navigates to the project management
Normal Flow: page.
2. The system displays a list of projects managed by the department.
3. The department manager selects the project they want to update.
4. The system displays the project details and the current content.
5. The department manager edits the project content.
● “Tên dự án”: required, max character 255.
● “Tổng quan dự án”: required, max character 4000.
● “Nội dung dự án”: required.
● “Thumbnail dự án”: must be .jpg, .png file.
● “Video dự án”: must be youtube link.
6. The department manager submits the changes.
7. The system updates the project content in the database.
8. The system displays a confirmation message to the department
manager.

145 | Page
Alternative Flows: AF-1: User Cancels Update

● At step 6, if the department manager cancels the update, the


system retains the existing content and returns to the project
details.

AF-2: Wrong condition

● At step 5, if the department manager input wrong condition


○ ‘Tên dự án”: message MSC44 if not fill, MSC45 if have
more than 255 character
○ “Tổng quan dự án”: message MSC46 if not fill, MSC47 if
have more than 4000 character
○ “Nội dung dự án”: message MSC48 if not fill
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the update process is user-friendly and provides clear
feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only department managers can directly update project content.

Assumptions: The project management page is easily accessible from the department
manager's dashboard.

The system has a reliable mechanism for updating project content in the
database.

2.7.6.1.1.2 Employee

UC ID and Name: UC-55b Update project content

146 | Page
Created By: ThanhVNM Created Date: 21/05/2024

Primary Actor: Employee Secondary Actor: None

Trigger: An employee decides to update the content of a project.

Description: This use case describes the process for an employee to update project
content, which is then submitted for approval by the department manager.

1. The user is logged into their account as an employee.


Preconditions: 2. The system is online and available.
3. The project exists and is accessible to the employee.

Postconditions: 1. The draft of the project content update is saved in the system.
2. A request for approval is sent to the department manager.
1. The employee navigates to the project management page.
Normal Flow: 2. The system displays a list of projects the employee is involved in.
3. The employee selects the project they want to update.
4. The system displays the project details and the current content.
5. The employee drafts the updates to the project content.
● “Tên dự án”: required, max character 255.
● “Tổng quan dự án”: required, max character 4000.
● “Nội dung dự án”: required.
● “Thumbnail dự án”: must be .jpg, .png file.
● “Video dự án”: must be youtube link.
6. The employee submits the draft for approval.
7. The system saves the draft and sends a request for approval to the
department manager.
8. The system displays a confirmation message to the employee.

Alternative Flows: AF-1: User Cancels Update

● At step 6, if the employee cancels the update, the system retains


the existing content and returns to the project details.

AF-1: Wrong condition

● At step 5, if the employee input wrong condition


○ ‘Tên dự án”: message MSC44 if not fill, MSC45 if have
more than 255 character
○ “Tổng quan dự án”: message MSC46 if not fill, MSC47 if
have more than 4000 character
○ “Nội dung dự án”: message MSC48 if not fill

147 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the draft and submission process is user-friendly and provides
clear feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only employees can draft updates to project content.

All drafts must be approved by the department manager before being


applied.

Assumptions: The project management page is easily accessible from the employee's
dashboard.

The system has a reliable mechanism for saving drafts and sending
approval requests.

2.7.6.1.2 Update project status

UC ID and Name: UC-56 Update project status

Created By: ThanhVNM Created Date: 21/05/2024

Primary Actor: Department manager Secondary Actor: Department manager

Trigger: A department manager decides to update the status of a project.

Description: This use case describes the process for a department manager to update
the status of a project on the platform. The updated status is immediately

148 | Page
reflected in the system and visible to all relevant users.

1. The user is logged into their account as a department manager.


Preconditions: 2. The system is online and available.
3. The project exists and is accessible to the department manager.

Postconditions: 1. The project status is updated in the system.


2. The updated status is visible to all relevant users.
1. The department manager navigates to the project management
Normal Flow: page.
2. The system displays a list of projects managed by the department.
3. The department manager selects the project they want to update.
4. The system displays the project details, including the current
status.
5. The department manager selects the option to update the project
status.
6. The system updates the project status in the database.
7. The system displays a confirmation message to the department
manager.

Alternative Flows: None

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the status update process is user-friendly and provides clear
feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only department managers can update project statuses.

149 | Page
Assumptions: The project management page is easily accessible from the department
manager's dashboard.

The system has a reliable mechanism for updating project statuses in the
database.

2.7.6.2 Manage project campaign

2.7.6.2.1 View list project campaign

UC ID and Name: UC-57 View list project campaign

Created By: ThanhVNM Created Date: 22/04/2024

Primary Actor: Department manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to view a list of project


campaigns on the platform.

Description: This use case describes the process for a department manager or
employee to view a list of project campaigns. The list includes key
information such as campaign status, objectives, timeline, and related
projects. Both roles have access to this list, but the department manager
may have additional privileges for managing or editing campaigns.

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.

Postconditions: The user successfully views the list of project campaigns along with
detailed information about each campaign.

150 | Page
Normal Flow: 1. Department manager or employee choose a project
2. Department manager or employee choose “Quản lý chiến dịch”
from sidebar
3. The system retrieves and displays a list of project campaigns
include:
● “Tên chiến dịch”
● “Ngày bắt đầu”
● “Ngày kết thúc”
● “Mục tiêu chiến dịch”
● “Đã đạt được”
● “Trạng thái”

Alternative Flows: AF-1: No Campaign Available

● At step 3, if there are no campaigns available, the system displays


a message indicating that no campaigns are currently available.
● Message: MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the campaign list is updated regularly and accurately reflects
the current state of all campaigns.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule The information displayed should be relevant to the user's role and
support their decision-making processes.

Assumptions: The project campaigns overview page is easily accessible from the user
dashboard.

The system has a reliable mechanism for retrieving and displaying


campaign details.

151 | Page
The platform allows filtering and searching of campaigns based on
various criteria.

2.7.6.2.2 Search project campaign

UC ID and Name: UC-58 Search Project Campaigns

Created By: ThanhVNM Created Date: 22/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to search for specific


project campaigns on the platform.

Description: This use case describes the process for a department manager or
employee to search for project campaigns using various criteria such as
campaign name, status

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.

Postconditions: The user successfully views a list of project campaigns that match the
search criteria.
1. The user navigates to the campaign management page.
Normal Flow: 2. The system displays search options and filters for campaigns.
3. The user enters search criteria and/or selects filters (e.g.,
campaign name, status, objectives, timeline, key metrics).
4. The user submits the search query.
5. The system retrieves and displays a list of campaigns that match
the search criteria.

Alternative Flows: AF-1: No Campaign Available

● At step 5, if there are no campaigns available, the system displays


a message indicating that no campaigns are currently available.
● Message: MSC26

152 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the search functionality is user-friendly and provides accurate
results based on the entered criteria.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee should
have access to the search functionality for project campaigns.

The search results should be relevant to the user's role and support their
decision-making processes.

Assumptions: The campaign management page with search functionality is easily


accessible from the user dashboard.

The system has a reliable mechanism for searching and retrieving


campaign details.

The platform allows filtering and searching of campaigns based on


various criteria.

2.7.6.2.3 Create project campaign

UC ID and Name: UC-59 Create Campaign

Created By: ThanhVNM Created Date: 22/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

153 | Page
Trigger: A department manager or employee decides to create a new campaign
on the platform.

Description: This use case describes the process for a department manager or
employee to create a new campaign. The campaign includes details such
as name, summary, goal

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.

Postconditions: 1. The campaign is created and stored in the system.


2. The campaign details are visible to all relevant users.
1. The department and employee navigates to the campaign
Normal Flow: management page.
2. The department and employee user selects the option “Tạo chiến
dịch” to create a new campaign.
3. The system displays a form for entering campaign details.
4. The user fills in the campaign details.
5. The user submits the campaign creation form.
6. The system validates the inputs:
○ “Tên chiến dịch”: required, max 255 characters.
○ “Tóm tắt chiến dịch”: required, max 4000 characters.
○ “Mục tiêu chiến dịch”: required, must be number and > 0
○ “Miêu tả chiến dịch”: required
○ “Ngày bắt đầu”: required.
○ “Ngày kết thúc”: required, must bigger than “Ngày bắt
đầu”
○ “Thumbnail chiến dịch”: must be .jpg or .png
7. The system creates the new campaign in the database.
8. The system displays a confirmation message MSC50.
9. The system displays the newly created campaign details.

Alternative Flows: AF-1: User Cancels Campaign Creation

● At step 5, if the user cancels the campaign creation, the system


discards the entered information and returns to the campaign
management page.

AF-2: Wrong condition

● At step 6, if the department manager input wrong condition


○ ‘Tên chiến dịch”: message MSC51 or MSC55
○ “Tóm tắt chiến dịch”: message MSC52 or MSC56

154 | Page
○ “Mục tiêu chiến dịch”: message MSC53 or MSC54
○ “Miêu tả chiến dịch”: message MSC57
○ “Ngày bắt đầu”: message MSC58
○ “Ngày kết thúc”: message MSC59 or MSC60
○ “Thumbnail chiến dịch”: message MSC61

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Occasional

Other Information: Ensure that the campaign creation process is user-friendly and provides
clear feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can create
new campaigns.

The campaign must have a unique name within the system.

Assumptions: The campaign management page is easily accessible from the user
dashboard.

The system has a reliable mechanism for creating and storing new
campaigns in the database.

2.7.6.2.4 View project campaign detail

UC ID and Name: UC-60 View Project Campaign Detail

Created By: ThanhVNM Created Date: 22/05/2024

155 | Page
Primary Actor: Department Manager, Secondary Actor: None
Employee

Trigger: A department manager or employee decides to view the detailed


information of a specific project campaign.

Description: This use case describes the process for a department manager or
employee to view detailed information

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. The project campaign exists and is accessible to the user.

Postconditions: The user successfully views the detailed information of the selected
project campaign.
1. The user navigates to the campaign management page.
Normal Flow: 2. The system displays a list of project campaigns.
3. The user selects a specific project campaign from the list.
4. The system retrieves the details of the selected campaign from the
database.
5. The system displays the detailed information of the selected
campaign, including “Tên chiến dịch”, ‘Mục tiêu chiến dịch”, “Đã
đạt được”, “Ngày bắt đầu”, “Ngày kết thúc”, “Trạng thái”, “Tóm
tắt, “Phần thưởng”.

Alternative Flows: AF-1: Project Campaign Not Found

● At step 4, if the system cannot find the campaign details, it


navigates to screen 404 .
● Message: MSC25

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

156 | Page
Other Information: Ensure that the detailed view of the campaign is user-friendly and
provides clear, comprehensive information.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee should
have access to the detailed information of project campaigns.

Assumptions: The campaign management page is easily accessible from the user
dashboard.

The system has a reliable mechanism for retrieving and displaying


campaign details from the database.

2.7.6.2.5 Update project campaign


2.7.6.2.5.1 Department manager

UC ID and Name: UC-61a Update Project Campaign

Created By: ThanhVNM Created Date: 22/05/2024

Primary Actor: Department Manager Secondary Actor: None

Trigger: A department manager decides to update the details of a project


campaign.

Description: This use case describes the process for a department manager to directly
update the details of a project campaign. The updates are immediately
applied and visible to all relevant users.

1. The user is logged into their account as a department manager.


Preconditions: 2. The system is online and available.
3. The project campaign exists and is accessible to the department
manager.

Postconditions: 1. The project campaign details are updated in the system.


2. The updated details are visible to all relevant users.

157 | Page
1. The department manager navigates to the campaign management
Normal Flow: page.
2. The system displays a list of project campaigns managed by the
department.
3. The department manager selects the campaign they want to
update.
4. The system displays the campaign details and current information.
5. The department manager edits the campaign details.
6. The department manager submits the changes.
7. The system validates the inputs:
○ “Tên chiến dịch”: required, max 255 characters.
○ “Tóm tắt chiến dịch”: required, max 4000 characters.
○ “Mục tiêu chiến dịch”: required, must be number and > 0
○ “Miêu tả chiến dịch”: required
○ “Ngày bắt đầu”: required.
○ “Ngày kết thúc”: required, must bigger than “Ngày bắt
đầu”
○ “Thumbnail chiến dịch”: must be .jpg or .png
8. The system updates the campaign details in the database.
9. The system displays a confirmation message to the department
manager.

Alternative Flows: AF-1: User Cancels Update

● At step 6, if the department manager cancels the update, the


system retains the existing details and returns to the campaign
details.

AF-2: Wrong condition

● At step 6, if the department manager input wrong condition


○ ‘Tên chiến dịch”: message MSC51 or MSC55
○ “Tóm tắt chiến dịch”: message MSC52 or MSC56
○ “Mục tiêu chiến dịch”: message MSC53 or MSC54
○ “Miêu tả chiến dịch”: message MSC57
○ “Ngày bắt đầu”: message MSC58
○ “Ngày kết thúc”: message MSC59 or MSC60
○ “Thumbnail chiến dịch”: message MSC61

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

158 | Page
Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the update process is user-friendly and provides clear
feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only department managers can directly update project campaign details.

Assumptions: The campaign management page is easily accessible from the department
manager's dashboard.

The system has a reliable mechanism for updating campaign details in the
database.

2.7.6.2.5.2 Employee

UC ID and Name: UC-61b Update Project Campaign

Created By: ThanhVNM Created Date: 22/05/2024

Primary Actor: Employee Secondary Actor: Department Manager

Trigger: An employee decides to update the details of a project campaign.

Description: This use case describes the process for an employee to draft updates to
project campaign details, which are then submitted for approval by the
department manager.

1. The user is logged into their account as an employee.


Preconditions: 2. The system is online and available.
3. The project campaign exists and is accessible to the employee.

Postconditions: 1. The draft of the project campaign update is saved in the system.
2. A request for approval is sent to the department manager.

159 | Page
1. The employee navigates to the campaign management page.
Normal Flow: 2. The system displays a list of project campaigns the employee is
involved in.
3. The employee selects the campaign they want to update.
4. The system displays the campaign details and current information.
5. The employee drafts the updates to the campaign details.
6. The employee submits the draft for approval.
7. The system validates the inputs:
○ “Tên chiến dịch”: required, max 255 characters.
○ “Tóm tắt chiến dịch”: required, max 4000 characters.
○ “Mục tiêu chiến dịch”: required, must be number and > 0
○ “Miêu tả chiến dịch”: required
○ “Ngày bắt đầu”: required.
○ “Ngày kết thúc”: required, must bigger than “Ngày bắt
đầu”
○ “Thumbnail chiến dịch”: must be .jpg or .png
8. The system saves the draft and sends a request for approval to the
department manager.
9. The system displays a confirmation message to the employee.

Alternative Flows: AF-1: User Cancels Update

● At step 6, if the employee cancels the update, the system retains


the existing details and returns to the campaign details.

AF-2: Wrong condition

● At step 6, if the department manager input wrong condition


○ ‘Tên chiến dịch”: message MSC51 or MSC55
○ “Tóm tắt chiến dịch”: message MSC52 or MSC56
○ “Mục tiêu chiến dịch”: message MSC53 or MSC54
○ “Miêu tả chiến dịch”: message MSC57
○ “Ngày bắt đầu”: message MSC58
○ “Ngày kết thúc”: message MSC59 or MSC60
○ “Thumbnail chiến dịch”: message MSC61

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

160 | Page
Frequency of Use: Frequent

Other Information: Ensure that the draft and submission process is user-friendly and provides
clear feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only employees can draft updates to project campaign details.

All drafts must be approved by the department manager before being


applied.

Assumptions: The campaign management page is easily accessible from the employee's
dashboard.

The system has a reliable mechanism for saving drafts and sending
approval requests.

2.6.5.2.6 Update campaign status

UC ID and Name: UC-62 Update Campaign Status

Created By: ThanhVNM Created Date: 22/05/52024

Primary Actor: Department Manager Secondary Actor: None

Trigger: A department manager decides to update the status of a project campaign.

Description: This use case describes the process for a department manager to update
the status of a project campaign. The updated status is immediately
reflected in the system and visible to all relevant users.

1. The user is logged into their account as a department manager.


Preconditions: 2. The system is online and available.
3. The project campaign exists and is accessible to the department
manager.

161 | Page
Postconditions: 1. The project campaign status is updated in the system.
2. The updated status is visible to all relevant users.

1. The department manager navigates to the campaign management


Normal Flow: page.
2. The system displays a list of project campaigns managed by the
department.
3. The department manager selects the campaign they want to
update.
4. The system displays the campaign details, including the current
status.
5. The department manager selects the option to update the
campaign status.
6. The department manager submits the status change.
7. The system updates the campaign status in the database.
8. The system displays a confirmation message to the department
manager.

Alternative Flows: None

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Frequent

Other Information: Ensure that the status update process is user-friendly and provides clear
feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only department managers can update project campaign statuses.

162 | Page
Assumptions: The campaign management page is easily accessible from the department
manager's dashboard.

The system has a reliable mechanism for updating campaign statuses in


the database.

2.6.5.2.7 Add campaign reward

UC ID and Name: UC-63 Add Campaign Reward

Created By: ThanhVNM Created Date: 22/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to add a reward to a


campaign.

Description: This use case describes the process for a department manager or
employee to add a reward to a campaign.

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. The project campaign exists and is accessible to the user.

Postconditions: 1. The reward is added to the campaign and stored in the system.
2. The reward details are visible to all relevant users.

163 | Page
1. The user navigates to the campaign management page.
Normal Flow: 2. The system displays a list of project campaigns.
3. The user selects the campaign to which they want to add a reward.
4. The system displays the campaign details and current rewards.
5. The user selects the “Thêm phần thưởng” button to add a new
reward.
6. The system displays a form for entering reward details.
7. The user fills in the reward details.
8. The user submits the reward creation form.
9. The system validates the inputs:
○ “Tên phần thưởng”: required, max 255 character
○ “Miêu tả phần thưởng”: required
○ “Ủng hộ tối thiểu”: required, must > 2000
○ “Ngày giao dự kiến”: required, must > campaign end date
○ “Số lượng phần thưởng”: must be a number and > 0
○ “Hình ảnh phần thưởng”: required, file must be .jpg or
.png
10. The user chooses to submit an update campaign.
11. The system adds the new reward to the campaign in the database.
12. The system displays a confirmation message to the user.
13. The system updates the campaign details to include the new
reward.

Alternative Flows: AF-1: User Cancels Reward Addition

● At step 8, if the user cancels the reward addition, the system


retains the existing rewards and returns to the campaign details.

AF-2: Wrong condition

● At step 8, if the department manager or employee input wrong


condition:
○ Tên phần thưởng”: message MSC62 or MSC63
○ “Miêu tả phần thưởng”: message MSC64
○ “Ủng hộ tối thiểu”: message MSC65 or MSC66
○ “Ngày giao dự kiến”: message MSC67 or MSC68
○ “Số lượng phần thưởng”: message MSC69
○ “Hình ảnh phần thưởng”: message MSC70 or MSC71

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

164 | Page
Priority: Medium

Frequency of Use: Occasional

Other Information: Ensure that the reward addition process is user-friendly and provides
clear feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can add
rewards to campaigns.

Assumptions: The campaign management page is easily accessible from the user's
dashboard.

The system has a reliable mechanism for adding and storing rewards in
the database.

2.6.5.2.8 Update campaign reward

UC ID and Name: UC-64 Update Campaign Reward

Created By: ThanhVNM Created Date: 22/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to update the details of an


existing campaign reward.

Description: This use case describes the process for a department manager or
employee to update the details of a campaign reward.

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. The project campaign and its rewards exist and are accessible to

165 | Page
the user.

Postconditions: 1. The campaign reward details are updated in the system.


2. The updated reward details are visible to all relevant users.

1. The user navigates to the campaign management page.


Normal Flow: 2. The system displays a list of project campaigns.
3. The user selects the campaign containing the reward they want to
update.
4. The system displays the campaign details, including current
rewards.
5. The user clicks on the “Update” icon button in the reward they
want to update.
6. The system displays the current details of the selected reward.
7. The user edits the reward details.
8. The user submits the updated reward details.
9. The system validates the inputs:
○ “Tên phần thưởng”: required, max 255 character
○ “Miêu tả phần thưởng”: required
○ “Ủng hộ tối thiểu”: required, must > 2000
○ “Ngày giao dự kiến”: required, must > campaign end date
○ “Số lượng phần thưởng”: must be a number and > 0
○ “Hình ảnh phần thưởng”: required, file must be .jpg or
.png
10. The user submit an update campaign.
11. The system updates the reward details in the database.
12. The system displays a confirmation message to the user.
13. The system updates the campaign details to include the updated
reward information.

Alternative Flows: AF-1: User Cancels Reward Update

● At step 8, if the user cancels the reward update, the system retains
the existing reward details and returns to the campaign details.

AF-2: Wrong condition

● At step 9, if the department manager or employee input wrong


condition:
○ Tên phần thưởng”: message MSC62 or MSC63
○ “Miêu tả phần thưởng”: message MSC64
○ “Ủng hộ tối thiểu”: message MSC65 or MSC66
○ “Ngày giao dự kiến”: message MSC67 or MSC68
○ “Số lượng phần thưởng”: message MSC69

166 | Page
○ “Hình ảnh phần thưởng”: message MSC70 or MSC71

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Occasional

Other Information: Ensure that the reward update process is user-friendly and provides clear
feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can update
rewards in campaigns.

Assumptions: The campaign management page is easily accessible from the user's
dashboard.

The system has a reliable mechanism for updating reward details in the
database.

2.6.5.2.9 Delete campaign reward

UC ID and Name: UC-65 Delete Campaign Reward

Created By: ThanhVNM Created Date: 22/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to delete an existing reward


from a campaign.

167 | Page
Description: This use case describes the process for a department manager or
employee to delete a reward from a campaign. The reward is removed
from the system and is no longer visible to users.

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. The project campaign and its rewards exist and are accessible to
the user.

Postconditions: 1. The campaign reward is deleted from the system.


2. The updated campaign details without the deleted reward are
visible to all relevant users.
1. The user navigates to the campaign management page.
Normal Flow: 2. The system displays a list of project campaigns.
3. The user selects the campaign containing the reward they want to
delete.
4. The system displays the campaign details, including current
rewards.
5. The user clicks on the “Delete” icon button in the reward they
want to delete.
6. The system displays a confirmation prompt asking the user to
confirm the deletion of the reward.
7. The user confirms the deletion by choosing “Xác nhận”.
8. The system deletes the reward from the database.
9. The system displays a confirmation message to the user.
10. The system updates the campaign details to reflect the deletion of
the reward.

Alternative Flows: None

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Occasional

168 | Page
Other Information: Ensure that the reward deletion process is user-friendly and provides clear
feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can delete
rewards from campaigns.

Assumptions: The campaign management page is easily accessible from the user's
dashboard.

The system has a reliable mechanism for deleting rewards from the
database.

2.7.6.3 Manage project process

2.7.6.3.1 View list project process

UC ID and Name: UC-66 View List of Project Progress

Created By: ThanhVNM Created Date: 23/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to view the progress of


ongoing projects.

Description: This use case describes the process for a department manager or
employee to view a list of ongoing projects along with their current
progress status.

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. There are ongoing projects with progress data available.

Postconditions: The user successfully views the list of projects and their progress.

169 | Page
1. The user navigates to the project management page.
Normal Flow: 2. The system displays a list of projects the user has access to.
3. The user selects the project they want to view updates for.
4. The system retrieves the list of updates made to the selected
project from the database
5. The system displays the list of updates, including details such as
“Tiêu đề báo cáo”, “Người được xem báo cáo”, “Trạng thái”

Alternative Flows: AF-1: No Progresses Available

● At step 3, if there are no progresses available, the system displays


a message indicating that no progresses are currently available.
● Message: MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Occasional

Other Information: Ensure that the update viewing process is user-friendly and provides
clear, comprehensive information.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can view
the list of project updates.

Assumptions: The project management page is easily accessible from the user's
dashboard.

The system has a reliable mechanism for retrieving and displaying project

170 | Page
updates from the database.

2.7.6.3.2 Search project process

UC ID and Name: UC-67 Search Project Progress

Created By: ThanhVNM Created Date: 23/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to search for the progress of


a specific project or task.

Description: This use case describes the process for a department manager or
employee to search for and view the progress of a specific project or task.
The user can enter search criteria to find relevant progress updates.

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. The project or task exists and is accessible to the user.

Postconditions: The user successfully views the progress of the specified project or task
based on the search criteria.
1. The user navigates to the progress search page.
Normal Flow: 2. The system displays a search form with fields for entering search
criteria.
3. The user enters the search criteria and submits the search form.
4. The system retrieves the relevant progress updates from the
database based on the search criteria.
5. The system displays the search results, including details such as
the date of the update, the user who made the update, and a
description of the changes.

171 | Page
Alternative Flows: AF-1: No Progresses Available

● At step 3, if there are no progresses available, the system displays


a message indicating that no progresses are currently available.
● Message: MSC26

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Occasional

Other Information: Ensure that the search process is user-friendly and provides clear,
comprehensive results.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can search
for progress updates.

Assumptions: The progress search page is easily accessible from the user's dashboard.

The system has a reliable mechanism for searching and retrieving


progress updates from the database.

2.7.6.3.3 Create project process

UC ID and Name: UC-68 Create Progress

Created By: ThanhVNM Created Date: 23/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

172 | Page
Trigger: A department manager or employee decides to create a new progress
update for a project or task.

Description: This use case describes the process for a department manager or
employee to create a new progress update. The user needs to provide a
progress name ("Tên tiến độ"), a visibility status ("Tiến độ thấy được"),
and a description ("Miêu tả tiến độ").

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. The project or task exists and is accessible to the user.

Postconditions: 1. The new progress update is created and stored in the database.
2. The progress update is visible to all relevant users based on the
visibility status.
1. The user navigates to the project or task management page.
Normal Flow: 2. The system displays a list of projects or tasks the user has access
to.
3. The user selects the project or task for which they want to create a
progress update.
4. The system displays the project or task details and an option to
add a new progress update.
5. The user selects the option to add a new progress update.
6. The system displays a form for entering progress details:
○ "Tên tiến độ" (required, max 255 characters)
○ "Tiến độ thấy được" (required)
○ "Miêu tả tiến độ" (required)
7. The user fills in the progress details.
8. The user submits the form.
9. The system validates the inputs:
○ Ensures all required fields are filled.
○ Check that "Tên tiến độ" does not exceed 255 characters.
10. The system creates the new progress update in the database.
11. The system displays a confirmation message to the user.
12. The system updates the project or task details to include the new
progress update.

Alternative Flows: AF-1: User Cancels Progress Creation

● At step 8, if the user cancels the progress creation, the system


retains the existing progress updates and returns to the project or

173 | Page
task details.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Occasional

Other Information: Ensure that the progress creation process is user-friendly and provides
clear feedback.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can create
progress updates.

Assumptions: The project or task management page is easily accessible from the user's
dashboard.

The system has a reliable mechanism for creating and storing progress
updates in the database.

2.7.6.3.4 View project process detail

UC ID and Name: UC-69 View Progress Detail

Created By: ThanhVNM Created Date: 23/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: A department manager or employee decides to view the detailed


information of a specific progress update.

174 | Page
Description: This use case describes the process for a department manager or
employee to view the detailed information of a specific progress update.
The details include the progress name, visibility status, and description.

1. The user is logged into their account as a department manager or


Preconditions: employee.
2. The system is online and available.
3. The progress update exists and is accessible to the user.

Postconditions: The user successfully views the detailed information of the progress
update.
1. The user navigates to the project or task management page.
Normal Flow: 2. The system displays a list of projects or tasks the user has access
to.
3. The user selects the project or task associated with the progress
update they want to view.
4. The system displays the project or task details, including a list of
progress updates.
5. The user selects the specific progress update they want to view.
6. The system retrieves the detailed information of the selected
progress update from the database.
7. The system displays the detailed information of the progress
update, including:
○ "Tên tiến độ" (Progress Name)
○ "Tiến độ thấy được" (Visibility Status)
○ "Miêu tả tiến độ" (Description)

Alternative Flows: AF-1: Project Progress Not Found

● At step 6, if the system cannot find the progress details, it


navigates to screen 404 .
● Message: MSC25

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Occasional

175 | Page
Other Information: Ensure that the progress detail viewing process is user-friendly and
provides clear, comprehensive information.

Error messages should be user-friendly and provide clear guidance on


how to proceed.

Business Rule Only users with the roles of department manager or employee can view
progress update details.

Assumptions: The project or task management page is easily accessible from the user's
dashboard.

The system has a reliable mechanism for retrieving and displaying


progress update details from the database.

2.7.6.4 Manage project marketing

2.7.6.4.1 View list project marketing

UC ID and Name: UC-70 View list project marketing

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: The Department Manager or Employee chooses to view the list of


marketing campaigns associated with a specific project.

Description: This use case describes the process by which a department manager or
employee views the list of marketing campaigns associated with a
specific project.

1. The actor must be logged into the system.


Preconditions: 2. The system must be online and accessible.
3. The actor must have appropriate permissions to view project
marketing information.

176 | Page
Postconditions: 1. The actor successfully views the list of marketing campaigns for
the selected project.
1. The actor logs into the system using their credentials.
Normal Flow: 2. The actor clicks on their avatar to display the dropdown menu.
3. The actor selects the "Quản lý" (Management) option from the
dropdown menu.
4. The actor clicks the "Danh sách dự án" (Project List) option from
the sidebar menu.
5. The system displays a list of projects.
6. The actor selects a specific project from the list.
7. The system displays the project details.
8. The actor clicks the "Quản lý quảng cáo" (Manage Marketing)
button or option.
9. The system retrieves and displays the list of marketing campaigns
associated with the selected project.
10. The actor reviews the list of marketing campaigns.

Alternative Flows: A1: No Marketing Campaigns Available

1. The actor clicks the "Quản lý quảng cáo" (Manage Marketing)


option.
2. The system retrieves the list but finds no marketing campaigns for
the selected project.
3. The system displays a message indicating that there are no
marketing campaigns to display.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The list of marketing campaigns should be optimized for both desktop
and mobile devices.

Business Rule The system must accurately display marketing campaigns associated with
the selected project.

The actor must have the appropriate permissions to view the list of

177 | Page
marketing campaigns.

Assumptions: The actor has the necessary permissions to view marketing campaigns.

The system has the capability to retrieve and display marketing campaign
information accurately.

2.7.6.4.2 Search project marketing

UC ID and Name: UC-72 Search project marketing

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Department Manager, Secondary Actor: None


Employee

Trigger: The actor chooses to search to find specific marketing campaign by


entering search criteria.

Description: This use case describes the process by which a department manager or
employee searches for specific marketing campaigns within the list of
marketing campaigns associated with a project.

1. The actor must be logged into the system.


Preconditions: 2. The actor must have accessed the list of marketing campaigns as
described in the use case View List of Project Marketing.
3. The system must be online and accessible.

Postconditions: 1. The actor successfully views a filtered list of marketing


campaigns based on the search criteria.

178 | Page
1. The actor completes the steps outlined in the use case View List
Normal Flow: of Project Marketing to display the list of marketing campaigns
for the selected project.
2. The actor enters search criteria (e.g., campaign name, keywords)
into the search input field provided on the page.
3. The actor clicks the "Tìm kiếm" (Search) button or presses Enter.
4. The system processes the search request and filters the list of
marketing campaigns based on the search criteria.
5. The system displays the filtered list of marketing campaigns that
match the search criteria.
6. The actor reviews the filtered list of marketing campaigns.

Alternative Flows: A1: No Campaigns Match Search Criteria

1. The actor enters search criteria and initiates the search.


2. The system retrieves the list but finds that no marketing
campaigns match the search criteria.
3. The system displays a message indicating that no marketing
campaigns were found matching the search criteria.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The search functionality should be optimized for both desktop and mobile
devices.

The system should handle search queries efficiently to ensure a quick


response.

Business Rule The search functionality should accurately filter and display marketing
campaigns based on the entered criteria.

The system should handle and display errors clearly if the search cannot
be performed.

179 | Page
Assumptions: The actor has access to the list of marketing campaigns and the necessary
permissions to perform searches.

The system has the capability to process search queries and display
filtered results.

2.7.6.4.3 Create project marketing


2.7.6.4.3.1 Department manager

UC ID and Name: UC-73a Create project marketing

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Department manager Secondary Actor: None

Trigger: The Department Manager initiates the creation of a new marketing


campaign

Description: This use case describes the process of creating a new marketing campaign
directly by a Department Manager

1. The Department Manager must be logged into the system.


Preconditions: 2. The Department Manager must have appropriate permissions to
create marketing campaigns.

Postconditions: 1. The marketing campaign is created and finalized

180 | Page
1. The Department Manager logs into the system using their
Normal Flow: credentials.
2. The Department Manager navigates to the "Danh sách dự án"
(Project List) and selects a specific project.
3. The Department Manager clicks the "Quản lý quảng cáo"
(Manage Marketing) option.
4. The Department Manager clicks the "Tạo quảng cáo" (Create
Marketing) button.
5. The system displays the form with the following fields:
● Tên quảng cáo (Campaign Name) – required, ≤ 255 characters
● Mô tả quảng cáo (Campaign Description) – required, ≤ 1000
characters
● File quảng cáo (Campaign File) – required, accepts only Word,
PDF, Excel files
● Chi phí quảng cáo (Campaign Cost) – required, non-negative
number with up to 13 integer digits and 2 decimal places
6. The Department Manager fills in all required fields and attaches
the necessary file.
7. The Department Manager clicks the "Xác nhận" (Confirm) button.
8. The system validates the input:
● Tên quảng cáo (Campaign Name):
○ Error: "Tên quảng cáo không được để trống và không
được vượt quá 255 ký tự."
● Mô tả quảng cáo (Campaign Description):
○ Error: "Mô tả quảng cáo không được để trống và không
được vượt quá 1000 ký tự."
● File quảng cáo (Campaign File):
○ Error: "Vui lòng tải lên file định dạng Word, PDF hoặc
Excel. Không được để trống."
● Chi phí quảng cáo (Campaign Cost):
○ Error: "Chi phí quảng cáo phải là số dương và không vượt
quá 13 chữ số phần nguyên và 2 chữ số thập phân. Không
được để trống."
9. If validation is successful, the system saves the new marketing
campaign and displays a success message: "Quảng cáo đã được
tạo thành công."
10. The system navigates back to the list of marketing campaigns.

Alternative Flows: A1: Validation Errors

1. The Department Manager completes the form but input data


does not meet validation criteria.

181 | Page
2. The system displays specific error messages indicating which
fields need correction.
3. The Department Manager corrects the errors and resubmits the
form.

A2: File Upload Issues

1. The Department Manager tries to upload a file that is not of the


allowed types (Word, PDF, Excel).
2. The system displays an error message indicating the file type is
not accepted.
3. The Department Manager uploads a valid file and proceeds with
the submission.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The form should be optimized for both desktop and mobile devices.

Business Rule Department managers can finalize marketing campaigns directly

The system should handle and display errors clearly if the creation or
submission cannot be performed.

Assumptions: The Department Manager has the necessary permissions to create


marketing campaigns.

The system has the capability to process and validate the input data
accurately.

2.7.6.4.3.2 Employee

182 | Page
UC ID and Name: UC-73b Create project marketing

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Employee Secondary Actor: None

Trigger: The Employee initiates the creation of a new marketing campaign,


which will be submitted for review.

Description: This use case describes the process of creating a new marketing campaign
by an Employee, including submission for Department Manager review

1. The Employee must be logged into the system.


Preconditions: 2. The Employee must have appropriate permissions to create
marketing campaigns.

Postconditions: 1. The marketing campaign is created and wait for department


manager handle
1. The Employee logs into the system using their credentials.
Normal Flow: 2. The Employee navigates to the "Danh sách dự án" (Project List)
and selects a specific project.
3. The Employee clicks the "Quản lý quảng cáo" (Manage
Marketing) option.
4. The Employee clicks the "Tạo quảng cáo" (Create Marketing)
button.
5. The system displays the form with the following fields:
● Tên quảng cáo (Campaign Name) – required, ≤ 255 characters
● Mô tả quảng cáo (Campaign Description) – required, ≤ 1000
characters
● File quảng cáo (Campaign File) – required, accepts only Word,
PDF, Excel files
● Chi phí quảng cáo (Campaign Cost) – required, non-negative
number with up to 13 integer digits and 2 decimal places
6. The Employee fills in all required fields and attaches the
necessary file.
7. The Employee clicks the "Gửi yêu cầu" (Submit Request) button.
8. The system validates the input:
● Tên quảng cáo (Campaign Name):
○ Error: "Tên quảng cáo không được để trống và không
được vượt quá 255 ký tự."
● Mô tả quảng cáo (Campaign Description):

183 | Page
○ Error: "Mô tả quảng cáo không được để trống và không
được vượt quá 1000 ký tự."
● File quảng cáo (Campaign File):
○ Error: "Vui lòng tải lên file định dạng Word, PDF hoặc
Excel. Không được để trống."
● Chi phí quảng cáo (Campaign Cost):
○ Error: "Chi phí quảng cáo phải là số dương và không vượt
quá 13 chữ số phần nguyên và 2 chữ số thập phân. Không
được để trống."
9. If validation is successful, the system saves the marketing
campaign as a pending request and displays a success message:
"Yêu cầu tạo quảng cáo đã được gửi thành công."
10. The system notifies the Department Manager of the pending
request and navigates back to the list of marketing campaigns.

Alternative Flows: A1: Validation Errors

1. The Employee completes the form but input data does not meet
validation criteria.
2. The system displays specific error messages indicating which
fields need correction.
3. The Employee corrects the errors and resubmits the form.

A2: File Upload Issues

1. The Employee tries to upload a file that is not of the allowed


types (Word, PDF, Excel).
2. The system displays an error message indicating the file type is
not accepted.
3. The Employee uploads a valid file and proceeds with the
submission.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

184 | Page
Other Information: The form should be optimized for both desktop and mobile devices.

Business Rule Employees must submit marketing campaigns for review by Department
Managers.

The system should handle and display errors clearly if the creation or
submission cannot be performed.

Assumptions: The Employee has the necessary permissions to create or submit


marketing campaigns.

The system has the capability to process and validate the input data
accurately.

2.7.6.4.4 View project marketing detail

UC ID and Name: UC-74 View project marketing detail

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Department Manager Secondary Actor: None


, Employee

Trigger: The Department Manager or Employee selects a project from the project
list and chooses to view the marketing details for that project.

Description: This use case describes the process by which the Department Manager or
Employee views the details of a marketing campaign associated with a
specific project.

1. The actor must be logged into the system.


Preconditions: 2. The actor must have access to the project list and marketing
campaign details.

Postconditions: 1. The actor successfully views the marketing campaign details for
the selected project.
2. The actor can access all relevant marketing information.

185 | Page
The Department Manager or The Employee complete use case View list
Normal Flow: project marketing
The system displays the list of marketing campaigns for the selected
project:
The Department Manager or The Employee selects a specific marketing
campaign from the list of campaigns.
The system display information of the marketing campain

● Tên quảng cáo (Campaign Name)


● Mô tả quảng cáo (Campaign Description)
● File quảng cáo (Campaign File) – name and type
● Chi phí quảng cáo (Campaign Cost)
● Trạng thái (Status) – Draft, Submitted, Approved, etc.
● List of marketing progresses

Alternative Flows: N/A

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The campaign details view should be optimized for both desktop and
mobile devices.

Business Rule The actor must have appropriate permissions to view detailed information
about the marketing campaign.

Assumptions: The actor is logged into the system and has the appropriate access rights.

2.7.6.3.4 Update project marketing


2.7.6.3.4.1 Department manager

186 | Page
UC ID and Name: UC-75a Update project marketing

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Department Manager Secondary Actor: None

Trigger: The Department Manager accesses the marketing campaign list, selects
a specific campaign, and chooses to update it by clicking the "pen" icon.

Description: This use case describes the process by which a Department Manager
updates an existing marketing campaign.

1. The Department Manager must be logged into the system.


Preconditions: 2. The Department Manager must have access to the marketing
campaign list and permissions to edit marketing campaigns

Postconditions: 1. The marketing campaign is updated with the new information.

1. The Department Manager logs into the system using their


Normal Flow: credentials.
2. The Department Manager navigates to the "Danh sách dự án"
(Project List) and selects a specific project.
3. The Department Manager clicks the "Quản lý quảng cáo"
(Manage Marketing) option.
4. The Department Manager locates the marketing campaign to be
updated and clicks the "pen" icon to edit.
5. The system displays the form with the current values populated:
● Tên quảng cáo (Campaign Name) – required, ≤ 255 characters
● Mô tả quảng cáo (Campaign Description) – required, ≤ 1000
characters
● File quảng cáo (Campaign File) – required, accepts only Word,
PDF, Excel files
● Chi phí quảng cáo (Campaign Cost) – required, non-negative
number with up to 13 integer digits and 2 decimal places
6. The Department Manager updates the fields as needed.
7. The Department Manager clicks the "Xác nhận" (Confirm)
button.
8. The system validates the input:
● Tên quảng cáo (Campaign Name):
○ Error: "Tên quảng cáo không được để trống và không
được vượt quá 255 ký tự."

187 | Page
● Mô tả quảng cáo (Campaign Description):
○ Error: "Mô tả quảng cáo không được để trống và không
được vượt quá 1000 ký tự."
● File quảng cáo (Campaign File):
○ Error: "Vui lòng tải lên file định dạng Word, PDF hoặc
Excel. Không được để trống."
● Chi phí quảng cáo (Campaign Cost):
○ Error: "Chi phí quảng cáo phải là số dương và không vượt
quá 13 chữ số phần nguyên và 2 chữ số thập phân. Không
được để trống."
9. If validation is successful, the system updates the marketing
campaign and displays a success message: "Quảng cáo đã được
cập nhật thành công."
10. The system navigates back to the list of marketing campaigns.

Alternative Flows: A1: Validation Errors

1. The Department Manager completes the form but input data


does not meet validation criteria.
2. The system displays specific error messages indicating which
fields need correction.
3. The Department Manager corrects the errors and resubmits the
form.

A2: File Upload Issues

1. The Department Manager tries to upload a file that is not of the


allowed types (Word, PDF, Excel).
2. The system displays an error message indicating the file type is
not accepted.
3. The Department Manager uploads a valid file and proceeds with
the submission.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The form should be optimized for both desktop and mobile devices.

188 | Page
Business Rule Department managers can finalize marketing campaigns directly

Assumptions: The Department Manager has the necessary permissions to update


marketing campaigns.

The system has the capability to process and validate the input data
accurately.

2.7.6.3.4.2 Employee

UC ID and Name: UC- 75b Update project marketing

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Employee Secondary Actor: None

Trigger: The Employee accesses the marketing campaign list, selects a specific
campaign, and chooses to update it by clicking the "pen" icon.

Description: This use case describes the process by which an employee updates an
existing marketing campaign.

1. The employee must be logged into the system.


Preconditions: 2. employee must have access to the marketing campaign list and
permissions to edit marketing campaigns

Postconditions: 1. The marketing campaign is updated with the new information.

189 | Page
1. The Employee logs into the system using their credentials.
Normal Flow: 2. The Employee navigates to the "Danh sách dự án" (Project List)
and selects a specific project.
3. The Employee clicks the "Quản lý quảng cáo" (Manage
Marketing) option.
4. The Employee locates the marketing campaign to be updated and
clicks the "pen" icon to edit.
5. The system displays the form with the current values populated:
● Tên quảng cáo (Campaign Name) – required, ≤ 255 characters
● Mô tả quảng cáo (Campaign Description) – required, ≤ 1000
characters
● File quảng cáo (Campaign File) – required, accepts only Word,
PDF, Excel files
● Chi phí quảng cáo (Campaign Cost) – required, non-negative
number with up to 13 integer digits and 2 decimal places
6. The Employee updates the fields as needed.
7. The Employee clicks the "Gửi yêu cầu" (Submit Request) button.
8. The system validates the input:
● Tên quảng cáo (Campaign Name):
○ Error: "Tên quảng cáo không được để trống và không
được vượt quá 255 ký tự."
● Mô tả quảng cáo (Campaign Description):
○ Error: "Mô tả quảng cáo không được để trống và không
được vượt quá 1000 ký tự."
● File quảng cáo (Campaign File):
○ Error: "Vui lòng tải lên file định dạng Word, PDF hoặc
Excel. Không được để trống."
● Chi phí quảng cáo (Campaign Cost):
○ Error: "Chi phí quảng cáo phải là số dương và không vượt
quá 13 chữ số phần nguyên và 2 chữ số thập phân. Không
được để trống."
9. If validation is successful and the campaign is in "Draft" status,
the system updates the marketing campaign and displays a success
message: "Yêu cầu cập nhật quảng cáo đã được gửi thành công."
10. The system notifies the Department Manager of the update request
and navigates back to the list of marketing campaigns.

Alternative Flows: A1: Validation Errors

1. The Employee completes the form but input data does not meet
validation criteria.
2. The system displays specific error messages indicating which
fields need correction.

190 | Page
3. The Employee corrects the errors and resubmits the form.

A2: File Upload Issues

1. The Employee tries to upload a file that is not of the allowed


types (Word, PDF, Excel).
2. The system displays an error message indicating the file type is
not accepted.
3. The Employee uploads a valid file and proceeds with the
submission.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The form should be optimized for both desktop and mobile devices.

Business Rule Employees must submit marketing campaigns for review by Department
Managers.

Only marketing with status draft can be edited

The system should handle and display errors clearly if the creation or
submission cannot be performed.

Assumptions: The Department Manager has the necessary permissions to update


marketing campaigns.

The system has the capability to process and validate the input data
accurately.

2.7.7 View project static

UC ID and Name: UC-76 View project static

Created By: CongNT Created Date: 25/05/2024

191 | Page
Primary Actor: Department manager Secondary Actor: None

Trigger: The Admin needs to view the static information and statistics of a
project.

Description: This use case describes how an Admin can view the static information of
a project. By navigating to the project management screen and selecting
the "Dashboard" tab in the sidebar, the Admin can view key statistics
such as the total number of campaigns, completed transactions,
supporters, total advertising expenditure, total committed funds, and
visual representations of transactions per campaign.

1. The Admin is logged into the system.


Preconditions: 2. The Admin has navigated to the project management screen.

Postconditions: 1. The Admin views the static information and charts related to the
project.
1. The Admin accesses the project management screen.
Normal Flow: 2. The Admin clicks on the "Dashboard" tab in the sidebar.
3. The system displays the project’s static information, including:
● Total number of campaigns
● Number of completed transactions
● Number of supporters
● Total advertising expenditure
● Total committed funds
4. The system displays charts visualizing transactions per campaign.
5. The Admin reviews the displayed data and charts.

Alternative Flows: AF-1: No Data Available

1. If there is no data available for the project, the system displays a


message indicating that no data is available and offers to refresh
or check other sections.

AF-2: Error in Loading Data

1. If there is an issue loading the data or charts, the system displays


an error message and prompts the Admin to try again later.

192 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: Ensure that the data and charts are updated in real-time and accurately
reflect the project’s statistics.

Business Rule The displayed statistics and charts must be accurate and updated based on
the latest data available.

Assumptions: The Admin has the necessary access rights to view project statistics.

The project data is complete and updated regularly in the system.

2.7.8 Manage project transaction


2.7.8.1 View list project transaction

UC ID and Name: UC-77 View list project transaction

Created By: CongNT Created Date: 25/05/2024

Primary Actor: Department manager, Secondary Actor: None

Admin

Trigger: The Department Manager or Admin needs to view transaction details


related to projects or all transactions in the system.

Description: This use case describes how a Department Manager or Admin can view a
list of transactions. The Department Manager will see transactions
specific to a project they manage, while the Admin can view all
transactions in the system. The transactions will be displayed with basic

193 | Page
information such as transaction ID, transaction status, transfer code,
payer, supported project, and supported campaign.

1. The Department Manager or Admin is logged into the system.


Preconditions: 2. The user has appropriate permissions to view transactions.

Postconditions: 1. The Department Manager or Admin views the transaction details


as per their role.
For Department Manager:
Normal Flow:
1. The Department Manager navigates to the project management
screen.
2. The Department Manager selects the "Transaction Management"
tab.
3. The system displays a list of transactions specific to the selected
project.
4. The list includes details such as:
○ Transaction ID
○ Transaction status
○ Transfer code
○ Payer
○ Supported project
○ Supported campaign

For Admin:

1. The Admin navigates to the transaction management screen.


2. The Admin selects the "Transaction List" tab.
3. The system displays a comprehensive list of all transactions in the
system.
4. The list includes details such as:
○ Transaction ID
○ Transaction status
○ Transfer code
○ Payer
○ Supported project
○ Supported campaign

Alternative Flows: AF-1: No Transactions Available

1. If no transactions are available for the Department Manager’s


selected project or for the Admin's query, the system displays a
message indicating that no transactions are available and may

194 | Page
offer options to refresh or check other sections.

AF-2: Error in Loading Data

1. If there is an issue loading the transaction list, the system displays


an error message and prompts the user to try again later.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: Medium

Other Information: Ensure the transaction list is up-to-date and accurately reflects all
transactions.

Business Rule Transaction details must be accurately displayed based on the latest data
available in the system.

Assumptions: The Department Manager and Admin have the necessary access rights to
view transaction details.

The transaction data is complete and updated regularly in the system.

2.7.8.2 Search project transaction

UC ID and Name: UC-78 Search project transaction

Created By: CongNT Created Date: 25/05/2024

Primary Actor: Department manager, Secondary Actor: None

Admin

195 | Page
Trigger: The Department Manager or Admin needs to search for specific
transactions using transaction ID or transfer code.

Description: This use case describes how the Department Manager or Admin can
search for transactions by entering a transaction ID or transfer code. The
system will display transactions that match the search criteria.

1. The Department Manager or Admin is logged into the system.


Preconditions: 2. The user has appropriate permissions to search transactions.

Postconditions: 1. The Department Manager or Admin views the search results based
on the entered criteria.
Department Manager or Admin Accesses Search:
Normal Flow:
1. The Department Manager or Admin navigates to the transaction
management screen.
2. The user locates and opens the search functionality on the
transaction management screen.

Search Input:

1. The user enters a transaction ID or transfer code into the search


field.
2. The user submits the search query by clicking the search button.

System Processes Search:

1. The system processes the search query and retrieves transactions


that match the entered criteria.

Display Search Results:

1. The system displays the search results, which include:


○ Transaction ID
○ Transaction status
○ Transfer code
○ Payer
○ Supported project
○ Supported campaign

Alternative Flows: AF-1: No Matching Transactions

1. If no transactions match the search criteria, the system displays a


message indicating no results were found and may prompt the

196 | Page
user to refine their search.

AF-2: Invalid Search Input

1. If the search input is invalid (e.g., non-numeric characters in


transaction ID), the system displays an error message indicating
invalid input and prompts the user to enter a valid search term.

AF-3: Error in Search Functionality

1. If there is an issue with the search functionality, the system


displays an error message and prompts the user to try again later.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Hight

Other Information: Ensure the search functionality is efficient and responsive to user input.

Business Rule Search results must be accurate and up-to-date based on the latest
transaction data in the system.

Assumptions: The Department Manager and Admin have the necessary access rights to
search and view transaction details.

The transaction data is indexed to allow efficient searching.

2.7.8.3 View project transaction detail

UC ID and Name: UC-79 View project transaction detail

Created By: CongNT Created Date: 25/05/2024

Primary Actor: Department manager, Secondary Actor: None

197 | Page
Admin

Trigger: The Department Manager or Admin wants to view the detailed


information of a specific transaction.

Description: This use case describes how a Department Manager or Admin can access
detailed information for a specific transaction, including all relevant
details such as address, date, total amount, and status.

1. The Department Manager or Admin is logged into the system.


Preconditions: 2. The user has appropriate permissions to view transaction details.
3. The transaction ID or transfer code is known and valid.

Postconditions: 1. The Department Manager or Admin views the detailed


information of the selected transaction.
Access Transaction List:
Normal Flow:
1. The Department Manager or Admin navigates to the transaction
management screen.
2. The user selects the transaction list tab.

Select Transaction:

1. The user locates and clicks on the specific transaction they want to
view details for.
2. The system opens a detailed view of the selected transaction.

View Transaction Details:

1. The system displays a detailed view that includes:


○ Transaction ID
○ Transaction status
○ Transfer code
○ Payer
○ Supported project
○ Supported campaign
○ Address
○ Date and time of the transaction
○ Total amount
○ Any additional relevant details

198 | Page
Alternative Flows: AF-1: Transaction Not Found

1. If the selected transaction cannot be found, the system displays an


error message indicating that the transaction is not available and
may prompt the user to check the transaction ID or try again.

AF-2: Error in Viewing Details

1. If there is an issue with retrieving or displaying the transaction


details, the system displays an error message and prompts the user
to try again later.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Ensure that all relevant details are displayed accurately and are
up-to-date.

The user interface should be intuitive and provide clear information on


each transaction detail.

Frequency of Use: Hight

Other Information: Hight

Business Rule Only authorized users (Department Manager or Admin) can view detailed
transaction information.

Assumptions: The transaction data is accurate and complete.

The system supports detailed views and can handle the retrieval and
display of transaction information efficiently.

199 | Page
2.8 User functions
2.8.1 Notification
2.8.1.1 View list notification

UC ID and Name: UC-80 View Notification List

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: User, Secondary Actor: None

Admin,

Department manager,

Salesman,

Customer service,

Employee

Trigger: The actor wants to view their notifications.

Description: This use case describes the process by which an actor views their
notifications by clicking on the notification icon and accessing the full
notification list page via the "See More" option.

Preconditions: The actor must be logged into the system.

Postconditions: ● The actor can view and manage their notifications on the
notification list page.

200 | Page
1. The actor logs into the system.
Normal Flow: 2. The actor navigates to the main interface.
3. The actor clicks on the notification icon located in the header.
4. The system displays a dropdown or modal with a preview of the
latest notifications.
5. The actor views the recent notifications in the preview.
6. The actor clicks on the "See More" option at the bottom of the
preview.
7. The system navigates the actor to the full notification list page.
8. The system displays all notifications in chronological order.
9. The actor can manage notifications.

Alternative Flows: 1. No New Notifications. The system displays a message MSC31


2. Viewing Detailed Notification. The system navigates to the
detailed view of the selected notification.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: This use case is expected to be used frequently as users check their
notifications regularly.

Other Information: The system should ensure that notifications are displayed in a
user-friendly and organized manner.

Business Rule Notifications must be relevant and accurate.

Only authorized actors can view and manage notifications.

Assumptions: The actor has received notifications in the system.

The system is configured to display notifications effectively.

2.8.1.2 Read notification

201 | Page
UC ID and Name: UC-81 Read Notifications

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: User Secondary Actor: None

Admin

Department Manager

Salesman

Customer Service

Employee

Trigger: The actor wants to read and manage their notifications.

Description: This use case describes the process by which an actor reads their
notifications and manages them using options provided on the
notification list page.

Preconditions: The actor must be logged into the system.

Postconditions: ● Notifications are marked as read, and the actor can navigate to
related content if applicable.

1. The actor logs into the system.


Normal Flow: 2. The actor navigates to the notification list page.
3. The system displays notifications in a list format, sorted by time.
4. The actor clicks on a notification to read its details.
5. The system navigates the actor to the corresponding screen related
to the notification, if applicable.
6. The actor uses the "Đánh dấu tất cả là đã đọc" (Mark all as read)
button to mark all notifications as read.
7. The system updates the status of notifications to read.

202 | Page
Alternative Flows: Clicking on an item in the notification list will mark it as viewed and
read.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: This use case is expected to be used frequently as users check and
manage their notifications regularly.

Other Information: ● Notifications should be displayed clearly, with distinct visual


indicators for unread messages.

Business Rule Only authorized actors can access and manage their notifications.

Notifications must be updated in real-time to reflect the latest


information.

Assumptions: The actor is familiar with the notification interface.

The system is capable of real-time updates for notifications.

2.8.2 Comment in project


2.8.2.1 View list comment

UC ID and Name: UC-82 View List of Comments

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: User Secondary Actor: None

Admin

Department Manager

203 | Page
Salesman

Customer Service

Employee

Guest

Trigger: The actor wants to see comments for a specific project.

Description: This use case describes the process by which an actor views the list of
comments associated for a specific project.

Preconditions: Select a specific project and click on the comments tab.

Postconditions: ● The actor can view with the comments on the content page.

1. The actor selects a specific project and then selects the comments
Normal Flow: tab in the project content.
2. The system displays the comments section below the content.
3. The actor scrolls to the comments section.
4. The system displays a list of comments in chronological order,
with the most recent comment at the top.
5. Each comment displays the author's name, avatar, timestamp, and
comment text.
6. The actor can read the comment and view the response comments.

Alternative Flows: No Comments Available. If there are no comments, the system displays a
message MSC40

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: This use case is expected to be used frequently as users engage with

204 | Page
content and discussions.

Other Information: Comments should be displayed in a clear and readable format.

Business Rule Only logged in users can post comments.

Assumptions: The actor has permission to view the content and its comments.

The system is configured to display comments in real-time.

2.8.2.2 Create comment

UC ID and Name: UC-83 Create Comment

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: User Secondary Actor: None

Admin

Department Manager

Salesman

Customer Service

Employee

Trigger: The actor wants to add comments to the comments tab.

Description: This use case describes a process where an actor wants to add comments
related to a specific project.

Preconditions: The actor must be logged into the system.

Postconditions: ● The comment is successfully created and displayed on the content


page.

205 | Page
1. The actor logs into the system.
Normal Flow: 2. The actor selects a specific project and then selects the comments
tab in the project content.
3. The system displays the comments section below the content.
4. The system displays the comments section below the content.
5. The actor clicks the comment section and types their comment.
6. The actor can use the emoji picker to add emojis to their comment
if they wish.
7. The actor clicks the submit button (or presses Enter) to submit the
comment.
8. The system validates the comment content.
9. The system saves the comment to the database.
10. The system updates the comments section, displaying the new
comment at the top of the list.

Alternative Flows: Empty Comment Submission. f the actor submits an empty comment, the
system displays an error message MSC42

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: This use case is expected to be used frequently as users engage with
content by commenting.

Other Information: ● Comments should be posted in real-time to ensure timely


interaction among users.

Business Rule Only logged in users can post comments.

Assumptions: The actor has the necessary permissions to comment on the content.

2.8.2.3 Reply comment

206 | Page
UC ID and Name: UC-84 Reply to Comment

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: User Secondary Actor: None

Admin

Department Manager

Salesman

Customer Service

Employee

Trigger: The actor wants to reply to an existing comment on a content item.

Description: This use case describes the process by which an actor replies to a
comment on a specific project.

Preconditions: The actor must be logged into the system.

Postconditions: ● The reply is successfully created and displayed beneath the


original comment.

1. The actor logs into the system.


Normal Flow: 2. The actor selects a specific project and then selects the comments
tab in the project content.
3. The system displays the comments section below the content.
4. The actor locates the comment they wish to reply to.
5. The actor clicks the "Phản hồi" (Reply) link beneath the comment.
6. The system displays a reply input box directly below the
comment.
7. The actor types their reply into the input box.
8. The actor may use the emoji picker to add emojis to their reply if
desired.
9. The actor clicks the send button (or presses Enter) to submit the
reply.
10. The system validates the reply content.
11. The system saves the reply to the database.
12. The system updates the comment section, displaying the new

207 | Page
reply beneath the original comment.

Alternative Flows: Empty Comment Submission. f the actor submits an empty comment, the
system displays an error message MSC42

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: This use case is expected to be used occasionally, primarily for
moderation or management of content.

Other Information: ● Replies should be posted in real-time to ensure timely interaction


among users.

Business Rule Only authenticated users can post replies.

Assumptions: The actor has the necessary permissions to reply to comments.

2.8.2.4 Delete comment

UC ID and Name: UC-85 Delete Comment

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: User Secondary Actor: None

Admin

Department Manager

Salesman

208 | Page
Customer Service

Employee

Trigger: The actor wants to delete a comment from a content item.

Description: This use case describes the process by which an actor deletes a comment
they have made or are authorized to delete from a specific project.

Preconditions: The actor must be logged into the system.

Postconditions: ● The comment is successfully removed from the content page.

1. The actor logs into the system.


Normal Flow: 2. The actor selects a specific project and then selects the comments
tab in the project content.
3. The system displays the comments section below the content.
4. The actor finds the comment they commented on and wants to
delete it.
5. The actor clicks the "Delete" link below the comment.
6. The system displays a confirmation dialog asking the actor to
confirm the deletion.
7. The actor confirms the deletion by clicking "Yes" or a similar
confirmation button.
8. The system deletes the comment from the database.
9. The system updates the comments section to reflect the deletion,
removing the comment from view.

Alternative Flows: Cancel Deletion. If the actor decides not to delete the comment: The actor
clicks "No" or a similar cancellation button in the confirmation dialog.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: This use case is expected to be used occasionally, primarily for

209 | Page
moderation or management of content.

Other Information: Deleting a comment is a permanent action and should be handled with
care to avoid accidental loss of information.

Business Rule 1. Only the author of the comment or users with appropriate
administrative permissions can delete a comment.
2. The system should ensure a confirmation step to prevent
accidental deletions.

Assumptions: 1. The actor is aware of the implications of deleting a comment.


2. The system provides clear feedback and confirmation during the
deletion process.

2.8.3 Manage payment


2.8.3.1 Create transaction

UC ID and Name: UC-86 Create Transaction

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: Backer Secondary Actor: None

Trigger: The actor wants to complete a transaction by pledging for a reward on a


crowdfunding project.

Description: This use case describes the process by which an actor creates a
transaction by selecting a reward, entering a delivery address, and
completing the payment process.

Preconditions: 1. The actor must be logged into the system.


2. The actor must have selected a crowdfunding project with
available rewards.

210 | Page
Postconditions: A transaction is successfully created, and the reward is reserved for the
actor.

1. Actor logs into the system.


Normal Flow: 2. Actor navigates to a crowdfunding project with available rewards.
3. Actor selects a reward from a list of available options.
4. The system displays reward details, including minimum pledge
amount, description, estimated delivery, and reward quantity.
5. Actor enters optional bonus support amount if desired.
6. Actor enters their shipping address in the input field provided.
7. Actor clicks the “Payment” button to proceed with the transaction.
8. The system validates the information entered.
9. The system confirms the transaction and displays navigation to
the payment details page.

Alternative Flows: Delivery address is blank. If the delivery address is blank the system
displays an error message MSC48

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: This use case is expected to be used frequently as users pledge for
rewards on crowdfunding projects.

Other Information: Transactions should be processed securely and efficiently to ensure user
satisfaction.

Business Rule The system must ensure all transaction details are accurate and confirmed
before processing.

Assumptions: The system integrates with a reliable payment gateway for processing
transactions.

211 | Page
2.8.3.2 View list transaction

UC ID and Name: UC-87 View List of Transactions

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: Backer Secondary Actor: None

Trigger: The actor wants to view their transaction history.

Description: This use case describes the process by which an actor views a list of
transactions by accessing the transaction history through the dropdown
menu from their avatar on the header.

Preconditions: The actor must be logged into the system.

Postconditions: The actor can view details of all their transactions in the list.

1. The actor logs into the system.


Normal Flow: 2. The actor clicks on their avatar in the header to open the
dropdown menu.
3. The actor selects the "Lịch sử giao dịch" (Transaction History)
option from the menu.
4. The system navigates the actor to the transaction list page.
5. The system displays a list of transactions, including details such
as transaction ID, project name, reward, pledge amount, delivery
address, and status.

Alternative Flows: No Transactions Available. If the actor has no transactions, the system
displays a message MSC26.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

212 | Page
Priority: Medium

Frequency of Use: This use case is expected to be used regularly by users checking their
transaction history.

Other Information: The transaction list should be paginated to handle large numbers of
transactions efficiently.

Business Rule The system must ensure transaction data is accurate and up-to-date.

Assumptions: 1. The actor has completed transactions to view.


2. The system provides real-time updates to the transaction list.

2.8.2.3 Search transaction

UC ID and Name: UC-88 Search Transaction

Created By: Backer Created Date: 24/05/2024

Primary Actor: Backer Secondary Actor: None

Trigger: The actor wants to search for specific transactions in their transaction
history.

Description: This use case describes the process by which an actor searches for
specific transactions using search criteria in the transaction list.

Preconditions: The actor must be logged into the system.

Postconditions: The actor views a filtered list of transactions based on the search criteria.

213 | Page
1. Diễn viên đăng nhập vào hệ thống.
Normal Flow: 2. Diễn viên điều hướng đến trang danh sách giao dịch thông qua
menu hình đại diện của họ.
3. Hệ thống hiển thị danh sách đầy đủ các giao dịch.
4. Diễn viên nhập tiêu chí tìm kiếm ID giao dịch vào thanh tìm kiếm.
5. Diễn viên nhấp vào nút tìm kiếm.
6. Hệ thống lọc danh sách các giao dịch dựa trên các tiêu chí đã
nhập.
7. Hệ thống hiển thị danh sách các giao dịch đã lọc.
8. Diễn viên xem lại kết quả tìm kiếm.

Alternative Flows: No Matching Transactions. If no transactions match the search criteria:


The system displays a message MSC26. The actor can modify the search
criteria and try again.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: This use case is expected to be used frequently by users searching for
specific transactions.

Other Information: The search function should be responsive and provide accurate results
based on the criteria entered.

Business Rule Only authenticated users can search their transaction history.

Assumptions: Only authenticated users can search their transaction history.

The system supports efficient search and filtering capabilities.

2.8.2.4 View transaction detail

UC ID and Name: UC-89 View Transaction Detail

214 | Page
Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: Backer Secondary Actor: None

Trigger: The actor wants to view detailed information about a specific transaction.

Description: This use case describes the process by which an actor views detailed
information about a specific transaction from the transaction list.

Preconditions: The actor must be logged into the system.

Postconditions: The actor can view detailed information about the selected transaction.

1. The actor logs into the system.


Normal Flow: 2. The actor navigates to the transaction list page via their avatar
menu.
3. The system displays the list of transactions.
4. The actor identifies the transaction they wish to view in detail.
5. The actor clicks on the transaction ID link for the desired
transaction.
6. The system retrieves detailed information about the transaction
from the database.
7. The system displays the transaction details, including project
name, reward, pledge amount, delivery address, transaction status,
and other relevant information.
8. The actor reviews the transaction details.

Alternative Flows: The actor may attempt to view another transaction or return later.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

215 | Page
Frequency of Use: This use case is expected to be used frequently by users reviewing
specific transactions.

Other Information: Transaction details should be displayed clearly and comprehensively to


provide all necessary information to the actor.

Business Rule Only authenticated users can view detailed transaction information.

Assumptions: The actor has permission to view the details of the selected transaction.

The system maintains accurate and up-to-date transaction records.

2.8.2.5 Pay

UC ID and Name: UC-90 Pay

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: Backer Secondary Actor: None

Trigger: The actor wants to complete a payment for a transaction using either bank
transfer or MoMo transfer.

Description: This use case describes the process by which an actor completes a
payment for a transaction using the available payment methods, such as
bank transfer or MoMo transfer.

1. The actor must be logged into the system.


Preconditions: 2. The actor must have a pending transaction to pay for.

Postconditions: The payment is successfully processed, and the transaction is updated to


reflect the payment status.

216 | Page
1. The actor logs into the system.
Normal Flow: 2. The actor navigates to the transaction detail page from their
transaction history.
3. The system displays the transaction details, including options for
payment methods.
4. The actor selects a payment method:
Bank Transfer
MoMo Transfer
5. If the actor selects Bank Transfer:
6. The system displays a QR code and bank details for the transfer.
7. The actor scans the QR code using their banking app or enters the
bank details manually to complete the transfer.
8. The actor confirms the payment in their banking app.
9. If the actor selects MoMo Transfer:
10. The system redirects the actor to the MoMo payment gateway.
11. The system displays a QR code for MoMo payment.
12. The actor uses the MoMo app to scan the QR code and confirm
the payment.
13. The payment gateway processes the payment and returns the
status to the system.
14. The system updates the transaction status to reflect the payment
completion.
15. The system displays a confirmation message to the actor
indicating the payment was successful.

Alternative Flows: 1. Payment Failure. The system displays an error message MSC49
2. The actor can attempt the payment again or choose a different
method.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: This use case is expected to be used frequently as users complete
payments for their transactions.

Other Information: The system should ensure secure processing of payments and provide
clear instructions for each payment method.

217 | Page
Business Rule The system must handle payment confirmations and update transaction
records promptly.

Assumptions: The system integrates seamlessly with the payment gateways for bank
transfer and MoMo transfer.

2.8.2.6 Delete transaction

UC ID and Name: UC-91 Delete Transaction

Created By: ManhCQ Created Date: 24/05/2024

Primary Actor: Backer Secondary Actor: None

Trigger: The actor wants to delete a transaction from their transaction list.

Description: This use case describes the process by which an actor deletes a
transaction from the transaction list.

Preconditions: The actor must be logged into the system.

Postconditions: The transaction is successfully removed from the transaction list.

218 | Page
1. The actor logs into the system.
Normal Flow: 2. The actor navigates to the transaction list page via their avatar
menu.
3. The system displays the list of transactions.
4. The actor locates the transaction they wish to delete.
5. The actor clicks the "Delete" icon (trash bin) next to the desired
transaction.
6. The system displays a confirmation dialog asking the actor to
confirm the deletion.
7. The actor confirms the deletion by clicking "Yes" or a similar
confirmation button.
8. The system removes the transaction from the database.
9. The system updates the transaction list to reflect the deletion,
removing the transaction from view.
10. The system displays a success message indicating the transaction
was deleted successfully.

Alternative Flows: Cancel Deletion. If the actor decides not to delete the transaction:

1. The actor clicks "No" or a similar cancellation button in the


confirmation dialog.
2. The system retains the transaction, and no changes are made.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: This use case is expected to be used occasionally, primarily for managing
transactions.

Other Information: Deleting a transaction is a permanent action and should be handled with
care to avoid accidental loss of records.

Business Rule 1. Only authorized users can delete transactions.


2. The system must ensure a confirmation step to prevent accidental
deletions.

219 | Page
Assumptions: 1. The actor understands the implications of deleting a transaction.
2. The system provides clear feedback and confirmation during the
deletion process.

2.8.3 Manage report


2.8.3.1 Create report

UC ID and Name: UC-92 Create Report

Created By: VietHQ Created Date: 23/05/2024

Primary Actor: User Secondary Actor: None

Trigger: User want to create new report to system

Description: This use case describes the process by which a user creates a new report.

1. The user must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: 1. A new report is successfully created and added to the list of


reports.
2. The user is navigated back to the list of reports with a success
message displayed.

220 | Page
1. The user logs into the system using their credentials.
Normal Flow: 2. The user navigates to the list of reports by selecting "Danh sách
báo cáo" (List of Reports) from their profile dropdown menu.
3. The system displays the list of reports.
4. The user clicks the "Tạo báo cáo" (Create Report) button.
5. The system displays the report creation form with the following
fields:
● Tiêu đề báo cáo (Report Title): Text input, required, max 100
characters.
● Nội dung báo cáo (Report Content): Text input, required, max
400 characters.
6. The user fills out the form with the report title and content.
7. Validation Checks:
● If the Report Title field is empty or exceeds 100 characters, the
system displays an error message: "Tiêu đề báo cáo không được
để trống và không vượt quá 100 ký tự" (Report Title cannot be
empty and must not exceed 100 characters).
● If the Report Content field is empty or exceeds 400 characters,
the system displays an error message: "Nội dung báo cáo không
được để trống và không vượt quá 400 ký tự" (Report Content
cannot be empty and must not exceed 400 characters).
8. The user corrects any validation errors and resubmits the form.
9. The user clicks the "Tạo báo cáo" (Create Report) button to
submit the form.
10. The system validates the input data.
11. The system creates a new report in the database with the provided
details.
12. The system displays a success message: "Tạo báo cáo thành công"
(Report has been successfully created).
13. The system navigates the user back to the list of reports.
14. The user reviews the updated list of reports, which now includes
the newly created report.

Alternative Flows: A1: Validation Error

1. At step 6, The user fills out the form with incorrect or incomplete
information.
2. The system performs validation checks and identifies errors.
3. The system displays appropriate error messages for each
validation issue.
4. The user corrects the errors and resubmits the form.

221 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Low

Other Information: The form and validation messages should be optimized for both desktop
and mobile devices.

The system should ensure that all created reports are securely handled and
stored.

Business Rule The report title and content must adhere to specified length constraints.

Assumptions: The user has the necessary permissions to create reports.

2.8.3.2 View list report

UC ID and Name: UC - 93 View list report

Created By: VietHQ Created Date:

Primary Actor: User, Secondary Actor:

Customer Service

Trigger: The user wants to see a list of reports that the user has created

Description: This use case describes the process by which a user or customer service
representative views the list of reports. The user accesses their own
created reports, while the customer service representative accesses the
reports assigned to them for handling.

222 | Page
1. The actor must be logged into the system.
Preconditions: 2. The system must be online and accessible.

Postconditions: 1. The actor successfully views the list of reports.


2. The actor can access details of individual reports if needed.

Normal Flow: For User:

1. The user logs into the system using their credentials.


2. The user clicks on their avatar located at the top right corner of the
screen.
3. The system displays a dropdown menu with various options.
4. The user selects the "Danh sách báo cáo" (List of Reports) option
from the dropdown menu.
5. The system retrieves the list of reports created by the user from
the database.
6. The system displays the list of reports in a table format, including
details such as:
○ Report Title
○ Report Content
○ Reply Content
○ Handler
○ Status (e.g., Pending, In Progress, Resolved)
7. The user reviews the list of reports.

For Customer Service:

1. The customer service representative logs into the system using


their credentials.
2. The representative clicks on their avatar located at the top right
corner of the screen.
3. The system displays a dropdown menu with various options.
4. The representative selects the "Quản lý" (Manage) option from the
dropdown menu.
5. The system retrieves the list of reports assigned to the
representative for handling.
6. The system displays the list of reports in a table format, including
details such as:
○ Report Title
○ Report Content
○ Reply Content
○ Sender
○ Status (e.g., Pending, In Progress, Resolved)

223 | Page
7. The representative reviews the list of reports assigned to them.

Alternative Flows: A1: No Reports Available

1. The actor selects the appropriate option from the dropdown menu.
2. The system retrieves the list but finds that there are no reports
available.
3. The system displays a message indicating that there are no reports
to display.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Low

Other Information: The list should be optimized for both desktop and mobile devices.

Business Rule Only the reports created by the logged-in user should be displayed for
users.

Only the reports assigned to the logged-in customer service representative


should be displayed for customer service representatives.

Assumptions: The system is capable of retrieving and displaying the list of reports
efficiently.

2.8.3.3 Search report

UC ID and Name: UC - 94 Search report

224 | Page
Created By: VietHQ Created Date: 24/05/2024

Primary Actor: User, Secondary Actor: None

Customer Service

Trigger: The user or customer service navigates to the list of reports and enters
search criteria to find specific reports

Description: This use case describes the process by which a user or customer service
representative searches for reports within the list of reports. The actor can
enter search criteria to filter and find specific reports

1. The actor must be logged into the system.


Preconditions: 2. The system must be online and accessible.
3. The actor must have access to the list of reports.

Postconditions: 1. The system displays a list of reports that match the actor's search
criteria.
1. The actor completes the steps outlined in the use case View List
Normal Flow: Report to display the list of reports.
2. The actor locates the search input field at the top of the report list.
3. The actor enters search criteria into the search input field.
4. The actor clicks the "Tìm kiếm" (Search) button to submit the
search query.
5. The system processes the search query and retrieves reports that
match the search criteria from the database.
6. The system displays the list of matching reports in a table format
7. The actor reviews the list of matching reports.

Alternative Flows: A1: No Matching Reports

1. The actor enters search criteria and submits the search query.
2. The system processes the search query but finds no reports that
match the criteria.
3. The system displays a message indicating that no reports match
the search criteria.

A2: Clear Search

1. The actor has previously entered search criteria and views a


filtered list of reports.
2. The actor clicks the "Xóa tìm kiếm" (Clear Search) button to
remove the search criteria.

225 | Page
3. The system clears the search criteria and displays the full list of
reports again.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Low

Other Information: The search functionality should be optimized for both desktop and mobile
devices.

The system should provide options for filtering the search results.

Business Rule The system should handle partial matches for keywords (e.g.,
case-insensitive, substring matching)

Assumptions: The user has the necessary permissions to access and search the list of
reports.

The system has the capability to efficiently process search queries and
return relevant results.

2.8.3.4 View report detail

UC ID and Name: UC - 95 View report detail

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: User, Secondary Actor: None

Customer Service

Trigger: The actor chooses to select a specific report from the list of reports to
view its detailed information.

226 | Page
Description: This use case describes the process by which a user or customer service
representative views the detailed information of a specific report from the
list of reports.

1. The actor must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: 1. The actor successfully views the detailed information of the


selected report.
1. The actor completes the steps outlined in the use case View List
Normal Flow: Report to display the list of reports.
2. The actor locates and selects the desired report from the list by
clicking on its title
3. The system retrieves the detailed information of the selected
report from the database.
4. The system displays the detailed information of the report,
including:
● Report Title
● Report Content
● Report Status
● Handler (for customer service) or Sender (for user)
● Buttons: "Quay lại" (Back) and "Trao đổi" (Discuss)
5. If the actor is a customer service representative, the system
additionally displays:
● Input field: "Phản hồi" (Response)
● Buttons: "Từ chối" (Reject) and "Xác nhận" (Confirm)
6. The actor reviews the detailed information of the report.

Alternative Flows: A1: Report Not Found

1. The actor selects a report from the list.


2. The system attempts to retrieve the report details but finds that the
report no longer exists.
3. The system displays an error message indicating that the report
could not be found.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

227 | Page
Priority: Medium

Frequency of Use: Low

Other Information: The detailed view should be optimized for both desktop and mobile
devices.

Business Rule The actor must have appropriate permissions to view the detailed
information of reports.

Assumptions: The actor has the necessary permissions to access and view the detailed
information of reports.

The system has the capability to efficiently retrieve and display the
detailed information of reports.

2.8.3.5 Chat

UC ID and Name: UC - 96 Chat

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: User, Secondary Actor: None

Customer Service

Trigger: The actor views the detailed information of a report and chooses to
initiat a chat session

Description: This use case describes the process by which a user or customer service
representative initiates and engages in a chat session regarding a specific
report.

1. The actor must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: 1. The actor successfully engages in a chat session regarding the


specific report.

228 | Page
1. The actor completes the steps outlined in the use case View
Normal Flow: Report Detail to display the detailed information of a report.
2. The actor initiates a chat session by either:
● Clicking the "Trao đổi" (Discuss) button, or
● Clicking the "Trao đổi" (Discuss) section.
3. The system displays the chat interface, including the chat history
and an input field for new messages.
4. The actor types a message in the input field and clicks the "Gửi"
(Send) button.
5. The system sends the message and updates the chat history with
the new message.
6. The other participant in the chat (either the user or customer
service representative) can view the message if in the chat screen
real time.
7. The system updates the chat history with incoming messages.
8. Steps 4-7 are repeated as needed for the duration of the chat
session.

Alternative Flows: A1: No Previous Chat History

1. The actor initiates a chat session.


2. The system finds that there is no previous chat history for the
selected report.
3. The system displays an empty chat interface with an input field
for new messages.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Low

Frequency of Use: Low

Other Information: The chat interface should be optimized for both desktop and mobile
devices.

Business Rule The system support real-time messaging for a seamless chat experience.

229 | Page
Assumptions: The actor has the necessary permissions to access and use the chat
functionality.

The system has the capability to support real-time chat sessions.

2.8.3.6 Confirm report

UC ID and Name: UC - 97 Confirm report

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: Customer Service Secondary Actor: None

Trigger: The customer service chooses to confirm or reject the report

Description: This use case describes the process by which a customer service
representative confirms or rejects a report by entering a response and
clicking the appropriate button.

1. The customer service representative must be logged into the


Preconditions: system.
2. The system must be online and accessible.

Postconditions: 1. The system updates the status of the report based on the
representative's action (confirmed or rejected).
2. The system stores the representative's response.

230 | Page
1. The customer service representative completes the steps outlined
Normal Flow: in the use case View Report Detail to display the detailed
information of the report.
2. The representative locates the input field labeled "Phản hồi"
(Response).
3. The representative enters a response into the "Phản hồi" field. The
response must be 400 characters or fewer.
4. The representative clicks one of the following buttons:
● "Từ chối" (Reject), or
● "Xác nhận" (Confirm).
5. The system validates the input:
● If the response is empty or exceeds 400 characters, the system
displays an error message indicating the validation issue (e.g.,
"Phản hồi không được vượt quá 400 ký tự" - "Response cannot
exceed 400 characters").
● If the input is valid, the system processes the action (confirm or
reject).
6. The system updates the report status based on the action:
● If "Từ chối" (Reject) is clicked, the system sets the report status to
"Rejected."
● If "Xác nhận" (Confirm) is clicked, the system sets the report
status to "Confirmed."
7. The system displays a success message confirming that the action
has been completed.
8. The representative is navigated back to the list of reports or
another relevant section

Alternative Flows: 1. N/A

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Low

Other Information: The response input field and validation should be optimized for both

231 | Page
desktop and mobile devices.

Business Rule The response must be 400 characters or fewer.

The system must handle and display validation errors clearly.

The report status should be updated accurately based on the


representative’s action.

Assumptions: The representative has the necessary permissions to confirm or reject the
report.

The system has the capability to process and store the confirmation or
rejection of reports.

2.8.4 Manage project supported


2.8.4.1 View list project supported

UC ID and Name: UC - 98 View list project supported

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: User Secondary Actor:

Trigger: The User choose to view the list of projects that the user supported

Description: This use case describes the process by which a user views a list of
projects they have supported.

1. The user must be logged into the system.


Preconditions: 2. The system must be online and accessible.

Postconditions: 1. The user successfully views the list of projects they have
supported.

232 | Page
1. The user logs into the system using their credentials.
Normal Flow: 2. The user clicks on their avatar to display the dropdown menu.
3. The user selects the "Dự án đã ủng hộ" (Supported Projects)
option from the dropdown menu.
4. The system retrieves the list of projects that the user has supported
from the database.
5. The system displays the list of supported projects, including
details such as:
● Project Name
● Campaign Name
● Amount of support
6. The user reviews the list of supported projects.

Alternative Flows: A1: No Supported Projects

1. The user selects the "Dự án đã ủng hộ" (Supported Projects)


option.
2. The system retrieves the list but finds that the user has not
supported any projects.
3. The system displays a message indicating that there are no
supported projects to display.

EX-1: System Unavailable


Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: High

Frequency of Use: High

Other Information: The list of supported projects should be optimized for both desktop and
mobile devices.

Business Rule The system must correctly identify and display only the projects
supported by the user.

Assumptions: The user has the necessary permissions to view the list of their supported
projects.

The system has the capability to accurately retrieve and display the list of

233 | Page
supported projects.

2.8.4.2 Search project supported

UC ID and Name: UC - 99 Search project supported

Created By: VietHQ Created Date: 24/05/2024

Primary Actor: User Secondary Actor: None

Trigger: The user views the list of supported projects and initiates a search for
specific projects by entering search criteria.

Description: This use case describes the process by which a user searches for specific
projects within their list of supported projects.

1. The user must be logged into the system.


Preconditions: 2. The user must have supported at least one project.

Postconditions: 1. The user successfully views a filtered list of supported projects


based on the search criteria.
1. The user completes the steps outlined in the use case View List of
Normal Flow: Supported Projects to display their list of supported projects.
2. The user enters search criteria (e.g., project name, keywords) into
the search input field provided on the page.
3. The user clicks the "Tìm kiếm" (Search) button or presses Enter.
4. The system processes the search request and filters the list of
supported projects based on the search criteria.
5. The system displays the filtered list of supported projects that
match the search criteria.
6. The user reviews the filtered list of projects.

Alternative Flows: A1: No Projects Match Search Criteria

1. The user enters search criteria and initiates the search.


2. The system retrieves the list but finds that no supported projects
match the search criteria.
3. The system displays a message indicating that no projects were
found matching the search criteria.

234 | Page
EX-1: System Unavailable
Exceptions:
1. If the system is down or unavailable, the user is informed of the
issue and asked to try again later.

Priority: Medium

Frequency of Use: Medium

Other Information: The search functionality should be optimized for both desktop and mobile
devices.

The system should handle search queries efficiently to ensure a quick


response.

Business Rule The search functionality should accurately filter and display projects
based on the entered criteria.

The system should handle and display errors clearly if the search cannot
be performed.

Assumptions: The system has the capability to process search queries and display
filtered results.

3. Functional Requirements
3.1 Common
3.1.1 Header
This section details the common header component used across all screens.

235 | Page
Logo: Clicking the Seedup logo navigates users back to the homepage.
Navigation Items:

● Trang chủ: Clicking this navigates to the home page.


● Dự án: Hovering over this reveals a category dropdown; selecting a category redirects
to the corresponding project list screen.
● Tìm hiểu thêm: Hovering over this displays a dropdown with options such as Policy,
Terms, Legal, FAQs, and About Us.

Search Bar: Enables users to perform quick searches.


Authentication:

● Login/Register: Provides options for users to log in or register if not already logged
in.

Language Selection: Clicking the flag icon presents two flags (Vietnam and England);
selecting a flag changes the site language accordingly.
User Menu: Once logged in, the username is displayed, and clicking on it reveals the user
menu.

3.1.2 Footer

Navigation Items:

● Trang chủ: Clicking this navigates to the home page.


● Dự án: Navigates to project list page.
● Về chúng tôi: Navigates to About Us.

236 | Page
● Hướng dẫn sử dụng: Navigates to User Guide.
● Điều khoản: Navigates to Terms.
● Chính sách: Navigates to Policy.
● Thông tin pháp lý: Navigates to Legal Information.

3.1.3 Sidebar

Navigation Items:

● Bảng điều khiển: Clicking this navigates to the dashboard.


● Quản lý Hợp Đồng: Clicking this navigates to the manage contract.
● Quản lý Nhân Viên: Clicking this navigates to the manage employee.
● Quản lý Chiến Dịch: Clicking this navigates to the manage campaign.
● Quản lý Quảng Cáo: Clicking this navigates to the manage marketing.

237 | Page
3.1.4 Popup confirm

Button:

● Xác nhận: Confirm department deletion.


● Hủy: Cancel department deletion.

Text:

● Xác nhận xóa: Modal title.

238 | Page
3.2 Public View
3.2.1 Home

239 | Page
Banner Slide:
The main part of the page with a large banner image, which can be a slideshow.
A prominent "Start Project" button to attract users to start interacting.
Tại SeedUp:

240 | Page
This section can be an introduction to SeedUp with metrics such as number of projects,
amount raised, and investment amount.

Các Dự Án Nổi Bật:


Displays typical projects with thumbnails and brief descriptions.
There is a button to see more featured projects.

Quick Support Icon:


A row of icons with support information and benefits of the platform, helping users better
understand the features and services.

Các Dự Án Mới Nhất:


A list of recently updated projects with images and basic information.
Button to see more new projects.

Được Tin Tưởng Bởi Các Đối Tác:


Displays icons of partners that have cooperated, creating trust for users.

Những Nhà Đổi Mới Tiên Phong:


Shows individuals or organizations that are pioneers in innovation, with detailed information.

241 | Page
3.2.2 View system information
3.2.2.1 Policy

242 | Page
3.2.2.2 Terms

243 | Page
3.2.2.3 FAQ

244 | Page
3.2.2.4 Legal

245 | Page
3.2.2.5 About us

246 | Page
3.2.3 List project public

Có 99 Dự Án Đang Kêu Gọi Vốn:

● This section indicates the total number of projects currently seeking funding,
highlighting the platform's active and dynamic nature.

Search and Filter Bar:

● Includes a text input field to enter the project name, dropdown menus to select fields
and categories, and a search button to filter and find specific projects easily.

Project Listings:

● Displays a grid of project cards, each containing a thumbnail and basic project
information. This layout allows users to browse through multiple projects efficiently.

247 | Page
Pagination:

● Located at the bottom, this section allows users to navigate through different pages of
project listings, showing options for page numbers and the ability to move forward or
backward through the results.

Project Count and Display Options:

● Displays the total number of projects, options to adjust the number of projects shown
per page, and tools for navigating the project list. This feature enhances user control
over how they view and interact with the project data.

3.2.4 Project public detail

Thumbnail and Campaign Information:

● Displays a large thumbnail image on the left, providing a visual representation of the
project.

248 | Page
● On the right, there is a section titled "TIÊU ĐỀ CHIẾN DỊCH" with campaign details
and a prominent "Ủng hộ ngay" (Support Now) button, encouraging users to take
action.

Navigation Tabs:

● A horizontal navigation bar with tabs labeled "Nội Dung," "Chiến Dịch," "Lịch Sử Dự
Án," "Cập Nhật," "Phần Quà," and "Bình Luận," allowing users to explore different
aspects of the project in detail.

User and Reward Information:

● On the right sidebar, there is a box with user information labeled "Tên người dùng"
and a section titled "Phần thưởng," describing potential rewards for supporting the
project.
● Another "Ủng hộ ngay" button is available here to facilitate user engagement.

249 | Page
3.2.5 List campaign public

Thumbnail and Campaign Information:

● Displays a large thumbnail image on the left to visually represent the project.
● On the right, there is a section titled "TIÊU ĐỀ CHIẾN DỊCH," containing campaign
details and a "Ủng hộ ngay" (Support Now) button to encourage user engagement.

Navigation Tabs:

● A horizontal navigation bar with tabs such as "Nội Dung," "Chiến Dịch," "Lịch Sử Dự
Án," "Cập Nhật," "Phần Quà," and "Bình Luận," allowing users to explore different
sections related to the project.

DANH SÁCH CHIẾN DỊCH:

250 | Page
● This section lists the campaigns associated with the project, titled "DANH SÁCH
CHIẾN DỊCH 1," "DANH SÁCH CHIẾN DỊCH 2," and "DANH SÁCH CHIẾN
DỊCH 3," providing an overview of various campaign efforts.

User and Reward Information:

● On the right sidebar, there is a box labeled "Tên người dùng" displaying user
information and another section titled "Phần thưởng" describing rewards available for
supporting the project.
● A "Ủng hộ ngay" button is present for easy user access to support options.

3.2.6 Campaign public detail

251 | Page
Thumbnail and Campaign Information:

● Displays a large thumbnail image on the left, representing the project visually.
● On the right, there is a section titled "TIÊU ĐỀ CHIẾN DỊCH" with details about the
campaign and a "Ủng hộ ngay" (Support Now) button to encourage contributions.

Navigation Tabs:

● A set of horizontal tabs allowing users to navigate through different sections, such as
"Nội Dung," "Danh Sách Chiến Dịch," "Chiến Dịch," "Cập Nhật," "Phần Quà," and
"Bình Luận," providing comprehensive project information.

CHIẾN DỊCH:

● This section highlights the campaign title with the main content area dedicated to
describing the campaign details, helping users understand the campaign's purpose and
goals.

User and Reward Information:

● On the right sidebar, there is information labeled "Tên người dùng," displaying user
details, and "Phần thưởng," explaining the rewards available for supporting the
project.
● The sidebar includes another "Ủng hộ ngay" button for easy access to support options.

252 | Page
3.2.7 List reward of campaign

1. Thumbnail and Campaign Information:


○ Displays a large thumbnail image on the left to visually represent the project.
○ On the right, there is a section titled "TIÊU ĐỀ CHIẾN DỊCH" with details
about the campaign and a "Ủng hộ ngay" (Support Now) button to encourage
user engagement.
2. Navigation Tabs:
○ A horizontal tab bar allowing users to switch between sections such as "Nội
Dung," "Danh Sách Chiến Dịch," "Chiến Dịch," "Cập Nhật," "Phần Quà," and
"Bình Luận," providing comprehensive information about the project.
3. DANH SÁCH PHẦN QUÀ:
○ This section lists the rewards associated with the project, with entries labeled
"PHẦN QUÀ 1," "PHẦN QUÀ 2," and "PHẦN QUÀ 3," providing an
overview of what supporters can receive for their contributions.

253 | Page
3.2.8 List project process public

Thumbnail and Campaign Information:

● Displays a large thumbnail image on the left, visually representing the project.
● On the right, there is a section titled "TIÊU ĐỀ CHIẾN DỊCH" with campaign details
and a "Ủng hộ ngay" (Support Now) button, encouraging user participation.

Navigation Tabs:

● A set of horizontal tabs allowing users to navigate through sections such as "Nội
Dung," "Danh Sách Chiến Dịch," "Chiến Dịch," "Cập Nhật," "Phần Quà," and "Bình
Luận," providing access to detailed project information.

CẬP NHẬT:

254 | Page
● This section, titled "BÁO CÁO TIẾN ĐỘ DỰ ÁN," provides an update on the
project's progress, including a date, "01 - 07 - 2024," to indicate the timing of the
report.

3.2.8 List comment of project

Thumbnail and Campaign Information:

● Displays a large thumbnail image on the left to visually represent the project.
● On the right, there is a section titled "TIÊU ĐỀ CHIẾN DỊCH" with details about the
campaign and a "Ủng hộ ngay" (Support Now) button to encourage user engagement.

Navigation Tabs:

● A horizontal tab bar allows users to switch between sections such as "Nội Dung,"
"Danh Sách Chiến Dịch," "Chiến Dịch," "Cập Nhật," "Phần Quà," and "Bình Luận,"
providing comprehensive information about the project.

BÌNH LUẬN:

255 | Page
● This section is dedicated to user comments, with a text box for "Nhập Bình Luận"
where users can input their comments, and a "Gửi" (Send) button to submit their
feedback.
● Below the input area, there is a list of comments such as "Bình Luận 1," "Bình Luận
2," and "Bình Luận 3," showcasing user interactions and discussions about the project.

3.2.9 User detail

BACKGROUND:

● A large background section provides a visual setting or theme for the user's profile
area. It is designed to add personality and aesthetic appeal to the page.

Avatar:

● Positioned centrally over the background, the avatar represents the user's profile
picture, offering a quick visual identifier for the user.

THÔNG TIN NGƯỜI DÙNG:

256 | Page
● This section contains the user's information, potentially including their name, bio,
contact details, or other relevant personal data. This area is designed to give a
comprehensive view of the user’s profile.

3.3 Authentication
3.3.1 Register
This is form register

Name: input field, use to input user name, required


Email: input field, use to input user mail, required
Password: password field, use to input user password, required, display as “*”
Agree term: checkbox, check to agree at term and policy
Quay lại: button, click on to navigate back to previous page
Đăng ký: button, click on to execute register function

3.3.2 Login
This is form login

257 | Page
Email: input field, use to input user email
Password: password field, use to input user password, required, display as “*”
Quên mật khẩu: button, click on to go to Forgot password page
Đăng nhập: button, click on to execute login function

3.3.3 Forgot password


This is form forgot password

Email: input field, use to input user mail, required


Quay lại: button, click on to navigate back to previous page
Xác nhận: button, click on to execute forgot password function

258 | Page
3.3.4 Verify code
This is form verify code

OTP: input field, use to input otp sent to user mail


Quay lại: button, click on to navigate back to previous page
Xác nhận: button, click on to execute verify code function

3.3.3 Logout
This is button logout in user menu

259 | Page
Avatar button: Button, click on display list of button

Hồ sơ cá nhân: Button, click on to go to Profile page

Đổi mật khẩu: Button, click on to go to Change password page

Đăng xuất: Button, click on to logout

260 | Page
3.4 Update profile information
3.4.1 Profile detail

BACKGROUND:

● A large background section that sets the visual theme or context for the user profile
page, enhancing its aesthetic appeal.

Avatar:

● The user's profile picture is centrally positioned over the background, serving as a
visual identifier for the user's profile.

Tên người dùng:

● Displays the user's name with an option to "Sửa" (Edit), allowing the user to update
their personal information easily.

Số dự án, Dự án đã đầu tư, Số tiền đã ủng hộ:

261 | Page
● These sections provide key statistics about the user, including the number of projects
they are involved in, projects they have invested in, and the amount of money they
have supported.

Khám phá dự án của chúng tôi:

● A button encouraging users to explore the projects on the platform, inviting further
engagement and exploration.

3.4.2 Update profile

BACKGROUND:

● A large background area that provides a visual theme for the user profile page,
enhancing the overall aesthetic.

Avatar:

● The user's profile picture is centrally positioned over the background. There is a
button labeled "Thay đổi avatar" (Change avatar), allowing the user to update their
profile picture easily.

262 | Page
Thay đổi background:

● A button located at the top-right of the background section, enabling users to change
the background image to personalize their profile.

Tên người dùng:

● Displays the user's name, offering a clear identifier for the profile.

Thông tin người dùng:

● A section dedicated to displaying the user's information, including details like contact
info, bio, or other relevant data.

Thay đổi thông tin:

● An option for users to update their personal information, ensuring their profile stays
current.

Định danh ngay:

● A call-to-action button that could be related to verifying the user's identity or


accessing specific features quickly.

3.4.3 Change password


This is form change password

Old Password: password field, use to input user password, required, display as “*

263 | Page
New Password: new password field, use to input user password, required, display as “*”
Confirm New Password: confirm password field same new password, use to input user
password, required, display as “*”

3.4.4 Identity verification

Mặt trước: file selector, click on show a file selector, allow image file
Mặt sau: file selector, click on show a file selector, allow image file
Xác nhận: button, click on execute verify identity CCCD

264 | Page
Portrait Image: file selector, get camera image, use to identify user face
Xác nhận: button, click on take image from camera, execute face identify

3.5 Project information


3.5.1 List project information
This is list project

Search project name: input


Create project: button
Total record: text
Page: button

265 | Page
Row per page: dropdown
3.5.2 Create/Update project information

THÊM MỚI THÔNG TIN DỰ ÁN:

● A form for adding new project information, allowing users to input details about a
new project.

Nhập tên dự án:

● A text field for entering the project name, ensuring the project is correctly identified.

Tổng quan dự án:

● A text area for providing a general overview of the project, offering a summary of its
purpose and scope.

Link video dự án:

● A text field for adding a link to a project video, enabling users to include visual
content related to the project.

Lĩnh vực:

266 | Page
● A dropdown menu for selecting the project's field or industry, categorizing the project
accordingly.

Chọn chủ dự án:

● A dropdown menu for choosing the project owner, specifying who is responsible for
the project.

IMPORT FILE DỰ ÁN:

● A section dedicated to uploading project files, allowing users to attach necessary


documents.

Tải lên file:

● A button for uploading files, making it easy to add project-related documents.

Tệp đã tải lên (4/5) Xóa tất cả:

● Displays the number of files uploaded out of the allowed limit and provides an option
to delete all uploaded files.

Uploaded Files:

● A list of uploaded files with their names and formats, each accompanied by a delete
icon to remove specific files. An error message may appear next to files that failed
validation.

Quay lại, Hủy, Lưu tạm, Xác nhận:

● Buttons for various actions:


○ "Quay lại" (Back) allows returning to the previous page.
○ "Hủy" (Cancel) aborts the current operation.
○ "Lưu tạm" (Save temporarily) saves the information as a draft.
○ "Xác nhận" (Confirm) finalizes the submission of the project information.

3.5.3 Project information detail

267 | Page
THÔNG TIN DỰ ÁN:

● A section displaying detailed information about a specific project.

Tên dự án:

● Shows the name of the project, identifying what the project is called.

Tổng quan dự án:

● Provides a brief overview or summary of the project, outlining its main objectives and
purpose.

Video dự án:

● A button or placeholder for a project-related video, allowing users to view multimedia


content related to the project.

Danh mục dự án:

● Displays the category or classification of the project, indicating the type of project it
is.

Trạng thái dự án:

268 | Page
● Indicates the current status of the project, providing information about its progress or
phase.

Chủ dự án:

● Shows the owner or person responsible for the project, indicating who is in charge.

Tệp hiện có:

● Lists the files available for the project, providing access to documents or resources
related to the project.

Quay lại:

● A button allowing users to return to the previous page or section, facilitating easy
navigation.

3.6 Manage User

Search user name: Input field, use to input username


Tìm kiếm: Button, click on execute search with data in “search user name”
User list: List, display list of user contain following information: Name, Email, Status,
Identity status, Action Lock/Unlock user
Lock/Unlock: Button, click on to lock or unlock user
[Amount]/trang: Dropdown list, click on to show list of Amount of user in a page
Page number: Button, click on to show page of user list

269 | Page
3.7 Manage Employee

QUẢN LÝ NHÂN VIÊN:

● A section for managing employees, providing tools to view and organize employee
information.

Search Bar (Nhập tên nhân viên):

● A text input field for entering an employee's name, allowing users to search for
specific employees quickly.

Tìm kiếm:

● A button to execute the search based on the name entered in the search bar.

Thêm nhân viên:

● A button to add a new employee, enabling users to expand the employee list by
including additional staff members.

Employee Table:

● A table displaying the list of employees with columns for:


○ Tên nhân viên (Employee Name): The name of the employee.
○ Email: The employee's email address.
○ Chức vụ (Position): The position or role of the employee within the
organization.

270 | Page
○ Trạng thái (Status): The activation status of the employee, such as "Đã kích
hoạt" (Activated).
○ Tình trạng (Condition): The current condition or activity level of the
employee, such as "Hoạt động" (Active).
○ Khóa / Mở khóa (Lock/Unlock): An icon indicating whether the employee's
account is locked or unlocked.

Pagination:

● Located at the bottom of the table, this section allows users to navigate through
different pages of employee listings, showing options for page numbers and the ability
to move forward or backward through the results.

Tổng số, Hiển thị:

● Displays the total number of employees and options to adjust the number of
employees shown per page, enhancing user control over the display of information.

3.8 Manage Department


3.8.1 List department

Search department name: Input field, use to input department name


Tìm kiếm: Button, click on execute search with data in “search department name”
Department list: List, display list of department contain following information: Name,
Description, Number of Employee, Manager name, Category and Action
Thêm phòng ban: Button, click on to go to add new Department
Action delete: Button, click on to delete Department
Action edit: Button, click on to edit Department information

271 | Page
[Amount]/trang: Dropdown list, click on to show list of Amount of department in a page
Page number: Button, click on to show page of department list

3.8.2 Create/Update department

Tên phòng ban: Input field, use to input department name


Mô tả phòng ban: Input field, use to input department description
Quản lý: Drop Down list, clip on to display list of manager name, use to select department’s
manager
Nhân viên: Drop Down list, clip on to display list of employee name, use select department’s
employee, allow multiple choose
Lĩnh vực: Drop Down list, clip on to display list of category name, use select department’s
category, allow multiple choose
Hủy: button, click on to cancel function and redirect back to previous page
Thêm mới: button, click on to execute function and add new Department

272 | Page
3.8.3 Department detail

Tên phòng ban: Text field, use to display department name


Mô tả phòng ban: Text field, use to display department description
Quản lý: Text field, use to display department description
department’s manager
Nhân viên: Text field, use to display employee
Lĩnh vực: Text field, use to display category
Quay lại: button, click on to cancel function and redirect back to previous page
Cập nhật: button, click on to redirect to update department function

273 | Page
3.9 Manage Request

Search Request name: Input field, use to input request name


Tìm kiếm: Button, click on execute search with data in “search request name”
Request list: List, display list of request contain following information: Name, Type, Status
and Action
Action approve: Button, click on to approve request
Action denied: Button, click on to denied request
[Amount]/trang: Dropdown list, click on to show list of amount of request in a page
Page number: Button, click on to show page of request list

3.10 Manage Project


3.10.1 List Project

QUẢN LÝ DỰ ÁN:

274 | Page
● A section for managing projects, providing tools to view and organize project
information.

Search Bar (Nhập tên dự án):

● A text input field for entering a project's name, allowing users to search for specific
projects quickly.

Tìm kiếm:

● A button to execute the search based on the project name entered in the search bar.

Project Table:

● A table displaying the list of projects with columns for:


○ Tên dự án (Project Name): The name of the project.
○ Data dự án (Project Data): Information or data related to the project.
○ Phòng ban (Department): The department associated with the project.
○ Chủ dự án (Project Owner): The person responsible for the project.
○ Nhân viên giới thiệu (Introducing Staff): The staff member who introduced
the project.
○ Danh mục dự án (Project Category): The category or classification of the
project, such as "Audio và camera."

Pagination:

● Located at the bottom of the table, this section allows users to navigate through
different pages of project listings, showing options for page numbers and the ability to
move forward or backward through the results.

Tổng số, Hiển thị:

● Displays the total number of projects and options to adjust the number of projects
shown per page, enhancing user control over the display of information.

275 | Page
3.10.2 Project Detail

CHI TIẾT DỰ ÁN:

● A section dedicated to displaying detailed information about a specific project.

Tên dự án:

● Shows the name of the project, identifying what the project is called.

Tổng quan dự án:

● Provides a brief overview or summary of the project, outlining its main objectives and
purpose.

Nội dung dự án:

● Details the content or specifics of the project, providing in-depth information about
what the project entails.

Trạng thái dự án:

● Indicates the current status of the project, providing information about its progress or
phase.

Nội dung:

● A button or placeholder for accessing additional content related to the project,


allowing users to view more detailed information or multimedia content.

276 | Page
Quay lại:

● A button allowing users to return to the previous page or section, facilitating easy
navigation.

3.10.3 Update Project Content

CẬP NHẬT THÔNG TIN DỰ ÁN:

● A section for updating project information, allowing users to modify existing project
details.

Tên dự án:

● A text input field for entering the project name, ensuring the project is correctly
identified.

Tổng quan dự án:

● A text area for providing or updating a general overview of the project, outlining its
main objectives and purpose.

Nội dung dự án:

● A text area for detailing or revising the content or specifics of the project, providing
in-depth information about what the project entails.

277 | Page
Trạng thái dự án:

● Displays the current status of the project, such as "Bản nháp" (Draft), indicating its
progress or phase.

Quay lại:

● A button allowing users to return to the previous page or section, facilitating easy
navigation.

Hủy, Xác nhận:

● Buttons for various actions:


○ "Hủy" (Cancel) allows the user to abort the update process without saving
changes.
○ "Xác nhận" (Confirm) saves the updates made to the project information.

3.11 Manage Project Employee


3.11.1 List Project Employee

Search Employee name: Input field, use to input employee name


Tìm kiếm: Button, click on execute search with data in “search employee name”
Request list: List, display list of employee contain following information: Name, email, Role
and Action
Action edit: Button, click on to go to Update Employee Permission
[Amount]/trang: Dropdown list, click on to show list of amount of employee in a page
Page number: Button, click on to show a page of employee list

278 | Page
3.11.2 Update Employee Permission

Cập nhật quyền: Form, allow manager to assign permission to project employee
Quản lý dự án,...: Check box, check to choose permission for employee
Quay lại: button, click on to cancel function and redirect back to previous page
Cập nhật: button, click on to apply selected permission to employee

3.12 Manage Contract


3.12.1 List Contract

279 | Page
Search contract name: Input field, use to input contract name
Tìm kiếm: Button, click on execute search with data in “search contract name”
Contract list: List, display list of contract contain following information: Name, Description,
File and Action
Thêm hợp đồng: Button, click on to add new contract
Action delete: Button, click on to delete contract
Action edit: Button, click on to edit contract
[Amount]/trang: Dropdown list, click on to show list of Amount of contract in a page
Page number: Button, click on to show page of contract list

3.12.2 Create/Update Contract

Tên hợp đồng: Input field, use to input contract name


Tổng quan hợp đồng: Input field, use to input contract description
Tải lên file: Button, click on to display file selector, use to select contract’s file

Hủy: button, click on to cancel function and redirect back to previous page
Thêm mới: button, click on to execute function and add new Contract

280 | Page
3.13 Manage Campaign
3.13.1 List campaign

DANH SÁCH CHIẾN DỊCH CỦA DỰ ÁN:

● A section displaying a list of campaigns associated with a project, providing an


overview of their details.

Search Bar (Nhập tên chiến dịch):

● A text input field for entering a campaign name, allowing users to search for specific
campaigns quickly.

Tìm kiếm:

● A button to execute the search based on the campaign name entered in the search bar.

Tạo chiến dịch:

● A button to create a new campaign, enabling users to add additional campaigns to the
project list.

Campaign Table:

● A table displaying the list of campaigns with columns for:


○ Tên chiến dịch (Campaign Name): The name of the campaign.
○ Ngày bắt đầu (Start Date): The date the campaign begins.
○ Ngày kết thúc (End Date): The date the campaign ends.
○ Mục tiêu chiến dịch (Campaign Goal): The financial goal of the campaign.
○ Đã đạt được (Achieved): The amount of money raised so far.

281 | Page
○ Trạng thái (Status): The current status of the campaign, such as "Công khai"
(Public).
○ Hành động (Action): Icons for editing the campaign details.

Pagination:

● Located at the bottom of the table, this section allows users to navigate through
different pages of campaign listings, showing options for page numbers and the ability
to move forward or backward through the results.

Tổng số, Hiển thị:

● Displays the total number of campaigns and options to adjust the number of
campaigns shown per page, enhancing user control over the display of information.

3.13.2 Create campaign

282 | Page
3.13.3 Update campaign

CẬP NHẬT CHIẾN DỊCH:

● A section for updating the details of an existing campaign, allowing users to modify
and manage campaign information.

Tên chiến dịch:

● A text input field for updating the campaign name, ensuring it is correctly identified.

Tóm tắt chiến dịch:

● A text area for revising the campaign summary, outlining its main objectives and key
points.

Miêu tả chiến dịch:

● A text area for editing the detailed description of the campaign, providing more
comprehensive information about what the campaign entails.

Mục tiêu chiến dịch:

● A text input field for adjusting the financial goal of the campaign, indicating the
amount of money the campaign aims to raise.

283 | Page
Ngày bắt đầu:

● A date picker field for selecting or updating the start date of the campaign, marking
when the campaign will commence.

Ngày kết thúc:

● A date picker field for selecting or updating the end date of the campaign, marking
when the campaign will conclude.

Hủy, Tiếp:

● Buttons for various actions:


○ "Hủy" (Cancel) allows the user to abort the update process without saving
changes.
○ "Tiếp" (Next) proceeds to the next step in the campaign management process,
possibly the "PHẦN THƯỞNG" tab.

CẬP NHẬT CHIẾN DỊCH:

● A section for updating the details of rewards associated with a campaign, allowing
users to manage reward information.

PHẦN THƯỞNG:

284 | Page
● The tab dedicated to managing campaign rewards, providing tools to view, edit, and
organize reward details.

Reward Table:

● A table displaying the list of rewards with columns for:


○ Tên phần thưởng (Reward Name): The name of the reward.
○ Miêu tả (Description): A brief description of the reward.
○ Ngày giao hàng (Delivery Date): The date when the reward is expected to be
delivered.
○ Số lượng phần thưởng (Quantity of Rewards): The number of rewards
available.
○ Ủng hộ tối thiểu (Minimum Support): The minimum amount of support
required to receive the reward.
○ Số người ủng hộ (Number of Supporters): The number of supporters who
have chosen this reward.
○ Hành động (Action): Icons for editing or deleting the reward details.

Thêm phần thưởng:

● A button to add a new reward, enabling users to expand the reward list by including
additional options.

Pagination:

● Located at the bottom of the table, this section allows users to navigate through
different pages of reward listings, showing options for page numbers and the ability to
move forward or backward through the results.

Tổng số, Hiển thị:

● Displays the total number of rewards and options to adjust the number of rewards
shown per page, enhancing user control over the display of information.

Quay lại, Cập nhật:

● Buttons for various actions:


○ "Quay lại" (Back) allows users to return to the previous page or section.
○ "Cập nhật" (Update) saves the changes made to the reward details.

285 | Page
3.13.4 Campaign detail

CHI TIẾT CHIẾN DỊCH:

● A section providing detailed information about a specific campaign, allowing users to


view key campaign metrics and descriptions.

TÊN CHIẾN DỊCH:

● Displays the name of the campaign, identifying the specific initiative.

MỤC TIÊU CHIẾN DỊCH:

● Indicates the financial goal of the campaign, showing how much the campaign aims to
raise.

ĐÃ ĐẠT ĐƯỢC:

● Displays the amount of money raised so far, providing insight into the campaign's
progress toward its goal.

NGÀY BẮT ĐẦU:

● Shows the start date of the campaign, indicating when the campaign commenced.

NGÀY KẾT THÚC:

● Displays the end date of the campaign, indicating when the campaign will conclude.

286 | Page
TRẠNG THÁI:

● Indicates the current status of the campaign, such as "Công khai" (Public), providing
information on the visibility or accessibility of the campaign.

MIÊU TẢ CHIẾN DỊCH:

● Provides a brief description of the campaign, offering an overview of its purpose and
activities.

PHẦN THƯỞNG:

● Although not explicitly detailed here, this section may refer to the rewards associated
with the campaign, which are likely detailed elsewhere.

Quay lại, Tiếp:

● Buttons for navigation:


○ "Quay lại" (Back) allows users to return to the previous page or section.
○ "Tiếp" (Next) proceeds to the next step or tab, possibly related to managing
rewards or further details.

3.14 Manage Project Progress


3.14.1 List Project Progress

Search progress name: Input field, use to input progress name


Tìm kiếm: Button, click on execute search with data in “search progress name”
Progress list: List, display list of progress contain following information: Name, Visible to,
Status and Action
Thêm mới: Button, click on to add new progress
Action delete: Button, click on to delete progress

287 | Page
Action edit: Button, click on to edit progress
[Amount]/trang: Dropdown list, click on to show list of Amount of progress in a page
Page number: Button, click on to show page of progress list

3.14.2 Create Project Progress

Tên tiến trình Input field, use to input progress name


Tiến độ thấy được: Dropdown list, click on to show list of choice, allow to choose who
project progress visible to
Mô tả tiến độ: Input field, use to input progress description
Quay lại: button, click on to cancel function and redirect back to previous page
Xác nhận: button, click on to execute function and add new Progress

288 | Page
3.15 Manage Project Marketing
3.15.1 List Project Marketing

Search marketing name: Input field, use to input marketing name


Tìm kiếm: Button, click on execute search with data in “search marketing name”
Marketing list: List, display list of marketing contain following information: Name, Price,
File, Status and Action
Thêm mới: Button, click on to add new marketing
Action edit: Button, click on to edit marketing
[Amount]/trang: Dropdown list, click on to show list of Amount of marketing in a page
Page number: Button, click on to show page of marketing list

289 | Page
3.15.2 Create Project Marketing

Tên quảng cáo Input field, use to input marketing name


Mô tả quảng cáo: Input field, use to input marketing description
Tải file lên: button, click on to open file selector, use to choose marketing file
Chi phí quảng cáo: Input field, use to input marketing price
Quay lại: button, click on to cancel function and redirect back to previous page
Thêm mới: button, click on to execute function and add new Marketing

290 | Page
3.15.3 Update Project Marketing

Cập nhật quảng cáo: Marketing update information section


Tên quảng cáo Input field, use to input marketing name
Mô tả quảng cáo: Input field, use to input marketing description
Tải file lên: button, click on to open file selector, use to choose marketing file
Chi phí quảng cáo: Input field, use to input marketing price
Quay lại: button, click on to cancel function and redirect back to previous page
Cập nhật: button, click on to execute function and update Marketing information

291 | Page
Tiến độ quảng cáo: Marketing update progress section
Progress list: List, display list of marketing progress contain following information: Name,
Description, Price, Start date, End date and Action
Action delete: Button, click on to delete progress
Action edit: Button, click on to edit progress
Quay lại: button, click on to cancel function and redirect back to previous page
Thêm mới: button, click on to execute function and add new Marketing progress
Cập nhật: button, click on to execute function and update Marketing progress progress

292 | Page
3.16 Manage Payment
3.16.1 Create transaction

Ủng hộ tối thiểu: Text field, use to display minimum amount of money
Tên phần quà: Text field, use to display name of reward
Tổng quan phần quà: Text field, use to display description of reward
Ngày giao hàng: Text field, use to display date of delivery
Số lượng sản phẩm: Text field, use to display number of product
Số tiền ủng hộ: Input field, use to input donation amount
Địa chỉ giao hàng: Input field, use to input delivery address
Thanh toán: button, click on to redirect to transaction detail

293 | Page
3.16.2 List transaction

Search transaction code: Input field, use to input transaction code


Tìm kiếm: Button, click on execute search with data in “search transaction code”
Transaction list: List, display list of transaction contain following information: Code,
Project, Reward, Status and Action
Action view: Button, click on to view detail transaction
[Amount]/trang: Dropdown list, click on to show list of Amount of transaction in a page
Page number: Button, click on to show page of transaction list

3.16.2 Transaction detail/ Payment

294 | Page
Mã giao dịch: Text field, use to display transaction code
Mã chuyển khoản: Text field, use to display transfer code
Người ủng hộ: Text field, use to display backer name
Ngày giao hàng: Text field, use to display date of delivery
Chi tiết sản phẩm: Text field, use to display detail of reward
Số tiền ủng hộ: Input field, use to input donation amount
Địa chỉ giao hàng: Input field, use to input delivery address
Phương thức thanh toán: Selector, use to choose payment methods
QR Code: Image, use to display qr code
Quay lại: button, click on to cancel function and redirect back to previous page

3.17 Manage Report manh doing


3.17.1 List Report

DANH SÁCH BÁO CÁO ĐÃ TẠO:

● A section displaying a list of reports that have been created, providing an overview of
report details and status.

Search Bar (Nhập tên báo cáo):

● A text input field for entering the report name, allowing users to search for specific
reports quickly.

Tìm kiếm:

● A button to execute the search based on the report name entered in the search bar.

Tạo báo cáo:

295 | Page
● A button to create a new report, enabling users to add additional reports to the list.

Report Table:

● A table displaying the list of reports with columns for:


○ Tên báo cáo (Report Name): The name of the report.
○ Nội dung báo cáo (Report Content): A summary or description of the
report's content.
○ Nội dung phản hồi (Feedback Content): The feedback or response to the
report, if applicable.
○ Người xử lý (Handler): The person responsible for handling or reviewing the
report.
○ Trạng thái (Status): The current status of the report, such as "Từ chối"
(Rejected).

Pagination:

● Located at the bottom of the table, this section allows users to navigate through
different pages of report listings, showing options for page numbers and the ability to
move forward or backward through the results.

Tổng số, Hiển thị:

● Displays the total number of reports and options to adjust the number of reports
shown per page, enhancing user control over the display of information.

3.17.2 Create report

296 | Page
TẠO BÁO CÁO:

● A section dedicated to creating a new report, allowing users to input necessary details
to generate a report.

Tiêu đề báo cáo:

● A text input field for entering the report title, ensuring the report is correctly
identified.

Nội dung báo cáo:

● A text area for providing the content of the report, allowing users to detail the
information or issues being reported.

Quay lại:

● A button that allows users to return to the previous page or section, facilitating easy
navigation.

Tạo báo cáo:

● A button to submit the report details and create the report, finalizing the input process
and saving the information.

3.17.3 Chat

297 | Page
Username: Text, display name of user
Active: Text, display status of user
Message: Text, display message
Nhập tin nhắn: input field, use to enter message
Send button: button, click on to send input of “Nhập tin nhắn”

298 | Page
3.18 Notification
3.18.1 Dropdown notification

Bell icon: Icon, Click on to display list of notification


Thông báo: Text, display notification, click on to go to the notification

3.18.2 List notification

Tất cả: All notification section


Chưa đọc: Unread notification section
Đánh dấu tất cả đã đọc: Button, click on to mark all notification as read
Thông báo: Text, Contain the content of notification

299 | Page
3.19 Static
3.19.1 System static

Number of user: Contain number of user of the system


Number of project: Contain number of project of the system
Number of department: Contain number of department of the system
Graph: Display graph of system statistic

3.18.2 Project static

Number of campaign: Contain number of campaign of the project

300 | Page
Donation amount: Contain number of donation of the project
Marketing amount: Contain number of marketing of the system
Graph: Display graph of project statistic

4. Non-Functional Requirements
4.1 External Interfaces
4.1.1 User Interfaces
● UI-01: The website shall be user-friendly and suitable for diverse users, ensuring ease
of navigation and accessibility for all.
● UI-02: All error messages shall be clear, concise, and provide sufficient information
to guide users in resolving issues.
● UI-03: The user interface shall support multiple languages, including Vietnamese, to
cater to a global audience and enhance user experience.
4.1.2 Communication interfaces
● CI-01: The project shall support popular web browsers, including Google Chrome,
Mozilla Firefox, and Microsoft Edge, ensuring cross-browser compatibility.
● CI-02: All users shall interact with the Seedup system over the Internet using a web
browser on either mobile devices or PCs, facilitating remote access and convenience.

4.2 Quality Attributes


4.2.1 Usability
● US-01: Users shall quickly become accustomed to and productive in core operations,
minimizing the learning curve through intuitive design and user-friendly interfaces.
● US-02: Error and warning messages shall be straightforward, easily understandable,
and actionable to enhance user experience and minimize confusion.
4.2.2 Reliability
● RE-01: The system shall utilize robust exception handling mechanisms to accurately
capture and manage errors, ensuring system stability and data integrity.
● RE-02: Access rights shall be strictly enforced, allowing only authorized users, such
as project members, to manage specific projects, thereby maintaining system security
and data privacy.
4.2.3 Performance
● PE-01: The system performance must meet acceptable response times, leveraging the
deployment technology, to ensure smooth and efficient operations under typical
technical infrastructure environments.
● PE-02: The system shall maintain optimal performance across supported web
browsers, including Google Chrome, Mozilla Firefox, and Microsoft Edge, providing
a seamless user experience.
4.2.4 Security
● SE-01: The system shall display the appropriate screen based on the user's role,
ensuring that users only access information and functionalities pertinent to their
permissions.

301 | Page
● SE-02: Users shall be required to provide valid credentials, such as a username and
password, to access the system, ensuring that only authorized individuals can use the
system and access sensitive data.
4.2.4 Maintainability
● MAI-01: The source code structure shall be clearly organized and modular to
facilitate maintenance, allowing for easier updates and modifications.
● MAI-02: The source code shall strictly adhere to coding conventions to ensure
consistency, improve readability, and enhance overall maintainability, making it easier
for developers to collaborate and manage the codebase effectively.

5. Requirement Appendix
5.1 Business Rules

Business
ID Rule Definition
rule
BR-01 Invalid User can’t be authenticated to login the system if below cases:
Logging In - His/her logging-in details are incorrect
- His/her account has not been verified
- His/her account has been banned
BR-02 Secure Passwords entered during the login process must be obscured or
Password hidden from view to enhance security and prevent unauthorized
Input access.
BR-03 Security - The user logout process is an essential security feature to ensure
the user data and accounts are protected. It’s also a standard user
experience feature to provide users with the ability to log out from
their accounts.
- To ensure security after logging out, the following requirements
must be met:
● Delete Tokens: When a user logs out, the system needs to
destroy or delete all tokens and data associated with that user. This
prevents criminals from reusing this information for unauthorized
access.
● User Reversion: Users should be redirected to the main
page or login page after successful logout to prevent further
unauthorized access.
BR-04 Password User passwords must meet the minimum complexity requirements,
Complexity which are at least 8 characters and contain uppercase letters,
lowercase letters, numbers, and special characters.
BR-05 User Users must be at least 18 years old to register for an account. They
Eligibility must provide valid email addresses and, where required, additional
identification information.

302 | Page
BR-06 Identity The entered citizen identification photo must be valid and the
match information transmitted must match the information on the citizen
identification card
BR-07 Registration Users must complete a registration form with necessary details such
Process as name, email address, and password. They must accept the
platform’s terms of service and privacy policy.
BR-08 Terms of All users must agree to the platform's terms of service and privacy
Service policy upon registration.
BR-09 Data Privacy User data must be protected according to relevant privacy laws and
regulations. Users must consent to data collection and use policies
during registration.
BR-10 Email Upon registration, users receive a verification email. Accounts must
Verification be verified through this email before gaining full access to platform
features.
BR-11 Email format The email is divided into 2 parts and separated by the @ character.
Displays an error message if the email is malformed or missing.
BR-12 Phone - The phone number must be at least 10 digits and begin with a 0.
number - Displays an error message if the phone number is malformed or
format missing.
BR-13 Valid Ensure that the date of birth is entered in the valid format
Birthdate DD/MM/YYYY and cannot be greater than the current date
BR-14 Account The platform reserves the right to suspend or terminate user
Suspension accounts for violations of terms of service, fraudulent activity, or
other breaches of platform rules.
BR-15 Eligibility Only registered users can create projects. Users must provide valid
identification and contact information.
BR-15 Project Projects must comply with the platform's guidelines, which include
Guidelines rules on prohibited content, funding goals, and reward structures.
BR-16 Project When creating a project, the person calling for capital needs to
submit accept the contract regarding the types of responsibilities that need
to be complied with according to the terms of the system, using the
online contract to sign.
BR-17 Project Projects must be categorized accurately to help backers find
Categories projects of interest. The platform provides predefined categories
(e.g., technology, arts, social causes).
BR-18 Approval All projects must be reviewed and approved by platform
Process administrators before going live. The review process includes
checking for compliance with guidelines and legal requirements.
BR-19 Project Project creators must regularly update backers on the progress of
Updates the project. Updates should include milestones achieved, any
changes to the project timeline, and delivery status of rewards.
BR-20 Comment The platform allows backers to comment on projects. Project
Moderation creators can respond to comments, and the platform moderates
discussions to prevent spam and abusive content.

303 | Page
BR-21 Refund The platform must have a clear refund policy for backers. This
Policy policy outlines the conditions under which refunds are issued and
the process for requesting refunds.
BR-22 Support Accept the commitment and the system is not responsible for
process refunding any project that has reached its goal and transferring
money to the crowdfunding party.
BR-23 Fund Funds are only disbursed to project creators if the project meets its
Disbursement funding goal by the deadline. If the goal is not met, contributions
are refunded to backers.
BR-24 Reward Project creators are responsible for delivering promised rewards to
Distribution backers within the specified timeframe. The platform monitors and
enforces reward fulfillment
BR-25 Backer Project creators must maintain open communication with backers,
Communicati providing updates on project progress and any changes in timelines
on or deliverables.
BR-26 Fee Structure The platform charges a percentage fee on successfully funded
projects. This fee structure must be clearly communicated to project
creators before project approval.
BR-27 Transaction Users can view their transaction history, including contributions
History made, projects created, and funds received.
BR-28 Notifications Users receive notifications for important account activities, such as
and Alerts login from a new device, project updates, and payment
confirmations.
BR-29 Role Each employee must have a clearly defined role within the
Definition platform, such as Administrator, Project Reviewer, Customer
Support, or Compliance Officer.
BR-30 Role-Based Employees are granted access to platform features and data based
Access on their roles. Access levels are managed through a role-based
Control access control (RBAC) system.
BR-31 Legal Employees must comply with all relevant laws and regulations
Compliance related to their roles. This includes data protection, financial
regulations, and anti-fraud measures.
BR-32 Ethical Employees must adhere to the highest ethical standards, ensuring
Standards fairness, transparency, and integrity in all their actions on the
platform.
BR-33 Comment Comments will only have 2 levels
level

5.2 Application Messages List

M M C C
# E E O O
S S N N

304 | Page
S S T T
A A E E
G G X N
E E T T

C T
O Y
D P
E E

In red, under Vui lòng nhập email của


1 MSC01 No email entered
the text box bạn!
In red, under Entered email in incorrect
2 MSC02 Email không hợp lệ!
the text box format
In red, under Vui lòng nhập mật khẩu của
3 MSC03 No password entered
the text box bạn!
Mật khẩu phải có ít nhất 8
In red, under Entered password in
4 MSC04 ký tự, bao gồm chữ hoa, chữ
the text box incorrect format
thường, số và ký tự đặc biệt!
In red, under Password and confirm Mật khẩu xác nhận không
5 MSC05
the text box password are not the same khớp
Bạn phải đồng ý với các
In red, under Not agreed to terms and
6 MSC06 Điều khoản và Chính sách
the text box conditions
bảo mật!
In red, under No confirm password Vui lòng nhập xác nhận mật
7 MSC07
the text box entered khẩu.
In red, under Vui lòng nhập tên người
8 MSC08 No name entered
the text box dùng
Toast
9 MSC09 message Create account success Tạo tài khoản thành công
success
In red, under When the phone entered in
10 MSC10 Số điện thoại không hợp lệ
the text box the wrong format
When the re-entered
In red, under password does not match the
11 MSC11 Mật khẩu không khớp nhau.
the text box
previously entered password
In red, under When the bio link is not in
12 MSC12 Link tiểu sử không hợp lệ.
the text box the correct format
Toast Cập nhật hồ sơ cá nhân
13 MSC13 message Update profile success
thành công.
success

305 | Page
In red, under Your old password is
14 MSC14 Mật khẩu cũ không đúng.
the text box incorrect.
Toast
15 MSC15 message Login success Đăng nhập thành công
success
Toast
16 MSC16 message Change password success Đổi mật khẩu thành công.
success

In table No public projects are Không tìm thấy dự án phù


17 MSC17
message available at this time. hợp

In red, under The uploaded ID card photo


18 MSC18 Ảnh căn cước không hợp lệ.
the text box is invalid
Toast
19 MSC19 message Identification Successful Định danh thành công.
success
Toast
20 MSC20 message Send password success Đã gửi lại mật khẩu
success
Toast
21 MSC21 message Confirm success Xác thực thành công
success
In red, under Verify code is required Phải nhập mã xác thực
22 MSC22
the text box
Toast The code has expired or
23 MSC23 message Mã code sai hoặc đã hết hạn
incorrect.
error
Toast
24 MSC24 message Logout success Đăng xuất thành công
success
25 MSC25 Screen error Not found Không tìm thấy trang
In table
26 MSC26 No data Không có dữ liệu
message
Toast Đã tồn tại email trong hệ
27 MSC27 message Have email in system
thống
error
In red, under Role is required Phải chọn vai trò
28 MSC28
the text box
Toast Thêm mới nhân viên thành
29 MSC29 message Create employee success
công
success

306 | Page
Toast Khoá người dùng thành
30 MSC30 message Lock user success
công
success
Display on
31 MSC31 dropdown No new notifications. Không có thông báo mới.
and in page
Toast Thêm mới phòng ban thành
32 MSC32 message Create department success
công
success
Toast Cập nhật phòng ban thành
33 MSC33 message Update department success
công
success
Toast
34 MSC34 message Delete department success Xóa phòng ban thành công
success
In red, under Tên phòng ban không được
35 MSC35 Department name required
the text box để trống
In red, under Department description Mô tả phòng ban không
36 MSC36
the text box required được để trống
In red, under Department manager
37 MSC37 Bắt buộc chọn trưởng phòng
the text box required
In red, under Department employee
38 MSC38 Bắt buộc chọn nhân viên
the text box required
In red, under Department category
39 MSC39 Bắt buộc chọn lĩnh vực
the text box required
Display in No comments for this Không có bình luận nào cho
40 MSC40
page project. dự án này.
Toast Delete project information Xóa thông tin dự án thành
41 MSC41
message successful công
42 MSC42 Toast error Comment is required Bình luận không được trống
Toast Update employee permission
43 MSC43 message Cập nhật quyền thành công
success
success
In red, under Project name not fill Tên dự án là bắt buộc
44 MSC44
the text box
In red, under Project name have more than Tên dự án chỉ được nhập tối
45 MSC45
the text box 255 character đa 255 kí tự
In red, under Project summary not fill Tổng quan dự án là bắt buộc
46 MSC46
the text box
In red, under Project summary have more Tổng quan dự án chỉ được
47 MSC47
the text box than 4000 character nhập tối đa 4000 kí tự

307 | Page
Delivery address cannot be Địa chỉ giao hàng không
48 MSC48 Toast error
empty. được trống.

Thanh toán không thành


Payment failed. Please try
Display in công. Vui lòng thử lại hoặc
49 MSC49 again or use a different
page sử dụng phương thức thanh
payment method.
toán khác.
Toast
50 MSC50 Create campaign success Tạo chiến dịch thành công
message
In red, under Tên chiến dịch không được
51 MSC51 Campaign name not fill
the text box để trống
In red, under Tóm tắt chiến dịch không
52 MSC52 Campaign summary not fill
the text box được để trống
In red, under Mục tiêu chiến dịch phải là
53 MSC53 Campaign goal not a number
the text box số
In red, under Campaign goal smaller than Mục tiêu chiến dịch phải lớn
54 MSC54
the text box 0 hơn 0
In red, under Campaign name have more Tên chiến dịch không được
55 MSC55
the text box than 255 characters vượt quá 255 ký tự
In red, under Campaign summary have Tóm tắt chiến dịch không
56 MSC56
the text box more than 4000 characters được vượt quá 4000 ký tự
In red, under Miêu tả chiến dịch không
57 MSC57 Campaign description not fill
the text box được để trống
In red, under Ngày bắt đầu không được để
58 MSC58 Campaign start date not fill
the text box trống
In red, under Ngày kết thúc không được để
59 MSC59 Campaign end date is not fill
the text box trống
In red, under Campaign end date smaller Ngày kết thúc phải lớn hơn
60 MSC60
the text box than campaign start date ngày bắt đầu
In red, under Campaign thumbnail not .jpg Thumbnail phải là file .jpg
61 MSC61
the text box or .png hoặc .png
In red, under Campaign reward name not Tên phần thưởng không
62 MSC62
the text box fill được để trống
In red, under Campaign reward name have Tên phần thưởng không
63 MSC63
the text box more than 255 character được vượt quá 255 ký tự
In red, under Campaign reward Miêu tả phần thưởng là bắt
64 MSC64
the text box description not fill buộc
In red, under Campaign reward min
65 MSC65 Ủng hộ tối thiểu phải là số
the text box pledge not a number

308 | Page
In red, under Campaign reward min Ủng hộ tối thiểu phải lớn
66 MSC66
the text box pledge < 2000 hơn 2000
In red, under Campaign reward transfer Ngày giao hàng dự kiến
67 MSC67
the text box date not fill không được trống
Ngày giao hàng dự kiến phải
In red, under Campaign reward transfer
68 MSC68 lớn hơn ngày kết thúc chiến
the text box date < campaign end date
dịch
In red, under Campaign reward number Số lượng phần thưởng không
69 MSC69
the text box not fill được để trống
In red, under Campaign reward image not Hình ảnh phần thưởng
70 MSC70
the text box fill không được để trống
In red, under Campaign reward image not Hình ảnh phần thưởng phải
71 MSC71
the text box .jpg or .png file là file .png hoặc .jpg

309 | Page

You might also like