Professional Documents
Culture Documents
1|Page
Table of Contents
I. Project Report.....................................................................................................................................3
1. Status Report.................................................................................................................................3
2. Team Involvements........................................................................................................................3
3. Issues/Suggestions.........................................................................................................................3
II. System Requirement Specification.....................................................................................................4
1. Overall Description.........................................................................................................................4
1.1 Product Overview.....................................................................................................................4
1.2 Business Rules..........................................................................................................................5
2. User Requirements........................................................................................................................6
2.1 Overview..................................................................................................................................6
2.2 <<Feature Name 1 – i.e Order Meals>>...................................................................................7
2.3 <<Feature name 2 – i.e: Meal Subscriptions>>......................................................................10
2.4 <<Next Feature Name..>>......................................................................................................11
3. Functional Requirements.............................................................................................................12
3.1 System Functional Overview..................................................................................................12
3.2 <<Feature Name 1>>..............................................................................................................14
3.3 <<Feature Name 2>>..............................................................................................................14
4. Non-Functional Requirements.....................................................................................................15
4.1 External Interfaces.................................................................................................................15
4.2 Quality Attributes...................................................................................................................16
5. Other Requirements.....................................................................................................................18
5.1 Appendix1 - Messages List.....................................................................................................18
5.2 Appendix2 - …........................................................................................................................18
5.3 ….............................................................................................................................................18
2|Page
I. Project Report
1. Status Report
# Work Item Status Notes (Work Item in Details)
Complete
1 Create Document d
Complete
2 Specific Overall Description d
Complete
3 Review d
2. Team Involvements
# Task Member Notes (Task Details, etc.)
Change name project, change content
1 Create Document Đạt menu,..
Specific overview system, insert context
2 Product overview Nguyên diagram
Đạt,
3 Business Rules Nguyên Insert business rules follow BA
Đạt,Nguyê
4 Use case detail n Include diagram and use case detail
5 Screen Flow Nguyên Include diagram and description detail
Entity Relationship
6 Diagram Đat Include diagram and description
Đạt,Nguyê
7 Review n Update small changes and check spelling
3. Issues/Suggestions
# Issue Status Notes (Solution, Suggestion, etc.)
1 Pending
2 In Progress
3 Completed
3|Page
II. Software Requirement Specification
1. Overall Description
1.1 Product Overview
When the quality of life is improved, people today have more and more needs to exercise,
gym training to improve their life and mental health. However, the system of personal gyms and
gyms in Vietnam has only been developed for about a decade now, most people when they first
come in contact and intend to go to the gym have no background knowledge and skills. find the gym
through the recommendation of friends. The usual PT rental is also through the brokerage of the
gym. This leads to trainees being limited in choosing the right environment and PT for their needs,
easily losing motivation and giving up halfway. Going to the gym to meet and discuss training
schedules and costs is also difficult and time-consuming. A website with a list of many registered PTs
with reviews of each previous hire will help new users to have an intuitive look and many options to
suit their needs.
Many people have wished for a system that allows users to save time on meeting and
traveling, while ensuring safety and interests for both parties when signing up for PT. When users log
in to the system, they will have access to a list of PTs who have met the qualification criteria with
reviews from previous users. When the desired PT is selected, the user and PT can contact them.
Contact and negotiate appointment schedules as well as costs directly through the system, the
system will act as an intermediary to ensure the interests and safety of both parties. This will
improve their quality of work life and productivity.
4|Page
1.2 Business Rules
5|Page
ID Rule Definition
BR-01 Users need to deposit in advance the tuition fee of 1 training session.
BR-04 It is not possible to enroll in the course of 2 or more different PTs at the same time
BR-06 Log in without selecting “Remember” then the system will automatically log out after 24
hours
BR-07 Login account must be more than 6 characters, not more than 30 characters
BR-11 When changing the password, the old password must be entered
BR-12 When you forget your password, you must use your registered phone number/email to
retrieve it
BR-23 When the training session fails, 90% of the tuition fee will be transferred to the party
present
BR-29 All personal information of customers must be kept confidential, only disclosed when
allowed by the customer
BR-30 Blog content and status posted by PT are always pre-censored by the moderation team
BR-31 The rental price of each PT is pre-agreed with the business, PT is not allowed to change the
rent on its own
BR-32 When users and PTs successfully book a training schedule, training information will be
saved into the system for easy business management
BR-33 Complaints and bad reviews from users are always checked for authenticity before being
updated to PT's profile.
BR-34 Gyms must always be reminded to update operating hours and prices when there are
changes
BR-35 The schedule always reminds PT when it's time to practice with the user
6|Page
BR-36 User support message response time is about 15 minutes, Active from 7:00 am to 10:00 pm
BR-37 Reviews and stars of old users about PT after being moderated are always public, PT has
no right to add, edit and delete
2. User Requirements
2.1 Overview
a. Use Case Diagram
b. System Actors
# Actor Description
1 Administrator Role in system: Mange account, request,…
7|Page
2 User Role in system: Use system for assis gym.
8|Page
UC-51 Accept register PT request Admin
UC-52 View course schedule User
UC-53 View detail schedule User
UC-54 Accept request change from PT User
9|Page
UC-2:
UC ID and Name: UC-12 Manager profile
Created By: Lê Hữu Nguyên Date Created: 25/06//2021
Primary Actor: Admin, PT, User Secondary Actors:
Trigger: Admin, PT or user enter the profile section to change name, photo and other
information
Description: The user selects the items that need to be changed in the profile to perform
the update
Preconditions: 1. The device must be connected to the internet
2. Account must be logged in
Post-conditions: The interface shows all the personal information from the user on the
screen
Normal Flow: 1. Click on “Profile” function
2. select the information you want to edit
3. Edit and select save to update
Alternative Flows: N/A
Exceptions: 1 . Newly updated information may not pass censorship and be rolledback
Priority: Medium
Frequency of Use: medium
Business Rules: BR-02, BR-03, BR-29
Other Information: N/A
Assumptions: N/A
UC-3:
UC ID and Name: UC-11 Resgister training course
10 | P a g e
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: User Secondary Actors: N/A
Trigger: User click “Register” on list PT table
Description: Send register training course request to PT
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be User
4. User isn’t registering another PT
Post-conditions: The interface displays button Register on list PT table, then bring user to
payment interface. After payment complete, send the the request to PT
Normal Flow:
1. Login with User account
2. Click “View list PT” or choose on home screen
3. Click Register button
4. Choose payment method and payment then click “OK”
5. Notification: “Register success, Please wait the PT respond”
6. Click “OK”
Alternative Flows: N/A
Exceptions: Exception about payment
Priority: Hight
Frequency of Use: Hight
Business Rules: BR-01, BR-02, BR-03, BR-04, BR-25, BR-29, BR-32, BR-36
Other Information: N/A
Assumptions: N/A
UC-4:
UC ID and Name: UC-28 View user training
Created By: Lê Hữu Nguyên Date Created: 25/06//2021
11 | P a g e
Primary Actor: PT Secondary Actors:
Trigger: PT go to the training schedule management section and select view liters of
user training to see who has a weekly training schedule with PT
Description: PT chooses which users it has contracts with
Preconditions: 1. The device must be connected to the internet
2. Must login PT . account
Post-conditions: The interface shows all the information of the users who have an
internship contract with PT
Normal Flow: 1. Click on the training schedule management function
2. select view list user training
3. select 1 user in liter to view detailed information
UC-5:
UC ID and Name: UC-08 View list of PT with rating
Created By: Lê Hữu Nguyên Date Created: 25/06//2021
Primary Actor: User Secondary Actors: Admin
Trigger: The homepage interface after the User logs in is a list of PTs who are
cooperating with business, prioritizing new PTs, PTs have many empty
12 | P a g e
calendars and PTs with high ratings from old users
Description: User see a list of PTs that can choose to schedule an appointment
Preconditions: 1. The device must be connected to the internet
2. Account must be logged in
Post-conditions: The interface shows all the information of the PTs that can be selected
Normal Flow: 1. Login account
2. Back to the main page
3. Select 1 PT per liter to view detailed information
UC-6:
UC ID and Name: UC-54 View detailed schedule
Created By: Lê Hữu Nguyên Date Created: 25/06//2021
Primary Actor: User Secondary Actors:
Trigger: Users select the timetable from the account management page to view the
details of their planned training schedules
Description: User see the list of training sessions from the timetable
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
13 | P a g e
3. Must have at least 1 practice schedule with 1 PT to be able to watch
Post-conditions: The interface shows all the information about the training sessions on
the screen
Normal Flow:
1. From the main page select manage episode schedule
2. Select timetable view
UC-7:
UC ID and Name: UC-34 Update work schedule
Created By: Lê Hữu Nguyên Date Created: 25/06//2021
Primary Actor: Gym Secondary Actors:
Trigger: The gym updates the working schedule and daily operation time to help PT
and users easily schedule.
Description: Gym Update information about working schedule
Preconditions: 1. The device must be connected to the internet
2. Gym account must be logged in
3. Must update accurate information weekly
Post-conditions: The interface shows previous work schedule information so that the
gym can change
Normal Flow:
14 | P a g e
1. From the main page select manage work schedule
2. Select edit work schedule
UC-8:
UC ID and Name: UC-04 Payment
Created By: Lê Hữu Nguyên Date Created: 25/06//2021
Primary Actor: User Secondary Actors: PT
Trigger: User after completing the training session, feeling satisfied and confirming
that there will be no complaints, choose to pay to transfer money to PT.
Description: User pays PT when feeling that the training session is completed well
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Must confirm there will be no further complaints.
Post-conditions: The interface shows the details of the training session just performed
and the agreed amount for the user to confirm the payment
Normal Flow:
1. From the schedule management area select the current session
2. View training session information and the amount to pay
3. Confirm no claim after paid
4. Payment confirmation
15 | P a g e
Alternative Flows: N/A
Exceptions: 1. Problems related to online payment
Priority: Medium
Frequency of Use: Hight
Business Rules: BR-02, BR-03.
Other Information: N/A
Assumptions: N/A
UC-9:
UC ID and Name: UC-36 Add user
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: Admin Secondary Actors: N/A
Trigger: Admin click “Add account” on list account table.
Description: Admin create account then add to system.
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be Admin
4. This new account hasn’t existed yet.
Post-conditions: The interface displays the fields to enter information
Normal Flow:
1. Login with Admin account
2. Click “Manage account”
3. Click “Add account ” on list account table
4. Input all fields
5. Click Create.
16 | P a g e
Priority: Medium
Frequency of Use: Hight
Business Rules: BR-02, BR-03, BR-08, BR-15
Other Information: N/A
Assumptions: N/A
UC-10:
UC ID and Name: UC-23 Upload Post
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: PT Secondary Actors: N/A
Trigger: PT input post then click “Post”
Description: Upload post to PT Blog
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be PT
Post-conditions: The interface displays the fields to enter post
Normal Flow:
1. Login with PTaccount
2. Click “My Blog”
3. Input field
5. Click Create.
17 | P a g e
Assumptions: N/A
UC-11:
UC ID and Name: UC-27 Update process
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: PT Secondary Actors: N/A
Trigger: PT click “Complete” after a training session
Description: After completed training session, PT update process of training course
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be PT
4. The training session must be completed, and no report after 24 hour.
Post-conditions: The interface displays process of course and complete button
Normal Flow:
1. Login with PT account
2. Click “Manage course”
3. Choose course want to update process
4. Choose view process
5. Click Complete.
18 | P a g e
UC-12:
UC ID and Name: UC-18 Chat
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: PT, User Secondary Actors: N/A
Trigger: PT click chat box, input message then enter
Description: User and PT can send message and image or call to another
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be PT or User
Post-conditions: The interface displays chat box to send message
Normal Flow:
1. Login with PT or User account
2. Click button chat on header or chat box or button chat on list PT
3. Input message, image or both
4. Click “send”
Alternative Flows: N/A
Exceptions: 1. User import not image or video file
Priority: Medium
Frequency of Use: Hight
Business Rules: BR-02, BR-03
Other Information: N/A
Assumptions: N/A
19 | P a g e
UC-13:
UC ID and Name: UC-31 Request change schedule
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: PT, User Secondary Actors: N/A
Trigger: PT, User click “Change schedule” on table schedule
Description: User and PT change sesstion training to another session.
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be PT or User
4. The new session does not have schedule before.
Post-conditions: The interface displays schedule table. Then send the the request to the other
one. This one will receive the notification of request.
Normal Flow:
1. Login with PT or User account
2. Click “My course”
3. Choose course that will be change schedule
4. Click “Change schedule”
5. Drag session to new place on table.
6. Click “Save”
Alternative Flows: N/A
Exceptions: N/A
Priority: Medium
Frequency of Use: Hight
Business Rules: BR-02, BR-03, BR 27
Other Information: N/A
Assumptions: N/A
20 | P a g e
UC-14:
UC ID and Name: UC-30 Request cancel schedule
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: PT, User Secondary Actors: N/A
Trigger: PT, User click “Cancel schedule” on table schedule
Description: User and PT cancel sesstion training to another session.
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be PT or User
4. PT or User have course training
Post-conditions: The interface displays schedule table and “Cancel” label. Then send the the
request to the other one. This one will receive the notification of request.
Normal Flow:
1. Login with PT or User account
2. Click “My course”
3. Choose course that will be change schedule
4. Click “View schedule”
5. Click “Cancel” label place on table.
6. Click “Confirm” on dialog mesage
Alternative Flows: N/A
Exceptions: N/A
Priority: Medium
Frequency of Use: Hight
Business Rules: BR-02, BR-03, BR-27
Other Information: N/A
Assumptions: N/A
UC-15:
21 | P a g e
UC ID and Name: UC-07 Report
Created By: Nguyễn Thành Đạt Date Created: 25/06//2021
Primary Actor: PT, User Secondary Actors: N/A
Trigger: PT, User input report and click “Send report”
Description: User or PT send report to system.
Preconditions: 1. The device must be connected to the internet
2. User account must be logged in
3. Account must be PT or User
4. PT or User have course training
Post-conditions: The interface displays fields to input report and upload image/video. Then
send the the request to the system.
Normal Flow:
1. Login with PT or User account
2. Click “My course”
3. Choose course to send report
4. Click “Report”
5. Choose report reason, input report detail to text fields and upload image ỏ
video to report.
6. Click “Send report”
Alternative Flows: N/A
Exceptions: Sometimes the report is not accurate
Priority: Medium
Frequency of Use: Hight
Business Rules: BR-02, BR-03, BR-33, BR-37
Other Information: N/A
Assumptions: N/A
22 | P a g e
3. Functional Requirements
3.1 System Functional Overview
a. Screen Flow
b. Screen Details
# Feature Screen Description
1 Login Account Login Login the Account to more action
2 Register New
Account Register Register account for new user
3 Forget For user who forget password can verified and
Get New Password Password get new password
4 View Homepage Homepage Show all PT with information and photo
5 Manage Profile Profile Edit, add, delete information of user
6 View profile of PT PT Profile View all information of a PT have been chosen
7 View all blog of
chosen PT PT Blog View and comment about all Blog of the PT
8 View training
course of chosen View the time and information of the PT’s
PT PT course course
9 Register the
course of chosen
PT Register course Register the course of PT
1 View all information of the course have been
0 View My Course My Course joined
1 Send the report about PT or training session to
1 Send report Report Admin
23 | P a g e
1
2 Send rating Rating Rating the PT
1 payment confirmation after completing the
3 Payment Payment training session
1 View Process
4 detail View Process View all Process details
1
5 View Profile My Profile View all information in profile
1
6 Update Profile Update Edit, Add, Delete information in profile
1 View Training Training
7 Schedule Schedule View training schedule with details information
1 Manage Request
8 training Request View the request of user for new training course
1
9 View Blog Blog View the blog PT have been written
2
0 Edit blog Edit post Update or delete blog
2
1 Upload post Upload Write new blog and upload
2 Manage User’s add, edit, delete or update permissions for
2 Account Manage User the user’s account
2 Manage User’s Manage View the request from user and decide to
3 request request processing
2 content content censor posts or content posted from user, PT,
4 moderation moderation GYM
2 Upload GYM Upload GYM edit the posted information about price,
5 information information operating time
2 Upload work Upload work Update if there is a change in working schedule
6 schedule schedule and related information
c. Screen Authorization
Screen User PT GYM Admin Guest
Login X X X X
Register X
Forget Password X X X X
Homepage X X X X X
Profile X X X X
PT Profile X
PT Blog X
PT course X
Register course X
My Course X
Report X
Rating X
Payment X
24 | P a g e
View Process X
My Profile X X X X
Update X X X X
Training Schedule X
Request X
Blog X
Edit post X
Upload X
Manage User X
Manage request X
content moderation X
Upload GYM information X
Upload work schedule X
d. Non-Screen Functions
# Feature System Function Description
collect user aggregates personal information and information about
1 Collect data
information search habits, reading habits and exercise habits
recommend
PT articles and recommendations on PT, products and articles
2 Propose
related users may be interested in based on user behavior
products
auto automatically censor and remove if detecting posts
3 Censorship
censorship or information that violates community standards
training
automatically send notifications to remind users
4 schedule Remind
and PTs when it's time to exercise on the schedule
reminder
calculate the calculate the amount that the user needs to pay
5 amount to be calculate money based on the parameters from the PT and the
paid number of training sessions completed
25 | P a g e
e. Entity Relationship Diagram
Entities List
# Entity Description
1 Admin Properties: ID, Name, Account, Phone,Eemail
Properties: ID, Name, Account, Phone, Email, DOB, Gender,
2 User
PaymentID
Properties: ID, Name, Account, Phone, Email, DOB, Gender,
3 PT
BlogID, PaymentID
4 Gym Properties: ID, Name, Account, Phone, Email, Place
Function trigger:
Function description:
Actor/Role: Admin, User, PT, Gym
Purpose: Verify and set permistion for account
Interface: - 2 textfields to enter user name and password
- 2 links to sign in by facebook or instagram
- 1 button to sign in
- 1 link to register user
- 1 link “Forgot Pasword”
Screen layout:
26 | P a g e
Function Detail:
- Fields allow enter character
- Verify account begore sign in
Function trigger:
Function description:
Actor/Role: Admin
Purpose: Manage account in system
Interface: - 1 table to display information
- 1 checkbox to choose account
- 1 button to delete account
- 1 button to change role
- 1 button to back to home
27 | P a g e
Screen layout:
Function Detail:
- Data will be load from database with pagging
Function trigger:
Function description:
Actor/Role: User
Purpose: Show list of PT and information to rent
Interface: - 1 table to display list of PT
- 1 menu bar
- 2 search field
- 1 button to login
- 1 Messenger to chat
Screen layout:
28 | P a g e
Function Detail:
- Pop-up Messenger show current chatbox of user
- When click PT, page will forward to PT Information page
- When user input in search field, page will search PT with filter
Function trigger:
Function description:
Actor/Role: User
Purpose: Show list of PT and information to rent
Interface:
- 1 menu bar
- 1 search field
- 1 button to login
- 1 Messenger to chat
- 1 avatar image
- 3 button to Rent, Donate, Chat
- Information of PT
- Achievements of PT
Screen layout:
29 | P a g e
Function Detail:
- Pop-up Messenger show current chatbox of user
- When click “Thuê”, request will send to PT
- When click chat, show chat box to user
3.2 Priority
4. Non-Functional Requirements
4.1 Quality Attributes
4.1.1: Safety
SF-1: Not allow users from entering the wrong account too many times to prevent login tool or other
tries to break into the account
- TAG : Safety.Login.Captcha
30 | P a g e
- AMBITION : Prevent users from entering the wrong account too many times
- GOAL: + After 3 failed login attempts, user must enter captcha code in each next login
+ Then immediately send an email to the registered email to notify the user so that the user
can confirm that the person who just tried to log into the account is them or not
- STRETCH: When a user enters an old password, notify the user when the time password has been
changed
- WISH: + After 5 failed login attempts, the user cannot log in again within 30 minutes, or can log in
immediately using the password reset method via email if the username entered correctly.
+ After 10 unsuccessful login attempts, the user cannot log in anymore and must send an
email requesting to unlock the account
4.1.2: Usability
US-1: Searching for users must be fast
- TAG: SearchingUser.Processing.Time
- AMBITION: Don't let the user wait long while processing the search
- SCALE: Time
- METER: Measured from the user clicking the “Search” icon to the screen showing the list of users
found
Longest: 2 seconds
- TAG : Safety.Register
- AMBITION : Keep input that corect format so that the user does not have to re-enter from the
beginning.
- GOAL: + After click Register, all input in field that corect format will be kept
31 | P a g e
- STRETCH: + After 2 failed register attemps, show corect format of field that user input wrong
format.
+ If user just input space in field, trim this input and show notify at field.
- WISH: + After 5 failed register attempts, suggest correct input base on user input
+ After 10 failed register attempts, the user cannot Register again within 10 minutes
4.1.4: Maintainability
MT-1: With each quarterly system upgrade will not last more than 30 minutes.
- TAG : Maintainability.Time
- AMBITION : With each quarterly system upgrade will not last more than 30 minutes.
- SCALE: Time
4. Swimlane
4.1: Rent PT
32 | P a g e