Professional Documents
Culture Documents
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.
Student’s signature
Grading grid
P4 P5 P6 M3 M4 M5 D2 D3
Summative Feedback: Resubmission Feedback:
List of tables
Table 1: Survey result ................................................................................................................................................... 8
Table 2: Survey after coded ........................................................................................................................................ 10
Table 3: Test result on 5/7/2021 ................................................................................................................................ 38
Table 4: Test result on 7/7/2021 ................................................................................................................................ 39
Table 5: Task breakdown structure ............................................................................................................................ 45
I. Introduction
Following the plan and development that has been reported in the first report, the second phase of the
application creation is started and the documentation of it is written on this report. In the first part, the
report showing the review and feedback of the user, by that way knowing if the user is satisfacted with
the website or not. On the second part, the code folder and example code of the back end is shown
together with the frontend view and evidence of using GitHub and deploying to the server during the
process of development. The third part evaluating the website based on its performance, facter that affect
its performance and the strength and weekness of the website at current state together with how can it
be improved in ther future. The last part of the report is about evaluating the contribution of each team
member and conclusion of the project.
Screencast: https://www.youtube.com/watch?v=8mtuaaa1gR4&ab_channel=PhanV%C3%A2nPhong
2.2. Survey
As the qualitative primary research on the user experience can’t be taken for all user of the system, a
survey is created to support the research on user experience as a quanitative method. After 1 week, the
survey have the following answer:
Is the
Do you interface of Is the Did you Do you want to
Can you see the the website chatbox Do you find encounter improve the
log in to website Do you find appropriate Is the function such any errors or website or give
the running the website and easy to information useful to functions problems us
system? stable? convenient? use? correct? you? enough? during use? suggestions?
Yes Yes 3 3 Yes Yes Yes No No
Yes Yes 2 5 Yes Maybe Yes No No
Yes Yes 5 4 Yes No Yes No No
Yes Yes 4 3 Yes Maybe Yes No No
need more
function on
notification of
Can't see change
Yes Yes 3 4 Yes Yes Yes the avatar activities
I have some
problems It should have a
when using message box
the login or notify for
Yes Yes 4 5 Yes Yes Yes function validation.
I want to
customize
Nothing at some fields in
Yes Yes 4 4 Yes Maybe Yes the moment the export file
I want to
customize
Nothing at some fields in
Yes Yes 4 4 Yes Maybe Yes the moment the export file
Upload multiple
Yes A little 3 5 Yes Yes Yes Font error items
Yes Yes 3 3 Yes Maybe Yes Nothing Nothing
The main
function is
good
enough, The web might
though have a view to
some watch all
additional trainers and
functions trainees
can be assigned to a
Yes Yes 4 4 Yes Maybe added. No. course.
Review
uploaded
Yes Yes 4 4 Yes Yes Yes Not any image
I'm
allowed
to log in No. The system
to the is good enough
trainer No problem at its current
Yes A little 3 3 Yes only. Yes appeared. state.
No problem
appeared on
the main
function for
staff, admin,
trainer, and
Yes Yes 4 5 Yes Yes Yes trainee. Not necessary.
For better evaluation, the result of the survey should be changed into numerical code like the following.
Can you log in to the system?
Yes: 1
No: 0
Do you see the website running stable?
Yes: 2
A little: 1
No: 0
Is the information correct?
Yes: 1
No: 0
Is the chatbox useful:
Yes: 2
Maybe or unknown: 1
No: 0
Do you find such functions enough?
Yes: 2
Can be improved: 1
No: 0
Table 2: Survey after coded
Is the
Do you see chatbox
Can you log the website Do you find the Is the interface of the Is the function Do you find
in to the running website website appropriate information useful to such functions
system? stable? convenient? and easy to use? correct? you? enough?
1 2 3 3 1 2 2
1 2 2 5 1 1 2
1 2 5 4 1 0 2
1 2 4 3 1 1 2
1 2 3 4 1 2 2
1 2 4 5 1 2 2
1 2 4 4 1 1 2
1 2 4 4 1 1 2
1 1 3 5 1 2 2
1 2 3 3 1 1 2
1 2 4 4 1 1 1
1 2 4 4 1 2 2
1 1 3 3 1 1 2
1 2 4 5 1 2 2
3. Interpret
To make the information becomes easier to be followed, the data above can be transferred to historgram
form. The positive choice will be weighted with a larger number in the code in table 2. Which makes the
positive answer stay on the right of the histogram when the negative answer stays on the left.
12
NO A LITTLE YES
The result showing that out of 14 surveyed people, 12 think that the website is stable and 2 think that the
website is not always stable. This is an acceptable results as sometime the website won’t be stable due to
connection problem of the user, not the website itself. Though a deeper survey or interview taken on the
people who don’t see the website run stable can be taken to improve the performent of the website.
Do you find the website convenient?
1 1
1 2 3 4 5
The histogram show that most user think the website is convenient or very convenient to use. Only 1
person thinks the website is unconvinient and 5 people think that the website have a decent performent
based on the convenient rating.
Is the interface of the website appropriate and easy
to use?
4 4
0 0
1 2 3 4 5
Most surveyed user think that the website is appropriate and easy to use. There is no user think that the
websit is difficult to use according to the survey.
Is the information correct?
14
0 1
Arcording to the survey, all use think the information is correct. This is an important factor for the
deployment of the website.
Is the chatbox function useful to you?
Out of 14 surveyed people, 6 people think the chatbox function is useful and only 1 thinks it is not useful,
this making the chatbox function become a useful function that should be implemented on the website.
Do you find such functions enough?
13
0 1
Arcording to the survey, 13 of 14 surveyed people think the website has already had enough function, only 1 person
think the website has already had enough function but can still be improved. This mean the function has already
met the requirement for the website.
4. Evaluate
According to the interview, the website has already had enough function and it has an appropriate layout
for the user. Though, the function is not really easy to use and only one of the 2 interviewed person thinks
that it is easy to use.
From the result of the survey, its shown that the website has all the required functions and can run
properly, most of the users think that the website is appropriate, comfortable and easy to use and the
additional functions are useful.
The result of the survey and interview show that the website has already had enough functions and is
ready to be deployed.
III. Application development
1. Folder structure
The folder structure of the website has 3 main folders. The public folder is used to store image and video
used for the website. The SRC folder is used to store back end code which use NestJS as framework and
TypeScript as the main programing language. The views folder is used to store frontend code which use
HTML under HBS extension.
The example code bellow show the service (or provider) code of the category. It can be injected as dependency
which can pass the information between database and the website through controllers’s contructor. Helping the
controller controlling the information flow. The code from top to bottom are create category, view one category,
view category list, update category, and delete category.
Figure 11: Example code for service (provider)
The code below is the module of the catalgory, it act as a decorator that support to organize the structure of the
application, it also help the developer encapsulate the provider, making the providers is unable to be injected
without directly imported to the current module.
After logging in to the admin or staff account, the user will be moved to the chat screen which allow them
to chat to other admins or staffs.
Figure 14: Chat screen
As a admin or staff, the user can press on Trainees, Trainee List to view the list of trainee those are available
on the system.
The admin and staff can add a new trainee to the website by pressing on Trainees/Add Trainee, after filling in the
form and press submit, a new trainee can be added to the database and show on the website.
Similar to the trainee list, the trainer list view can be accessed by an admin or user account.
Figure 18: Trainer account
As an admin or staff, the user can add an additional trainer or trainee to the website, bellow is the form
to be filled in to add a trainer to the website.
The information of a trainer and trainee can be edited by a admin or staff, after pressing on the edit icon
next to the avatar of a trainer or trainee, the user is moved to the editing view which is automatically filled
with the information of the related account. The user can change the information and press on submit
button to update the information on the website.
An staff or admin can views the category list by pressing on the button Category/ Category List on navigation bar.
Figure 21: Category list
The course view can be accessed by admin and staff via Course/ Course List button on navigation bar.
Figure 23: Course list view
A staff can add a new course to the database by pressing on Course/ Add course, then fill in the form
bellow and press submit.
The course detail list can be viewed by the staff or admin which show the information of the course and
the trainer assigned to it.
As a admin and staff, the user can access the subject list by pressing on Subject/ Subject List on the navigation bar.
The staff and admin can view the registration list by accessing it throw the navigation bar which show
which trainee is assigned to which course.
As a trainer or trainee, the user can view or search for the course available on the website with the trainer
that has been assigned to the course.
The trainer list is also available to be viewed by a trainer or trainee which has already been logged into the
account.
Figure 34: Trainer list views
4. Using GitHub
During the development process of the website, GitHub is used as a collaboration. Each programmer code
there own part and push it to the GitHub and pull a new code down when there is a new update. With the
changlog of the GitHub, the leader “Nguyen Thi Hoa An” can manage and reverse the code back to any
version if necessary. Bellow is the evidence of using GitHub during the development process.
Figure 35: Evidence of using GitHub
5. Sever
The website is pushed on the internet using BitSive SSH Client as server.
Figure 36: Server - Bitsive SSH Client
Figure 37: Cloud Bitsive Sterm
During the test on 5/7/2021, 4 test cases from 6 to 9 was failed as the unauthorized login will move the user to an error page.
This was fixed by creating a new HTML site for unauthorized login, which will be shown up when the user enters a wrong password
or unauthorized account. The test after the fixing is shown in Table 2.
Typo problem:
In the version on 5/7/2021, there were typos on some web pages like Trainer become Trainer ID or some pages shown
Trainee as Student. This was fixed in the version on 7/7/2021.
Anonymous chat:
In case 33, even though the dashboard work as intended, the version on 5/7/2021 allows the user to enter their name for the
dashboard, making anonymous messenger become possible. This was changed in the version on 7/7/2021 which will show the user
name as the name in the dashboard instead of an entered name.
Figure 40: Dashboard on 5/7/2021 version
5.2. Weakness
Forgot password is not implemented: The forgot password haven’t been implemented on the system,
making the user who has forgotten their password having to contact the admin or staff that assigned them
to the system to retrieve their password.
Login by third party: Some function allow user to login via google or facebook which is normally appeared
on many website isn’t implemented, making the website lack of convenient to some user.
Session based login: Eventhough the session based login has an increased security comparing to cookie
based login, it is inconvenient for user that if they close their webbrowser and enter the website again,
they will have to login again. In the future, a “Remember Password” check box can be used to help the
user feel more convenient.
Space for improvement: Eventhough not required by the stakeholders, some improvement can still be
applied like mentioned on the 3 section of the Application Evaluation.
V. Team evaluation
1. Task breakdown
Table 5: Task breakdown structure
Task breakdown table
Nguyễn Thị Hòa An Team leader
Merge code
Database creation
Interview and survey creation
Design back-end about registation and tester
Design front-end
Nguyễn Trung Hiếu Design back-end about category, course and course
detail
Tester
2. Evaluating
All of the member has finished their part intime, making the deployment on the deadline on 7/7/2021
possible. The team has hosted weekly meeting and a meeting with the stakeholder before the deployment
on 5/7/2021 to discuss further about the detail of the website.
The website has run properly showing that all member has done their work correctly.
V. Conclusion
The website is successfully deployed with all the required function. It has 4 roles for user which is admin,
staff, trainer, trainee.