2022.spring - VCCS - Final Report
2022.spring - VCCS - Final Report
FPT UNIVERSITY
GSP22SE20
Best regards,
Capstone project team.
BR Business Rule
UC Use Case
FE Feature
LI Limitation
EX Exclusion
QR Quick Response
Table 1 – Supervisors
b. Team Members
2. Product Background
Charity activities are a growing trend of the community with the desire to be able to help and
support the development of the community more as well as help the surrounding aspects of
life become better as well as an opportunity for everyone to develop themselves. Charity
activities are often organized by NPOs and others, ...
Currently, NPOs and NGOs organize a lot of activities with diverse genres: for children, for the
elderly, for the environment, ... And such meaningful activities will need to be spread, human
3. Existing Systems
3.1 Mobile App: Thiện Nguyện (App Thiện Nguyện)
“Thiện Nguyện” is a humanitarian platform that applies technology to solve problems of
connection, financial transparency and spreading charity activities.
● Pros:
○ Charity social network, connecting people
○ Fast and convenient support
○ Publish account statement
● Cons:
○ The app only has monetary donations
○ The app only allows money transfers through bank accounts, limiting the user's
donation channel
○ The application does not have a transparent image for the spending of the donation
amount
3.2 Mobile App: Smai – Tặng đồ thiện nguyện (App Smai)
● Pros:
○ The application allows flexibility in helping, in–kind donation
○ The application allows users to post messages to ask for support or want to support
others
● Cons:
○ The application has been inactive for a long time
○ The application interface is not beautiful, it is difficult to attract users
○ There are not many new features to stimulate users to use the application more
Est. Effort
# WBS Item Complexity
(in days)
1 Specification 18
2 Design 30
3 Training 12
4 Implement 154
5 Testing 36
6 Closing 22
No. of
# Quality Stage % Of Defect Notes
Defects
1 Reviewing 20 20%
2. Management Approach
Applying the Scrum model into management enables the VCCS team to implement the
product with effective coordination among development team members.
Particpate for a
Member – I can join the event of the
11 recruitment High 2 Done
Volunteer recruitment campaign
campaign
Member –
Manage I can Create, Update or
13 Organization High 3 Done
organizations Delete my organization
Manager
Member –
I can Create, Update or
14 Organization Manage projects High 3 Done
Delete my projects
Manager
Member –
I can Create, Update or
15 Organization Manage campaigns High 3 Done
Delete my campaigns
Manager
Member –
I can approve or reject
17 Organization Manage volunteer High 4 Done
incoming participant
Manager
Chánh Đức,
Java Spring Boot Week 1–2, 14 days Mandatory
Lâm Khang
Thanh Hiếu,
Dart, Flutter Week 2, 5 days Mandatory
Lâm Khang
3. Master Schedule
1 Project Plan 03/01/2022 07/01/2022 5 days Risk plan, Schedule plan, WBS
20 Software requirement
4 Report 3 – SRS Document 07/02/2022 04/03/2022
days specification
4. Project Organization
4.1 Team & Structures
5. Project Communication
5.1 Communication Plan
Table 11 – FU contacts
6. Configuration Management
6.1 Tools & Infrastructures
DBMS MySQL
ID Rule Definition
BR–01 All features related to donations and charity transparency must comply with the law
BR–02 The platform must be clear about privacy policy and terms of use.
BR–03 All donation transactions must be made through the platform's app.
All money raised for one campaign cannot be used for any other campaign regardless
BR–04
of the same project or organization.
Passwords must have minimum eight characters, at least one letter and one number
BR–05
and will be hashed MD5 before send to server
BR–07 All organizations, projects, campaigns are created by the organization manager
The platform will keep all campaign funds and will disburse to the organization after
BR–08
the campaign ends.
Each document must be unique and stay protected cannot be steal for private
BR–09
benefits.
BR–13 When user press confirm they must have responsibility for their decision
All organizations cannot have the same name. Projects and campaigns belonging to
BR–14
different organizations are allowed to have the same name
BR–18 The message input in donate message must be polite and follow the societal norms
BR–21 Project/campaign end time must be at least 15 days longer than project start time
BR–22 The duration of the campaigns must be within the duration of the active project
Target to receive donations for projects and campaigns: minimum 10,000,000 VND,
BR–23
maximum 1,000,000,000 VND
Every donation campaign must have donation documents used after the campaign
BR–24
ends
Donation campaigns that have been removed from the platform can no longer
BR–25
accept donations. Donated money will be refunded to donors
Full transparency of the source of funds will be reconciled from the party claiming to
BR–26
be the organization and also the receiving party
The volunteer's phone number and email information must be unique and not
BR–27
duplicated
BR–28 The campaign duration and working time must be within the project duration
Within 1 month from the end of the donation campaign, the organization manager
BR–29
must submit all documents verifying the campaign's revenue and expenditure.
This is a non–profit philanthropic platform and does not charge any management
BR–32 fees or user fees. 100% of the money donated for the campaigns received will be
used for the purpose of calling.
The following goals will not be called for fundraising in the Charity application:
Calling for Capital or Shares, not related to practical or useful activities for society,
BR–34 Contradicting the operating principles and ethical standards and social norms;
Relating to political and religious activities; The content of the goals is contrary to the
law, Not consistent with the goals and mission of the Charity foundation.
Accounts and characters are not allowed to be named after celebrities, leaders,
terrorists, fascists, criminals, and the names of individuals and organizations that
BR–36 oppose the State of the Socialist Republic of Vietnam. Socialist Republic of Vietnam,
which jeopardizes national security, social order and safety, and the foundation's
operating principles.
Do not use the same or confusing account names or characters to impersonate other
individuals or organizations for the purpose of giving false information, distorting,
BR–38
slandering, or insulting the reputation of the organization or honor. and the dignity
of other individuals.
BR–39 Do not name the account, the character infringes the intellectual property rights.
Do not use images or images that are offensive to celebrities, national heroes,
BR–41
leaders of the Party and State of Vietnam and leaders of international organizations.
Do not use images containing signs that are identical or confusingly similar to
symbols, flags, badges, abbreviations, full names of state agencies, political
organizations, political organizations – social organizations, socio–political–
BR–42
professional organizations, social organizations, socio–professional organizations of
Vietnam and international organizations that offend the reputation of these
organizations.
Do not use images related to religion that incite and divide the great national unity
BR–43
bloc, and go against Vietnam's religious policy.
Do not use photos of criminals, terrorists, fascism, and photos or images depicting
BR–44 individuals and organizations opposing the State of the Socialist Republic of Vietnam,
causing harm to national security and order. social self–security.
Do not use photos that offend the reputation of the organization, the honor and
BR–45
dignity of other individuals.
BR–47 There is only one document detailing cash flow for each donation campaign.
BR–48 Once the project and campaign have started, the information cannot be edited.
# Actor Description
App Guest is the one who have not joined the application but have a desire to
1 App Guest
become a Volunteer so that they can contribute to volunteering campaigns
Web Guest is the one who have not joined the system but have a desire to
2 Web Guest become an Organization Manager so that they can create the Organization,
Project and Campaign on our system
System
6 System Handler deals with internal processes
Handler
Mobile Application
Web Application
Pre–conditions: PRE–1. User has not logged in and does not have an account.
1. User clicks the “Đăng ký/ Đăng nhập” button at the profile screen.
2. Displays a “Login” screen with the required input field: phone number.
3. User inputs required field information and clicked the “Tiếp tục” button (see UC–
02.0.E1).
4. Conneto sends a text message with 6–digit OTP for phone verification.
5. User input 6–digit OTP into required field and select “Tiếp tục” button (see UC–
Normal Flow: 02.0.E2, UC–02.0.E3, UC–02.0.E4).
6. The system validates the OTP successfully and checks the existing account if not
user is redirected to the “register” screen, if yes use case continue step 7 in UC–
01: Log in.
7. User input required field information and clicks “Đăng ký” button. (UC–02.0E5,
UC–02.0E6, UC–02.0E7, UC–02.0E8, UC–02.0E9)
8. The system saves the register information successfully and user is redirected to
the home screen.
1a. User clicks the “Đăng ký/ Đăng nhập” button at the history screen.
1a1. Return to step 2 in normal flow.
Priority: High
Frequency of High
Use:
Other N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
This feature allows Guest or Member – Volunteer to view a list of all the
Description:
Projects that is active on the application without logging in.
POST–01.
· Success: System returns a list of Projects, users can browse them
Post–conditions:
POST–02.
· Fail: System shows error message.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
Pre–conditions: PRE–01. A list of projects must be shown for volunteer to press in.
POST–01.
· Success: System navigate to Project Details screen with
Post–conditions: details of a Project.
POST–02.
· Fail: System shows error message.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
Pre–conditions: N/A
POST–01.
· Success: System returns a list of Organizations, users can
Post–conditions: browse them
POST–02.
· Fail: System shows error message.
Normal Flow: 3. User chooses the “Tổ chức” item from the “Loại” Dropdown
menu on the bottom–sheet menu.
4. Application shows screen contains a list of Organizations,
each item contains:
· Organization Name: Text
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
POST–01.
· Success: System navigate to Organization Details screen with
Post–conditions: details of a Organization.
POST–02.
· Fail: System shows error message.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
Pre–conditions: N/A
POST–01.
· Success: System returns a list of Campaigns, users can browse
Post–conditions: them
POST–02.
· Fail: System shows error message.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
POST–01.
· Success: System navigate to Campaign Details screen with
Post–conditions: details of a Campaign.
POST–02.
· Fail: System shows error message.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
Pre–conditions: N/A
POST–01.
· Success: System navigate to a document screen with list of
Post–conditions: donation documents, users can browse them
POST–02.
· Fail: System shows error message.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Member N/A
Actors:
POST–01.
· If document type is “Cash flow details”: System navigate to
Cashflow details screen with details of that type of document.
Post–conditions: · If document type is NOT “Cash flow details”: System will
launch the url of the document.
POST–02.
· Fail: System shows error message.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Guest, Volunteer N/A
Actors:
Pre–conditions: N/A
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Member N/A
Actors:
UC–01.0 Log in
1. User clicks the “Đăng ký/ Đăng nhập” button at the profile
screen.(UC–01.0.E6)
2. Displays a “Login” screen with the required input field: phone
number.
3. User inputs required field information and clicked the “Tiếp
tục” button. (see UC–01.0.E1, UC–01.0.E2, UC–01.0.E6)
4. Conneto send a text message with 6–digit OTP for phone
verification.
Normal Flow:
5. User input 6–digit OTP into required field and select “Tiếp tục”
button. (UC–01.0.E3, UC–01.0.E4, UC–01.0.E6)
6. The system validates the OTP successfully and checks the
existing account if yes user is redirected to the “Input password”
screen, if not use case continue step 7 in UC–02. Register.(UC–
01.0.E6)
7. User inputs password into required field and select “Tiếp tục”
button. (UC–01.0.E5, UC–01.0.E6)
8. The system authenticates the login information successfully
and user is redirected to homepage screen.(UC–01.0.E6)
Priority: High
Frequency of
High
Use:
Other
N/A
Information:
Assumptions: N/A
ID and
UC–12 Log out
Name:
Primary Secondary
Member N/A
Actor: Actors:
Pre–
PRE–1. User has logged in successfully
conditions:
Alternative
N/A
Flows:
Priority: High
Frequency
Medium
of Use:
Business
N/A
Rules:
Other
N/A
Information:
Assumptions
N/A
:
Post–conditions: N/A
Priority: Low
Assumptions: N/A
Alternative N/A
Flows:
Priority: Medium
Frequency of Medium
Use:
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Volunteer N/A
Actors:
Exceptions: 2. User select “Đồng ý” button on the pop up – use case stops.
UC–15.0.E2 Transaction error
1. System shows a message dialog.
2. User select “Đồng ý” button on the pop up – use case stops.
Priority: High
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Volunteer N/A
Actors:
POST–01.
· Success: System shows message dialog “Đăng ký thành công”.
Post–conditions:
POST–02.
· Fail: System shows error message.
Priority: High
Frequency of
Usually
Use:
Other
N/A
Information:
Assumptions: N/A
Priority: Low
Assumptions: N/A
Secondary
Primary Actor: Volunteer N/A
Actors:
Alternative
N/A
Flows:
Priority: Low
Frequency of
Low
Use:
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Volunteer N/A
Actors:
Alternative
N/A
Flows:
Priority: Low
Frequency of
Low
Use:
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Volunteer N/A
Actors:
Preconditions: PRE–1. User’s phone number has been registered into the system.
Exceptions: 1a2. User re–enter OTP code – use case continue UC–01.0.5
UC–01.0.E4 User inputs expired 6–digit OTP
1a. Conneto shows an error message “Mã OTP hết hạn”.
1a1. User clicks the “back” button – use case stops.
1a2. User select “Gửi lại” button – use case continue UC–01.0.5
UC–01.0.E5 User inputs incorrect password
1a. Conneto shows error message “Mật khẩu không đúng”
1a1. User clicks the “back” button – use case stops.
UC–01.0.E6 Internet connection lost
1a. Conneto shows the pop up error “Mất kết nối với Internet, vui
lòng thử lại sau!”.
1a1. User select “X” button on the pop up – use case stops.
Priority: Low
Other
N/A
Information:
Assumptions: N/A
21.0 Register
1. Actor click “Tạo tài khoản quản lý tổ chức” link on “Đăng
nhập” screen
2. The system requests account information.
a. Tài khoản: free text input, length 8–32
characters,required
b. Mật khẩu: length from 8 characters,includes
number and string
Priority: Medium.
Assumptions: N/A
POST–01.
● Success: Conneto login for actor and shows a success
Post–conditions:
message
● Fail: Conneto shows an error message.
22.0 Login
1. Actor sends a request to login into Conneto web system
2. System requests information from the actor:
a. Tài khoản: text input, required
Priority: Medium.
Assumptions: N/A
Date
Created By: PhucNM 02/02/2022
Created:
Secondary
Primary Actor: Admin N/A
Actors:
This feature allows the actor to disable a user, preventing this user from
Description:
logging into the Conneto system.
POST–01:
Post–conditions: ● Success: System disables user, and shows success message.
● Fail: System shows error message.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Date
Created By: PhucNM 02/02/2022
Created:
Secondary
Primary Actor: Admin N/A
Actors:
This feature allows actor to enable a user, allowing this user to log
Description:
into the Conneto system.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Trigger: The actor indicates that he/she wants to get user details.
PRE–01. Actor has logged into the web as the Admin role.
Preconditions:
PRE–02. Current screen is “Quản lý người dùng”
Post–conditions: POST–01. The system returns detailed information about the user.
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
PRE–01. Actor has logged into the web as the Admin role.
Preconditions:
PRE–02. Current screen is “Quản lý tổ chức”
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Description: This feature allows actor to reject the request create organization
PRE–01. Actor has logged into the web as the Admin role.
Preconditions:
PRE–02. Current screen is “Quản lý tổ chức”
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin Organization Manager
Actors:
Trigger: The actor indicates that he/she wants to get organization details
PRE–01. User has logged into the web as the Admin role or
Preconditions: Organization Manager role
PRE–02. Current screen is “Quản lý tổ chức”
Alternative
N/A
Flows:
Priority: Medium
Frequency of
Medium
Use:
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Trigger: The actor indicates that he/she wants to enable the organization
PRE–01. Actor has logged into the web as the admin role.
Preconditions:
PRE–02. The Organization must be in disabled status.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Trigger: The actor indicates that he/she wants to disable the organization
PRE–01. Actor has logged into the web as the Admin role.
Preconditions:
PRE–02. The Organization must be in enabled status.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Description: This feature allows actor to approve the request create project
Preconditions: PRE–01. User has logged into the web as the Admin role.
POST–01. System updates the status of the project and shows the
Post–conditions:
success message.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Description: This feature allows actor to reject the request create a project
PRE–01. Actor has logged into the web as the Admin role.
Preconditions:
PRE–02. Current screen is “Quản lý dự án”
Priority: Medium
Other
N/A
Information:
Secondary
Primary Actor: Admin Organization Manager
Actors:
Trigger: The actor indicates that he/she wants to get project details
PRE–01. Actor has logged into the web as the Admin role or
Preconditions: Organization Manager role
PRE–02. Current screen is “Quản lý dự án”
Post–conditions: POST–01. The system returns detailed information about the project
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Trigger: The actor indicates that he/she wants to disable the project
PRE–01. Actor has logged into the web as the admin role.
Preconditions:
PRE–02. The project must be in enabled status.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Trigger: The actor indicates that he/she wants to enable the project
PRE–01. Actor has logged into the web as the admin role.
Preconditions:
PRE–02. The project must be in disabled status.
POST–01. System updates the status of the project and shows the
Post–conditions:
success message.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Preconditions: PRE–01. Actor has logged into the web as the Admin role.
POST–01. System updates the status of the campaign and shows the
Post–conditions:
success message.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
PRE–01. Actor has logged into the web as the Admin role.
Preconditions:
PRE–02. Current screen is “Quản lý chiến dịch”
POST–01. System updates the status of the campaign and shows the
Post–conditions:
success message..
Priority: Medium
Other
N/A
Information:
Secondary
Primary Actor: Admin Organization Manager
Actors:
Trigger: The actor indicates that he/she wants to get campaign details
PRE–01. Actor has logged into the web as the Admin role or
Preconditions: Organization Manager role
PRE–02. Current screen is “Quản lý chiến dịch”
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Trigger: The actor indicates that he/she wants to enable the campaign
PRE–01. Actor has logged into the web as the admin role.
Preconditions:
PRE–02. The campaign must be in disabled status.
POST–01. System updates the status of the campaign and shows the
Post–conditions:
success message.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
Trigger: The actor indicates that he/she wants to disable the campaign
PRE–01. Actor has logged into the web as the admin role.
Preconditions:
PRE–02. The campaign must be in enabled status.
POST–01. System updates the status of the campaign and shows the
Post–conditions:
success message.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin N/A
Actors:
PRE–01. Actor has logged into the web as the admin role.
Preconditions: PRE–02. The campaign must finish and had uploaded donation
documents.
POST–01. System updates the status of the campaign and shows the
Post–conditions:
success message.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Admin Organization Manager
Actors:
Trigger: The actor indicates that he/she wants to get the system’s statistics
Preconditions: PRE–01. Actor has logged into the web as the admin role.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Organization Manager N/A
Actors:
PRE–01. Actor has logged into the web as the Organization Manager
Preconditions: role.
PRE–02. Current screen is “Quản Lý Tổ Chức”
POST–01.
● Success: System creates new organization and shows the
Post– success message
conditions:
● Fail: System shows error message
Priority: Medium
Frequency of
Medium
Use:
Other
N/A
Information:
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to update their organization
POST–01.
● Success:System updates organization and shows the success
Post–conditions: message
● Fail:System shows error message
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to delete their organization
POST–01.
● Success:System delete organization and shows the success
Post–conditions: message
● Fail:System shows error message
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Organization Manager N/A
Actors:
PRE–01. Actor has logged into the web as the Organization Manager
Preconditions:
role.
POST–01.
● Success:System creates new organization and shows the
Post– success message
conditions:
● Fail:System shows error message
Frequency of
Medium
Use:
Other
N/A
Information:
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to update their project
Priority: Medium
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to delete their project
PRE–01. Actor has logged into the web as the Organization Manager
Preconditions: role.
PRE–02. Current screen is “Quản Lý Dự Án”
POST–01.
● Success:System delete the project and shows the success
Post–conditions:
message
● Fail:System shows error message
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Secondary
Primary Actor: Organization Manager N/A
Actors:
Trigger: The actor indicates that he/she wants to create a new campaign
PRE–01. Actor has logged into the web as the Organization Manager
Preconditions: role.
PRE–02. Current screen is “Quản Lý Dự Án”
POST–01.
● Success:System creates a new campaign and shows the success
Post– message
conditions:
● Fail:System shows error message
Priority: Medium
Frequency of
Medium
Use:
Other
N/A
Information:
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to update their campaign.
PRE–01. Actor has logged into the web as the Actor role.
Preconditions:
PRE–02. Current screen is “Quản Lý Chiến Dịch”
POST–01.
● Success:System updates campaign and shows the success
Post–conditions: message
● Fail:System shows error message
Business Rules: BR–07, BR–11, BR–22, BR–24, BR–30, BR–31, BR–32, BR–46, BR–48
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to delete their campaign
PRE–01. Actor has logged into the web as the Organization Manager
Preconditions: role.
PRE–02. Current screen is “Quản Lý Chiến Dịch”
Post–conditions: POST–01.
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to approve their volunteers
PRE–01. Actor has logged into the web as the Organization Manager
role.
Preconditions: PRE–02. Current screen is “Quản lý Tình nguyện viên”
PRE–03. Volunteer must registered to Organization’s campaign
before
POST–01.
● Success: System approve volunteer to participate in
Post–conditions:
recruitment campaign and push notification to volunteer
● Fail: System shows error message
Priority: Medium
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to reject their volunteers
PRE–01. Actor has logged into the web as the Organization Manager
role.
Preconditions: PRE–02. Current screen is “Quản lý Tình nguyện viên”
PRE–03. Volunteer must registered to Organization’s campaign
before
POST–01.
● Success: System reject volunteer to participate in
Post–conditions:
recruitment campaign and push notification to volunteer
● Fail: System shows error message
Priority: Medium
Other
N/A
Information:
Secondary
Primary Actor: Organization Manager N/A
Actors:
Trigger: The actor indicates that he/she wants to upload the document files
PRE–01. Actor has logged into the web as the Organization Manager
Preconditions: role.
PRE–02. Current screen is “Quản Lý Chiến Dịch”
POST–01.
Post– ● Success:System upload document files and shows the success
conditions: message
● Fail:System shows error message
Priority: Medium
Frequency of
Medium
Use:
Assumptions: N/A
Organization Secondary
Primary Actor: N/A
Manager Actors:
Trigger: The actor indicates that he/she wants to delete the document files
POST–01.
● Success:System updates documents and shows the success
Post–conditions: message
● Fail:System shows error message
Priority: Medium
Assumptions: N/A
Secondary
Primary Actor: Organization Manager Admin
Actors:
Trigger: The actor indicates that he/she wants to get the documents list
POST–01:
Post–conditions: ● Success: The system returns the list of documents.
● Fail: The system shows an error message.
Other
N/A
Information:
Assumptions: N/A
Organization Secondary
Primary Actor: Admin
Manager Actors:
Trigger: The actor indicates that he/she wants to get the document details
PRE–01. Actor has logged into the web as the Organization Manager
Preconditions: role or Admin role.
PRE–02. Current screen is “Quản Lý Chiến Dịch”
Priority: Medium
Other
N/A
Information:
Assumptions: N/A
Notice of payment's
20 Payment Failed Notify user of payment failure
status
Get notification Notification Notification detail popup includes text: title, content,
4
details Details date
■ Dropdown: gender
View system
18 Dashboard View system statistics: chart, table, list,...
statistic
Splash X X
Home X X
User Profile X
Update profile X
Reset Password X
Participated History X
Explore X X
Login/Register X
Password Verification X
Register X
Donation Document X X
Cashflow Details X X
Organization Details X X
Project Details X X
Payment X
Payment Failed X
Payment Success X
Login X X
Dashboard X X
Notification List X X
Notification Details X X
User list X X
User’s details X X
List of organizations X X
Details of organization X X
List of projects X X
Details of project X X
List of campaigns X X
Details of campaign X X
List of donation
X X
documents
Details of donation
X X
document
List of donation
X X
transaction
List of participant X X
Dashboard X X
Login X X
Figure 16 – ERD
To update an organization
2 update Void Public
manager
To delete an organization
3 delete Void Public
manager
Unique define of an
1 Id String Public
organization
Founding date of an
7 FoundingDate DateTime Public
organization
Operating license of an
8 OperatingLicense String Public
organization
Id of created an organization
14 CreatedBy String Public
manager
Result Message of an
23 ResultMessage String Public
organization
Id of created organization
13 CreatedBy String Public
manager
Id of created organization
15 CreatedBy String Public
manager
CheckTransparentD
21 DateTime Public Date of checking the transparent
ate
Id of created organization
6 CreatedBy String Public
manager
Figure 30 – Search
Identifier code
id VARCHAR(32) PK x x
of an account
Name of an
username VARCHAR(32) x x
account
Password of an
password VARCHAR(256) x
account
First name of
first_name VARCHAR(16) x
user's account
Last name of
last_name VARCHAR(16) x
user's account
Link to the
image of avatar
avatar VARCHAR(256)
of user’s
account
Number phone
number_phone VARCHAR(20) x
of user's account
Email of user's
email VARCHAR(64)
account
Gender of user's
gender VARCHAR(32)
account
Birthday of
birthday DATETIME
user's account
Active status of
is_active TINYINT x
the account
Status indicating
whether the
is_block TINYINT x
account is
blocked or not
Identifier code
id VARCHAR(32) of achievement PK x x
data
Identifier code
organization_id VARCHAR(32) of an FK x
organization
Title of
title VARCHAR(256) x
achievement
Detailed
description of
description LONGTEXT the x
organization's
achievements
Active status of
is_active TINYINT x
the achievement
Identifier code
id VARCHAR(32) of achievement PK x x
data
Identifier code
project_id VARCHAR(32) FK x
of a project
Link to the
image LONGTEXT x
image of activity
Active status of
is_active TINYINT x
the activity
Identifier code
id VARCHAR(32) PK x x
of this campaign
Identifier code
of a project
project_id VARCHAR(32) FK x
owns this
campaign
Name of the
name VARCHAR(256) x
campaign
Detailed
description of all
description LONGTEXT
campaign
information
Links to
campaign
cover LONGTEXT
background
images
The objective of
the campaign's
quantity
target_number DOUBLE x
(amount,
number of
members, ...)
Information
about job
requirements of
job_requirement LONGTEXT
member
recruitment
campaign
Job description
of member
job_description LONGTEXT
recruitment
campaign
Job benefits
information of
job_benefit LONGTEXT member
recruitment
campaign
Active status of
is_active TINYINT x
campaign
Information
showing if the
is_modify TINYINT x
campaign is
being modified
Campaign
is_transparent TINYINT transparency x
status
Identifier of the
created_by VARCHAR(32) creator of this FK x
campaign
Identifier of this
approved_by VARCHAR(32) campaign FK
reviewer
Review date of
approved_date DATETIME
campaign
Review date of
check_transparent_
DATETIME campaign’s
date
transparency
Result message
of campaign
result_message VARCHAR(256) x
create or update
request
Code used to
category VARCHAR(256) categorize
campaigns
Message from
campaign
note VARCHAR(256)
creator or
update
Type of
type VARCHAR(32) x
campaign
Identifier code
id VARCHAR(32) of campaign PK x x
participation
Identifier code
account_id VARCHAR(32) of an account of FK x
volunteer
Identifier code
of a payment
payment_method_id VARCHAR(32) method
volunteer use to
donate
Amount
donate_amount DOUBLE donated by
volunteer
Transaction
code of
payment_transactio
VARCHAR(256) intermediary
n_id
payment
platform
Anonymous
is_incognito TINYINT
donation status
Message of
volunteers when
participate_message VARCHAR(256)
participating in
the campaign
Campaign
participate_info LONGTEXT participation
information
noted by the
Start date of
registration to
participate_date DATETIME participate in x
the volunteer
campaign
Result code of
volunteer’s
result_code INT x
participation
request
Result message
of volunteer’s
result_message VARCHAR(256) x
participation
request
Type of
volunteer
type VARCHAR(32) x
participation in
the campaign
Identifier code
of donation
donation_docu documents
VARCHAR(32) FK x
ment_id contain this
details of
cashflow
Spending
purpose VARCHAR(256) purpose of the x
transaction
Quantity of
quantity INT x
transaction item
Price of a
price DOUBLE x
transaction item
Payment date of
payment_date DATETIME x
transaction item
Transaction item
payer_name VARCHAR(64) x
payer
Unit receiving
recipient_name VARCHAR(64)
relief money
Address of the
address LONGTEXT unit receiving
the relief money
Cashflow details
is_active TINYINT document active x
status
Identifier code
id VARCHAR(32) of donation PK x x
document
Identifier code
of campaign
campaign_id VARCHAR(32) owns this FK x
donation
document
Title of donation
title VARCHAR(256) x
document
Link to donation
url VARCHAR(256) x
document
Type of
type VARCHAR(32) document to be x
uploaded
Identifier code
id VARCHAR(32) PK x x
of location
Name of
name VARCHAR(256) x
location
Address of
address VARCHAR(256) x
location
Latitude of
latitude VARCHAR(32) x
location
Longitude of
longitude VARCHAR(32) x
location
Identifier code
id VARCHAR(32) of object’s PK x x
location
Identifier code
of organization
organization_id VARCHAR(32) FK
relate to
location
Identifier code
project_id VARCHAR(32) of project relate FK
to location
Identifier code
location_id VARCHAR(32) of related FK x
location
Object's location
type VARCHAR(32) x
type
Identifier
id VARCHAR(32) code of PK x x
organization
Name of
name VARCHAR(256) x
organization
English name
eng_name VARCHAR(256) of
organization
Description of
information
description LONGTEXT x
about the
organization
Charity
mission LONGTEXT mission of the
organization
Strategic
vision in the
vision LONGTEXT activities of
the
organization
Covers of
cover LONGTEXT
organization
Website
website VARCHAR(256) about the
organization
Organization's
founding_date DATETIME x
founding date
License to
operating_license VARCHAR(256) operate the
organization
Active status
is_active TINYINT of x
organization
Information
showing if the
is_modify TINYINT organization x
is being
modified
Identifier of
this
approved_by VARCHAR(32) FK
organization
reviewer
Review date
approved_date DATETIME of
organization
Result code of
organization
result_code INT create or x
update
request
Result
message of
organization
result_message VARCHAR(256) x
create or
update
request
Result note
from
administrator
of
result_note VARCHAR(256)
organization
create or
update
request
Message from
organization
note VARCHAR(256)
creator or
update
Type of
type VARCHAR(32)
organization
Identifier code
id VARCHAR(32) of payment PK x x
method
Title of payment
title VARCHAR(32) x
method
Payment
is_active TINYINT method active x
status
Short
abbreviation of
key_name VARCHAR(32) x
payment
method
Identifier code
of organization
organization_id VARCHAR(32) FK x
owns this
project
Description of
description LONGTEXT
project
Link to logo of
logo LONGTEXT
project
Link to cover of
cover LONGTEXT
project
Active status of
is_active TINYINT x
project
Identifier of the
created_by VARCHAR(32) creator of this FK x
project
Identifier of this
approved_by VARCHAR(32) FK
projectreviewer
Review date of
approved_date DATETIME
project
Result code of
result_code INT project create or x
update request
Result message
of project create
result_message VARCHAR(256) x
or update
request
Code used to
category VARCHAR(256) categorize
projects
Message from
note VARCHAR(256) project creator
or update
2. Test Plan
2.1 Test Stages
Stage of Test
Type of Test
System Acceptance
Function testing X X
API testing X
Execute tests
KhangTL Leader
Review test cases
Execute tests
PhucNM Member
Review test cases
Trello Facebook
3. Test Cases
The detailed test case document will be described at this link: Report5_Test Case
Document.xlsx
Code packages
VCCS.web_admin.zip
1 Module Device
VCCS.core_client_app.zip
VCCS.fetch_data_service.zip
2 Module Service
VCCS.core_service.zip
Databases
Documents
Figure
c. Open and extract SEQ Figure \* ARABIC 41VCCS.core_service.zip
VCCS.fetch_data_service.zip/ - Open Intellij to a specific
folder
d. Open application.properties and edit database connection configuration:
spring.datasource.primary.url=jdbc:mysql://localhost:3306/conneto
spring.datasource.primary.username=root
spring.datasource.primary.password=*Input your database password*
spring.datasource.primary.driver–class–name=com.mysql.cj.jdbc.Driver
e. Run project fetch_data_service/ core_service with Intellij
1 This is the notification bell; you can click in to see the notifications
A search bar where you can input the campaign name and it will direct you
2
to explore screen with your result.
Category box, when you clicked in you will be directed to explore screen
3
with all the campaigns with the category.
When you click this button, you will be directed to explore screen with all
4
the donation campaigns.
Donation campaign card, when you click in you will be directed to the
5
donation campaign details.
When you click this button, you will be directed to explore screen with all
7
the recruitment campaigns.
Recruitment campaign card, when you click in you will be directed to the
8
recruitment campaign details.
Step 3. In the payment screen you input the money amount and message, you can
also choose if you want to be incognito or not, after that press “Tiếp tục”.
Step 5. After confirm in MOMO platform you now redirected to success page.
Step 2. Campaign details screen will be displayed, now press the “Tham Gia”
button
Overview: The Conneto web application supports the Admin and Organization manager
to manage projects, campaigns, organizations, documents. The web application also
supports manage human resources
Features:
<Admin, Organization Manager> Login with account
Step 1: Enter username and password
Acronym Definition
BR Business Rule
UC Use Case
FE Feature
LI Limitation
EX Exclusion
QR Quick Response
Organization Manager A representative of the organization that was created on our system.
2. References
1. Twilio: https://www.twilio.com/docs
2. Spring Boot: https://spring.io/projects/spring–boot
3. Angular: https://angular.io/docs
4. Material Design: https://material.io/design
5. Flutter: https://flutter.dev/docs
6. GET: https://pub.dev/packages/get
7. MoMo: https://developers.momo.vn