SEP490 G39 SDU Report3 Software-Requirement-Specification.docx (1)
SEP490 G39 SDU Report3 Software-Requirement-Specification.docx (1)
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
8 | Page
II. Software Requirement Specification
1. Overall Requirements
1.1 Context Diagram
9 | Page
1.2.1 Create project
10 | Page
1.2.2 Create campaign
11 | Page
1.2.4 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
13 | Page
1.3.2 Use Cases
1.3.2.1 Use-case diagrams of Guest
14 | Page
1.3.2.2 Use-case diagrams of User
15 | Page
1.3.2.3 Use-case diagrams of Innovator
16 | Page
Figure 2.4 Use-case diagrams of Backer.
17 | Page
Figure 2.5 Use-case diagrams of Project manager.
18 | Page
1.3.2.7 Use-case diagrams of Salesman
19 | Page
1.3.2.8 Use-case diagrams of System admin
20 | Page
1.4 System Functional Overview
1.4.1 Screens Flow
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
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
25 | Page
2. Use Case Specifications
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 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).
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
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
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.
27 | Page
Postconditions: The user successfully views the system information.
Priority: Medium
Other Information: Ensure that the system information is up-to-date and accurately reflects
the current state of the system.
28 | Page
Created By: ThanhVNM Created Date: 20/05/2024
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.
Postconditions: The user successfully views a list of public projects and can access the
details of individual projects.
Priority: High
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.
Assumptions: The public projects page is easily accessible from the main website.
The system has a reliable mechanism for retrieving and displaying project
details.
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.
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
Priority: High
Other Information: Ensure that the project details are up-to-date and accurately reflect the
current status of the project.
Assumptions: The user is familiar with navigating the project listing page.
The system has a reliable mechanism for retrieving and displaying project
details.
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.
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.
Priority: High
Other Information: The campaigns section should be optimized for both desktop and mobile
devices.
Business Rule The campaigns should load within a reasonable time (e.g., under 3
seconds) for a standard user.
33 | Page
Created By: VietHQ Created Date: 20/05/2024
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
Postconditions: 3. The user successfully views the details of the selected campaign.
4. The campaign details are displayed correctly.
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.
Priority: 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.
35 | Page
Created By: VietHQ Created Date: 20/05/2024
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.
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).
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.
Priority: High
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.
37 | Page
UC ID and Name: UC-08 View list project process public
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.
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.
38 | Page
like, comment).
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.
Priority: Medium
Other Information: The updates section should be optimized for both desktop and mobile
devices.
Business Rule The updates must comply with the website's community guidelines and
moderation policies.
39 | Page
2.1.9 View list comment of project
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
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
Priority: Low
Other Information: The comments section should be optimized for both desktop and mobile
devices.
Business Rule The comments must comply with the website's community guidelines and
moderation policies.
41 | Page
UC ID and Name: UC-10 View user detail
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,
Postconditions: 1. The user successfully views the public details of another user's
profile.
2. The profile page content is displayed correctly.
42 | Page
Priority: 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
2.2 Authentication
2.2.1 Register
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.
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
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.
45 | Page
Assumptions: The registration page is easily accessible from the main website.
The terms and conditions are clearly displayed and accessible for the user
to read before agreeing.
2.2.2 Login
Admin,
Department manager,
Salesman,
Customer service,
Employee
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.
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).
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.
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.
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.
Assumptions: The login page is easily accessible from the main website.
User sessions are secure, and login attempts are protected against
unauthorized access.
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. 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.
49 | Page
● Message is MSC22.
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.
User sessions are secure, and verification attempts are protected against
unauthorized access.
50 | Page
2.2.4 Forgot password
Department manager,
Salesman,
Customer service,
Employee
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.
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).
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.
1. The user clicks the back button on the forgot password page.
2. The system redirects the user back to the login page.
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.
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
53 | Page
Primary Actor: User, Secondary Actor: None
Department manager,
Salesman,
Customer service,
Employee
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.
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.
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.
User sessions are secure, and logout attempts are protected against
unauthorized access.
Admin,
Department manager,
55 | Page
Salesman,
Customer service,
Employee
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.
Alternative Flows: The actor may choose to update their personal information.
Priority: Medium
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
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.
57 | Page
profile.
Alternative Flows: 1. While in the Profile interface, the actor can change his
background image and avatar image.
Priority: High
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.
Admin
Department Manager
Salesman
Customer Service
Employee
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.
Postconditions: The actor's password is successfully changed and updated in the system.
59 | Page
UC ID and Name: UC-18 Change Password
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
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.
60 | Page
UC ID and Name: UC-18 Change Password
Assumptions: The system has an established method for securely updating the
password.
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.
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
Priority: Medium
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.
62 | Page
2.4 Manage Project Information
2.4.1 View list project information
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.
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
Priority: High
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.
Assumptions: The system has a reliable mechanism for retrieving and displaying project
information lists.
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.
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.
Priority: High
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.
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.
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.
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:
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."
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.
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”
Priority: 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.
2.4.3.2 Innovator
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.
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.
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”
Priority: 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.
73 | Page
2.4.4 View project information detail
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.
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.
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.
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.
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."
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.
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”
Priority: 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
Assumptions: The salesman has the necessary permissions to access the project
management module and create new project information.
2.4.5.2 Innovator
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.
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.
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”
Priority: 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.
82 | Page
2.4.6 Delete project information draft
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.
83 | Page
Priority: Medium
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.
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.
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.
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.
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.
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.
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.
Priority: High
Other Information: This use case is crucial for user management and monitoring.
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.
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.
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.
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.
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.
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.
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
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.
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.
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.
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.
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.
Business Rule The system must have access to the employee database to retrieve and
display employee information.
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.
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.
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.
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.
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.
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.
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
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
97 | Page
Message is MSC28
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.
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.
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. At step 6, if the admin cancels the action, the system closes the
popup and no changes are made to the employee's status.
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
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.
Assumptions: The admin has the necessary permissions to lock or unlock employee
accounts.
Department manager,
100 | Page
Employee
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.
Postconditions: 1. The user can view a list of departments with relevant information.
101 | Page
Priority: 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.
Assumptions: The user has the necessary permissions to view the department list.
Department manager,
Employee
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.
102 | Page
3. The user has access to the department list screen.
Priority: 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.
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.
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
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.
105 | Page
Message MSC36
Priority: Hight
Other Information: Ensure the form is user-friendly and all dropdowns are populated
correctly.
106 | Page
Assumptions: The admin has the necessary permissions to create departments.
The API list category is available and provides accurate data for
selection.
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.
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
Priority: 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.
108 | Page
2.5.3.5 Update 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.
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
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.
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
Priority: Medium
Other Information: Ensure the form is user-friendly and all dropdowns are populated
correctly.
The API list category is available and provides accurate data for
selection.
111 | Page
UC ID and Name: UC-39 Delete department
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.
112 | Page
Alternative Flows: AF-1: Admin Cancels Deletion
Priority: Medium
Other Information: Ensure the confirmation popup is clear and asks the admin to confirm the
deletion explicitly.
The system should provide clear feedback to the admin regarding the
status of the deletion process.
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
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.
114 | Page
Alternative Flows: A1: No Pending Requests
Priority: High
Other Information: The requests list should be optimized for both desktop and mobile
devices.
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.
115 | Page
Created By: VietHQ Created Date: 23/05/2024
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.
116 | Page
Alternative Flows: N/A
Priority: High
Other Information: The requests list should be optimized for both desktop and mobile
devices.
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.
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
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.
● 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
118 | Page
Alternative Flows: A1: No Matching Requests Found
Priority: Low
Other Information: The requests list should be optimized for both desktop and mobile
devices.
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.
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
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.
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
Other Information: The requests list should be optimized for both desktop and mobile
devices.
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.
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.
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.
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
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.
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.
Priority: 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.
126 | Page
Trigger: Any of the following actors (Department Manager, Employee, Admin)
choose to view specific detail of a 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
Priority: 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.
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.
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
Priority: 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.
129 | Page
2.7.4.2 Search project employee
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.
130 | Page
Alternative Flows: AF-1: No Matching Employees
Priority: 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.
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. 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
Priority: Hight
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.
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.
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.
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
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
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 .
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.
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.
Priority: 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.
136 | Page
UC ID and Name: UC-51 Search contract
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.
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.
Priority: 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.
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.
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
Priority: High
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.
140 | Page
Created By: VietHQ Created Date: 23/05/2024
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.
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.
Priority: High
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.
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.
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
Priority: Medium
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 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
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.
145 | Page
Alternative Flows: AF-1: User Cancels Update
Priority: High
Other Information: Ensure that the update process is user-friendly and provides clear
feedback.
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
146 | Page
Created By: ThanhVNM Created Date: 21/05/2024
Description: This use case describes the process for an employee to update project
content, which is then submitted for approval by the department manager.
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.
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
Other Information: Ensure that the draft and submission process is user-friendly and provides
clear feedback.
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.
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.
Priority: High
Other Information: Ensure that the status update process is user-friendly and provides clear
feedback.
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.
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.
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”
Priority: High
Other Information: Ensure that the campaign list is updated regularly and accurately reflects
the current state of all campaigns.
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.
151 | Page
The platform allows filtering and searching of campaigns based on
various criteria.
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
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.
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
Other Information: Ensure that the search functionality is user-friendly and provides accurate
results based on the entered criteria.
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.
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
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
Priority: High
Other Information: Ensure that the campaign creation process is user-friendly and provides
clear feedback.
Business Rule Only users with the roles of department manager or employee can create
new campaigns.
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.
155 | Page
Primary Actor: Department Manager, Secondary Actor: None
Employee
Description: This use case describes the process for a department manager or
employee to view detailed information
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”.
Priority: High
156 | Page
Other Information: Ensure that the detailed view of the campaign is user-friendly and
provides clear, comprehensive information.
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.
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.
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.
158 | Page
Priority: High
Other Information: Ensure that the update process is user-friendly and provides clear
feedback.
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
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.
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.
Priority: Medium
160 | Page
Frequency of Use: Frequent
Other Information: Ensure that the draft and submission process is user-friendly and provides
clear feedback.
Business Rule Only employees can draft updates to project campaign details.
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.
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.
161 | Page
Postconditions: 1. The project campaign status is updated in the system.
2. The updated status is visible to all relevant users.
Priority: High
Other Information: Ensure that the status update process is user-friendly and provides clear
feedback.
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.
Description: This use case describes the process for a department manager or
employee to add a reward to a campaign.
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.
164 | Page
Priority: Medium
Other Information: Ensure that the reward addition process is user-friendly and provides
clear feedback.
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.
Description: This use case describes the process for a department manager or
employee to update the details of a campaign reward.
165 | Page
the user.
● At step 8, if the user cancels the reward update, the system retains
the existing reward details and returns to the campaign details.
166 | Page
○ “Hình ảnh phần thưởng”: message MSC70 or MSC71
Priority: Medium
Other Information: Ensure that the reward update process is user-friendly and provides clear
feedback.
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.
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.
Priority: Medium
168 | Page
Other Information: Ensure that the reward deletion process is user-friendly and provides clear
feedback.
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.
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.
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”
Priority: Medium
Other Information: Ensure that the update viewing process is user-friendly and provides
clear, comprehensive information.
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.
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.
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
Priority: Medium
Other Information: Ensure that the search process is user-friendly and provides clear,
comprehensive results.
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.
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 độ").
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.
173 | Page
task details.
Priority: Medium
Other Information: Ensure that the progress creation process is user-friendly and provides
clear feedback.
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.
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.
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)
Priority: Medium
175 | Page
Other Information: Ensure that the progress detail viewing process is user-friendly and
provides clear, comprehensive information.
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.
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.
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.
Priority: 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.
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.
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.
Priority: Medium
Other Information: The search functionality should be optimized for both desktop and mobile
devices.
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.
Description: This use case describes the process of creating a new marketing campaign
directly by a Department Manager
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.
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.
Priority: Medium
Other Information: The form should be optimized for both desktop and mobile devices.
The system should handle and display errors clearly if the creation or
submission cannot be performed.
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
Description: This use case describes the process of creating a new marketing campaign
by an Employee, including submission for Department Manager review
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.
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.
Priority: 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.
The system has the capability to process and validate the input data
accurately.
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.
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
Priority: 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.
186 | Page
UC ID and Name: UC-75a Update project marketing
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.
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.
Priority: 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
The system has the capability to process and validate the input data
accurately.
2.7.6.3.4.2 Employee
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.
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.
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.
Priority: 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.
The system should handle and display errors clearly if the creation or
submission cannot be performed.
The system has the capability to process and validate the input data
accurately.
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.
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.
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
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.
Admin
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.
For Admin:
194 | Page
offer options to refresh or check other sections.
Priority: High
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.
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.
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:
196 | Page
user to refine their search.
Priority: Medium
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.
197 | Page
Admin
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.
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.
198 | Page
Alternative Flows: AF-1: Transaction Not Found
Priority: Ensure that all relevant details are displayed accurately and are
up-to-date.
Business Rule Only authorized users (Department Manager or Admin) can view detailed
transaction information.
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
Admin,
Department manager,
Salesman,
Customer service,
Employee
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.
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.
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.
201 | Page
UC ID and Name: UC-81 Read Notifications
Admin
Department Manager
Salesman
Customer Service
Employee
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.
Postconditions: ● Notifications are marked as read, and the actor can navigate to
related content if applicable.
202 | Page
Alternative Flows: Clicking on an item in the notification list will mark it as viewed and
read.
Priority: Medium
Frequency of Use: This use case is expected to be used frequently as users check and
manage their notifications regularly.
Business Rule Only authorized actors can access and manage their notifications.
Admin
Department Manager
203 | Page
Salesman
Customer Service
Employee
Guest
Description: This use case describes the process by which an actor views the list of
comments associated for a specific project.
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
Priority: Medium
Frequency of Use: This use case is expected to be used frequently as users engage with
204 | Page
content and discussions.
Assumptions: The actor has permission to view the content and its comments.
Admin
Department Manager
Salesman
Customer Service
Employee
Description: This use case describes a process where an actor wants to add comments
related to a specific project.
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
Priority: High
Frequency of Use: This use case is expected to be used frequently as users engage with
content by commenting.
Assumptions: The actor has the necessary permissions to comment on the content.
206 | Page
UC ID and Name: UC-84 Reply to Comment
Admin
Department Manager
Salesman
Customer Service
Employee
Description: This use case describes the process by which an actor replies to a
comment on a specific project.
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
Priority: High
Frequency of Use: This use case is expected to be used occasionally, primarily for
moderation or management of content.
Admin
Department Manager
Salesman
208 | Page
Customer Service
Employee
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.
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.
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.
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.
210 | Page
Postconditions: A transaction is successfully created, and the reward is reserved for the
actor.
Alternative Flows: Delivery address is blank. If the delivery address is blank the system
displays an error message MSC48
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
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.
Postconditions: The actor can view details of all their transactions in the list.
Alternative Flows: No Transactions Available. If the actor has no transactions, the system
displays a message MSC26.
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.
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.
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.
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.
214 | Page
Created By: ManhCQ Created Date: 24/05/2024
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.
Postconditions: The actor can view detailed information about the selected transaction.
Alternative Flows: The actor may attempt to view another transaction or return later.
Priority: Medium
215 | Page
Frequency of Use: This use case is expected to be used frequently by users reviewing
specific transactions.
Business Rule Only authenticated users can view detailed transaction information.
Assumptions: The actor has permission to view the details of the selected transaction.
2.8.2.5 Pay
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.
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.
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.
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.
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:
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.
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.
Description: This use case describes the process by which a user creates a new report.
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.
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
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.
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.
223 | Page
7. The representative reviews the list of reports assigned to them.
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.
Priority: Medium
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.
Assumptions: The system is capable of retrieving and displaying the list of reports
efficiently.
224 | Page
Created By: VietHQ Created Date: 24/05/2024
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
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.
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.
225 | Page
3. The system clears the search criteria and displays the full list of
reports again.
Priority: Medium
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.
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.
227 | Page
Priority: Medium
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
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.
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.
Priority: 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.
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.
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
Priority: Medium
Other Information: The response input field and validation should be optimized for both
231 | Page
desktop and mobile devices.
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.
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.
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.
Priority: 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.
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.
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
Other Information: The search functionality should be optimized for both desktop and mobile
devices.
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:
● 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:
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:
237 | Page
3.1.4 Popup confirm
Button:
Text:
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.
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
● This section indicates the total number of projects currently seeking funding,
highlighting the platform's active and dynamic nature.
● 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.
● 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.
● 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.
● 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
● 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.
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.
● 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.
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.
● 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
253 | Page
3.2.8 List project process public
● 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.
● 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.
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.
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
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
258 | Page
3.3.4 Verify code
This is form verify code
3.3.3 Logout
This is button logout in user menu
259 | Page
Avatar button: Button, click on display list of button
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.
● Displays the user's name with an option to "Sửa" (Edit), allowing the user to update
their personal information easily.
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.
● A button encouraging users to explore the projects on the platform, inviting further
engagement and exploration.
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.
● Displays the user's name, offering a clear identifier for the profile.
● A section dedicated to displaying the user's information, including details like contact
info, bio, or other relevant data.
● An option for users to update their personal information, ensuring their profile stays
current.
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 “*”
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
265 | Page
Row per page: dropdown
3.5.2 Create/Update project information
● A form for adding new project information, allowing users to input details about a
new project.
● A text field for entering the project name, ensuring the project is correctly identified.
● A text area for providing a general overview of the project, offering a summary of its
purpose and scope.
● 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.
● A dropdown menu for choosing the project owner, specifying who is responsible for
the project.
● 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.
267 | Page
THÔNG TIN DỰ ÁN:
Tên dự án:
● Shows the name of the project, identifying what the project is called.
● Provides a brief overview or summary of the project, outlining its main objectives and
purpose.
Video dự án:
● Displays the category or classification of the project, indicating the type of project it
is.
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.
● 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.
269 | Page
3.7 Manage Employee
● A section for managing employees, providing tools to view and organize employee
information.
● 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.
● A button to add a new employee, enabling users to expand the employee list by
including additional staff members.
Employee Table:
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.
● 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.
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
272 | Page
3.8.3 Department detail
273 | Page
3.9 Manage Request
QUẢN LÝ DỰ ÁN:
274 | Page
● A section for managing projects, providing tools to view and organize project
information.
● 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:
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.
● 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
Tên dự án:
● Shows the name of the project, identifying what the project is called.
● Provides a brief overview or summary of the project, outlining its main objectives and
purpose.
● Details the content or specifics of the project, providing in-depth information about
what the project entails.
● Indicates the current status of the project, providing information about its progress or
phase.
Nội dung:
276 | Page
Quay lại:
● A button allowing users to return to the previous page or section, facilitating easy
navigation.
● 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.
● A text area for providing or updating a general overview of the project, outlining its
main objectives and purpose.
● 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.
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
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
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
● 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.
● A button to create a new campaign, enabling users to add additional campaigns to the
project list.
Campaign Table:
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.
● 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.
282 | Page
3.13.3 Update campaign
● A section for updating the details of an existing campaign, allowing users to modify
and manage campaign information.
● A text input field for updating the campaign name, ensuring it is correctly identified.
● A text area for revising the campaign summary, outlining its main objectives and key
points.
● A text area for editing the detailed description of the campaign, providing more
comprehensive information about what the campaign entails.
● 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.
● A date picker field for selecting or updating the end date of the campaign, marking
when the campaign will conclude.
Hủy, Tiếp:
● 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 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.
● 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.
285 | Page
3.13.4 Campaign detail
● 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.
● Shows the start date of the campaign, indicating when the campaign commenced.
● 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.
● 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.
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
288 | Page
3.15 Manage Project Marketing
3.15.1 List Project Marketing
289 | Page
3.15.2 Create Project Marketing
290 | Page
3.15.3 Update Project Marketing
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
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
● A section displaying a list of reports that have been created, providing an overview of
report details and status.
● 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.
295 | Page
● A button to create a new report, enabling users to add additional reports to the list.
Report Table:
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.
● 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.
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.
● A text input field for entering the report title, ensuring the report is correctly
identified.
● 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.
● 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
299 | Page
3.19 Static
3.19.1 System static
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.
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
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
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
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.
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