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
P1 P2 M1 M2 D1 D2
1
Nguyen Van Phong
Learning Outcomes and Assessment Criteria
2
Nguyen Van Phong
business application, problem opportunities not previously improvements to your system
definition statement, proposed considered. and justify the reasons why
solution and development strategy. you have chosen to include (or
Use this questionnaire as part of a not to include) them as part of
M4 Develop a functional
peer-review and document any this business application.
business application based on a
feedback given. specific Software Design
Document with supportive
P5 Develop a functional business evidence of using the preferred
application based on a specified tools, techniques and
business problem. methodologies.
P6 Review the performance of your M5 Analyse the factor that D3 Critically evaluate the
business application against the influence the performance of a strengths and weaknesses of
Problem Definition Statement and business application and use your business application and
initial requirements. them to undertake a critical fully justify opportunities for
review of the design, improvement and further
development and testing stages development.
of your application. Conclude
your review by reflectively
discussing your previously
identified risks.
Submission Format
The submission is in the form of documents/files:
1. The submission is in the form of 1-word document containing required evidences and 1 presentation
if necessary (M2, D1).
You are required to make use of headings, paragraphs, subsections and illustrations as appropriate,
and all work must be supported with research and referenced using the Harvard referencing system.
3
Nguyen Van Phong
Assignment Brief and Guidance
As the technology is being developed rapidly nowadays, FPT Co. desires to build the continuing study
environment throughout the corporation. It is necessary to develop a web-based system, which
manages the activity of “Training” for internal training program of the company. This system can be
used to manage trainee accounts, manage trainers, manage course categories, manage courses,
manage topics, assign topic to course, assign trainer to topic, assign trainee to course.
This is a system used by HR department. We have three roles in this system, an administrator, training
staff and a trainer. The brief description of those roles is as follow.
1. An administrator’s role
Can login to the system through the first page of the application
Can create/edit/delete new user account for trainer/training staff and assign/change (if
existing user) username and a password
2. A training staff’s role
A registered training staff, who is assigned a user name and a password by the
administrator logs in can create trainee accounts by entering details like trainee name,
trainee accounts, age, date of birth, education, main programming language, TOEIC
score, experience details, department, location, etc.
After entering successfully all details for trainees, his/her details are then stored in the
database. The training staff is given a list of trainees for him to view and search. From
the list of trainees, he can also search by trainee account, programming language, TOEIC
score…
Can update, delete trainee accounts
Can manage course categories such as searching, adding, updating and deleting course
categories. Course category includes the information such as course category name and
descriptions.
Can manage courses such as searching, adding, updating and deleting courses. Course
includes course name and description.
Can add topics such as topic name and topic descriptions into a course, add courses into
a category.
Can manage trainer profile such as adding, updating and deleting the information:
Trainer name, External or Internal Type, working place, telephone, and email address.
Can assign trainer to a topic.
Can assign trainee to a course.
3. A trainer’s role
In the same system, the trainer who have been registered by the administrator can login
and can update his profile such as Trainer name, External or Internal Type, education,
working place, telephone, and email address.
Can view courses which have a topic he is assigned to.
Your manager suggests that this would be a great opportunity for you to demonstrate your capabilities
4
Nguyen Van Phong
by designing and developing the application. After considering, you decide to do the project. The
project consists of 4 steps which is divided into two phases. In this first phase, you have to carry on
requirement analysis and produce solution design for the problem.
Assignment Guidance
Task Assessment Criteria Requirement
1 P1 Explore a business-related problem and 1. Use case diagram to capture problem
produce a well-defined Problem Definition requirements
Statement supported by a set of user and 2. Screen-flow diagram and wireframes
system requirements. (prototype screen)
2 P2 Determine any areas of risk related to the 3. Questions to identity any problem from
successful completion of your application. the requirements, use cases, screen-flow
diagram or UI
4. Answer to above questions according to
personal research
3 P3 Research the use of software development 5. ERD describing application database
tools and techniques and identify any that 6. UML Class diagram for the core business
have been selected for the development of processing
this application.
4 M1 Analyze a business-related problem using 7. Detail use case description for important
appropriate methods and produce a well- functions
structured Software Design Document that
defines a proposed solution and includes
relevant details on requirements, system
analysis, system design, coding, testing and
implementation.
5 M2 Compare the differences between the 8. A presentation to introduce different
various software development tools and software development methods (at least
techniques researched and justify your 3), for example: Waterfall, Prototyping,
preferred selection as well as your preferred Spiral, Agile…
software development methodology.
6 D1 Justify the tools and techniques chosen to 9. Critical comparison among development
realize a custom built website. Justify your methods in the presentation and reasons
preferred selection of tools and techniques in for your selection of tools and techniques.
deducing an appropriate solution to a
business related problem.
7 P4 Create a formal questionnaire that 10. Questionnaires to peer-review your
effectively reviews your business application, application
problem definition statement, proposed
solution and development strategy. Use this
questionnaire as part of a peer-review and
5
Nguyen Van Phong
document any feedback given.
8 P5 Develop a functional business application 11. A runnable implementation of the
based on a specified business problem. application
9 P6 Review the performance of your business 12. Test plan
application against the Problem Definition 13. Test results
Statement and initial requirements.
10 M3 Interpret your peer-review feedback and 14. Peer-review feedback and Evaluation on
identify opportunities not previously feedback
considered. 15. Recommendation for improvements
11 M4 Develop a functional business application 16. Sequence diagrams to show business
based on a specific Software Design process of important application functions
Document with supportive evidence of using
the preferred tools, techniques and
methodologies.
12 M5 Analyze the factor that influence the 17. Evaluation on test results
performance of a business application and use
them to undertake a critical review of the
design, development and testing stages of
your application. Conclude your review by
reflectively discussing your previously
identified risks.
13 D2 Evaluate any new insights, ideas or 18. A presentation about your application
potential improvements to your system and
justify the reasons why you have chosen to
include (or not to include) them as part of this
business application.
14 D3 Critically evaluate the strengths and 19. Evaluation of your application in the
weaknesses of your business application and presentation
fully justify opportunities for improvement
and further development.
6
Nguyen Van Phong
Summative Feedback: Resubmission Feedback:
7
Nguyen Van Phong
Table of Contents
I. Introduction............................................................................................................................................................ 10
II. Customer Requirement.......................................................................................................................................... 10
1. An administrator’s role................................................................................................................................... 10
2. A training staff’s role...................................................................................................................................... 10
3. A trainer’s role................................................................................................................................................ 11
III. Areas of risk related to the application................................................................................................................. 11
IV. Functional Requirements Specification................................................................................................................. 12
1. Account.......................................................................................................................................................... 12
2. Category, Course and Topic............................................................................................................................ 12
3. Admin............................................................................................................................................................. 13
4. Trainer............................................................................................................................................................ 13
5. Trainee........................................................................................................................................................... 13
6. Training Staff.................................................................................................................................................. 14
6.1. Manage category................................................................................................................................. 14
6.2. Management Course........................................................................................................................... 14
6.3. Trainee Management.......................................................................................................................... 14
6.4. Trainer Manager.................................................................................................................................. 14
I. Screen-flow diagram............................................................................................................................................... 16
II. Use Case Diagram.................................................................................................................................................. 17
III. Class Diagram........................................................................................................................................................ 19
1. Model Package............................................................................................................................................... 19
2. Entity Package (View Package)....................................................................................................................... 20
3. Controller Package......................................................................................................................................... 21
IV. Entity Relationship Diagram (ERD)........................................................................................................................ 22
V. Database Schema................................................................................................................................................... 23
VI. Functional Description.......................................................................................................................................... 24
1. Login............................................................................................................................................................... 24
2. Logout............................................................................................................................................................ 24
3. List Account by role........................................................................................................................................ 24
4. Create Account............................................................................................................................................... 25
5. Change Password........................................................................................................................................... 26
6. Block Account................................................................................................................................................. 27
7. Unblock Account............................................................................................................................................ 27
8. List All Trainees............................................................................................................................................... 28
9. Search Trainees.............................................................................................................................................. 28
10. Manage Trainees.......................................................................................................................................... 29
11. Manage Trainers........................................................................................................................................... 31
12. List All Trainers............................................................................................................................................. 33
13. List Category by Id........................................................................................................................................ 33
14. Manage Categories...................................................................................................................................... 34
15. List Course by Category................................................................................................................................ 35
16. Manage Course............................................................................................................................................ 36
17. Show Profile Details..................................................................................................................................... 37
18. Edit Trainer Profiles...................................................................................................................................... 38
19. List Learning Courses.................................................................................................................................... 39
20. List Topics of Course..................................................................................................................................... 39
21. View Course................................................................................................................................................. 40
8
Nguyen Van Phong
22. Show Profile Details..................................................................................................................................... 40
23. Edit Trainee Profile....................................................................................................................................... 41
24. List Teaching Courses................................................................................................................................... 42
25. List Topics of Course..................................................................................................................................... 42
26. Manage Topics............................................................................................................................................. 43
VII. Testing.................................................................................................................................................................. 45
1. Review and Test plant.................................................................................................................................... 45
1.1 Scope of the test.................................................................................................................................. 45
1.2 Test Environment.................................................................................................................................. 45
2. Results compared to reality............................................................................................................................ 48
VIII. Peer-review the application................................................................................................................................ 87
IX. User Manual......................................................................................................................................................... 88
1. For Admin....................................................................................................................................................... 88
2. For Training Staff............................................................................................................................................ 89
3. For Trainee..................................................................................................................................................... 97
4. For Trainer.................................................................................................................................................... 100
9
Nguyen Van Phong
Task 1: Overview
I. Introduction
As the technology is being developed rapidly nowadays, FPT Co. desires to build the continuing
study environment throughout the corporation. It is necessary to develop a web-based system,
which manages the activity of “Training” for internal training program of the company.
10
Nguyen Van Phong
Can add topics such as topic name and topic descriptions into a course, add courses into a
category.
Can manage trainer profile such as adding, updating and deleting the information: Trainer
name, External or Internal Type, working place, telephone, and email address.
Can assign trainer to a topic.
Can assign trainee to a course.
3. A trainer’s role
In the same system, the trainer who have been registered by the administrator can login
and can update his profile such as Trainer name, External or Internal Type, education,
working place, telephone, and email address.
Can view courses which have a topic he is assigned to.
Your manager suggests that this would be a great opportunity for you to demonstrate your
capabilities by designing and developing the application. After considering, you decide to do the
project. The project consists of 4 steps which is divided into two phases. In this first phase, you
have to carry on requirement analysis and produce solution design for the problem.
11
Nguyen Van Phong
create an account. Another, all accounts in
the system (except admin accounts) cannot
create an account by themselves but need
to create an account through the admin.
4 Can visitors from outside can view the This is an internal learning system so it can
course information? only view the course after it has been
granted an account to log into the system.
5 So Training Staff cannot create an Yes, they aren’t. If they want to create a
account for themselves? Training Staff account, you need to create an
account through the administrator.
6 Can the account in the Admin system Unable to delete the account in the system,
delete the account? For example, delete admin can only block or unblock the
a teacher or student account account. This is an interesting point in the
system because if you delete the account,
the history of the teaching-learning course
in the system will be lost.
7 Can the Training Staff account block or No, Training Staff account can only edit
unblock the trainee account and trainer? account’s profile of users and assign / enroll
courses or learning / teaching for trainee or
trainer. In addition, when admin create an
account, it’s will empty and cannot use.
Training Staff need provides account’s profile
to unlock account
8 Can the trainee account add new No, they can only add topics in the course,
courses? and the extra course must be through the
Training Staff.
9 So students cannot register their courses Yes, if they want to register they must go
directly on the system, right? through the Training Staff.
IV. Functional Requirements Specification
TMS is a training management system for companies. The system has four roles (role) members:
admin, training staff, trainee and trainer. Members must login (login) into the system through the
first page.
1. Account
Account stores user information, including (id, password (encrypted SHA-256), role, active).
12
Nguyen Van Phong
3. Admin
The main task is to manage user accounts.
List role accounts, except admin role.
Create an account (Create Account) to follow the role. A trainee account or trainer when
newly created in a locked state, cannot be logged in, they need to be trained by the staff full
of information and activated later, even admin cannot activate.
Change the password (Change Password) of the user, to avoid wrong input, the password is
entered twice to check.
Inactive (Block) and activated (Unblock) account, except for a trainee account or a newly
created trainer.
4. Trainer
Students, use the system's resources to study.
Trainer information includes (id, name, type, department, education, phone, email, portrait),
portrait are standardized PNG images of 160x200 size. If there is no image, the default image
no_image.png will be used.
- Trainer can edit information (Edit Profile) individually.
- Trainer can list a list of registered courses; trainers register for these courses by contacting
training staff directly.
- Trainer can access course (View Course) in the list of registered courses, ie see the topic of the
course. The list of course topics is displayed in chronological order to create topics
(createDate).
5. Trainee
The teacher, is managed by training staff and has the right to manage the assigned courses.
Information of trainee includes (id, name, date of birth, title, department, education, main skill
(main programming language), TOEIC score, experience, portrait), portrait is standardized PNG
images of size 160x200. If there is no image, the default image no_image.png will be used.
- Trainee can edit personal information (Edit Profile).
- Trainee can manage the courses assigned to teach, namely managing topics under the course
(Manage Topics).
- Managing topics including adding topics (Add Topic), editing topics (Edit Topic) and topic
deletion (Remove Topic).
6. Training Staff
The mission, playing a central role, dominates 4 main activities:
13
Nguyen Van Phong
6.1. Manage category
Allow creating (Add Category), edit information (Edit Category) and delete (Delete Category)
categories. A category is only deleted when there are no courses of that category.
14
Nguyen Van Phong
Task 2: TMSProject
TMS Project system was built based on MVC (Model-View-Controller) model with the aim to meet the
needs of managing "training" activities in the company. In addition, the system meets such needs:
Admin roles:
List role accounts, except admin role.
Create an account (Create Account) to follow the role. A trainee account or trainer when newly
created in a locked state, cannot be logged in, they need to be trained by the staff full of
information and activated later, even admin cannot activate.
Change the password (Change Password) of the user, to avoid wrong input, the password is
entered twice to check.
Inactive (Block) and activated (Unblock) account, except for a trainee account or a newly created
trainer.
Training Staff roles:
Manage categories
Manage Courses
Trainer Management
Trainee Management
Trainee roles:
- Trainee can edit personal information (Edit Profile).
- Trainee can manage the courses assigned to teach, namely managing topics under the course
(Manage Topics).
- Managing topics including adding topics (Add Topic), editing topics (Edit Topic) and topic
deletion (Remove Topic).
Trainer roles:
- Trainer can edit information (Edit Profile) individually.
- Trainer can list a list of registered courses; trainers register for these courses by contacting
training staff directly.
- Trainer can access course (View Course) in the list of registered courses, ie see the topic of the
course. The list of course topics is displayed in chronological order to create topics (createDate).
15
Nguyen Van Phong
I. Screen-flow diagram
16
Nguyen Van Phong
II. Use Case Diagram
17
Nguyen Van Phong
18
Nguyen Van Phong
III. Class Diagram
1. Model Package
19
Nguyen Van Phong
2. Entity Package (View Package)
20
Nguyen Van Phong
3. Controller Package
21
Nguyen Van Phong
IV. Entity Relationship Diagram (ERD)
22
Nguyen Van Phong
V. Database Schema
23
Nguyen Van Phong
VI. Functional Description
1. Login
Use Case Name User Login into system
Actor User
Description User login into system and used it
Requirements Provides valid value of username and password
Pre-conditions Actor has login into systems
Post-conditions Login success and actor can use system
Basic flow Actor Action System Response
1. Actor provides valid value of 4. System will display the
username interface suitable for each
2. Actor provides valid value of account if the user logs in to
password the correct account
3. Actor click “Login” 5. System will show Error
message if invalid username
or password
Relationship
2. Logout
Use Case Name User log out of the system
Actor User
Description User can log out of the system after use
Requirements None
Pre-conditions Actor has login into systems
Post-conditions Logout success
Basic flow Actor Action System Response
1. Actor click “Logout” 2. System logs out the user
account and displays the
login layout
Relationship NONE
3. List Account by role
Use Case Name Admin can view list account by role
Actor Admin
24
Nguyen Van Phong
Description The administrator can view the list of corresponding accounts in the system
for each role
Requirements The administrator chooses the role they want to see
Pre-conditions Actor has logged as Admin
Post-conditions Displays the list of respective accounts
Basic flow Actor Action System Response
1. Actor login system by 3. System will show the list
admin account of respective accounts
2. Administrator chooses
the role they want to see
Relationship
4. Create Account
Use Case Name Admin can create new account
Actor Admin
Description Admin want to create new account
Requirements The administrator selects the corresponding role for the account that they
want to create
Pre-conditions Actor has logged as Admin
Post-conditions Create a successful account
Basic flow Actor Action System Response
1. Actor login system by 7. The system will save the
admin account new account created in
2. Administrator chooses the database
the role they want to
create account
3. Administrator provides
username
4. Administrator provides
password
5. Administrator provides
password again (must
true with previous)
6. Administrator click Create
button when done
25
Nguyen Van Phong
Relationship
5. Change Password
Use Case Name The administrator can change the password of the account
Actor Admin
Description The administrator can change the password of the account they want
Requirements The administrator provides new password of the account they want
Pre-conditions Actors has logged as Admin
Post-conditions Change the password of the selected account
Basic flow Actor Action System Response
1. Actor login system by 7. The system updates the
admin account corresponding password
2. The administrator in the database
chooses the role of the
account they want to
change
3. The administrator selects
"Change Password"
immediately for the
corresponding account
4. The administrator
provides a new password
5. The administrator re-
enter that password again
6. The administrator clicks
the “Confirm” button
after it's done
Relationship
6. Block Account
Use Case Name Administrator block account
Actor Admin
26
Nguyen Van Phong
Description The administrator locks the account if there are no users left (just block
trainee/trainer account)
Requirements NONE
Pre-conditions Actor has logged as Admin
Post-conditions Block account
Basic flow Actor Action System Response
1. Actor login system by 4. System will change status
admin account of account from enable
to disable
2. The administrator
chooses the role of the
account they want to
modify (just trainee or
trainer account)
3. The administrator selects
"block" immediately for
the corresponding
account
Relationship
7. Unblock Account
Use Case Name Administrator block account
Actor Admin
Description The administrator unlocks the account (just unblock trainee/trainer account)
Requirements NONE
Pre-conditions Actor has logged as Admin
Post-conditions Unblock account
Basic flow Actor Action System Response
1. Actor login system by 4. System will change status
admin account of account from disable
2. The administrator to enable
chooses the role of the
account they want to
modify (just trainee or
trainer account)
27
Nguyen Van Phong
3. The administrator selects
"unblock" immediately
for the corresponding
account
Relationship
Relationship NONE
9. Search Trainees
Use Case Name Ministry can search trainee
Actor Training Staff
Description Ministry can search trainee that they want to find
Requirements Provides trainee’s skill or trainee’s TOEIC score
Pre-conditions Actor has logged as training staff
Post-conditions Display account as required (if available)
Basic flow Actor Action System Response
1. Actor login system by 8. System will show account
training staff account that correct with require
2. Actor choose “Manage 9. System will show “Not
Trainees” found” if that incorrect
3. Actor choose “Search data or not exists.
Trainee”
4. Actor provides keyword of
trainee’s kill they want to
28
Nguyen Van Phong
find
5. Actor click button “By
Skill” when done
6. Actor can provide max-
min TOEIC score of
trainee they want to find
7. Actor click button “By
TOEIC” when done
Relationship
30
Nguyen Van Phong
11. Manage Trainers
Use Case Ministry can manage trainer
Name
Actor Training Staff
Description Ministry want to add, edit, assign for trainer
(must has an empty account was created by admin before ministry create
trainer account)
Requirements Provides trainer’s profile when they want to create or edit trainer account. Or
enroll course for trainer
Pre-conditions Actor has logged as training staff
Post- System will store new profile or update new profile if account was existed. Or
conditions store trainer’s account was enroll into course was chose
Basic flow Actor Action System Response
1. Actor login system by 11. System will store new
training staff account profile of trainee if actor
2. Actor choose “Manage create or update trainer
Trainers” 12. System will show error and
3. Actor choose “Add actor must be providing
Trainer” to create trainee data again that valid if
31
Nguyen Van Phong
4. Actor choose account incorrect data
was empty and provides: 13. System will add trainer
Name, Type, Department, was choose into course
Education, Phone, Email, was selected if actor
Portrait picture of trainer choose “Enroll Course”
5. Actor click “Create”
button when done.
6. Actor choose “Edit
Trainer” to edit trainer
7. Actor provides new
Name, Type, Department,
Education, Phone, Email,
Portrait picture of trainer
8. Actor click “Update”
button when done.
9. Actor choose “Enroll
Course” to enroll course
for trainer
10. Actor click “Confirmed”
when done
Relationship
32
Nguyen Van Phong
12. List All Trainers
Use Case Name Ministry can view all trainers
Actor Training Staff
Description Ministry can view all trainers in system
Requirements NONE
Pre-conditions Actor has logged as training staff
Post-conditions Displays trainer list accounts
Basic flow Actor Action System Response
1. Actor login system by 3. System will show the list
training staff account of respective accounts
2. Actor choose manage
trainees
Relationship NONE
13. List Category by Id
Use Case Name Ministry can view all categories
Actor Training Staff
Description Ministry can view all categories in system
33
Nguyen Van Phong
Requirements NONE
Pre-conditions Actor has logged as training staff
Post-conditions Displays category list
Basic flow Actor Action System Response
1. Actor login system by System will show the list of
training staff account category
2. Actor choose manage
category
Relationship
34
Nguyen Van Phong
Description of Category
8. Actor click “Update”
button when done.
9. Actor choose “Delete” to
delete category (just can
delete category haven’t
course
Relationship
35
Nguyen Van Phong
training staff account course that correct with
2. Actor choose manage category was selected
courses
3. Actor Select the
corresponding category
to see all course inside
Relationship
36
Nguyen Van Phong
9. Actor choose “Close”
to close course
Relationship
Relationship
37
Nguyen Van Phong
18. Edit Trainer Profiles
Use Case Name Trainer can update their information
Actor Trainer
Description Trainer want to update their information
Requirements Provides new their information
Pre-conditions Actor has logged as trainer
Post-conditions System will update new their information in database
Basic flow Actor Action System Response
1. Actor login system by 5. System will update new
trainer account information in database.
2. Actor choose “Edit
Trainer” to edit trainer
3. Actor provides new
Name, Type, Department,
Education, Phone, Email,
Portrait picture
4. Actor click “Update”
button when done.
Relationship
38
Nguyen Van Phong
Post-conditions List all their information
Basic flow Actor Action System Response
1. Actor login system by 2. List all trainer’s courses
trainer account
Relationship
39
Nguyen Van Phong
Pre-conditions Actor has logged as trainer
Post-conditions List all their course
Basic flow Actor Action System Response
1. Actor login system by 2. List all courses
trainer account
Relationship
Relationship
40
Nguyen Van Phong
Description Trainee want to update their information
Requirements Provides new their information
Pre-conditions Actor has logged as trainee
Post-conditions System will update new their information in database
Basic flow Actor Action System Response
1. Actor login system by 5. System will store new
trainee account profile of trainee
2. Actor choose “edit” to
edit trainee
3. Actor provides new:
Name, Date of Birth
(format dd/mm/yyyy),
Address, Title,
Department, Education,
Main skill, TOEIC score,
Experience, Portrait
picture of trainee
4. Actor click “Update”
button when done.
Relationship
Relationship
41
Nguyen Van Phong
25. List Topics of Course
Use Case Name Trainee can see their topics in each course
Actor Trainee
Description Trainee want to see their topics in each course
Requirements NONE
Pre-conditions Actor has logged as trainee
Post-conditions List all their courses
Basic flow Actor Action System Response
1. Actor login system by 3. List all topics in course
trainee account was selected
2. Actor choose “Manage
Topics”
Relationship
42
Nguyen Van Phong
Content of topic
5. Actor click “Create”
button when done.
6. Actor choose “Edit” to
edit course
7. Actor provides: Title,
Content of topic
8. Actor click “Update”
button when done.
9. Actor choose “Delete” to
delete topic
Relationship
43
Nguyen Van Phong
VII. Testing
1. Review and Test plant
1.1 Scope of the test
a. TMSProject: Ver1.0
b. Document require: Document requirement, coding document, design document.
c. Time testing: From 01-July-2019 To 07-July-2019
1.2 Test Environment
a. Testing system:
- Library Management System
b. Hardware requirement:
Computer Hardware MacBook Air 13
Screen Size 13 inch
Client 1 laptop
c. Software
Software NetBeans IDE 8.2 (JDK 1.8)
Database Microsoft SQL Server 2017
Browser Coccoc, Chrome
Documentation tool Microsoft Word 2016
Computer Operating System Windows 10 Pro, 64bit
d. Resource:
1) Participating organizations: No organizations join to this test.
2) Manpower requirements: Only me.
e. Test Detail (For Each Test):
1) Test identification: Test insert, update, delete, show, block, unblock function.
2) Test objective: All the requirement function will run with no error.
f. Test level:
1) Normal scenarios
2) Data validation.
3) Extremes of data.
g. Test schedule:
Testing: Function Test and Unit Test → 3 days
Regression tests: Test all function and unit of the test case → 3 days
***Data to be recorded: Data given from system test plan will be record and will be executed
when the system process has no occurred error and run successfully.
h. Test case
NO Test function Description
44
Nguyen Van Phong
1 Login Log in into system
2 Logout Log out system
3 List Account by role List all account by role
4 Create Account Create new account (just admin can add but
account was disable, it’s just use when enable by
training staff update profiles of account)
5 Change Password Change account’s password
6 Block Account Block account(trainee, trainer)
7 Unblock Account Unblock account(trainee, trainer)
8 List All Trainees Show all trainees
9 Search Trainees Search trainees (by skill, by TOEIC score)
10 Manage Trainees Manage trainee (add new trainee with an exists
empty account was create by admin, update
trainee’s profile, assign course)
11 Manage Trainers Manage trainer(add new trainer with an exists
empty account was create by admin, update
trainer’s profile, enroll course)
12 List All Trainers Show all trainers
13 List Category by Id Show all category
14 Manage Categories Manage categories (add new category, update
category or delete category if haven’t courses)
15 List Course by Category Show all course in category was selected
16 Manage Course Manage courses (add new course, update course or
close course if close courses, actor cannot open it
again and can see it in system, just see it in
database)
17 Show Trainer’s Profile Details Show profile details of account
18 Edit Trainer Profiles Edit Profiles
19 List Learning Courses (Trainer) Show all learning courses
20 List Topics of Course (Trainer) Show topics in course was selected
21 View Course (Trainer) Show all Course
22 Show Trainee’s Profile Details Show profile details of account
23 Edit Trainee Profile Edit profile
24 List Teaching Courses Show all teaching courses
25 List Topics of Course Show all topics in course
26 Manage Topics Manage topics (add new topic, edit topic, or delete
topic)
45
Nguyen Van Phong
2. Results compared to reality
NO Test Steps Test Data Expected Actual Output Status Notes
46
Nguyen Van Phong
Output Pass/Fail
1 Login (admin) Username: chode Login success Login success Pass Success
Password: dede
2 Login Username: choghe Login success Login success Pass Success
(Training Staff) Password: gheghe
3 Login (Trainee) Username: chomuc Login success Login success Pass Success
Password: mucmuc
4 Login (Trainer) Username: choxamau Login success Login success Pass Success
Password: maumau
5 Logout N/A Logout success Logout success Pass Success
6 Show Trainee Profile N/A Trainee profile Trainee profile Pass Success
Details page page
7 Edit Trainee Profile Add more main Show Show information Pass Success
skill: .Net, information update on the
update on the Trainee profile
Trainee profile page
page
8 List Teaching Courses N/A Display list Display list Pass Success
teaching course teaching course
9 Add Topic Title: Database Basic Create a topic Create a topic and Pass Success
Content: Create and display on display on the
database, table, the Manage Manage Topics
update table, Topics page page
constraint, trigger
Database Schema,
ERD(Entity
Relationship Diagram)
10 Edit Topic Title: Database Basic Show Show information Pass Success
(V 5.0) information update on the
update on the Manage Topics
Manage Topics page
page
11 Remove Topic N/A Remove a topic Remove a topic Pass Success
on the Manage on the Manage
Topics page Topics page
47
Nguyen Van Phong
12 Show Trainer Profile N/A Trainer profile Trainer profile Pass Success
Details page page
13 Edit Trainer Profile Type: External Show Show information Pass Success
information update on the
update on the Trainer Profile
Trainer Profile page
page
14 List Learning Courses N/A Display List Display List Pass Success
Learning Learning Courses
Courses
15 List Topics of Course N/A Display List Display List Topics Pass Success
Topics of Course of Course
16 View Course N/A Display List Display List Topics Pass Success
Topics of Course of Course
17 List Account By Role N/A Display List Display List Pass Success
Account By Role Account By Role
18 Create Staff Account Username: testting Create account Create account Pass Success
Password: and display and display
testingtestingtesting account on the account on the
Retype password: Admin page Admin page
testingtestingtesting
19 Change Password New password: Update Update password Pass Success
testtest password for for “testing”
Retype password: “testing” account
testtest account
20 Block Account N/A Block “cholu” Block “cholu” Pass Success
account account
21 Unblock Account N/A Unblock “cholu” Unblock “cholu” Pass Success
account success
22 Search Trainees By Skill Skill: C# Display Trainees Success. Display Pass Success
who have Skill is Trainees By Skill
“C#”
23 Search Trainees By min: 80 Display Trainees Success. Display Pass Success
TOEIC Score max: 100 who have TOEIC Trainees By TOIEC
score from 80 Score
to 100
48
Nguyen Van Phong
24 List All Trainees N/A Display list all Display list all Pass Success
trainees trainees
25 Assign Course Jquery Assign Course Assign Course for Pass Success
for Trainees Trainees
26 Add Trainee Name: test1 Create new Create new Pass Success
Date of Birth: trainee, display trainee, display on
12/12/1999 on the Training the Training Staff
Address: 123/abc Staff page page
HCM
Title: Leader
Department:
Software Engineer
Education: F.U
Main skill: Jquery
TOIEC score: 80
Experience: - Began
developing C++ in
1979
The head of AT&T Bell
Labs' Large-scale
Programming
Research department.
Began Database in
2000.
27 Edit Trainee Profile Education: College Update Trainee Update Trainee Pass Success
BTEC FPT information information
TOIEC score: 95
28 Add Trainer Name: trainertest Create new Create new Pass Success
Type: internal trainer, display trainer, display on
Department: Soft test on the Training the Training Staff
Education: 12/12 Staff page page
Phone: 0909909990
Email:
trainertest@gmail.co
m
29 Edit Trainer Profile Name: trainertest99 Update Trainer Update Trainer Pass Success
49
Nguyen Van Phong
Add new picture information information
30 Enroll Course Java 8 Essentials Display course Display course on Pass Success
on the Trainer the Trainer page
page
31 List All Trainers N/A Display list all Display list all Pass Success
trainers trainers
32 Find Category By Id N/A Display all Display all Pass Success
category category
33 Add Category Name: Database Create new Create new Pass Success
Description: SQL category and category and
Server display on the display on the
Trainer Staff Trainer Staff page
page
34 Edit Category Name: Database Update Update Pass Success
Exercises information information
35 Remove Category N/A Remove a N/A Fails Success
category
36 List Courses By .C# Programming Display Course Display Course by Pass Success
Category by category category
37 Add Course Name: Jquery Create new Create new Pass Success
Description: course and course and display
Basic of Jquery display on the on the Training
Training Staff Staff
38 Edit Course Description: -Write Update course Update course Pass Success
your own LINQ information information
operators
39 Close Course N/A Close a course Close a course Pass Success
50
Nguyen Van Phong
NO
1
51
Nguyen Van Phong
2
52
Nguyen Van Phong
3
53
Nguyen Van Phong
4
54
Nguyen Van Phong
5
55
Nguyen Van Phong
6
56
Nguyen Van Phong
8
57
Nguyen Van Phong
10
11
58
Nguyen Van Phong
59
Nguyen Van Phong
12
13
60
Nguyen Van Phong
14
15
61
Nguyen Van Phong
16
17
62
Nguyen Van Phong
18
63
Nguyen Van Phong
64
Nguyen Van Phong
19
20
65
Nguyen Van Phong
66
Nguyen Van Phong
21
67
Nguyen Van Phong
22
23
24
68
Nguyen Van Phong
25
69
Nguyen Van Phong
26
70
Nguyen Van Phong
71
Nguyen Van Phong
27
28
72
Nguyen Van Phong
29
30
73
Nguyen Van Phong
31
74
Nguyen Van Phong
32
33
75
Nguyen Van Phong
76
Nguyen Van Phong
34
77
Nguyen Van Phong
35
78
Nguyen Van Phong
36
79
Nguyen Van Phong
37
80
Nguyen Van Phong
38
81
Nguyen Van Phong
82
Nguyen Van Phong
39
83
Nguyen Van Phong
VIII. Peer-review the application
Effective of the The application will integrate online payment features and learning
application functions through videos so students can review old lectures.
Problems - Not yet implemented the student's score management system
- Course information is sketchy
- Hasn't provided specific course times
Proposed solution - Add score management part into system
- Add more course information
- Add course time management to help trainer know course specific time
Development strategy The application works stably, all functions are fine
84
Nguyen Van Phong
IX. User Manual
1. For Admin
List role accounts, except admin role.
Create an account (Create Account) to follow the role. A trainee account or trainer when
newly created in a locked state, cannot be logged in, they need to be trained by the staff full
of information and activated later, even admin cannot activate.
Change the password (Change Password) of the user, to avoid wrong input, the password is
entered twice to check.
Inactive (Block) and activated (Unblock) account, except for a trainee account or a newly
created trainer.
85
Nguyen Van Phong
2. For Training Staff
Manage category
86
Nguyen Van Phong
- Allow creating (Add Category), edit information (Edit Category) and delete (Delete Category)
categories. A category is only deleted when there are no courses of that category.
Category describes categories of classes, information including (id, name, description), a
category contains a list of courses of the same category.
Management Course
- Course is listed as a category list for ease of management. For each category, it is possible to
create a new course (Add Course) of that category, edit the course information (Edit Course)
and close the course (Close Course).
87
Nguyen Van Phong
88
Nguyen Van Phong
89
Nguyen Van Phong
- The courses after closing will not be able to reopen (except for direct access to the database),
thus the content cannot be viewed and changed.
- Training staff does not manage the course topics, the trainee will perform that task.
Course describes a class, information includes (id, name, description, active), a course
contains a list of topics.
Trainee Management
- It is possible to create a new trainee (Add Trainee) from pre-registered free account accounts
with admin. If not, training staff must contact the trainee directly to create these empty
accounts.
- You can search (Search Trainee) and list trainees by: main programming language (By Skill) or
by TOEIC score (in certain min, max intervals), or list all. For trainees in the list, you can edit
information (Edit Profile) or assign classes to the trainee to teach (Assign Course). The list of
courses assigned to the trainee is active (active) courses, not yet assigned to any trainee (a
course with only one trainee taught).
90
Nguyen Van Phong
91
Nguyen Van Phong
- Cannot delete trainee, can only ask the admin to disable (block) the account so that the
trainee cannot login.
Trainer Manager
- You can create a new trainer (Add Trainer) from your free account (accounts) registered with
admin. If not, training staff must contact the trainee directly to create these empty accounts.
92
Nguyen Van Phong
- Can list the trainers. With the trainers in the list, you can edit information (Edit Profile) or
register a trainer to the class (Enroll Course). The list of trainee registration courses is that the
active courses (active) and the trainer have not registered yet.
93
Nguyen Van Phong
- Unable to delete the trainer, it is only possible to ask the admin to block the account so that
the trainer cannot login.
3. For Trainee
94
Nguyen Van Phong
- Trainee can edit personal information (Edit Profile).
- Trainee can manage the courses assigned to teach, namely managing topics under the course
(Manage Topics).
- Managing topics including adding topics (Add Topic), editing topics (Edit Topic) and topic
deletion (Remove Topic).
Topic is the topic of a course, contains information (id, name, description, createDate).
95
Nguyen Van Phong
96
Nguyen Van Phong
4. For Trainer
- Trainer can edit information (Edit Profile) individually.
- Trainer can list a list of registered courses; trainers register for these courses by contacting
training staff directly.
- Trainer can access course (View Course) in the list of registered courses, ie see the topic of the
course. The list of course topics is displayed in chronological order to create topics
(createDate).
97
Nguyen Van Phong
98
Nguyen Van Phong