Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 300

Industrial Training

Online Management System

By

LIAW SEE YUN

SCHOOL OF ARTS AND SCIENCE
TUNKU ABDUL RAHMAN COLLEGE
KUALA LUMPUR

ACADEMIC YEAR
2010/2011
Industrial Training
Online Management System

By

LIAW SEE YUN

Supervisor: Ms. Tan Lay Aik

A project report submitted to the School of Arts and Science
inpartial fulfillment of the requirement for the
Bachelor of Science, CampbellUniversity, U.S.A,
And
Advanced Diploma in Science.

Division of Computer Science
School of Arts and Science
TunkuAbdulRahmanCollege
Kuala Lumpur

2010/2011

Copyright 2011 by Tunku Abdul Rahman College.
All rights served. No part of this project documentation may be reproduced,
stored in retrieval system, or transmitted in any form or by any means without
prior permission of Tunku Abdul Rahman College.
 
 
Industrial Training Online Management System Declaration
 

Declaration
The project submitted herewith is a result of my own efforts in totality and in every aspects of
the project works. All information that has been obtained from other sources had been fully
acknowledged. I understand that any plagiarism, cheating or collusion or any sorts
constitutes a breach of College rules and regulations and would be subjected to disciplinary
actions.

__________________________
Student’s Name :
Programme :
ii 
 
Industrial Training Online Management System Abstract
 

Abstract
Industrial Training Online Management System is developed as Final Year Project (FYP) in
partial fulfilment of the requirement for Bachelor of Science, Campbell University, U.S.A.
and Advanced Diploma in Science.

Industrial  Training  Online  Management  System  is  used  to manage  the  process  of  industrial
training program of Computer Science division in Tunku Abdul Rahman College. This
system would be used by coordinators, internship students and students’ college supervisors
from Computer Science division. Besides that, the internship companies, companies’ contact
persons and students’ company superiors also would access to the system.

There were nine main modules included in the system which were Security module, Job
Application module, Allocation module, Query module, Feedback module, Notification
module, Maintenance module, Housekeeping module and Reporting module. In each main
modules, there were sub modules such as Login, Search Company, Bookmark, Maintain
Students, Allocate Students to Companies, Generate Query, Send Notification, View Report
and so on. The modules and sub modules were designed to support users’ tasks.

The system was developed by using C# and .NET framework 3.5 platform. The codes were
written  using  Microsoft Visual  Studio 2008.  Three-tier programming approach was used to
program the system. This approach consists of Data Access layer, Business Logic layer and
Presentation layer. AJAX Control Toolkit and JQuery features were included in the system to
produce better user interface.

This system has gone through several assessments such as functionality, availability,
reliability and usability. Hence, the developed system could support the users’ tasks by
providing the corresponding functionalities. The system was available for users when they
want to access to  the system. The  outputs or results produced  by the system  were accurate
and reliable. Besides, the system could be used by the users to complete their tasks properly.

To  develop this  system, Iterative  Development  model  is  used  for  system  development.  The
system was developed through the System Development Life Cycle which consists of
requirements analysis, system design, programming, system testing and deployment. The

iii 
 
Industrial Training Online Management System Abstract
 
deliverables include problems statement of current process used, specifications of the system
to be developed, description of database design, user interface design and the functionalities
design of the system, approaches used to program the system and the testing plan and
evaluation of the system developed. The deliverable of each stage would be finalized before
moved to the next stage.

The  developed  system could  fulfill  the  users’  requirements  and  system requirements  stated.
The system could reduce the workloads and the save the effort of users to complete their
tasks. Users would feel convenient to use the system.

The development period for the developed system allowed me to learn about the
methodologies, technologies and the programming features which were new for me.
Moreover, I improved my communication skill, analysis skill and self-learning skill while
developing the system.

Improvements and enhancements of our system are highly possible and viable such as
improve the current functions in order to produce better output. New functions can be
developed to improve the usability of the system.
iv 
 
Industrial Training Online Management System Acknowledgement

Acknowledgement

I would like to express my sincere gratitude to my  project supervisor, Ms. Tan Lay Aik for
her guidance, constant support and encouragement throughout the completion of this final
year  project.  I  would  also  like  to  convey my heartfelt  appreciation  to  Ms.  Tan  Lay Aik  for
contributing her ideas and in-depth knowledge in the field.

I am very grateful that Ms. Tan was willing to explain and teach me patiently when I faced
problems during system development period. I appreciated her kind supervision for this entire
progression of developing my system. Besides that, Ms. Tan would share her opinions for my
system and documentation so that the system and documentation could be improved from
time to time. Moreover, she managed to make available to conduct discussion section for the
system.

Apart from that, I would like to thank my project moderator, Mr. Ku Cheng Fui who
managed  to  find  time  for  our  system  testing.  During  system  testing  period,  he  concentrated
and listen carefully about the functions and modules we were presenting. Besides, he was
sharing his opinions about the system.

Next, a warm thank is extended to my teammate, Looi Wai How for sharing his ideas,
knowledge, experience and skills in programming and development methodology, so
generously. When I faced problems, he was willing to solved problems with me. I would
also like to personally thank my friends in TAR College and my fellow course-mates who
 
had assisted me in completing this project.

 
Futhermore, I would like to thank Tunku Abdul Rahman College (TARC) and the School of
Arts and Science (SAS) for including final year project as one part of our course’s units. This
final year project allows me to have the motivation to learn a lot which not in the syllabus of
our course. Apart from that, I experienced in self-learning and become more independent.

Finally, I would like to take these opportunities to thanks Ms. Tan Lay Aik again for all the
time and effort that had contributed to the completion of my final year project.

 

   
Industrial Training Online Management System Table of 
Contents

Table of Contents
Declaration...........................................................................................................................  ii 
Abstract...............................................................................................................................  iii 
Acknowledgement .................................................................................................................
  v 
1.  System Planning............................................................................................................
  2 
1.1  Project Aims and Objectives............................................................................................
  2 
1.2  Company Background .....................................................................................................
  4 
1.3  Project Scope..................................................................................................................... 9 
1.4  Development Environment ............................................................................................  20 
1.5  Operation Environment .................................................................................................  20 
1.6  Project Schedule .............................................................................................................
   21 
 
1.7  Outline of Approach / Methodology Used ....................................................................  22 
1.8  Critical Evaluation .........................................................................................................  23 
2.  Requirement Analysis ................................................................................................. 25 
 
2.1  Fact Gathering and Analysis .........................................................................................  25 
 
2.1.1  Users Problems Statement..................................................................................  25 
2.2  Software Requirement Specification.............................................................................  26 
2.2.1  Users’ Requirements ...........................................................................................  26 
2.2.2  System Requirement ...........................................................................................  27 
2.2.2.1 Functional Requirements ...................................................................................  27 
2.2.2.2 Non-Functional Requirements ...........................................................................  29 
2.3  External Interface Requirement ...................................................................................  30 
2.3.1  User Interface ......................................................................................................  30 
2.3.2  Hardware Interface.............................................................................................  31 
2.3.3  Software Interface ...............................................................................................  31 
2.3.4  Communication Interface...................................................................................  31 
2.4  Use-Case Diagrams.........................................................................................................  32 
2.5  Activity Diagrams for Current Business Processes .....................................................  79 
2.6  Critical Evaluation .........................................................................................................  80 
3.  System Design .............................................................................................................. 82 
3.1  Activity Diagrams for High Level Design.....................................................................  82 

vi 
 
Industrial Training Online Management System Table of 
Contents
 
3.2  Database Design ..............................................................................................................  82 
3.2.1  Final Class Diagram (Logical ERD) ..................................................................  83 
3.2.2  Data Dictionary ...................................................................................................  84 
3.3  Architectural Design.....................................................................................................  105 
3.4  User Interface Design (Prototype)...............................................................................  106 
3.5  Critical Evaluation .......................................................................................................  119 
4.  Detailed Design .......................................................................................................... 121 
4.1 Collaboration Diagram for Login ............................................................................... 121
4.2 Sequence Diagram for Job Application ...................................................................... 122
4.3 Sequences Diagram for Allocation Module ................................................................ 126
4.4 Diagram for Query Module ......................................................................................... 130
4.5 Diagram for Reporting Module................................................................................... 132
4.6 Critical Evaluation ....................................................................................................... 133
5.  Programming ............................................................................................................. 135 
5.1  Programming Language and Platform Used .............................................................  135 
5.2  Three-Their Design Approach.....................................................................................  135 
5.2.1  Example of Three-tier Code in the System .....................................................  136 
5.3  Algorithm Descriptions of Special Features...............................................................  137 
5.4  Understandable Programming Code ..........................................................................  141 
5.5  Critical Evaluation .......................................................................................................  144 
6.  Software Testing ........................................................................................................ 146 
6.1.  Testing Strategy ............................................................................................................  146 
 
6.2.  Testing Objectives.........................................................................................................  146 
6.3.  Testing Environment ....................................................................................................  146 
 
6.4.  Testing Stages................................................................................................................  146 
6.4.1.  Unit .....................................................................................................................  146 
6.4.2.  Module................................................................................................................  167 
6.4.3.  System.................................................................................................................  169 
6.4.4.  Acceptance .........................................................................................................  170 
 
6.5.  Critical Evaluation .......................................................................................................  171 
 
7.  System Evaluation ..................................................................................................... 173 
 
7.1.  Evaluation Against Project Objectives .......................................................................  173 

vii 
 
 
Industrial Training  Online Management System Table of 
Contents
 
7.2.  Project Strengths ..........................................................................................................  174 
7.3.  Project Weaknesses ......................................................................................................  175 
7.4.  Future Enhancements ..................................................................................................  176 
8.  Conclusion .................................................................................................................. 181 
8.1  Personal Reflection .......................................................................................................  181 
9.  References.................................................................................................................. 184 
10.  Appendices ................................................................................................................. 187 
11.  User Guide.................................................................................................................. 189 

viii 
 
 
Chapter 1

System Planning
 
 
Industrial Training Online Management System Chapter 1: System 
Planning
 

1. System Planning
This chapter describes about the system will be developed and provides a high-level view 
of
the system information.

1.1 Project Aims and Objectives

Records are easy to be retrieved
 For the current manual system, a certain record is difficult to be retrieved. The 
user
needs to find the record from an enormous of records manually. With the computeri
zed
system, users just need to type the field which identify the record (e.g. student ID, s
taff
ID) in order to retrieve the details.

Time and cost saving
 Students can use the search function in the system to find companies’ informat
ion
based on the criteria stated without the need of go through the whole companies list 
and
filter one by one manually.
 Coordinators  can  use  notification  module  to  send  notifications  to  students, 
companies
and lecturers so that they do not need to make appointments. By using this function, 
the
coordinators do not need to make them available for a certain time slot to pass 
the
notifications.
 For those students who are not secured by any industrial companies after the s
end
application due date, the coordinators will need to match the students’ strength 
and
companies’ requirements manually to produce a list. This process is time consum
ing
since  the  coordinators need  to view the  strengths of students and the requirements 
of
the companies one by one. By using this system, the system will match unsecu
red
students’ strengths against companies’ requirements to generate the list automatically
.

2 | P 
a g e  
 
Industrial Training Online Management System Chapter 1: System 
Planning
 
Save storage space
 The current manual system produces many paper works which need to be stored 
for
future used. As the time passed, the paper works are increase and increase, a big
ger
space for storage purpose is required. By using this system, the paper works can 
be
reduced. The forms used through the process can be computerized stored in the syste
m.

Increase availability
 All the paper  works are difficult kept and  may  lose accidentally. Thus, the lose 
paper
works may not be available to the users when needed. Besides that, the paper works 
are
difficult to keep and may lose accidentally. Thus, it will be not available when i
t is
needs. The system will back up the data in the database year by year. Thus, the previ
ous
year data can be retrieved when it is needed.

Up-to-date information
 As the system is an online system, the database which relate to the system will 
be
always update as there has any changes. Once the users’ access to the system, they 
can
get the most updated information without any delay regardless of anywhere 
and
anytime  as  long as they  are connected to the internet. This  cannot  be done  by  cur
rent
manual system.

Increase security
 To avoid unauthorized users to modify the data in the database, all the users 
are
provided a password and user ID. The system will verify their privilege once they lo
gin.
All  the  personal  details  only  can  be  read  by the  owner  so  that  it  protects  the  pers
onal
privacy of each user.
 The computerized system will differentiate various users’ authorization level. Based 
on
the users’ identities the system will restrict the users’ accessibility according to t
heir
authorities. Users cannot simply access to the data and modify. Hence, inc
rease
security of data access.

3 | P 
a g e  
 
Industrial Training Online Management System Chapter 1: System 
Planning
 
Restrict the student of keep sending application
 For the current manual system, the students are required to send application to the 
preferred
company  through email by  themselves. By  using this  method, students  may  keep send
ing
their applications to the same company. Hence, the company need to check the em
ails
which sent by same students. This increase the workload of the companies. 
The
computerized system will solve the problem mentioned above by hiding the e
mail
addresses of the companies from students. The students click “Send Application” but
ton
and the system will send the applications automatically to the companies’ email addres
ses.
By using  the  system,  students  are  only  allowed  send  their  applications  to  a  company 
one
time.

Better decision making
 By using manual system, the coordinators need to collect and analyst the 
data
manually for drawing a conclusion. Human error may occur and lead to wr
ong
conclusion.
 Computerized system will analyst the data and draw conclusion as a graph for 
further
analysis. Hence, more accurate conclusion will be reached. It may be useful 
for
decision making.

1.2 Company Background

Tunku Abdul Rahman College (TARC) was established on 24 February 1969 under th
e
leadership of the Malaysian Chinese Association (MCA). The College was named after 
the

4 | P 
a g e  
 
Industrial Training Online Management System Chapter 1: System 
Planning
 
late YTM Tunku Abdul Rahman Putra Al-Haj, the first Prime Minister of Malaysia and 
the
Father of Malaysian Independence.

The College is 50% subsidized by the Government for all its recurrent and cap
ital
expenditure. The other 50% is borne by the Trustees.

The vision of MCA was to establish an institution of higher learning for young Malaysi
ans
who have, for one reason or another, been deprived of the opportunity to seek education, 
as
well as to meet the rising demand from the private sector for trained professional, s
ub-
professional and technical personnel in the task of nation building.

The College started with the commencement of classes in the School of Pre-
University
Studies in 1969 and followed by the School of Business Studies in 1971. In 1972, Sch
ool
of Technology, School of Arts and Science and Extra-Mural Studies Department w
ere
established. The School of Social Science and Humanities was established in 1999.
The earlier classes were conducted in the Technical Institute, Cheras and Day Train
ing
College, JalanKuantan. Due to its rapid expansion, new centres were set up in 
six
secondary schools and Catholic High School, Petaling Jaya. On 19 July 1976, with 
the
completion of the first phase of the College Campus in Kuala Lumpur, classes were mo
ved
to its own campus premises in JalanGenting Kelang, Setapak.

From an initial intake of 764 students with classes conducted in various centres in 
the
Klang Valley in 1969, the College today has a Main Campus and five Branch Campuses 
in
Penang, Perak, Johor, Pahang and Sabah.

Under the Seventh Malaysia Plan, the College has established the Centre for Continu
ing
Professional  Education  (CPE).  This  Centre  is  registered  as a  Training  Provider  under 
the
PROLUS Scheme, Human Resource Development Berhad, Ministry of Human Resour
ces,
and play an important role in helping members of the public, especially mature stud
ents
and alumni to upgrade, update their knowledge and to obtain new skills to keep up 
with
technology and development in their respective professions.

5 | P 
a g e  
 
Industrial Training Online Management System Chapter 1: System 
Planning
 
Nature  of  Business
Tunku Abdul Rahman College is an institution to provide Educational Service. The vis
ion
of MCA was to establish an institution of higher learning for young Malaysians who ha
ve,
for one reason or another, been deprived of the opportunity to seek education, as well a
s to
meet the rising demand from the private sector for trained professional, sub-
professional
and technical personnel in the task of nation building.

Products  and  services


Courses in TAR College are conducted at the Advanced Diploma, Diploma, Certificate 
and
Pre-University levels to provide flexibility for students to further their studies.
TAR College offers more than 120 courses through 5 Schools covering a wide range 
of
disciplines.
 School of Art and Science
 School of Business
 School of Technology
 School of Social Science and Humanities
 School of Pre-U Studies

Size  of  operation


Main Campus of Tunku Abdul Rahman College is locates at Kuala Lumpur and other f
ive
Branch Campuses in
 Penang
 Perak
 Johor
 Pahang
 Sabah.
6 | P 
a g e  
 
Industrial Training Online Management System C
 
Organization  Structure

7 | P a g e  
 
Industrial Training Online Management System Chapter 1: System 
Planning
 
Current  System  Used

Basically, the current industrial training process that used by School of Arts and Scien
ces
(SAS) is manual method. This method is not efficient and not  effective as the allocat
ion
process is not convenient. One of the problems faced by internship companies is they k
eep
receiving applications which sent by same student. Companies may feel current man
ual
method is troublesome and creating a lot of unnecessary extra work for companies 
to
handle.

Moreover, if students are not secured by any companies after a certain period, coordinat
ors
are needed to filter the companies one by one based on the students’ strengths. After t
hat,
coordinators only send the students’ resume to the suitable companies. Due to this proc
ess,
it is double up coordinators’ workload and wasting time.

Furthermore, after the industrial training is completed by student, coordinator will send 
the
student evaluation form, company survey to companies. Those documents are important 
for
student’s  supervisor  to calculate  the  total marks  of  industry training in order to compl
ete
the course and collect feedback from companies in order to upgrade any services 
to
students or system. But some companies no response or forget to fill up student evaluat
ion
form and company survey, so reminder is always send by coordinators to company in or
der
collect those documents in time. This is obviously coordinator need to spend a lot of ti
mes
to send email to remind companies.

8 | P 
a g e  
 
Industrial Training Online Management System C
 
1.3 Project Scope
9 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning

Security

i. User login
Before  the  user  can  access  to  the  system, the  user  is  requested  to enter  user  ID
and password. After all the required data is entered, the user clicks on the “Login”
button. The system will retrieve the password stored in the database based on the
entered user ID and compare with the entered password. If the passwords are
matched, the user can login to the system successfully. Otherwise, error message
will display to inform user that invalid login is occurred.

ii. Match the user ID with the password
The module intelligently  matches the entered user ID with the entered password
according to the authorized user table. The entered password will be encrypted by
using hashing and salting. The result will be matched with the password in the
database.

iii. Differentiate various users’ authorization level
The roles of the users of this system are students, lecturers and coordinators.
Based on the user’s identity the module will restrict the user accessibility
according to his/her authority. For example, the coordinators can access and edit
the details of the notification setting when it is needed while students do not have
this authority. The module can intelligently differentiate the identity of the users.

iv. Encrypt   Password
The passwords in database are encrypted by using hashing and salting technique.
When a new user is created, the password will be encrypted with its salt and
stored in database. To  login  the system,  user need to  enter  password which will
be encrypted with its salt and compared with the password in database. The
technique which used to encrypt the password is called one way the password can
only be encrypted but not decrypted. Thus, increase the security.

10 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
v. Change password
The module allow the user to change their login password by clicking the
“Change Password” button whenever they think it is necessary to change. The
module  consists  of  a  table  that  allows  the  user  to  change  his/her  password.  The
user is required to enter old password, new password and confirm new password.
After filling all required data, the  user can click on the “Submit”  button. If the
user wants to cancel the modification of password, he/she can click on the
“Cancel” button.

vi. Forget  password
To get back their password, the users may need to fill in their user ID and click
“Lost your password” button. An email with a link will be sent to the user’s email.
Once click on the link, the user will be redirected to reset password page. The
user needs to enter all the required data and click “Submit” button, the password
will be reset and the user can login again. Users are recommended to change their
password once login the system again.
vii. Remember  me
When  login,  user  can  check  the  check  box  “Remember  me”.  Hence,  the  system
will create a cookie for the user. The system will refer to the cookie and allow the
user direct access to the system without login again.

viii. User logout
The module allows the user logout from the system after they finish access to the
system. This feature is important to prevent ownership issues.

11 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
Job Application

i. Search company
The students can search the companies based on the criteria such as the location
of companies, requirements stated, allowance provided, nature of business and so
on. The companies which fulfill the criteria will be listed in the searching list. To
view more details about the company, the users may click on the link which will
display all the selected company details.

ii. Map navigation
In the view more page of the company details, students can click on a link which
is located beside the company’s address to view the location of the companies by
getting the service from goggle map. This is very convenient as the students can
click on the link and know the location of the company instead of copy and paste
the address of the company to get its location from goggle map.

iii. Bookmark
The  students can  bookmark  the  searched  companies which  they  prefer.  To  refer
back, a bookmark list will list all the bookmarked companies of the student.
Hence, they can refer back to the companies easily without the need to search
again. When refer to their bookmark list, the students can view company’s details
and send application to the company they prefer.

iv. Send application
The students can send their application by clicking the “Send Application” button,
the module will automatically send email to the particular company with resume
and application letter attached. The students will not know the email of the
company so that the students cannot send email to the company by their own.
Thus, this preventing the internship  company  to receive  many applications from
the same student.

12 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
v. Update the status of application
An application  record  will be  added  into  an  application  list  of  the  student  when
the students send their application to a company. The student need to update the
status of the application based on the process of the application. The status of the
status can be as following:
 Waiting for Reply
– Default status once the application has been sent.
 Call for Interview
– Student is informed to having interview section with company.
 Failed Interview
– Student is rejected by the company after interview section.
 Accepted
– Student is accepted by the company after interview section.
 No Response
– Student no accepts any reply from company.

Allocation module

i. Allocate students to college supervisor
Coordinator uses this function to allocate student to their college supervisor. The
coordinator  can  either  allocate  one  student to  one  college  supervisor  at  the  same
time or allocate more than one students to one college supervisor at the same time.
After the allocation process, students can view their college supervisor’ details
while the college supervisor can view all their supervised students.

ii. Allocate students to internship company
Once the student show the B1 form which prove that the company accept the
student as internship trainee, coordinator can select the students and allocate to
the corresponding companies. The allocation process can be carried out by
allocate one student to one company or many students to one company. After
allocation, the student will be confirmed to be secured by the company.

13 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
iii. Auto-matching
The system will auto-matching the students with companies based on the students’
strength against with the companies’ requirements. A list that shows the result of
the  matching will be produced. There are two types of auto-matching which are
as below:
- Auto-matching for all unsecured students
The system will auto-matching all the students who are not secured and the
companies which are not reached the maximum number of vacancies.

- Auto-matching for selected unsecured students
The system will auto-matching selected students who are not secured and the
companies which are not reached the maximum number of vacancies.

iv. Export to Portable Document Format (PDF) file
The coordinator can export the auto-matching result to PDF file which allow
them to store or print the result in PDF format.

Notification

i. Send Notification
Notification will be sent to student and company when they are required to do
some  tasks  according  the  time  that preset  by coordinator.  The  notifications  will
be sent included as following:
 Notification to students:
- Upload resume
- Fill the company survey
- Send application to intern company
- Fill up their company superior details
 Notification to company:
- Fill in the internship information
- Fill in the student survey

14 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
- Fill in the student evaluation form
- Fill in the B1 Form
The notification will be resent automatically (or manually send by coordinator)
during specified  days after  the previous resend  date  if the students  or  companies
have not done the tasks which are required.

ii. Track Notification Status
Those notifications have been sent to students and companies are saved with a
status. The status is used to keep track whether the students or companies
completed their tasks. The status is saved either have not completed yet or
completed. The status is displayed to coordinator in order to take action, for
example  coordinator  contacts  with  student and  reminds  he/she  does  the  tasks  or
resend notification to the student if the status is have not completed yet).

iii. Notification Setting
Coordinators can modify all the setting about the notification module by using
this sub module. The start date of the internship and its end date need to be filled
in this module. The coordinators can set the date which need to send the
notification to students and companies. The coordinators also can specify the
days to resend the notification after the previous sent date.

Feedback

i. Student Survey Forms
After industry training is finished, students are mandatory to fill up student
survey forms. So, system will auto-send the particular forms to students in order
to collect feedback for future use and do analysis report.

ii. Company  Survey Forms


Company feedback is important in order to improve our services and students’
performance. So, system will auto-send the particular forms to internship
companies for future use and do analyses report.

15 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
iii. Student Evaluation  Forms for Lecturer
Student evaluation forms are needed to be filled up by students’ college
supervisors (lecturers) before students are certifying complete the course. In this
case,  a  link will  be  provided  to  college  supervisor  and  redirect  to  the  system  in
order to fill up the forms.

iv. Student Evaluation  Form for Company
Student evaluation forms which are needed fill up by students’ corresponding
internship company supervisors before students are certifying complete the
course. In this case, a link will be provided to company supervisors and redirect
to the system in order to fill up the forms.

Maintenance

i. Company
Maintenance Company allows add, edit/update and delete. For add a company,
firstly company information is needed. A link will be sent to lead the company to
the system to fill up a particular form. The company needs to complete fill up the
company details form and internship requirements form.

ii. Student
Maintenance Student allows add, edit/update and delete of their personal details,
resume and training details.

iii. Staff
Maintenance Staff allows add, edit/update and delete of staff details. Staff can be
a coordinator or student’s college supervisor.

iv. User Account
Maintenance User Account allows add, edit/update and delete of user account
details. User account is used to identify the authorized person who able to use the
system.

16 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
v. Role
Maintenance Role allows add, edit/update and delete of role details. Role is used
to set the privilege such as coordinator able to post the announcements but student
cannot.

vi. Announcement
Maintenance Announcement allows add, edit/update and delete. Announcement
can be posted by coordinators or lecturers in order to announce important news or
information to other users.

Query

i. Generate Query
This function allows coordinators to generate query to retrieve data from database
by selecting the fields from tables and defining the criteria (if any). Hence,
coordinators can generate different types of query as it is needed. The generated
queries will be stored and can be viewed in future.

ii. View Query
The generated queries that stored before will be listed out. From the list, the
coordinators can direct view the query result without the need of generate it again.
Besides that, the coordinators can delete the unwanted queries from the list.

Report

i. Student evaluation statistic
This report is the summary of the students’ evaluation form which filled by
students’ company superior to evaluate the student from variety areas as
following:

17 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 

 Commitment  Attendance
 Dependability  Communication Skills
 Initiative  Discipline
 Quality of Work  Punctuality
 Technical Knowledge  Work Relationship with Staffs

From the statistic chart, the coordinator can see the number of students who get
different rates (Poor, Average, Good, and Excellent) in different areas mentioned
above. Hence, coordinator  can know the weakness of the  students and can find
solutions to improve it.

ii. Student result statistic
This report is the summary of the students’ industrial training result. The chart
shows that number of students with the grades (A, A-, B+, B, B-, C+, C, C-, D,
and F). There is a pie chart which show the number of students fail and pass their
industrial  training  program. Thus,  coordinator  can  know  the  failure and passing
rate of the students.

iii. Company evaluation statistic
This report is the summary of the companies’ evaluation form which filled by
students to evaluate the internship companies based on the knowledge they learn
in different fields as following:
 Networking
 Programming Language
 Software
 Operating System
From  the statistic chart, the coordinator can see which fields the students learn
more during industrial training. Hence, coordinator can discuss with internship
companies to balance the

18 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
iv. Allocation summary report
This report shows that the companies’ name with the number of students
accepted. The companies will be categories by its location. Subtotal of the
number of students accepted of one location (e.g. Kuala Lumpur) will be
calculated and the total number of students of all the companies from all locations
will be calculated also.

v. Application Status Summary Report
This report  shows that  the  total  number of applications  in  each  status.  From the
report,  the  coordinator  can  see the number  of  students  rejected,  interviewed and
accepted by the company.

Housekeeping

i. Company Profile History
Keep track company profile which consists of company details, internship
requirements, and the number of requested trainees/students for each year.
Programing Language C# with .NET Framework Version 3.5 SP1

Database SQL Server / LINQ
Development Tools Microsoft Visual Studio 2008 SP1, AJAX Control
Toolkit, jQuery Tools
Browser Internet Explorer 7.0 / Mozilla Firefox 3.5 / Google
Chrome 2.0 and above
Operating System Windows 7
Others Microsoft Project 2007, Microsoft Visio 2007

Processor Intel Core 2 Duo E7200 2.53GHz
RAM 4GB
Hard Disk Capacity 160GB SATA HDD
Internet Connection 1.0Mbps

Browser Internet Explorer 7.0 / Mozilla Firefox 3.0 / Google
Chrome 2.0 or above
Operating System Windows XP, Windows 7

Processor Pentium 4
RAM 1GB
Network Internet Connection
Software

1.5 Operation Environment
Hardware

Software

Hardware  (Minimum  requirements)

20 | P a g e  
 
Industrial Training Online Management System

1.6 Project Schedule
Figure  1.1:  The  project  schedule.

21 | P a g e  
 
Industrial Training Online Management System Chapter 1: System Planning
 
1.7 Outline of Approach / Methodology Used

The system was developed by using iterative development model. This approach allows
system to be developed through a repeated cycles. The system will be developed stage
by stage and it is possible to back to previous stage even deliverables have been
submitted. The major phases of the iterative development model are requirements
analysis, design, development, testing and deployment. Each of the iteration will be
carried out until the system completely developed.
Figure  1.2:  Overview  of  Iterative  Development  Model.

Reason  of  using  iterative  development  approach:


 It is easier to accommodate the changing requirements. The system requirements
gathered  from  users  at  the  beginning  of  the  system development  will  change  from
time to time. Hence, this approach helps to accommodate the changing users’
requirements.
 It helps to avoid integration done at the end of the system development. It is
definitely wasting time and has high risk if the integration done at the end of the
system development. In the iterative approach, the integration of the iteration is

22 | P a g e
Industrial Training Online Management System Chapter 1: System Planning
 
performed continuously and progressively. Hence, minimize the risks and effort for
integration.
 It exposes risks at early iterations. Iterative approach can expose risks in each of the
iteration to developers. Thus, the developers can solve the risks in of the iteration to
ensure the quality of the final system and reduce the risks.
 It facilitates reuse of the sources. By using iterative approach, it is easier to identify
any sources in the early iterations which can be reused in the following iterations.

1.8 Critical Evaluation
In this chapter, I do research about the current industrial training process which used by
Computer Science division. To clarify the process, I interviewed the coordinators.
Hence, I analyzed the process and stated the problems of current industrial training
process.  After  that,  I  discussed  with my teammate,  Looi  Wai  How  about  the modules
and functions of the Industrial Training Online Management System which can support
users’ tasks and reduce the workloads of users.

Besides that, I researched about the methodology that should be used to develop the
system. From the research, I learnt many methodologies which cannot be learnt in
lecture. I listed out all the methodologies’ advantages and disadvantages and compared
them. Among the methodologies I listed which are Waterfall model, Spiral Model and
Iterative development, I selected the Iterative Development.

In this chapter, I had the opportunity to computerize a manually process. It was
challenging  as  I  need  to  make  sure  the  whole process  were  clarified  and  every  details
were not be missed out in order to provided a system which accepted by the users. By
using the knowledge about the current process, I need to design the modules and
functions to support users’ tasks. Moreover, I trained my communication skills through
interview section with the coordinators.

23 | P a g e  
 
 
Chapter 2

Requirements Analysis

 
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 

2. Requirement Analysis
This chapter descried the users’ problem, users’ requirements and system requirements
for developing the system.

2.1 Fact Gathering and Analysis
The users’ requirements were gathered through interview section with users.
Requirements stated during interview section will be recorded down for referring
purpose.

2.1.1 Users Problems Statement

The first problem of current business process is that the companies complain about
they are keep receiving job application email from same student. Hence, this
situation will spam their mail box. Besides that, it makes other important emails hard
to be noted.

Secondly, the students will receive outdated companies information. For real
example,  a  student  received  company  list  given  by  coordinator  which  noted  that  the
company will  offer  RM 500  allowance.  After  interview  section and  the  student  was
accepted and be informed that the allowance is RM 300. From that example, the
company had updated the allowance but the student’s company list had not been
updated.

Thirdly,  the  student evaluation forms are difficult to collect back  from company


superior at the end of industrial training. Coordinator need to keep calling and sending
email  to remind them  to  fill  up  and send back the student evaluation forms. Hence,
this is wasting time and makes the process slow while collect the forms back.

Fourthly, an analysis report is very important for coordinator to analyst the students’
training attitude. For current business process, coordinator need to analysis manually
and  produce  a  statistic report. Human error may occur and lead to wrong decision
making. For example, after the student evaluation forms are collected from companies,

25 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
coordinator need to view all the form one by one and analysis those forms to produce
a statistic report.

Next, the students’  company  superiors’  details  are  not  clear. Students only know


their company superiors’ details after training is started. Coordinators may not be
informed by all the students about their company superiors’ details. Thus,
coordinators do not have way to directly contact with students’ company superiors
when there are important information to inform.

Besides that, after the period of send job application, coordinators need to help all
unsecured students to find their suitable internship companies. To do so, coordinators
need to view the students’ strengths and compare with the companies’
requirements one by one manually. This is time  consuming  and  may  put  much of
effort.

2.2 Software Requirement Specification
Based on users problem statement above and interview section with users, the users’
requirements and system requirements are described in the following parts.

2.2.1 Users’ Requirements

The main function of the system is allocation. The system must able to allow the
coordinator  to  allocate the students to their secured companies  once  the  students
pass up B1 form to coordinator. Furthermore, the system must be able to save the
information and allow coordinator to retrieve to view the students’ secured companies.

To avoid the students keep send job application to same company, the companies’
emails will be hidden from students. Students need to upload their resumes and send
job application through the system. The system will send their job application as
email to correspond companies.
26 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
To ensure the students always get the updated information, they system will store the
companies’ details in database. Database will be updated if there are modifications.

A notification module is needed to allow coordinator to inform all the company
superiors to fill up student evaluation form at the end of industrial training. By using
this module, coordinator can broadcast the email to all the company superiors instead
of inform one by one. This function can help to speed up the process and saving time.

Apart from that, the system must involve a reporting module which can produce
different types of statistic reports. Hence coordinator can use those reports for
different decision making without the need to analyst the data manually.

After training is started, students must be informed to login to the system to fill up
their company superiors’ details. Thus, the coordinators can contact their company
superiors easily.

Moreover, an auto-matching function will be provided to help the coordinators to
match against students’ strength and companies’ requirements. By using this function,
a matching list will be produce. Hence, coordinator can save the effort to do the task
manually.

Besides, a query module will be included to allow coordinator to create different
query  as  it  is  needed.  The  coordinator  can  use  the  query  to  retrieve  different  sets  of
data.

2.2.2 System Requirement
2.2.2.1 Functional Requirements
Security Module
‐ It able to identify authorized users to login to the system.
‐ It able to differentiate the authorized level of users.
‐ It allows users to changes their passwords.
‐ It allows users to reset their passwords if they forgot their current passwords.

27 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
‐ It will encrypt users’ passwords to enhance security.

Job Application Module
‐ It allows students to search companies’ details based on entered searching
criteria.
‐ It provides a map to view the exact location of the companies.
‐ It allows users to bookmark particular company so that the company can be
referred back easily.
‐ It allows student to send their applications to companies.
‐ It allows students to update their applications’ status from time to time.

Allocation Module
‐ It allows coordinators to allocate students to their secured internship companies
and students to their college supervisors.
‐ It able to produce a list by matching students’ strengths against companies’
requirements.

Notification Modules
‐ It allows coordinators to send notification to users.

Feedback
‐ There are student evaluation forms which need to be filled up by college
supervisors and company superiors of the students.
‐ The student survey forms which need to be filled up by internship companies to
evaluate the performance of all college internship students.
‐ The  company survey forms  which  need  to  be  filled  up  by students to  evaluate
the internship companies.

Maintenance
‐ It allows add, edit/update and delete on company details.
‐ It allows add, edit/update and delete on student details.
‐ It allows add, edit/update and delete on staff details.
‐ It allows add, edit/update and delete on role details.

28 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
‐ It allows add, edit/update and delete on user account details.
‐ It allows add, edit/update and delete on announcement details.

Report
‐ It allows coordinators to view and print different types of reports.

Housekeeping
‐ It able to keep track companies’ profile history.

Query
‐ It allows coordinators to generate query for retrieving data from database to
view different set of data.

2.2.2.2 Non-Functional Requirements

Product  Requirements

Efficiency
- Providing auto-matching student preferences and company requirements allow
coordinator send resume to company without filter manually.
- Report is ready to be viewed or printed after evaluation form and survey form is
collected from student and company.
- Notification is always ready to update users.

Reliability
- Up-to-date information is providing to users. Users can do decision-making
effectively and produce valuable reports.

Portability
- Online system is best to solve time issue. It can operate for 24/7 which worksfor
24  hours  per day  and  7  days  per week without any  termination.  Online  system
certainly gives users convenience to surf the site for information anytime and
anywhere as long as internet access is available.

29 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Organization  Requirements
Process
- The system must be able to compile successfully. It should meet all the
requirements which include functional and non-functional requirement.

Implementation
- C# programming language is used to program the Industrial Training Online
Management System.
- LINQ (a set of extensions to the .NET Framework that encompass language-integrated
query,  set, and  transform  operations)  is  used  to  do  enhance  performance  of  query
(select, insert, update and delete).
- AJAX and JQuery.Do functions at client-side like validation and others in order
to reduce burden of server.

Delivery
- All method and documentation will be delivered within 12months.
External  Product  Requirements
Privacy Requirement
- The system should not disclose any unauthorized information to users that does
not have authority on it.

2.3 External Interface Requirement

2.3.1 User Interface
- Ease of navigation within Industrial Training Online Management System. Allow
user traverse around without losing inside the system.
- Consistent system design (color, size) in text field, control (button, drop down list,
etc), background and image.
- Using different font size to emphasis a big title. The main purpose is let user easy
to view and know what the main function of the page is. On the other hand, apply
a different font color in order to let user easy to read and focus on main points.

30 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
- Meaningful error message is provided. A meaningful and simple error message is
easily understand by user instead of special term.

2.3.2 Hardware Interface
- A server is required to place Industrial Training Online Management System and
following database.
- The external hardware interface used for accessing the system is the personal
computers of the teachers, students and company’s contact person.
- The PCs may be laptops with wireless LAN as the internet connections provided
will be wireless.
- All PCs is required Network Card in order to connect to website.
- Printer is required to print reports.
2.3.3 Software Interface
- Internet browser is required to browse Industrial Training Online Management
System website.
- Internet  browser  come  with  Javascript  interpreter is required  to  enable  always in
order to allow AJAX, JQuery perform tasks at client-side.
- The Operating Systems can be any version of Windows, Linux, Unix or Mac
which supports TCP/IP protocols.

2.3.4 Communication Interface
- The communication interface is a local area network through non-
wireless/wireless network routers.
- A unique IP address and domain name will be needed to run the website.
- The system will use SMTP protocol to send out. Besides that, HTTP protocol will
be used to launch the website for external people to view the website.

31 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
2.4 Use-Case Diagrams
Overview of Industrial Training Online Management System Use Cases
Figure  2.1:  Overview  of  Industrial  Training  Online  Management  System  Use  case.

32 | P a g e  
 
Use case name Send Application
Brief description This use case allows the students and coordinators to send application
to companies.
Actor Student, coordinator
Main flows
Actor Action System Response
1. Display Main Menu.
- If the actor is “Student”, the S-1: Student send application subflow is performed.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Detailed Use Case Diagrams

Use Case Description for Send Application

Figure  2.2:  Use  case  diagram  for  Send  Application.

33 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
- If the actor is “Coordinator”, the S-2: Coordinator send application subflow is
performed.

Subflows
S-1: Student Send Application
1. Student selects “Search Company” from the Main Menu.
- If “View Bookmark” is selected, the S-3: View Bookmark subflow is performed.
- If “View Application” is selected, the S-4: View Application subflow is performed.
2. System displays Search Company page.
3. Student enters any criteria for searching.
4. Student clicks the “Search” button.
5. System displays the search result.
6. Student clicks the “Send Application” button of the company to send application.
7. System validates the send application period and the student’s status.
8. System sends application with resume attached to the company as email.
9. System display message to inform student email sent successfully.

S-2: Coordinator Send Application
1. Coordinator selects “Send Application” from the Main Menu.
2. System displays Send Application page.
3. Coordinator selects company and student.
4. System validates the student’s status.
5. System sends application with the student’s resume attached to the company as email.
6. System display message to inform coordinator email sent successfully.

S-3: View Bookmark
1. System displays View Bookmark page.
2. System displays the bookmark list.
3. Student clicks the “Send Application” button of the company to send application.
4. System validates the send application period and the student’s status.
5. System sends application with resume attached to the company as email.
6. System display message to inform student email sent successfully.
34 | P a g e  
 
S-4: View Application
1. System displays View Application page.
2. System displays the application list.
3. Student clicks the change the status of the application.
4. Student clicks “Update” button.
5. System updates the status of the application according the changes.
6. System display message to inform applications are updated successfully.

Alternative flows
A-1: S-1 step 5: If the “Bookmark” button is clicked:
- System will add the company to the student’s bookmark list.

If the “View More” button is clicked:
- System will display the details of the company.

A-2: S-1 step 6: If the today’s date not in the send application period:
- System will display error message and not allow student to send
application.

If the student’s status is “Secured”:
- System will display error message and not allow student to send
application.

A-3: S-2 step 4: If the student’s status is “Secured”:
- System will display error message and not allow coordinator to send
application.
 

A-4: S-3 step 3: If the “View More” button is clicked:
- System will display the details of the company.

If the “Delete” button is clicked:
- System will remove the company from the student’s bookmark list.

Industrial Training Online Management System Chapter 2: Requirements Analysis

35 | P a g e  
 
Use case name Allocate Student
Brief description This use case allows the coordinators to allocate students to their
secured companies, college supervisors and carry out auto-matching
process for unsecured students.
Actor Coordinator

Industrial Training Online Management System Chapter 2: Requirements Analysis
 
A-5: S-3 step 4: If the today’s date not in the send application period:
- System will display error message and not allow student to send
application.

If the student’s status is “Secured”:
- System will display error message and not allow student to send
application.
Figure  2.3:  Use  case  diagram  for  Allocation.

36 | P a g e  
 
Main flows
Actor Action System Response
1. Display Main Menu.
- If the “Student - Company” is selected, the S-1: Allocate Student to Company subflow
is performed.
- If the “Student - Lecturer” is selected, the S-2: Allocate Student to Lecturer subflow is
performed.
- If the “Auto-matching All Unsecured Students” is selected, the S-3: Auto-matching All
Unsecured Students subflow is performed.
- If the “Auto-matching Selected Unsecured Students” is selected, the S-4: Auto-
matching Selected Unsecured Students subflow is performed.
Use Case Description for Allocate Student

Subflows
 

S-1: Allocate Student to Company
1. System displays Allocation Student to Company page.
2. Coordinator selects company and student to be allocated.
3. Coordinator clicks the “Submit” button.
4. System validates the company and student.
5. System allocates the student to the company.
6. System updates the student’s status to “Secured”.
7. System displays allocate successfully message.

S-2: Allocate Student to Lecturer
1. System displays Allocation Student to Lecturer page.
2. Coordinator selects lecturer and student to be allocated.
3. Coordinator clicks the “Submit” button.
4. System validates the student.
5. System allocates the student to the lecturer.
6. System displays allocate successfully message.

S-3: Auto-matching All Unsecured Students
1. System displays Auto-matching All Unsecured Students page.
2. Coordinator selected the criteria for matching.

Industrial Training Online Management System Chapter 2: Requirements Analysis

37 | P a g e  
 
3. Coordinator clicks the “Start Matching” button.
4. System displays the matching result.

S-4: Auto-matching Selected Unsecured Students
1. System displays Auto-matching Selected Unsecured Students page.
2. Coordinator selected the criteria for matching.
3. Coordinator clicks the “Select Students for Matching” button to select students.
4. System displays Select Students for Matching page as pop-out window.
5. Coordinator selects the program from drop-down list.
6. Coordinator clicks the “Search” button.
7. System displays all students from the program selected.
8. Coordinator checks the checkbox of the students who are going to be matched.
9. Coordinator clicks the “Confirm” button.
10. System closes the pop-out window.
11. Coordinator clicks the “Start Matching” button.
12. System displays the matching result.

Alternative flows
A-1: S-1 step 2: If the “More than one student” checkbox is checked:
- System displays a list box, “Add” button and “Remove” button.
- Coordinator selects student and click “Add” button to add the student
into the list box.
- Coordinator clicks “Remove” button to remove student from the list
box.

If the “Search” button is clicked:
- System displays a student list based on the criteria entered (program
and tutorial class).
- Coordinator clicks on the “Select” button of the student to select the
student.

If the “Search Company” button is clicked:
- System displays Search Company page as pop-out page.
 

Industrial Training Online Management System Chapter 2: Requirements Analysis

38 | P a g e  
 
- Coordinator clicks the starting alphabet of the company’s name.
- System displays all the companies which the names start with the
selected alphabet.
- Coordinator clicks the “Select” button of the company.
- System closes the pop-out window and displays the company in the
company text box of the Allocation Student to Company page.

A-2: S-1 step 4: If the selected company’s vacancy available is 0:
- System displays error message and allocation fail.

If the selected student’s status is “Secured”:
- System displays error message and allocation fail.
 

A-3: S-2 step 2: If the “More than one student” checkbox is checked:
- System displays a list box, “Add” button and “Remove” button.
- Coordinator selects student and click “Add” button to add the student
into the list box.
- Coordinator clicks “Remove” button to remove student from the list
box.

If the “Search” button is clicked:
- System displays a student list based on the criteria entered (program
and tutorial class).
- Coordinator clicks on the “Select” button of the student to select the
student.

If the “Search Lecturer” button is clicked:
- System displays Search Lecturer page as pop-out page.
- Coordinator clicks the starting alphabet of the lecturer’s name.
- System displays all the lecturers whose name start with the selected
alphabet.
- Coordinator clicks the “Select” button of the lecturer.
- System closes the pop-out window and displays the lecturer in the

Industrial Training Online Management System Chapter 2: Requirements Analysis

39 | P a g e  
 
lecturer text box of the Allocation Student to Lecturer page.

A-4: S-2 step 4: If the selected student’s allocated to lecturer already:
- System displays error message and allocation fail.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Figure  2.4:  Use  case  diagram  for  Send  Notification.

40 | P a g e
Use case name Send Notification
Brief Description This use case allows the coordinators to send the notification to
inform users about some important information.
Actor Coordinator
Main Flow:
Actor Action System Response
1. Display Main Menu.
2. Coordinator selects “Send 3. Display sub menu:
Notification”. - Send Student Resume Notification
- Send Student’s Company Superior
Notification
- Send Student Survey Notification
- Send Company Detail Notification
- Send Company Survey Notification
- Send Company Requirement Notification
- Send Student Evaluation Form Notification
- If the “Send Student Resume Notification” is selected, the S-1: Send Student Resume
Notification subflow is performed.
- If the “Send Student’s Company Superior Notification” is selected, the S-2: Send
Student’s Company Superior Notification subflow is performed.
- If the “Send Student Survey Notification” is selected, the S-3: Send Student Survey
Notification subflow is performed.
- If the “Send Company Detail Notification” is selected, the S-4: Send Company Detail
Notification subflow is performed.
- If the “Send Company Survey Notification” is selected, the S-5: Send Company Survey
Notification subflow is performed.
- If the “Send Company Requirement Notification” is selected, the S-6: Send Company
Requirement Notification subflow is performed.
- If the “Send Student Evaluation Form Notification” is selected, the S-7: Send Student
Evaluation Form Notification subflow is performed.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Use Case Description for Send Notification

41 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Subflows:
S-1: Send Student Resume Notification
1. System checks and retrieves students who have not uploaded their resumes to system.
2. System sends email as notification to the students.
3. System records notification’s status.
4. System displays “Successful Send” message.

S-2: Send Student’s Company Superior Notification
1. System checks  and  retrieves students  who have not  filled  up their  company  superiors
details.
2. System sends email as notification to the students.
3. System records notification’s status.
4. System displays “Successful Send” message.

S-3: Send Student Survey Notification
1. System checks and retrieves students who have not filled up student survey forms.
2. System sends email as notification to the students.
3. System records notification’s status.
4. System displays “Successful Send” message.

S-4: Send Company Details Notification
1. System checks and retrieves companies’ contact persons who have not filled up
companies details.
2. System sends email as notification to the companies’ contact persons.
3. System records notification’s status.
4. System displays “Successful Send” message.

S-5: Send Company Survey Notification
1. System checks and retrieves students’ company superiors who have not filled up
company survey forms.
2. System sends email as notification to the students’ company superiors.
3. System records notification’s status.
4. System displays “Successful Send” message.

42 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
S-6: Send Company Requirement Notification
1. System checks and retrieves companies’ contact persons who have not filled up
company requirements forms.
2. System sends email as notification to the companies’ contact persons.
3. System records notification’s status.
4. System displays “Successful Send” message.

S-7: Send Student Evaluation Form Notification
1. System checks and retrieves students’ company superiors who have not filled up
student evaluation forms.
2. System sends email as notification to the students’ company superiors.
3. System records notification’s status.
4. System displays “Successful Send” message.
Figure  2.5:  Use  case  diagram  for  Track  Notification  Status.

43 | P a g e
Use case name Track Notification Status
Brief Description This use case allows the coordinators to view the notification status
and send notification to the students or companies (contact persons).
Actor Coordinator
Main Flow:
Actor Action System Response
1. Display Main Menu.
2. Coordinator selects “Track 3. Display sub menu: View Notification
Notification Status”. Status.
- If the “View Notification Status” is selected, the S-1: View Notification Status subflow
is performed.

Subflows:
S-1: View Notification Status
1. System displays all the notification status according to student resume, student survey,
student’s company superior, company detail, company requirement, company survey
and student evaluation form.
2. Coordinator enables to input any keywords or information at the search form in order
to search a particular notification status.

Alternative flows:
A-1: S-1 Step 2: If coordinator clicked “Send” notification:
- Display “Successful Send” message.

Industrial Training Online Management System Chapter 2: Requirements Analysis
Use
   Case Description for Track Notification  Status

44 | P a g e  
 
Use case name Maintain notification setting
Brief Description This use case allows the coordinators to add new notification setting
information and update notification setting information.
Actor Coordinator
Main Flow:
Actor Action System Response
1. Display Main Menu
2. Coordinator selects “Maintain 3. Display sub menu: Add Notification
Notification” Setting, Update Notification Setting.
- If the “Add Notification Setting” is selected, the S-1: Add Notification Setting subflow
is performed.
- If the “Update Notification Setting” is selected, the S-2: Update Notification Setting
subflow is performed.
Subflows:
S-1: Add Notification Setting
1. System displays an empty Notification Setting form.
2. Coordinator inputs new notification setting information.
3. Coordinator clicks “Save” button.
4. System validates the entered details.
5. System saves the new notification setting record into database.
Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Use Case Description for Maintain Notification Setting.

Figure  2.6:  Use  case  diagram  for  Maintain  Notification  Setting

45 | P a g e
6. System displays “Record is successful added”.

S-2: Update Notification Setting
1. System displays current notification setting details.
2. Coordinator inputs the updated information.
3. Coordinator clicks “Update” button.
4. System validates the entered details.
5. System updates the existing record at database.
6. System displays “Record is successful updated”.
 

Alternative flows:
A-1: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-2: S-2 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

Industrial Training Online Management System Chapter 2: Requirements Analysis

46 | P a g e  
 
Use case name Fill Feedback
Brief Description This use case allows the students to fill up student survey forms, the
college supervisors to fill up student evaluation forms and the
students’ company superiors to fill up company survey forms and
student evaluation forms.
Actor Student, College Supervisor, Company Superior
Main Flow:
Actor Action System Response
1. Display Main Menu.
2. Student or college supervisor or 3. Display sub menu: Record Student Survey
company superior selects “Fill only display to student, Record Company
Feedback”. Survey and Record Student Evaluation
Form for Company only display to
Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Use Case Description for Fill Feedback

Figure  2.7:  Use  case  for  Fill  Feedback.

47 | P a g e
company superior and Record Student
Evaluation Form for College Supervisor
only display to college supervisor.
- If the “Record Student Survey” is selected, the S-1: Record Student Survey subflow is
performed.
- If the “Record Company Survey” is selected, the S-2: Record Company Survey
subflow is performed.
- If the “Record Student Evaluation Form for Company” is selected, the S-3: Record
Student Evaluation Form for Company subflow is performed.
- If the “Record Student Evaluation Form for College Supervisor” is selected, the S-4:
Record Student Evaluation Form for College Supervisor subflow is performed.

Subflows:
S-1: Record Student Survey
1. System displays an empty Student Survey form.
2. Student inputs new survey information.
3. Student clicks “Save” button.
4. System validates the entered details.
5. System saves the new survey record into database.
6. System displays “Record is successful added”.

S-2: Record Company Survey
1. System displays an empty Company Survey form.
2. Company Superior inputs new survey information.
3. Company Superior clicks “Save” button.
4. System validates the entered details.
5. System saves the new survey record into database.
6. System displays “Record is successful added”.
7. System displays “Record is successful updated”.

S-3: Record Student Evaluation Form for Company
1. System displays an empty Student Evaluation Form for Company.
2. Company Superior inputs new evaluation information.
 

Industrial Training Online Management System Chapter 2: Requirements Analysis

48 | P a g e  
 
3. Company Superior clicks “Save” button.
4. System validates the entered details.
5. System saves the new evaluation record into database.
6. System displays “Record is successful added”.

S-4: Record Student Evaluation Form for College Supervisor
1. System displays an empty Student Evaluation Form for College Supervisor.
2. College Supervisor inputs new evaluation information.
3. College Supervisor clicks “Save” button.
4. System validates the entered details.
5. System saves the new evaluation record into database.
6. System displays “Record is successful added”.

Alternative flows:
A-1: S-1 step 3: If the student choose not confirm to register the student survey:
- System will not add record into the database.

A-2: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-3: S-2 step 3: If the company superior choose not confirm to register the company
survey:
- System will not add record into the database.
 

A-4: S-2 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-5: S-3 step 3: If the company superior choose not confirm to register the student
evaluation form for company:
- System will not add record into the database.

Industrial Training Online Management System Chapter 2: Requirements Analysis

49 | P a g e  
 
A-6: S-3 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-7: S-4 step 3: If the college supervisor choose not confirm to register the student
evaluation form for college supervisor:
- System will not add record into the database.

A-8: S-4 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

50 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Figure  2.8:  Use  case  for  Maintenance.

51 | P a g e
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Figure  2.9:  Use  case  for  Maintain  Company.

Use Case Description for Maintain Company
Use case name Maintain company
Brief Description This use case allows the coordinators and companies’ contact persons
to add new company information and update company information.
The coordinators are allowed to search the company information.
Actor Coordinator, Contact Person
Main Flow:
Actor Action System Response
1. Display Main Menu.
2. Coordinator or contact person selects 3. Display sub menu: Register New Company,
“Maintain Company”. Update Company. Search Company only
display to coordinator.
- If the “Register New Company” is selected, the S-1: Register New Company subflow
is performed.
- If the “Update Company” is selected, the S-2: Update Company subflow is performed.
- If the “Search Company” is selected, the S-3: Search Company subflow is performed.
Subflows:

52 | P a g e
S-1: Register New Company
1. System displays an empty Company form.
2. Coordinator or contact person inputs new company information.
3. Coordinator or contact person clicks “Save” button.
4. System validates the entered details.
5. System saves the new company record into database.
6. System saves the history of the new company record into database.
7. System displays “Record is successful added”.

S-2: Update Company
1. System displays current company details.
2. Coordinator or contact person inputs the updated information.
3. Coordinator or contact person clicks “Update” button.
4. System validates the entered details.
5. System updates the existing record at database.
6. System saves the history of the updated company record into database.
7. System displays “Record is successful updated”.

S-3: Search Company
1. Coordinator inputs any related keyword or information at the search form.
2. System checks the records at database.
3. System displays record if found.

Alternative flows:
A-1: S-1 step 3: If the coordinator or contact person choose not confirm to register the
company:
- System will not add record into the database.

If the contact person choose confirm to register the company:
- System set the default value of status to “Pending”.
- System set the default value of type to “Non-Privilege”.
- System set the default value of division to “CSMA” (CSMA
represent to Computer Science Division and Mathematics
 

Industrial Training Online Management System Chapter 2: Requirements Analysis

53 | P a g e  
 
Division).

A-2: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-4: S-2 step 3: If the coordinator or contact person choose not confirm to update the
company:
- System will not update the record existing at the database.

A-3: S-2 step 5: If the data entered is invalid:
- Display “invalid data” message
- Cursor will point to the particular field

A-5: S-3 step 3: If no record is found:
1. Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

54 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Figure  2.10:  Use  case  for  Maintain  Contact  Person.

Use Case Description  for Maintain Contact Person
Use case name Maintain contact person
Brief Description This use case allows the coordinators and companies’ contact persons
to add new contact person information and update contact person
information. The coordinators are allowed to search the contact
person information.
Actor Coordinator, Contact Person
Main Flow:
Actor Action System Response
- Display Main Menu
- Coordinator or contact person selects - Display sub menu: register new contact
“Maintain Contact Person” person, Update contact person. Search
contact person only display to coordinator.
- If the “Register New Contact Person” is selected, the S-1: Register New Contact
Person subflow is performed.
- If the “Update Contact Person” is selected, the S-2: Update Contact Person subflow is

55 | P a g e
performed.
- If the “Search Contact Person” is selected, the S-3: Search Contact Person subflow is
performed.
 

Subflows:
S-1: Register New Contact Person
1. System displays an empty Contact Person form.
2. Coordinator or contact person inputs new contact person information.
3. Coordinator or contact person clicks “Save” button.
4. System validates the entered details.
5. System saves the new contact person record into database.
6. System displays “Record is successful added”.

S-2: Update Contact Person
1. System displays current contact person details.
2. Coordinator or contact person inputs the updated information.
3. Coordinator or contact person clicks “Update” button.
4. System validates the entered details.
5. System updates the existing record at database.
6. System displays “Record is successful updated”.

S-3: Search Contact Person
1. Coordinator inputs any related keyword or information at the search form.
2. System checks the records at database.
3. System displays record if found.

Alternative flows:
A-1: S-1 step 3: If the coordinator or contact person choose not confirm to register the
contact person:
- System will not add record into the database.

A-2: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.

Industrial Training Online Management System Chapter 2: Requirements Analysis

56 | P a g e  
 

 
- Cursor will point to the particular field.

A-3: S-2 step 3: If the coordinator or contact person choose not confirm to update the
contact person:
- System will not update the record existing at the database.

A-4: S-2 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-5: S-3 step 3: If no record is found:
- Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis

Figure  2.11:  Use  case  for  Maintain  Company  Requirement.


57 | P a g e
Use case name Maintain company requirement
Brief Description This use case allows the coordinators and companies’ contact persons
to add new company requirements information and update company
requirements information. The coordinators allowed to search the
company requirements information.
Actor Coordinator, Contact Person
Main Flow:
Actor Action System Response
1.    Display Main Menu
2. Coordinator or contact person selects 3. Display sub menu: Register New Company
“Maintain Company Requirement” Requirement, Update Company
Requirement. Search Company
Requirement only display to Coordinator.
- If the “Register New Company Requirement” is selected, the S-1: Register New
Company Requirement subflow is performed.
- If the “Update Company Requirement” is seleced, the S-2: Update Company
Requirement subflow is performed.
- If the “Search Company Requirement” is selected, the S-3: Search Company
Requirement subflow is performed.
Use  Case Description  for Maintain Company Requirement
Subflows:
S-1: Register New Company Requirement
1. System displays an empty Company Requirement form.
2. Coordinator or contact person inputs new company requirement information.
3. Coordinator or contact person clicks “Save” button.
4. System validates the entered details.
5. System saves the new company requirement record into database.
6. System displays “Record is successful added”.

S-2: Update Company Requirement
1. System displays current company requirement details.
2. Coordinator or contact person inputs the updated information.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

58 | P a g e  
 
3. Coordinator or contact person clicks “Update” button.
4. System validates the entered details.
5. System updates the existing record at database.
6. System displays “Record is successful updated”.

S-3: Search Company Requirement
1. Coordinator inputs any related keyword or information at the search form.
2. System checks the records at database.
3. System displays record if found.

Alternative flows:
A-1: S-1 step 3: If the coordinator or contact person choose not confirm to register the
company requirement:
- System will not add record into the database.
 

A-2: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-3: S-2 step 3: If the coordinator or contact person choose not confirm to update the
company requirement:
- System will not update the record existing at the database.

A-4: S-2 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-5: S-3 step 3: If no record is found:
- Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis

59 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Figure  2.12:  Use  case  for  Maintain  Company  Superior..

Use Case Description  for Maintain Company Superior
Use case name Maintain company superior
Brief Description This use case allows the coordinators and students to add new
company superior information and update company superior
information. The coordinators are allowed to search the company
superior information.
Actor Coordinator, Student
Main Flow:
Actor Action System Response
1. Display Main Menu
2. Coordinator or student selects 3. Display sub menu: Add New Company
“Maintain Company Superior” Superior, Update Company Superior.
Search Company Superior only display to
coordinator.
- If the “Add New Company Superior” is selected, the S-1: Add New Company Superior
subflow is performed.
- If the “Update Company Superior” is selected, the S-2: Update Company Superior
subflow is performed.

60 | P a g e
- If the “Search Company Superior” is selected, the S-3: Search Company Superior
subflow is performed.
Subflows:
S-1: Add New Company Superior
1. System displays an empty Company Superior form.
2. Coordinator or student inputs new company superior information.
3. Coordinator or student clicks “Save” button.
4. System validates the entered details.
5. System saves the new company superior record into database.
6. System displays “Record is successful added”.

S-2: Update Company Superior
1. System displays current company superior details.
2. Coordinator or student inputs the updated information.
3. Coordinator or student clicks “Update” button.
4. System validates the entered details.
5. System updates the existing record at database.
6. System displays “Record is successful updated”.

S-3: Search Company Superior
1. Coordinator inputs any related keyword or information at the search form.
2. System checks the records at database.
3. System displays record if found.

Alternative flows:
A-1: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-2: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

61 | P a g e  
 
Use case name Maintain student
Brief Description This use case allows the coordinators and students to add new student
information and update student information. The coordinators are
allowed to search the student information
Actor Coordinator, Student
Main Flow:
Actor Action System Response
1.    Display Main Menu
2. Coordinator or student selects 3. Display sub menu: Add New Student,
“Maintain Student” Update Student. Search student only display

A-3: S-1 step 3: If no record is found:
- Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Figure  2.13:  Use  case  for  Maintain  Student.

62 | P a g e
to coordinator.
- If the “Add New Student” is selected, the S-1: Add New Student subflow is performed.
- If the “Update Student” is selected, the S-2: Update Student subflow is performed.
- If the “Search Student” is selected, the S-3: Search Student subflow is performed.

Subflows:
S-1: Add New Student
1. System displays an empty Student form.
2. Coordinator or student inputs new student information.
3. Coordinator or student clicks “Save” button.
4. System validates the entered details.
5. System saves the new student record into database.
6. System displays “Record is successful added”.

S-2: Update Student
1. System displays current student details.
Use  Case Description for Maintain Student
2. Coordinator or student inputs the updated information.
3. Coordinator or student clicks “Update” button.
4. System validates the entered details.
5. System updates the existing record at database.
6. System displays “Record is successful updated”.

S-3: Search Student
1. Coordinator inputs any related keyword or information at the search form.
2. System checks the records at database.
3. System displays record if found.

Alternative flows:
 

A-1: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-1: S-2 step 5: If the data entered is invalid:

Industrial Training Online Management System Chapter 2: Requirements Analysis

63 | P a g e  
 
Use case name Maintain staff
Brief Description This use case allows the coordinators to add new staff information,
update staff information and search the staff information
Actor Coordinator, College Supervisor
Main Flow:
Actor Action System Response
1. Display Main Menu
2. Coordinator or college supervisor 3. Display sub menu: Add New Staff, Update
selects “Maintain Staff”. Staff and Search Staff.
- Display “invalid data” message.
- Cursor will point to the particular field.

A-1: S-3 step 3: If no one record is found:
- Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Figure  2.14:  Use  case  for  Maintain  Staff.

64 | P a g e
- If the “Add Staff” is selected, the S-1: Add New Staff subflow is performed.
- If the “Update Staff” is selected, the S-2: Update Staff subflow is performed.
- If the “Search Staff” is selected, the S-3: Search Staff subflow is performed.

Use Case Description for Maintain Staff
 

Subflows:
S-1: Add New Staff
1. System displays an empty Staff form.
2. Coordinator or college supervisor inputs new staff information.
3. Coordinator or college supervisor clicks “Save” button.
4. System validates the entered details.
5. System saves the new staff record into database.
6. System displays “Record is successful added”.

S-2: Update Staff
1. System displays current staff details.
2. Coordinator or college supervisor inputs the updated information.
3. Coordinator or college supervisor clicks “Update” button.
4. System validates the entered details.
5. System updates the existing record at database.
6. System displays “Record is successful updated”.

S-3 Search Staff
1. Coordinator or college supervisor inputs any related keyword or information at the
search form.
2. System checks the records at database.
3. System displays record if found.

Alternative flows:
A-1: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-2: S-2 step 5: If the data entered is invalid:

Industrial Training Online Management System Chapter 2: Requirements Analysis

65 | P a g e  
 
Use case name Maintain user account
Brief Description This use case allows the coordinators to add new user account
information, update user account information, search user account
information and delete user account information
Actor Coordinator
Main Flow:
Actor Action System Response
- Display “invalid data” message.
- Cursor will point to the particular field.

A-3: S-3 step 3: If no record is found:
- Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Figure  2.15:  Use  case  for  Maintain  User  Account.

66 | P a g e
1. Display Main Menu.
2. Coordinator selects “Maintain User 3. Display sub menu: Add New User Account,
Account”. Update User Account and Search User
Account and Delete User Account.
- If the “Add New User Account” is selected, the S-1: Add New User Account subflow
is performed.
- If the “Update User Account” is selected, the S-2: Update User Account subflow is
performed.
- If the “Search User Account” is selected, the S-3: Search User Account subflow is
performed.
- If the “Delete User Account” is selected, the S-4: Delete User Account
- subflow is performed.

Use Case Description for Maintain User Account
 

Subflows:
S-1: Add New User Account
1. System displays an empty User Account form.
2. Coordinator inputs new user account information.
3. Coordinator clicks “Save” button.
4. System validates the entered details.
5. System saves the new user account record into database.
6. System displays “Record is successful added”.

S-2: Update User Account
1. Coordinator searches a user account.
2. System displays current user account details.
3. Coordinator inputs the updated information.
4. Coordinator clicks “Update” button.
5. System validates the entered details.
6. System updates the existing record at database.
7. System displays “Record is successful updated”.

S-3: Search User Account
1. Coordinator inputs any related keyword/information at the search form.

Industrial Training Online Management System Chapter 2: Requirements Analysis

67 | P a g e  
 
2. System checks the records at database.
3. System displays record if found.

S-4: Delete User Account
1. Coordinator searches a user account.
2. System displays the user account details.
3. Coordinator click “Delete” button.
4. System removes the user account from database.
5. System displays “Record is successful deleted”.

Alternative flows:
A-1: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-2: S-2 step 6: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-3: S-3 step 3: If no record is found:
- Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

68 | P a g e  
 
Use case name Maintain role
Brief Description This use case allows the coordinators to add new role information,
update role information, search role information and delete role
information
Actor Coordinator
Main Flow:
Actor Action System Response
1. Display Main Menu.

2. Coordinator selects “Maintain Role”. 3. Display sub menu: Add New Role, Update
Role and Search Role and Delete Role.
- If the “Add New Role” is selected, the S-1: Add New Role subflow is performed.
- If the “Update Role” is selected, the S-2: Update Role subflow is performed.
- If the “Search Role” is selected, the S-3: Search Role subflow is performed.
- If the “Delete Role” is selected, the S-4: Delete Role subflow is performed.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Figure  2.16:  Use  case  for  Maintain  Role.

69 | P a g e
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Subflows:
S-1: Add New Role
1. System displays an empty Role form.
2. Coordinator inputs new role information.
3. Coordinator clicks “Save” button.
4. System validates the entered details.
Use Case Description for Maintain Role
5. System saves the new role record into database.
6. System displays “Record is successful added”.

S-2: Update Role
1. Coordinator searches a role.
2. System displays current role details.
3. Coordinator inputs the updated information.
4. Coordinator clicks “Update” button.
5. System validates the entered details.
6. System updates the existing record at database.
7. System displays “Record is successful updated”.

S-3: Search Role
1. Coordinator inputs any related keyword/information at the search form.
2. System checks the records at database.
3. System displays record if found.
S-4: Delete Role
1. Coordinator searches role.
2. System displays the role details.
3. Coordinator click “Delete” button.
4. System removes the role from database.
5. System displays “Record is successful deleted”.

Alternative flows:
A-1: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message,

70 | P a g e  
 
- Cursor will point to the particular field.

A-2: S-2 step 6: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-3: S-3 step 3: If no record is found:
- Display “No records”.

Use case name Maintain announcement
Brief Description This use case allows the coordinators to add new announcement
information, update announcement information, search announcement
information and delete announcement information
Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Figure  2.17:  Use  case  for  Maintain  Announcement.

71 | P a g e
Actor Coordinator, College Supervisor
Main Flow:
Actor Action System Response
1. Display Main Menu.
2. Coordinator or college supervisor 3. Display sub menu: Add New
selects “Maintain Announcement”. Announcement, Update Announcement and
Search Announcement and Delete
Announcement.
- If “Add New Announcement” is selected, the S-1: Add New Announcement subflow is
performed.
- If the “Update Announcement” is selected, the S-2: Update Announcement subflow is
performed.
Use  Case Description for Maintain Announcement
- If the “Search Announcement” is selected, the S-3: Search Announcement subflow is
performed.
- If the “Delete Announcement” is selected, the S-4: Delete Announcement subflow is
performed.
 

Subflows:
S-1: Add New Announcement
1. System displays an empty Announcement form.
2. Coordinator or college supervisor inputs new announcement information.
3. Coordinator or college supervisor clicks “Save” button.
4. System validates the entered details.
5. System saves the new announcement record into database.
6. System displays “Record is successful added”.

S-2: Update Announcement
1. Coordinator or college supervisor searches an announcement.
2. System displays current announcement details.
3. Coordinator or college supervisor inputs the updated information.
4. Coordinator or college supervisor clicks “Update” button.
5. System validates the entered details.
6. System updates the existing record at database.

Industrial Training Online Management System Chapter 2: Requirements Analysis

72 | P a g e  
 
7. System displays “Record is successful updated”.

S-3: Search Announcement
1. Coordinator or college supervisor inputs any related keyword or information at the
search form.
2. System checks the records at database.
3. System displays record if found.

S-4: Delete Announcement
1. Coordinator or college supervisor searches announcement.
2. System displays the announcement details.
3. Coordinator click “Delete” button.
4. System removes the announcement from database.
5. System displays “Record is successful deleted”.

Alternative flows:
A-1: S-1 step 5: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-2: S-2 step 6: If the data entered is invalid:
- Display “invalid data” message.
- Cursor will point to the particular field.

A-3: S-3 step 3: If no record is found:
- Display “No records”.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

73 | P a g e  
 
Use case name Generate Query
Brief description This use case allows the coordinators to generate and view existing
query.
Actor Coordinator
Main flows
Actor Action System Response
1. Display Main Menu.
2. Coordinator selects the “Query” from 3. Display the Submenu of the “Query”.
the Main Menu.
If the “Generate Query” is selected, the S-1: Generate Query subflow is performed.
If the “View Query” is selected, the S-2: View Query subflow is performed.

Subflows
S-1: Generate Query
1. System displays Generate Query page.
2. Coordinator selects the columns to show of the query result.
3. Coordinator set the criteria of the query.
4. Coordinator enters the query name.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 
Figure  2.18:  Use  case  for  Generate  Query.

74 | P a g e  
 
5. Coordinator clicks “Generate” button.
6. System save the query details in the database.
7. System displays the query result.

S-2: View Query
Use  Case Description  for Generate Query
1. System displays the existing query list.
2. Coordinator clicks “View Button” of the query.
3. System displays the query result.

Alternative flows
A-1: S-2 step 2: If coordinator clicks “Delete” button:
- The query will be removed from the query list.
Use case name View Report
Brief description This use case allows coordinators to view different kinds of report.
Actor Coordinator
Main flows
Actor Action System Response
1. Display Main Menu.
2. Coordinator selects “”Report” from 3. Display the submenu which contains
the main menu. “Student Evaluation Statistic”, “Student

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

Figure  2.19:  Use  case  for  View  Report.

75 | P a g e  
 
Use case name Housekeeping
Brief Description This use case allows the coordinators store the company requirements
for each year.
Actor Coordinator
Main Flow:
Actor Action System Response
1. Display Main Menu.
2. Coordinator selects “Housekeeping”. 3. Display sub menu: Record Company
Profile.
4. Coordinator selects “Record
Use Company Profile”.
Case Description for View Report
5. Coordinator clicks “Company 6. System saves all the company requirement
Requirement” button. records into database.
7. System displays “Record is successful
result Statistic”, “Company Evaluation
Statistic”, “Allocation Summary Report”,
“Application Status Summary Report”
and “Company Status Summary Report”.
 

4. Coordinator clicks on the report type 5. Display the report according to
to view. coordinator’s selection.
Industrial Training Online Management System Chapter 2: Requirements Analysis

Figure  2.20:  Use  case  for  Housekeeping.

Use Case Description for Housekeeping
76 | P a g e
Use case name Login
Brief description This use case allows the coordinators, students and college supervisors
to perform login process to login to the system
Actor Coordinator, college supervisor, student
Main flows
Actor Action System Response
1. Display the Main Menu page.
2. Actor clicks the “Login” button. 3. Display the login panel.
4. Enter the user ID and password.
5. Click the “Login” button. 6. Validate user ID and password.
7. Display successful login message.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 
added”.

Figure  2.21:  Use  case  for  Login.

Use Case Description for Login

77 | P a g e  
 
8. Display homepage.

Alternative flows
A-1: Main flow step 6: If the user ID and password are not matched:
- System displays error message.
- Actor need to login again.

Industrial Training Online Management System Chapter 2: Requirements Analysis
 

78 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
2.5 Activity Diagrams for Current Business Processes
Figure  2.22:  Activity  diagram  for  current  business  process.

79 | P a g e  
 
Industrial Training Online Management System Chapter 2: Requirements Analysis
 
First,  coordinator  will  provide  a  company  list  to  students which  can  be  obtained  from
college CEL or coordinators.

By reviewing the company list, a student can select his/her preferred company and send
his/her job application with the resume attached to the company. The student is required
to wait for the company’s reply. If the reply is negative, the student needs to review the
company  list and send his/her job application to another company. Or, if the company
does not reply after five working days, the student needs to send a reminder to the
company. After another five working days, if still does not receive any reply, the
student needs to review the company list and send his/her job application to another
company.

For those students receive positive reply from companies, they need to make
arrangement  for  interview  with  companies.  After  attend  the  interviews,  if  the  students
are rejected, then  they need to review company list  and send their job  applications to
other companies. If the students are accepted, then they must request the companies to
fill up acceptance letters (B1 form) and pass up to their coordinators as prove of
acceptance. Next, the students are required to sign KTAR acceptance letters (B2 form)
and will be kept by coordinators.

2.6 Critical Evaluation

In this chapter, the users’ requirements were be gathered and analyzed. I learnt to gather
users’ requirements for the system. By gathering the requirements, I improved my
communication skill and understanding skill. I needed to make sure that the
communication between me and the coordinators (users) was clear and had not any
misunderstanding.

Moreover, I used my analysis skill to analysis the gathered users’ requirements. Based
on  the  users’  requirements,  I  designed  the  functionalities which  should  be  involved  in
the system. To present the graphical overview of the functionalities which provided by
the  system,  Use Case  Diagrams  is  used. By  drawing the diagrams, I learnt  the way  to
visualize the facts I gathered in order to clarify the facts.

80 | P a g e  
 
 

Chapter 3

System Design
 
Industrial Training Online Management System Chapter 3: System Design
 

3. System Design

3.1 Activity Diagrams for High Level Design
Figure  3.1:  Activity  diagram  for  Industrial  Training  Online  Management  System.

3.2 Database Design
The system’s database is designed based on the class diagram that indicates the
relationships of all the tables. The relationships may be one-to-one, one-to-many or

82 | P a g e  
 
Industrial Training Online Management System Chapter 3: System Design
 
many-to-many. The attributes of the each table are listed. The primary key(s) and
foreign key(s) are shown clearly as well.

The following notations are used in the logical ERD:
Notation Description
1 One
0..1 Zero or One
0..* Zero or Many
1..* One or Many

3.2.1 Final Class Diagram (Logical ERD)
Figure  3.2:  First  part  of  database  diagram.

83 | P a g e
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 AnnGuid uniqueidentifier No - Primary Key
2 AnnTitle varchar(200) No - Announcement Title
3 AnnContent varchar(MAX) No - Announcement Content
4 AnnFlag char(1) No - Flag indicates the
announcement is public

Industrial Training Online Management System Chapter 3: System Design
 
Figure  3.3:  Second  part  of  database  diagram.

3.2.2 Data Dictionary
The tables’ attributes will be described in the following section. A data dictionary
table for each table will show the attributes in the tables, its data type, default value,
purpose and whether allow null value or not.

Announcement

84 | P a g e
or private

5 AnnStartDate datetime No - Announcement Start


Date for display post
6 AnnEndDate datetime No - Announcement End
Date for hide post
7 CreateBy varchar(100) No - Announcement create
Purpose: Store the announcements details.
by who
8 CreateTimeStamp datetime No - Create date of
Announcement
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Stud_ID char(10) No - Primary Key
2 Com_Code varchar(10) No - Primary Key
3 Applied_Date datetime No - Application sent date
 

4 Application_Status varchar(20) No Waiting Status of the


for Reply application
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 AnnGuid uniqueidentifier No - Primary Key
2 RoleID varchar(5) No - Primary Key

Industrial Training Online Management System Chapter 3: System Design

Announcement_Role
Purpose: Store the privilege details of announcement which indicate which roles can view

the announcement.
Application

Bookmark
Purpose: Store the bookmarked company of the students.
No. Attribute/Column Data Type    Allow Default          Purpose
Name Null
Purpose: Store the application sent by the students to companies.
85 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Com_Code varchar(10) No - Primary Key
2 Com_Name varchar(100) No - Company name
3 Com_Tel_No varchar(15) No - Telephone number
4 Com_Fax_No varchar(15) No - Fax number
5 Com_Email varchar(60) No - Company email
6 Company_Web_Site varchar(80) Yes - Company web site
7 Address varchar(100) No - Company address
8 City varchar(30) No - Company City
9 State varchar(30) No - Company state
 

10 Postcode char(5) No - Company postcode


11 Com_Status varchar(20) No Pending Status of company
( pending, active or
inactive )
12 Company_Type varchar(20)
Purpose: Store the company’s details. Yes Non-Privilege Type of company
( Non-Privilege,
Privilege )
13 Division varchar(10) Yes CSMA The Company under
which division
( CSMA - Computer
Science and Maths,
CS – Computer
Science or MA –
Maths )
14 Coor_Email varchar(60) Yes - Foreign Key
( Coordinator email )
1 Stud_ID char(10) No - Primary Key
2 Com_Code varchar(10) No - Primary Key

Industrial Training Online Management System Chapter 3: System Design

Company

86 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Com_History_Guid uniqueidentifier No - Primary Key
2 Com_Code varchar(10) Yes - Company Code
3 Com_Name varchar(100) Yes - Company Name
4 Com_Tel_No varchar(15) Yes - Telephone number
 

5 Com_Fax_No varchar(15) Yes - Fax number


6 Com_Email varchar(60) Yes - Company email
7 Company_Web_Site varchar(80) Yes - Company web site
8 Address varchar(100) Yes - Company address
9 City varchar(30) Yes - Company City
10 State varchar(30) Yes - Company state
Purpose: Keep track the history of company when do any updates.
11 Postcode char(5) Yes - Company postcode
12 Com_Status varchar(20) Yes - Status of company
( pending, active or
inactive )
13 Company_Type varchar(20) Yes - Type of company
( Non-Privilege,
Privilege )
14 Division varchar(10) Yes - The Company under
which division ( CSMA
- Computer Science
and Maths, CS -
Computer Science or
MA - Maths )
15 Coor_Email varchar(60) Yes - Coordinator email
15 CreateTimeStamp datetime No - Register date of
company
16 ModifyTimeStamp datetime No - Modify date of
company

Industrial Training Online Management System Chapter 3: System Design

Company_History

87 | P a g e  
 
 

No. Attribute/Column Data Type Allow Default Purpose


Name Null
1 Com_Code varchar(10) No - Primary Key
2 Type varchar(1) No - Form type
( D – Details,
R–Requirement )
3 Name varchar(100) No - Company name
Purpose: Store the nature of work of the company.
4 Last_Send_Date datetime No - Last send date of the
sent form
5 Com_Email varchar(60) No - Company email
6 Notify_Company_Status varchar(1) No - Notification Status
( C – Completed, H –
Haven't Completed
Yet)
7 Coor_Email varchar(60) Yes - Coordinator email
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Nature_Task varchar(50) No - Primary Key
2 Nature_Description varchar(500) Yes - Description of the
nature of task
3 Com_Code varchar(10) No - Foreign Key
16 ModifyTimeStamp datetime Yes - Modify date of
company
17 ModifyBy varchar(50) Yes - Modify by who
18 Comment varchar(50) Yes - Comment on this
record

Industrial Training Online Management System Chapter 3: System Design

Company_NatureOfWork

Company_Notification_Setting
Purpose: Keep track the notification status after sent a request of detail or requirement to

88 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 RequirementID varchar(50) No - Primary Key
2 Allowance varchar(500) Yes - Allowance given by
company to internship
students.
3 TravellingLocation varchar(10) Yes - The location which the
internship students to
work which is not main
office
4 TravellingAllowance varchar(20) Yes - The allowance for
travelling to working
location which not the
company. main office
5 Accommodation char(1) Yes - Whether the company
provides accommodation
6 CGPA varchar(5) Yes - The lower CGPA of the
students the company
can accept
7 OtherRequirement varchar(MAX) Yes - Other requirements need
to be stated
8 Com_Code varchar(10) Yes - Foreign Key
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 ProgrammingLanguage varchar(50) No - Primary Key
2 Com_Code varchar(10) No - Foreign Key

Industrial Training Online Management System Chapter 3: System Design
 
Company_ProgrammingLanguage
Purpose: Store the programming language used by the company.

Company_Requirement

89 | P a g e  
Purpose: Store the requirement of the company for selecting the internship students.
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 ComSuperior_Email varchar(60) No - Primary Key
2 ComSuperior_Name varchar(100) No - Name of student’s
company superior
3 ComSuperior_HP_No varchar(15) No - Headphone number of
student’s company
superior
4 Designation varchar(50) No - Designation of student’s
company superior
5 Address varchar(100) No - Address of student’s
company superior
6 State varchar(30) No - State of student’s
company superior
7 City varchar(30) No - City of student’s
company superior
8 Postcode char(5) No - Postcode of student’s
company superior
9 Com_Code varchar(10) Yes - Company code of the
company
10 Stud_ID char(10) No - Primary Key, Foreign
Key
No. Attribute/Column Name Data Type Allow Default Purpose
Null
1 Com_Survey_ID varchar(10) No - Primary Key
Purpose: Store the company superior of each internship student.
2 Tec_Knowledge int No - Rate of the students’
technical knowledge
3 Initiative int No - Rate of the students’

Industrial Training Online Management System Chapter 3: System Design
 
Company_Superior

Company_Survey
 

90 | P a g e  
 

initiative
4 Commitment int No - Rate of the students’
commitment
5 Communication_Skill int No - Rate of the students’
communication skill
6 Further_Comment varchar(MAX) No - Further comments
7 Future_Planning varchar(MAX) No - Future planning
8 Overall_GradeOn_Student varchar(5) No - Overall grade of
students’ performance
9 Com_Code varchar(10) No - Foreign Key
Industrial Training Online Management System
Purpose: Store information about the contact person of the company. Chapter 3: System Design

Contact_Person
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 CP_Email varchar(60) No - Primary Key
2 CP_Name varchar(100) No - Contact person’s name
3 CP_HP_No varchar(15) No - Contact person’s
handphone number
4 CP_Fax_No varchar(15) Yes - Contact person’s fax
number
5 Designation varchar(50) No - Contact person’s
designation
6 Com_Code varchar(10) No - Foreign Key
Purpose: Store the survey result done by companies to the TARC’s students’ performance.

Coordinator
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Coor_Email varchar(60) No - Primary Key
2 Coor_Name varchar(100) No - Coordinator’s name
3 Coor_HP varchar(20) Yes - Coordinator’s
handphone number
91 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 GNS_Guid uniqueidentifier No - Primary Key
2 RD_Resume int No - Notification resend day
of resume
3 LS_Resume datetime Yes - Last send date of
resume
4 RD_Company_Detail int No - Notification resend day
of company detail
5 LS_Company_Detail datetime Yes - Last send date of
company detail
6 RD_Company_ int No - Notification resend day
Requirement of company
requirement
7 LS_Company_Require datetime Yes - Last send date of
ment company requirement
8 RD_Company_Superv int No - Notification resend day
isor of company supervisor
9 LS_Company_Supervi datetime Yes - Last send date of

No. Attribute/Column Data Type Allow Default Purpose


Name Null
1 Stud_ID char(10) No - Primary Key
2 DB_Language varchar(50) No - Primary Key
Purpose: Store the coordinators’ details.
Database type

Industrial Training Online Management System Chapter 3: System Design
 
4 Coor_OfficePhone varchar(20) Yes - Coordinator’s office
phone number
Database

General_Notification_Setting
Purpose: Store the types of database that the student learnt.

92 | P a g e  
 
sor company supervisor

10 RD_Company_Survey int No - Notification resend day


of company survey
form
11 LS_Company_Survey datetime Yes - Last send date of
Purpose: Stored the notification setting in order to send email notification by system.
company survey form
12 RD_Student_Survey int No - Notification resend day
of student survey form
13 LS_Student_Survey datetime Yes - Last send date of
student survey form
14 RD_Student_Evaluati int No - Notification resend day
on_Form of student evaluation
form
15 LS_Student_Evaluatio datetime Yes - Last send date of
n_Form student evaluation form
16 Start_Internship datetime Yes - Internship start date
17 End_Internship datetime Yes - Internship end date
18 Start_Send_Applicatio datetime Yes - Send application start
n date
19 End_Send_Applicatio datetime Yes - Send application end
n date
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 HK_ComReq_Guid uniqueidentifier No - Primary Key
2 Year varchar(5) Yes - Year of Record
 

3 Com_Code varchar(50) Yes - Company code


4 VacancyAvailable int Yes - Number of vacancy that
available for students.
5 AcceptedTrainee int Yes - Number of accepted

Industrial Training Online Management System Chapter 3: System Design

Housekeeping_Company_Requirement

93 | P a g e  
 
trainee

6 ProgrammingStudent int Yes - Number of student who


is good in programming
that requested by
company
7 DatabaseStudent int Yes - Number of student who
is good in database that
requested by company
8 NetworkingStudent int Yes - Number of student who
is good in networking
that requested by
Purpose: Keep tracks the company requirement each year. company
9 TechnicalStudent int Yes - Number of student who
is good in technical that
requested by company
10 SystemSupportStudent int Yes - Number of student who
is good in system
support that requested
by company
 

11 OtherStudent int Yes - Number of student who


is good in other areas
that requested by
company
12 RequestTraineeMoreT char(1) Yes - Flag indicated the
hanOne company whether
requested for trainee
more than one time.
13 Allowance varchar(20) Yes - Allowance
14 TravellingLocation varchar(250) Yes - Travelling Location
15 TravellingAllowance varchar(20) Yes - Travelling Allowance
16 Accommodation char(1) Yes - Accommodation
provided by company

Industrial Training Online Management System Chapter 3: System Design

94 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Lec_Stud_Eva_Code varchar(10) No - Primary Key
2 SubmissionMthRpt int Yes - Mark of submission
mothly report
3 ContentMthRpt int Yes - Mark of content
monthly report
4 WrittenMthRpt int Yes - Mark of written
monthly report
5 SubmissionFinalRpt int Yes - Mark of submission

17 CGPA varchar(5) Yes - Student's CGPA


18 OtherRequirement varchar(MAX) Yes - Other requirement
specified by company
19 Programming varchar(500) Yes - Programming details
 

20 [Database] varchar(500) Yes - Database details


21 Networking varchar(500) Yes - Networking details
22 Technical varchar(500) Yes - Technical details
23 SystemSupport varchar(500) Yes - System Support details
24 OtherNatureOfWork varchar(500) Yes - Other nature of work
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Lec_ID varchar(10) No - Primary Key
2 Lec_Name varchar(100) No - Lecturer name
3 Lec_Email varchar(60) No - Lecturer’s email address
4 Lec_RoomNo varchar(8) No - Lecturer’s room number
Purpose: Store the lecturers’ details.

Industrial Training Online Management System Chapter 3: System Design

Lecturer

LecturerStudent_Evaluation
Purpose: Store the information about the student evaluation form which filled by college

supervisor. 95 | P a g e  
 
final report

6 ContentFinalRpt int Yes - Mark of content


final report
7 WrittenFinalRpt int Yes - Mark of written
final report
8 Total_Mark int Yes - Total mark of
monthly report and
final report
9 Comment varchar(MAX) Yes - comment from
lecturer
 

10 CreateTimeStamp datetime Yes - Create date of the


evaluation form
11 ModifyTimeStamp datetime Yes - Modify date of the
evaluation form
12 Stud_ID char(10) Yes - Foreign Key
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Login _ID varchar(50) No - Primary Key, Foreign
Key
2 Role_ID varchar(5) No - Primary Key, Foreign
Key
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Login_ID varchar(50) No - Primary Key
2 Password varchar(MAX) No - Password of the login
ID

Purpose: Store the login ID with its corresponding password of all the login accounts.
Industrial Training Online Management System Chapter 3: System Design

Login

Login_Role

Purpose: Store the login ID with its corresponding role ID.
96 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Stud_ID char(10) No - Primary Key
2 Location varchar(50) No - Preferred working
location of student
No. Attribute/Column Data Type Allow Default Purpose
Purpose: Store skills in networking of each student.
Name Null
1 Stud_ID char(10) No - Primary Key
2 Networking varchar(50) No - Primary Key
Skill in networking
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Stud_ID char(10) No - Primary Key
2 Field varchar(50) No - Preferred working
Purpose: Store the preferred working fields of students. field of student
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Stud_ID char(10) No - Primary Key
2 Language varchar(50) No - Programming language
learnt by student

Industrial Training Online Management System
Purpose: Store the preferred working locations of students Chapter 3: System Design
 
Networking

Preferred _Field

Preferred_Location

Purpose: Store the programming language learnt by the students.

Programming_Language

97 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 QueryID uniqueidentifier No - Primary Key
2 QueryName varchar(200) No - Name of the query

3 StudDetails varchar(MAX) Yes - Content value if student


details included
4 CompDetails varchar(MAX) Yes - Content value if
company details
included
5 StudTable varchar(MAX) Yes - The tables which related
to student details
included in the query
6 CompTable varchar(MAX) Yes - The tables which related
to company details
included in the query
7 StudCriteria varchar(MAX) Yes - Criteria of the student
details
8 CompCriteria varchar(MAX) Yes - Criteria of the company
details
9 StudColumn varchar(MAX) Yes - Fields to be showed of
the student details
10 CompColumn varchar(MAX) Yes - Fields to be showed of
the company details
No. Attribute/Column DataType Allow Default Purpose
Name Null
1 RoleID varchar(5) No - Primary Key
2 RoleDescription varchar(20) Yes - Role description

Industrial Training Online Management System Chapter 3: System Design
 
Query
Role
Purpose: Store the information of each query generated.

98 | P a g e  
 
No. Attribute/Column DataType Allow Default Purpose
Name Null
1 Stud_ID char(10) No - Primary Key
2 Stud_Name varchar(100) No - Student’s name

3 Program varchar(5) No - Program of study


4 Tutorial_Group varchar(5) No - Tutorial group
5 Gender varchar(2) No - Student’s gender
6 IC_No varchar(15) No - Identity card number
7 Term_Add varchar(100) No - Temporary address

8 Term_State varchar(30) No - Temporary state


9 Term_City varchar(30) No - Temporary city

10 Term_Postcode char(5) No - Temporary postcode


11 Permanent_Add varchar(100) No - Permanent address
12 Permanent_State varchar(30) No - Permanent state

13 Permanent_City varchar(30) No - Permanent city

14 Permanent_Postcode char(5) No - Permanent postcode


15 Stud_HP_No varchar(15) No - Handphone number/
contact number
16 Home_Tel_No varchar(15) Yes - Home phone number
17 Stud_Email varchar(60) No - Email address
18 Transport
Purpose: Store the role details. varchar(3) No - Whether has self
transport to work
19 CGPA varchar(6) No - CGPA of advance
diploma
20 Resume varchar(100) Yes - Resume file name
21 ComSuperior_Email varchar(60) Yes - Foreign Key
22 Lec_ID varchar(50) Yes - Foreign Key
Purpose: Store the information about the students.
23 Com_Code varchar(10) Yes - Foreign Key

Industrial Training Online Management System Chapter 3: System Design
 
Student

99 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Eva_Code varchar(10) No - Primary Key
2 Stud_Tech_Knowled int No - Mark of Technical
ge Knowledge
3 Stud_Dependability int No - Mark of Dependability
4 Stud_Initiative int No - Mark of Initiative
5 Stud_Commitment int No - Mark of Commitment
6 Stud_QOW int No - Mark of Quality of
Work
7 Stud_Relationship_W int No - Mark of Relationship
ith_Staff with staff
8 Stud_Discipline int No - Mark of Discipline
9 Stud_Communication int No - Mark of Communication
_Skill Skill
10 Stud_Punctuality int No - Mark of Punctuality
11 Stud_Attendance int No - Mark of Attendance
12 Day_Absent_With_P varchar(20) Yes - Number of day absent
ermission with permission
13 Day_Absent_Without varchar(20) Yes - Number of day absent
_Permission without permission
14 Total_Mark int No - Total Mark
15 Other_Comment varchar(MAX Yes - Comment from company
) to the student
16 SummaryProOfTraini varchar(MAX Yes - Summary
ng )
17 Stud_ID char(10) Yes - Foreign Key
Purpose: Store the information about the student evaluation by the company.

Industrial Training Online Management System Chapter 3: System Design
 
24 Status varchar(50) No Unsecured Secured status of
student

Student_Evaluation

100 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Stud_Survey_ID varchar(10) No - Primary Key
2 Nature_Of_Business varchar(100) No - Nature of business of
internship company
3 Programming_Langua int No - Mark of programming
ge language knowledge
learnt
4 Operating_System int No - Mark of operating
system knowledge learnt
5 Network int No - Mark of networking
knowledge learnt
6 Software int No - Mark of software
knowledge learnt
7 Working_Days varchar(10) No - Working days per week

8 Woking_Hours varchar(20) No - Working hours of one


day
9 Allowance varchar(10) No - Allowance per month

Purpose: Store the students’ total mark of internship program.
10 Work_Night_Shift varchar(5) No - Whether need work at
night shift
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 Stud_ID char(10) No - Primary Key
2 TotalMark int No - Lecturer name
3 Grade varchar(3) No - Lecturer’s email
address

Purpose: Store the survey result done by students to their internship company.
Industrial Training Online Management System Chapter 3: System Design
 
Student_Mark

Student_Survey

101 | P a g e  
 
11 Work_During_Weeke varchar(5) No - Whether need work
nd during weekend
12 Travel_To_ClientSide varchar(5) No - Whether need travel to
client side
13 Extra_Allowance varchar(10) No - Allowance for travelling
to client side
14 Relationship_With_Su varchar(20) No - Rate of relationship with
pervisor supervisor
15 Air_Conditioned varchar(5) No - Whether air conditioner
provided
16 Non_Smoking_Area varchar(5) No - Whether non-smoking
are provided
 

17 Spacious_Working_Ar varchar(5) No - Whether spacious


ea working area provided
18 Good_Relationship_W varchar(5) No - Whether have good
ith_Staff relationship with staff
19 Overall_Grade_On_C varchar(20) No - Overall grade for the
ompany internship company
20 Comment_On_Compa varchar(MAX Yes - Comments to the
ny ) company
21 Stud_ID char(10) No - Foreign Key
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 TaskNameID varchar(200) No - Primary Key
2 RoleID varchar(5) No - Primary Key
3 CreateTimeStamp datetime Yes - Create date of the task
assigned
4 ModifyTimeStamp datetime Yes - Modify date of the task
assigned
5 CreateLoginID varchar(50) Yes - Create by who

Industrial Training Online Management System Chapter 3: System Design

TaskAssign
Purpose: Store the tasks are assigned to a role.

102 | P a g e  
 
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 TaskNameID varchar(200) No - Primary Key
2 TaskDesc varchar(MAX) Yes - Task description
3 Url varchar(MAX) Yes - Task URL
4 TaskType varchar(50) Yes - Task type
5 TaskTypeSeq int Yes - Task type sequence
6 TaskSeq int Yes - Task sequence
7 TaskTypeNested varchar(50) Yes - Task type nested
Purpose: Store the task details.
8 TaskTypeNestedLevel int Yes - Task type nested level
9 TaskNestedSeq int Yes - Task Nested Sequence
10 ShowHeader int Yes - Flag of show header
11 CreateTimeStamp datetime Yes - Create date of the task
12 ModifyTimeStamp datetime Yes - Modify date of the task
13 CreateLoginID varchar(50) Yes - Create by who
14 ModifyLoginID varchar(50) Yes - Modify by who
15 DisplayImage varchar(MAX) Yes - Image URL
16 CreateShorcut int Yes - Flag of display shortcut
No. Attribute/Column Data Type Allow Default Purpose
Name Null
1 VacancyID uniqueidentifier No - Primary Key
2 VacancyAvailable int Yes - Number of vacancy that
available for students.
3 AcceptedTrainee int Yes - Number of accepted
trainee

Industrial Training Online Management System Chapter 3: System Design
 
6 ModifyLoginID varchar(50) Yes - Modify by who
TaskMaster
Purpose: Store the number of vacancy provided by company.

Vacancy

103 | P a g e  
 
4 ProgrammingStudent int Yes - Number of student
who is good in
programming that
requested by company
5 DatabaseStudent int Yes - Number of student
who is good in database
that requested by
company
6 NetworkingStudent int Yes - Number of student
who is good in
networking that
requested by company
7 TechnicalStudent int Yes - Number of student
who is good in
technical that requested
by company
8 SystemSupportStudent int Yes - Number of student
who is good in system
support that requested
by company
9 OtherStudent int Yes - Number of student
who is good in other
areas that requested by
company
10 CreateTimeStamp datetime No - Create date of vacancy
11 ModifyTimeStamp datetime No - Modify date of vacancy
12 Com_Code varchar(10) Yes - Foreign Key

Industrial Training Online Management System Chapter 3: System Design
 

104 | P a g e  
 
Industrial Training Online Management System
 
3.3 Architectural Design

Figure  3.4:  Architectural  design  of  the  system.


*  User  can  be  student  and  company.
*  Staff  can  be  Coordinators  and  College  Supervisors  (Lecturers).

105 | P a g e  
 
 

3.4 User Interface Design (Prototype)
The system’s user interface (UI) is designed as every webpage has common design and
color to let the users know that everything is a piece of work. To do so, a master page
(will be shown in the following page) is used.

Besides that, the colors used in the webpage are very  important for UI design. It must
give users a sense of comfortable when they are using the system. In this system, dark
orange is selected as main color as it has the feel of energy.

The title, subtitle, alert message, field name and so on will be displayed clearly so that
the system is user  friendly  and  readable. Different fond color and fond sizes will be
used for title, subtitle, alert message, and field name and so on.

The system should use different design  to emphasize  a process or  functions. It can


help to gain users attention. A message box will be displayed to inform users the
process status (fail or success).

The following sections will show some of the interface designs (Prototype) of the web
pages of the system.

106 | P a g e  
 
Industrial Training Online Management System Chapter 3: System Design
 

Figure  3.5:  Master  page

Figure  3.5 show the master page of the system. Most of the web pages will be applied to this
master page.

Figure  3.6:  Welcome  page


107 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 
Once the users browse the system, the welcome page which shown in  Figure  3.6 will be
displayed. There is a panel which user can enter their user IDs and passwords to login to
access the system.

Figure  3.7:  Homepage

Figure 3.7 shows the homepage of the system. Once the users are successful login to the
system, they will be redirected to homepage which shown as above. Users can view the
announcements posted on the homepage.
108 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 

Figure  3.8:  Change  password  page

The Change Password page which shown in Figure 3.8 allows the users to change their
passwords. Users can change their passwords from time to time.
Figure  3.9:  Reset  password  page

Figure  3.9 shows the reset password page. This page allows the users to reset their passwords
when  they  forget  their passwords. An email with  a  link  will  be sent  to  users’ emails.  Users

109 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 
can click on the link and go to reset password page. After that, they are recommended to
login and change their passwords again.
Figure  3.10:  Student  Personal  Particular  form

Student Personal Particular form is shown in  Figure  3.10. This page allows the students to fill


up/modify their personal particulars. At the first time of filling this form, they will be
redirected to Student Preference form and asked for fill up their training preferences as well.

110 | P a g e  
 
Industrial Training Online Management System Chapter 3: System Design
 
Figure  3.11:  Student  Preference  form

Figure  3.11 shows the Student Preference form which allows the students to fill up their
training preferences and modify their training preferences.

111 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 

Figure  3.12:  Upload  Resume  page

Upload Resume page is shown in  Figure  3.12. This page allows the students to upload their


resumes which will be used to send their job applications to preferred companies.
Figure  3.13:  Search  Company  page

Figure  3.13 shows the Search Company page which allows the students to define their
searching criteria to generate company list that consists of all the companies fulfill the criteria
stated. Besides that, the students can view the companies’ details, can bookmark the
companies and also send their job applications to the companies.

112 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 

Figure  3.14:  View  Bookmark  page

View  Bookmark  page  is  shown  in  Figure  3.14.  This  page  allows  the  students  to  view  their
bookmarked companies. Students can view the companies’ details, delete the companies from
the bookmark list and also send their job applications to the companies.
Figure  3.15:  View  Application  page

View Application page is shown in  Figure  3.15. This page allows the students to view their


sent applications. They can view the companies’ details and update the applications’ status as
well.

113 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 
Figure  3.16:  Company  Superior  Details  form

Figure  3.16  shows  the  Company  Superior  Details  form which  allows  the students  to  fill  up
and modify their company superiors’ details.

Figure  3.17:  College  Supervisor  page

The College Supervisor  page is shown in  Figure  3.17. This  page allows students view their


college supervisors’ details. Moreover, student can send emails to their supervisors.

114 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 
Figure  3.18:  Student  Survey  form

Figure  3.18 shows the Student Survey form. This page allows the students to fill up their
opinions about their internship companies in the end of industrial training program.

115 | P a g e  
 
Industrial Training Online Management System Chapter 3: System Design
 
Figure  3.19:  Allocate  Student  to  Company  page

Allocate Student to Company page is shown in Figure  3.19. This page allows the
coordinators to allocate students to their secured companies after the students submit the B1
forms to coordinators.

Figure  3.20:  Allocate  Student  to  College  Supervisor  page

Allocate Student to College Supervisor page is shown in  Figure  3.20. This page allows


coordinators to allocate students to their corresponding college supervisors.

116 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 
Figure  3.21:  Auto-matching  page

The Auto-matching page is shown in  Figure  3.21 which allows coordinators to run the auto-


matching process which match unsecured students’ strength and companies’ requirements. A
matching result will be displayed.

Figure  3.22:  Generate  New  Query  page


117 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 
Figure  3.22 shows the Generate New Query page. This page allows the coordinators to
generate new query to retrieve different sets of data from database. They can select the fields
and set criteria for the query. Hence, the query will be saved and can be viewed in the future.

Figure  3.23:  View  Query  page

The View Query page is shown in  Figure  3.23. This page allows the coordinators to view the


existing query/queries. Furthermore, the coordinator can delete unwanted query/queries.
Figure  3.24:  View  Report  page

118 | P a g e
Industrial Training Online Management System Chapter 3: System Design
 
The  Figure  3.24 shows the View Report page. The page consists of report viewer that allows
coordinators to view different types of reports. Besides that, it allows print the report and
exports the report to other format file and so on.

3.5 Critical Evaluation

System Design is a very important phase which would contribute to the structure of the
system before it was build. The way of programming the system would rely on the
design specification that defined in this phase. In this chapter, I designed the flow of the
computerized  Industrial  Training  process.  Moreover,  I  designed  the  system’s  database
and the user interface of the system.

To present the process of computerized Industrial Training in graphical view, Activity
Diagram  is  used.  Hence,  I  used  the knowledge  that  learnt  before  to  draw  the  Activity
Diagram. When I faced problems, I would research about the related information to
solve the problems.

Furthermore, I learnt to design the system’s database. I listed the attributes, data types
of attributes and the purpose of the attributes of each tables before the relationships
between all the tables were defined. To conduct the relationships between tables was
very important as it would affect the performance of retrieving data from database.
Hence, I ensured that the data can be retrieved easily when I designed the relationships
between the tables.

Before I started design the user interface, I researched some principles of designing the
user interface such as the color used in the system, the font size used and so on. Besides
that, I knew the way to design a user-friendly system which the users will feel ease to
use. Thus, I gained knowledge about the way to design an interactive user interface.
119 | P a g e  
 
 

Chapter 4

Detailed Design
 
 
Industrial Training Online Management System Chapter 4: Detailed Design
 
4. Detailed Design
4.1 Collaboration Diagram for Login

Figure  4.1:  Collaboration  diagram  for  Login.

Firstly, the LoginUI will start interface and display login page after it receive message from
LoginControl. The user (coordinator/college supervisor/student) will enter user ID and
password to the system. LoginControl will then verify the user by retrieve user ID and
password from the Login table. After that, LoginControl will display a message to inform the
user’s login status (success / fail).

121 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
4.2 Sequence Diagram for Job Application
Figure  4.2:  Sequence  diagram  for  Search  Company.

From Figure 4.2 shows the search company process. At the beginning, the
SearchCompanyControl will send StartInterface() and DisplaySearchCompanyPage()
messages to UI control. The student can enter the criteria for searching the company if any.
Once the student click the “Search” button, StartSearch() message will send to
SearchCompanyControl through SearchCompanyUI. The SearchCompanyControl will get
details from Company table, CompanyNatureOfWork table and CompanyRequirement table.
After searching, SearchCompanyControl will display searching result by sending message to
UI control.

Optional  actions
 Student can bookmark the company if it is needed. The student can click on
“Bookmark” button, BookmarkCompany() will be sent to SearchCompanyControl
through UI control. SearchCompanyControl will call AddBookmark() to add the
company into the Bookmark table.

122 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
 Student can send application to the company if he / she want to do so. Once “Send
Applicaiton” button is clicked, SendApplication() message will be passed to
SearchCompanyControl. After that, application will be add to the Application table by
AddApplicaiton() message.
Figure  4.3:  Sequence  diagram  for  View  Bookmark.

Figure  4.3 describe the object interactions for the view bookmark process. The
ViewBookmarkControl will send StartInterface() message to ViewBookmarkUI. After that,
ViewBookmarkControl will send GetBookmark() to Bookmark table to get bookmark details
and send DisplayViewBookmarkPage() to ViewBookmarkUI.

123 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
Optional  action
 Student can delete unwanted bookmarked company. By clicking “Delete” button,
DeleteBookmark() message will be sent to ViewBookmarkControl and then delete the
bookmark from Bookmark table.
 Student can send application to company.When “Send Application” button is clicked,
SendApplicaiton() message will send to ViewBookmarkControl. Next,
ViewBookmarkControl will send AddApplicaiton() message to Application table and
DeleteBookmark() message to Bookmark table. Once the process is completed, a message
will be displayed to inform that the application is successfully sent.
Figure  4.4:  Sequence  diagram  for  View  Application.

The sequence diagram shown in  Figure 4.4 is for View Application process. Firstly,
ViewApplicationControl will send StartInterface() to ViewApplicationUI and

124 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
GetApplicaiton() to Application table. After that, DisplayViewApplicaitonPage() will be sent
to UI control.

Optional  action
 Student can update the application’s status. To update the application’s status,
UpdateStatus() message will be sent to ViewAppilcaitonControl and then sent to
Application table to update the status of particular application record. A message will be
displayed to inform that the application’s status is successfully updated.

Figure  4.5:  Sequence  diagram  for  Send  Application  by  Coordinator.

From  Figure 4.5 which show the objects interfaces for Send Application, noted that the
SendApplicationControl will send StartInterface() and DisplaySendApplicaitonPage()
messages to SendApplciationUI. The coordinator selects the student and company to send
application. Once SendApplication() message is sent to SendApplicationControl, the
SendApplicationControl will get company code and company email from Company table.
Next, it will get student ID and student resume from Student table. An AddApplicaiton()

125 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
message will be sent to Application table to add  the application record. After the process is
finished, a message will be displayed to inform that the process is successful.
4.3 Sequences Diagram for Allocation Module

Figure  4.6:  Sequence  diagram  for  Allocate  Student  to  Company.

The object interfaces for Allocate Student to Company is shown in Figure  4.6. The
AllocationControl will send StartInterface() and DiaplayAllocationPage() to AllocationUI.
Then, coordinator selects the student and the company for allocation. When
AllocationStudComp() message is sent, AllocationControl will send GetStudentID() to
Student table and GetCompanyCode() to Company table. Next, AllocationControl will send
UpdateStudentCompCode() and UpdateStudentStatus() to Student table. After that,

126 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
UpdateCompanyVacancyAvailable() message will be sent to Vacancy table. A message will
be displayed to inform that the allocation is successful.

Figure  4.7:  Sequence  diagram  for  Allocate  Student  to  College  Supervisor.

Figure 4.7 shows the object interfaces for Allocate Student to College Supervisor. Firstly,
StartInterface() and DiaplayAllocationPage() messages will be sent from AllocationControl
to AllocationUI. After that, coordinator will select the student and the lecturer (college
supervisor) for allocation. Once AllocationStudLec() message is sent, GetLecturerID(),
GetStudentID() and UpdateStudentLecID() messages will be sent to Lecturer and Student
table. After process is done, a message will be displayed to inform that the allocation is
successful.
127 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 

Figure  4.8:  Sequence  diagram  for  Auto-matching  all  Unsecured  Students.

From  Figure 4.8, noted that the AutomatchingControl will send StartInterface() and
DisplayAutomatchingPage() to AutomatchingUI. The coordinator will select matching
criteria and StartMatching() message will be sent to AutomatchingControl through UI
control. Then, AutomatchingContrl will send GetUnsecuredStudent(),
GetNotFullCompanyID() and GetNotFullCompanyDetails() to Student, Vacancy and
Company table. After matching process is completed, AutomatchingControl will send
DisplayMatchingResult() message to UI control to display the result.
128 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 

Figure  4.9:  Sequence  diagram  for  Auto-matching  for  Selected  Unsecured  Students.

The object interfaces shown in Figure 4.9 is for Auto-matching for Selected Unsecured
Student. The StartInterface() and DisplayAutomatchingPage() messages will be sent to
AutomatchingUI. The coordinator will select matching criteria and students for matching.
Once StartMatching() message is sent to AutomatchingControl through UI control,
AutomatchingContrl will send GetStudentDetails(), GetNotFullCompanyID() and
GetNotFullCompanyDetails() to Student, Vacancy and Company table. After matching
process is completed, AutomatchingControl will send DisplayMatchingResult() message to
UI control to display the result.
129 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
4.4 Diagram for Query Module

Figure  4.10:  Collaboration  diagram  for  Generate  Query.

The Figure 4.10 describes the object interfaces for Generate Query. The
GenerateQueryControl will send StartInterface() and DisplayGenerateQueryPage() to
GenerateQueryUI. Coordinator need to select the column and  set the criteria  for  the query.
After enter the query name, StartQuery() message will be sent to GenerateQueryUI and
GenerateQueryControl. Then GenerateQueryControl will send AddQuery() to Query table.
Next, it will send GetStudentDetails(), GetStudentPreference(), GetCompanyDetails,
GetCompanyRequirement() and GetCompanyNatureofWork() to corresponding tables.
Finally, the GenerateQueryControl will send DisplayQueryResult() to display the result.
View Query

130 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 

Figure  4.11:  Sequence  diagram  for  View  Query.


From Figure 4.11, firstly, StartInterface() and DisplayViewQueryPage() will be sent to
ViewQueryUI. Coordinator need to select the query to view and StartQuery() message will be
sent to ViewQueryControl. After receive the message, ViewQueryControl will get the query
details by sending GetQueryDetails() to Query table. Before send DisplayQueryResult to UI
control, it will send GetStudentdetails(), GetStudentPreference(), GetCompanyDetails(),
GetCompanyRequirement() and GetCompanyNatureOfWork() to corresponding tables.

131 | P a g e
Industrial Training Online Management System Chapter 5: Programming
 
4.5 Diagram for Reporting Module
Figure  4.12:  Sequence  diagram  for  Reporting.

Figure 4.12 shows the object interfaces for Reporting. Firstly, the ReportControl wll send
StartInterface() to ReportUI. Then, coordinator select type of the report to view and
DisplayReport() message will be sent from ReportControl to ReportUI.

132 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
Alternative  actions

 If “Student Evaluation Statistic” is selected, the ReportUI will sent
GetStudentEvaluationDetails() to ReportControl and then to StudentEvaluation table.
 If “Student Result Statistic” is selected, the ReportUI will sent GetStudentMarkDetails()
to ReportControl and then to StudentMark table.
 If “Company Evaluation Statistic” is selected, the ReportUI will sent
GetStudentSurveyForCompanyDetails() to ReportControl and then to StudentSurvey
table.
 If “Allocation Summary Report” is selected, the ReportUI will sent
GetAllocationDetails() to ReportContro. Then, GetStudentSecuredCompany() and
GetCompanyLocation() messages will be sent to Student table and Company table.
 If “Application Status Summary Report” is selected, the ReportUI will sent
GetApplicationStatus() to ReportControl and then to Applicaiton table.

4.6 Critical Evaluation

In this chapter, I used the Sequence Diagrams and Collaboration Diagrams to visualize
the process of Login, Job Application Module, Query Module, Allocation Module and
Reporting Module.

To draw the diagrams, I need to design and clarify the process of the Industrial Training
Online Management System. First, I sketched the drafts of all the processes of the
functions. I ensured that all the processes were clear before I started to draw the
diagrams. When I was drawing the diagrams, I faced some problems such as the usage
of the notations. I searched the related information and examples from Internet to solve
my problems.

133 | P a g e  
 
 
Chapter 5

Programming

 
 
Industrial Training Online Management System Chapter 5: Programming
 

5. Programming
5.1 Programming Language and Platform Used
The system was developed by using C# and .NET framework 3.5 platform. In the .NET
3.5, a lot of new code features are introduced by the Microsoft. The codes can be
written using Microsoft Visual Studio 2008. By using Microsoft Visual Studio 2008,
interface can be design easily since the controls is placed by using drag and drop
techniques.

C# is an object oriented language which support object oriented concept such as
inheritance, encapsulation and polymorphism. It also supports reuse the codes hence
can save much developers’ time and efforts to develop similar functionality.

5.2 Three-Their Design Approach

Figure  5.2:  Overview  of  Three-tier  Approach

The three-tier design methodology includes three layers which are the presentation layer,
business logic layer and data access layer.

135 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
A presentation layer contains the UI (User Interface) elements of the site and all the
logic to send requests to business logic layer. Business logic layer receives the requests
and returns results to presentation layer depending on the business logic it contains. A
business logic layer will access the database through the data access layer. A data
access layer contains all the objects for accessing the database.

Advantages  of  using  three-tier  approach:


 By using three-tier approach, it promotes reusing the code in the business layer.
Hence, it can save developers’ time for coding. Besides that, it makes the system
easier to be maintained.
 Infrastructure independence is enhanced by using three-tier approach. This is
because the presentation layer and data access layer are separated from the business
logic layer.
 It allows different developers develop the same system without affecting each others
as each tier can be developed independently. For example, the presentation tier
allows the front-end developers to do their work without being affected by
developments in the business logic tier.

5.2.1 Example of Three-tier Code in the System
In the presentation layer, there was a gridview which will display the companies
bookmarked by the student. Hence, there is a function called searchBookmark() (refer
Figure  5.4)  in  business  logic  layer  which  used  to  return  the  bookmarked  companies
list of the student. searchBookmark() will execute the SearchBookmark() (refer
Figure  5.5) in data access layer to access the database. Once the data is returned from
business logic layer, the presentation layer will bind the data (refer  Figure  5.3) in the
grid view.

protected void LinqDataSource1_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
e.Result = objBookmark.searchBookmark();
}
Figure  5.3:  Code  in  the  Presentation  Layer.
public IList<SelectBookmarkResult> searchBookmark()

136 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
{
return itoms.SelectBookmark(strID).ToList();
}
Figure  5.4:  Code  in  the  Business  Logic  Layer.

public ISingleResult<SelectBookmarkResult>
SelectBookmark([Parameter(DbType="VarChar(20)")] string studID)
{
IExecuteResult result = this.ExecuteMethodCall(this,
((MethodInfo)(MethodInfo.GetCurrentMethod())), studID);

return ((ISingleResult<SelectBookmarkResult>)(result.ReturnValue));
}
Figure  5.5:  Code  in  the  Data  Access  Layer.

5.3 Algorithm Descriptions of Special Features

Automatically increase ID by 1 feature
The system has the feature that can increase the ID by  1 for data in  the database.  The
example codes are shown in  Figure  5.6. This feature was used to generate
Com_Survey_ID for the company surveys and Stud_Survey_ID for the student surveys.

string nextRequestID;
if (itoms.Student_Surveys.Count() > 0)
{
string maxRequestID = itoms.Student_Surveys.Max(s =>
s.Stud_Survey_ID);
nextRequestID = "SS" + (int.Parse(maxRequestID.Substring(2)) +
1).ToString("D5");
}
else
{
nextRequestID = "SS00001";
}
id = nextRequestID;
Figure  5.6:  Codes  for  generating  Stud_Survey_ID.

137 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
Send Email Feature
The system has a feature to send email. This features used to send notification and send
job application. The codes are shown as in  Figure  5.7.

MailMessage mailMsg = new MailMessage();

mailMsg.From = new MailAddress("its.tarc.feedback@gmail.com");
mailMsg.To.Add(strReceiverEmail);
mailMsg.Subject = strMailSubject;
mailMsg.IsBodyHtml =
Convert.ToBoolean(ConfigurationManager.AppSettings["EmailIsBodyHTML"]);
mailMsg.Body = strMailBodyMsg;
mailMsg.Priority = MailPriority.Normal;

if (strAttachment != "")
mailMsg.Attachments.Add(new
System.Net.Mail.Attachment(strAttachment));

SmtpClient client = new SmtpClient();

client.Host = "smtp.gmail.com";
client.Port = Convert.ToInt32("587");
client.EnableSsl = Convert.ToBoolean("true")”;
client.Credentials = new System.Net.NetworkCredential("its.tarc.feedback"), Password);

try
{
client.Send(mailMsg);
return "The email is successfully send to receiver";
}
catch (SmtpException ex)
{
return "Error is occurs!<br>" +
"Error Code: " + ex.StatusCode + "<br>" +
"Error Message:" + ex.Message;
}
Figure  5.7:  Codes  for  sending  email.

138 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
Split function used in store procedure
In store procedure, there may a long string that separate word with “,”, a split function
is used to split the long string into words. The codes are shown in  Figure  5.8.

ALTER FUNCTION dbo.Split(@String varchar(8000), @Delimiter char(1))
returns @temptable TABLE (items varchar(8000))
as
begin
declare @idx int
declare @slice varchar(8000)

select @idx = 1
if len(@String)<1 or @String is null return

while @idx!= 0
begin
set @idx = charindex(@Delimiter,@String)
if @idx!=0
set @slice = left(@String,@idx - 1)
else
set @slice = @String

if(len(@slice)>0)
insert into @temptable(Items) values(@slice)

set @String = right(@String,len(@String) - @idx)
if len(@String) = 0 break
end
return
end
Figure  5.8:  Split  function  that  used  in  store  procedure.

Google Map
When student view company’s details, a Google Map is available to show the exact
location of the company. The codes for displaying Google Map are shown in  Figure  5.9.

<script
src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAjU0EJWnWPMv7oQ-

139 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
jjS7dYxSPW5CJgpdgO_s4yyMovOaVh_KvvhSfpvagV18eOyDWu7VytS6Bi1CWxw"
type="text/javascript"></script>
<script type="text/javascript">

var map = null;
var geocoder = null;

function SetVisibility(thePanel) {
var panel = document.getElementById(thePanel);
if (panel.style.display == 'none') {
panel.style.display = '';

if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(37.4419, -122.1419), 1);
map.setUIToDefault();
geocoder = new GClientGeocoder();
}
var address = document.getElementById('<%= lblAdd.ClientID %>').innerHTML + ',' +
document.getElementById('<%= lblPostcode.ClientID %>').innerHTML + ',' +
document.getElementById('<%= lblCity.ClientID %>').innerHTML + ',' +
document.getElementById('<%= lblState.ClientID %>').innerHTML
if (geocoder) {
geocoder.getLatLng( address,

function(point) {
if (!point) {
alert(address + " not found");
} else {
map.setCenter(point, 15);

var marker = new GMarker(point, { draggable: true });
map.addOverlay(marker);
GEvent.addListener(marker, "dragend", function() {
marker.openInfoWindowHtml(document.getElementById('<%=
lblCompanyName.ClientID %>').innerHTML);
});
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(document.getElementById('<%=

140 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
lblCompanyName.ClientID %>').innerHTML);
});
GEvent.trigger(marker, "click");
}
}
);
}
}
else {
panel.style.display = 'none';
}
}
</script>
Figure  5.9:  Codes  for  displaying  Google  Map.
Autocomplete feature
The system involved autocomplete feature for same textbox. Hence, reduce human typo
error. The example in  Figure  5.10 is for displaying the unsecured students whose name
contains the characters entered by users.

[System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
public static string[] GetCompletionList(string prefixText, int count, string contextKey)
{
ITOMSDataContext itoms = new ITOMSDataContext();

return itoms.Students.Where(n =>
n.Stud_Name.Contains(prefixText.ToUpper()) && n.Status ==
"Unsecured").Select(n => n.Stud_Name + " - " +
n.Stud_ID).Take(count).ToArray();
}
Figure  5.10:  Codes  for  autocomplete.

5.4 Understandable Programming Code
To ensure the system’s codes are easy to understand and readable, the programming
codes of the system are written by using naming convention and comments.

141 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
Naming convention
Naming convention is a set of rules name the identifiers which denote the variables,
types and functions. The reasons of using naming convention are as below:
 It can reduce the effort of developers needed to read and understand the codes.
 It can enhance the codes appearance by disallowing overly long names or
abbreviations.
 It can improve system maintainability as the codes are understandable.
Example  codes  of  using  naming  convention:
public bool verifyUser()
{
var result = db.Logins.Where(l => l.Login_ID ==
userName).SingleOrDefault();

if (result == null)
{
return false;
}
else
{
return CheckPassword(password, result.Password);
}
}
Figure  5.11:  Codes  for  verifyUser()  function.

Figure  5.11 shows the codes of the verifyUser() function which used in login module.
From the function’s name, it is very obvious that the function is used to verify user once
the user wish to login to the system. Hence, it is able to let the developers know the
usage of the function through the name of the function.

public string userName, password;
public string strRoleID;
Figure  5.12:  Identifiers  of  the  variables.

Figure 5.12 shows the identifiers that use naming convention. The identifiers
“userName” indicates the variable is used to store user’s name and the identifiers

142 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
“password” is used  to stored password. Thus, it makes the developers know the usage
of the variables easily.

Comments
Comments are used to describe the purpose of a portion of codes and explain the
developer’s intent. Comments are added with the purpose of making the codes easier to
understand.

Example  codes  of  using  comments:


protected void lnkDownloadResume_Click(object sender, EventArgs e)
{
string file = lnkDownloadResume.CommandArgument;
string path = Server.MapPath("~/Resume/" + file);

// Download resume.
Response.ClearContent();
Response.AddHeader("Content-Disposition", "attachment;
filename=" + file);
Response.ContentType = "application/octet-stream";
Response.WriteFile(path);
Response.End();
}
Figure  5.13:  Codes  for  download  resume.

Figure  5.13 shows the codes of the download resume. From the comments (in green
color), it indicates the codes are use to download the resume. Hence, it increases its
readability.

143 | P a g e  
 
Industrial Training Online Management System Chapter 5: Programming
 
5.5 Critical Evaluation

In this phase, I started to program the system. I discussed with my teammate, Looi
Wai  How  about  the programming language  and  platform used, the programming
approaches used and special codes features included in the system before we
started to program the system.

While programming the system, I learnt many programming features which I
never learnt before. The first thing that I learnt was the way to encrypt the
passwords in order to improve the security. I researched about the related
information and found out the best encryption technique. The technique that I
used to encrypt the password in this system is Hashing with Salting. By
encryption, the security of the system can be improved.

Secondly, in the View Company Details page, I included the Google Map in order
to show  the company’s exact location.  There were  many  examples which can be
searched and downloaded from Internet. From the examples, I tried to understand
the codes and create the embedded Google Map in the system.

Next, the send email feature is provided by the system. I faced problems and I
could not understand the way to done this features. Hence, I discussed with my
teammate, Looi Wai How. We tried to find out the solutions from Internet and
discussed the solutions together. Finally, we successfully included send email
function in the system.

Moreover,  I  learnt to  use the  AJAX Control Toolkit.  The AJAX  Control  Toolkit


which I used in the system such as auto-complete textbox, watermark textbox and
modal pop-out. I gained the knowledge of using the AJAX Control Toolkit by
referring to the examples from Internet.
144 | P a g e  
 
 

Chapter 6

Software Testing
 
 
No. Test Case Test Data Expected Results Remarks
1 Login to the Enter valid Display successful message and Success
system. user ID and display homepage.
password
2 Fail to login to Enter invalid Display invalid login message. Success

Industrial Training Online Management System Chapter 6: Software Testing
 

6. Software Testing
This chapter described about how the  system to be  tested to ensure error free and high
quality system is produced.

6.1. Testing Strategy
The testing  was conducted in order  to ensure  the system produced  can  work  properly.
Once problem or error detected during testing stage, modification will be carried out in
order to solve it. Every testing output and modification will be recorded down for future
reference.

6.2. Testing Objectives
The objectives of system testing are to make sure the system can run perfectly and
expectedly. Besides that, the system must be able to fulfill users and system
requirements. The system should be able to perform all the functionalities requested by
users in order to support users’ tasks.

6.3. Testing Environment
The following are requirement to conduct the testing:
 Software: Internet browser (Firefox, Google Chrome and Internet Explorer 8)
 Hardware: Intel Core 2 Duo E7200 2.53GHz, 4 GB RAM
 Internet Connection: 1.0 Mbps

6.4. Testing Stages
6.4.1. Unit

146 | P a g e  
 
the system. user ID and
password
3 Display Login three Display different menu. Success
different menu times by using
based on different sets
different roles of user ID and
password
which from
different roles
(lecturer,
coordinator
and student).
3 Redirect Enter user ID Display message to ask fill up the Success
student who and password student personal particular form and
has not fill up of a student display “Student Personal
student who has not Particular” form.
personal
Welcome page fill up the
particular form student
to “Student personal
Personal particular form
Particular”
page
 

4 Test forget Enter user ID An email with a reset password link Success


password link. and click will be received.
forget
password link.
Direct click Display error message and request Success
forget user ID.
password link
without enter
user ID.
5 Remember me Enter valid Display homepage. Success
login

Industrial Training Online Management System Chapter 6: Software Testing

147 | P a g e  
 
information,
check
“Remember
Me” check box
and click login
button. After
login, close the
browser. Then,
open the
browser and
type the
homepage
URL.
 

Enter valid Display welcome page. Success


login
information,
uncheck
“Remember
Me” check box
and click login
button. After
login, close the
browser. Then,
open the
browser and
type the
homepage
URL.
6 Logout from Click logout Logout from the system and display Success
the system. button on the welcome page
menu.

Industrial Training Online Management System Chapter 6: Software Testing

148 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Change a new Enter required The password will be updated to the Success
password fields and click database and display successful
submit button message.
2 Detect empty Click submit Error message will be displayed and Success
fields button with indicates the error and respective
empty all the fields.
fields
Reset Password page
3 Compare new Enter two Error message will be displayed and Success
password and different indicates the new password and
confirm new passwords in confirm new passwords are
password new password different.
and confirm
new password.
4 Login with Enter user ID Able to login to the system. Success
new password and new
password
No. Test Case Test Data Expected Results Remarks
1 Reset Enter valid Display successful message and Success
password data to reset welcome page will be displayed.
the password
and click
Change Password page submit button
2 Detect empty Click submit Display error message which Success
fields button without indicates the fields with errors.
filling the form
3 Login again Enter user ID Able to login to the system. Success
with new reset and new reset
password password

Industrial Training Online Management System Chapter 6: Software Testing
 

149 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Insert student’s Enter valid Display successful message and Success
personal data and click display student preference page.
particular. save button
2 Detect empty Click submit Display error message which Success
fields button without indicates the fields with errors.
filling the
form.
3 Display Select “Other” Display a textbox beside the drop Success
textbox for in the drop down list
other states down list for
the state
4 View student’s Go student Display Student Personal Particular Success
personal personal form with saved data.
particular particular
(after insert)
5 Modify student Click modify Enable all the textboxes. Success
personal button
particular Enter valid Display successful message and Success
(after insert) data and click disable all the textboxes.
save button
Leave empty Display error message which Success
for some indicates the fields with errors.
textboxes and
click save
button
6 Cancel submit For first time Clear the values in all the textboxes. Success
or save student fill in the
personal student
particular personal
particular
form, enter

Industrial Training Online Management System Chapter 6: Software Testing
Student Personal Particular page
 

150 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Insert student’s Enter data and Display successful message. Success
preference click save
button
2 Detect empty Click submit Display error message which Success
fields button without indicates the fields with errors.
filling the
form.
3 Display Select “Other” Display a textbox under the Success
textbox for in the checkbox list
other preferred checkbox list
fields for preferred
fields
4 View student’s Go Student Display Student Preference form Success
preference Preference with saved data.
(after insert) form
4 Modify student Click modify Enable all the controls. Success
preference button
(after insert) Change Display successful message and Success
displayed data disable all the controls.
and click save
button
5 Cancel submit For first time Clear the entered values in all the Success
some data and
click cancel
button
 

Click modify Enable all the textboxes once Success


button and modify button is clicked and disable
click cancel when cancel button is clicked.
button (after
insert)

Industrial Training Online Management System Chapter 6: Software Testing

Student Preference page

151 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Upload Browse resume Display successful message. Success
student’s with file
resume format .doc
or .docx
2 Detect empty Click submit Display error message which Success
fields button without indicates the fields with errors.
browse resume
3 Detect the Browse file Display error message which Success
format of the with file indicates the fields with errors.
resume format not
in .doc
and .docx
4 Replace Browse newer Display successful message. Success
current resume resume
(upload more
than one time)
5 Download Click Display download window. Success
resume “Download
My Resume”
button
 

or save student fill in the controls.


personal student
particular preference
form, enter
data and click
cancel button
Click modify Enable all the controls once modify Success
button and button is clicked and disable when
click cancel cancel button is clicked.
button

Upload Resume page
Industrial Training Online Management System Chapter 6: Software Testing

152 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 View college Select “My Display “College supervisor haven’t Success
supervisor College be allocated yet.” Message.
before Supervisor” on
allocation is main menu
done
2 View college Select “My Display college supervisor details. Success
supervisor College
after allocation Supervisor”
is done from main
menu
3 Send email to Click send Display send email panel. Success
college button.
College Supervisor’s Details page
Enter message Display successful message and Success
supervisor
to send and close the send email panel.
click send
button
No. Test Case Test Data Expected Results Remarks
1 Insert student’s Enter valid Display successful message. Success
company data and click
superior submit button
details.
2 Detect empty Click submit Display error message which Success
fields button without indicates the fields with errors.
filling the
form.
3 Display Select “Other” Display a textbox beside the drop Success
textbox for in the drop down list
other states down list for
the state

Industrial Training Online Management System Chapter 6: Software Testing
Company Superior’s Details page
 

153 | P a g e  
 
4 View student’s Go to My Display Student Company Superior Success
college Company form with saved data.
supervisor Superior page
(after insert)
5 Modify Click modify Enable all the textboxes. Success
student’s button
 

company Enter valid Display successful message and Success


data and click disable all the textboxes.
superior details
save button
(after insert)
Leave empty Display error message which Success
for some indicates the fields with errors.
textboxes and
click save
button
6 Cancel submit For first time Clear the values in all the textboxes. Success
or save fill in the
student’s student’s
company company
superior details superior form,
enter some
data and click
cancel button
Click modify Enable all the textboxes once Success
button and modify button is clicked and disable
click cancel when cancel button is clicked.
button (after
insert)
No. Test Case Test Data Expected Results Remarks
1 Fill up student Enter valid Display successful message. Success
survey form. data and click
submit button.

Industrial Training Online Management System Chapter 6: Software Testing

Student Survey for Company page

154 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Search Enter some Display all the companies which Success
company with criteria and fulfill the criteria.
criteria stated click search
button
2 Send Click send Display send application panel. Success
application application
button of the
company
On the panel, Display successful message and Success
enter message message sent with resume attached.
and click send
button
3 Send Click send Display error message to inform that Success
application application resume must be uploaded before
before upload button of the send application. Display upload
resume company and resume page.
click send
button on the
send
application
2 Detect empty Click submit Display error message which Success
fields button without indicates the fields with errors.
filling the
form.
3 Fill up before Go to My Display error message to inform Success
company Student Survey survey cannot be done before
allocation page company is allocated.
4 Open the form Go to My Display error message to inform the Success
after complete Student Survey survey already done.
filled up. page

Industrial Training Online Management System Chapter 6: Software Testing
 

155 | P a g e  
 
panel
4 Send Click send Display error message to inform that Success
application application now not the period of sending
before or after button of the application.
the predefined company and
send click send
application button on the
period send
Student Search Company page
application
panel
5 Bookmark Click Company will be added to the Success
company bookmark student’s bookmark list. The
button of the bookmark button of the company
company will invisible.
6 View Click view Display company details as pop-out Success
company’s more button of window
details the company
7 Search Click search Display all companies from database Success
company button
without criteria
stated
No. Test Case Test Data Expected Results Remarks
1 View Go to View Display all the companies which Success
bookmark with bookmark page bookmarked by the student.
bookmark list
2 Send Click send Display send application panel. Success
application application
button of the
company
 

On the panel, Display successful message and Success


enter message message sent with resume attached.

Industrial Training Online Management System Chapter 6: Software Testing

156 | P a g e  
 
and click send The company will be deleted from
button the bookmark list.
3 Send Click send Display error message to inform that Success
application application resume must be uploaded before
before upload button of the send application. Display upload
resume company and resume page.
click send
button on the
send
application
panel
4 Send Click send Display error message to inform that Success
application application now not the period of sending
before or after button of the
Student View Bookmark page application.
the predefined company and
send click send
application button on the
period send
application
panel
5 View Click view Display company details as pop-out Success
company’s more button of window
details the company
 

7 Delete Click delete Bookmark will be removed from the Success


bookmark button of the bookmark list
company
6 View Go to View Display message to inform no Success
bookmark with Bookmark bookmark is found.
empty page
bookmark list

Industrial Training Online Management System Chapter 6: Software Testing

157 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 View Go to View Display all the companies which the Success
application Application student sent resume to.
with page
application list
2 Update Click the drop Display successful message and Success
application’s down list and display the update application list.
status select a status
for the
application
2 View Click view Display company details as pop-out Success
company’s more button of window
details the company
7 Delete Click delete Application will be removed from Success
application button of the the application list
No. Test Case Test Data Expected Results Remarks
Student View Company Details page
1 View Click view Display company details. Success
company’s more button in
details “Search
Company”
page or “View
Bookmark”
page
2 View company Click the Display the Google map with a Success
location ion image button marker that marks the location of the
Google Map beside the company.
company’s
address
3 Close the pop- Click the close The pop-out window will be closed Success
out window button

Industrial Training Online Management System Chapter 6: Software Testing
 
Student View Application page

158 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Send Select student Display successful message. Success
application and company,
click submit
button
2 Detect empty Click submit Display error message which Success
fields button with indicates the fields with errors.
empty all fields
3 Select student Click search Display search student page as pop- Success
by using student button out window
searching tool
 

4 Select Click search Display search company page as Success


company by company pop-out window
using button
searching tool
5 Send Select student Display error message to inform that Success
application and company, the student does not upload resume.
before upload click submit
Coordinator Send Application page
resume button
company
6 View Go to View Display message to inform no Success
application Application application is found.
with empty page
application list
No. Test Case Test Data Expected Results Remarks
1 Search student Enter the Display the students who fulfill the Success
with criteria criteria and criteria stated.
stated click search
button

Industrial Training Online Management System Chapter 6: Software Testing

159 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
Coordinator Search Student page
1 Allocate one Select student Display successful message. Success
student to one and company,
company click submit
button
 

2 Detect empty Click submit Display error message which Success


fields button with indicates the fields with errors.
empty fields
3 Allocate more Check “More A list box, “Add” button and Success
than one than one “Remove” button will be displayed.
students to one student”
company checkbox
Select student Student will be added to the list box Success
and click add
button
Coordinator Allocation Student to Company page
Click Submit Display successful message. Success
button
4 Remove Select the Student is removed from the list Success
student from student and box.
list box click remove
button
5 Select student Select the Students who study in the program Success
by using program and and tutorial group will be displayed.
2 Search student Click search Display all the students from Success
without criteria button without database.
stated enter criteria
3 Select student Click select Close the pop-out window and Success
button of the display the selected student in the
student. student textbox of parent page.
4 Close the pop- Click close Close the pop-out window Success
out window button

Industrial Training Online Management System Chapter 6: Software Testing

160 | P a g e  
 
searching tool. tutorial group,
click search
button
Click select Student is added into student Success
button (If textbox.
“More than
one student” is
not checked)
Click select Student is added into the list box Success
button (If
“More than
one student” is
checked)
6 Select Click search Display search company page as Success
company with company pop-out window
searching tool button
No. Test Case Test Data Expected Results Remarks
1 Allocate one Select student Display successful message. Success
student to one and lecturer,
lecturer click submit
button
2 Detect empty Click submit Display error message which Success
fields button with indicates the fields with errors.
empty fields
3 Allocate more Check “More A list box, “Add” button and Success
than one than one “Remove” button will be displayed.
students to one student”
lecturer checkbox
Select student Student will be added to the list box Success
and click add
button

Industrial Training Online Management System Chapter 6: Software Testing
 

161 | P a g e  
 
Click Submit Display successful message. Success
button
4 Remove Select the Student is removed from the list Success
student from student and box.
list box click remove
button
5 Select student Select the Students who study in the program Success
by using program and and tutorial group will be displayed.
searching tool. tutorial group,
click search
button
Click select Student is added into student Success
button (If textbox.
Coordinator Allocation Student to Lecturer page
“More than
one student” is
not checked)
Click select Student is added into the list box Success
button (If
“More than
one student” is
checked)
6 Select lecturer Click search Display search lecturer page as pop- Success
with searching lecturer button out window
tool
No. Test Case Test Data Expected Results Remarks
 

1 Auto-matching Select criteria Display matching result. Success


unsecured for matching
students and and click start
companies matching
button
2 Auto-matching Click start Display matching result. Success

Industrial Training Online Management System Chapter 6: Software Testing

162 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Auto-matching Select criteria Display matching result. Success
selected for matching,
unsecured select students
students and and click start
companies matching
button
2 Auto-matching Select student Display matching result. Success
selected and click start
unsecured matching
students and button
companies
with select
Coordinator Auto-matching for all unsecured students page
criteria
 

3 Auto-matching Click start Display error message to ask for Success


selected matching select students
unsecured button
students and
companies
without select
student
unsecured matching
students and button
companies
with select
Coordinator Auto-matching for selected unsecured students page
criteria
3 Export Click on the Display matching result in PDF file Success
matching result “Save as PDF” format.
to PDF file button on the
format matching result
page

Industrial Training Online Management System Chapter 6: Software Testing

163 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Search student Enter the Display the students who fulfill the Success
with criteria criteria and criteria stated.
stated click search
button
2 Search student Click search Display all the students from Success
without criteria button without database.
stated enter criteria
 

3 Select student Check the Selected student will be display in a Success


checkbox pop-out panel.
beside the
student and
click confirm
button
Click confirm The pop-out panel and the pop-out Success
button in the window will be closed.
pop-out panel
4 Close the pop- Click close The pop-out panel will be closed. Success
out panel button in the
Coordinator Select Student for Auto-matching page
without close pop-out panel
the pop-out
window.
4 “Select student Click on Display select student page as pop- Success
for matching” “Select student up window.
button for matching”
button
5 Export Click on the Display matching result in PDF file Success
matching result “Save as PDF” format.
to PDF file button on the
format matching result
page

Industrial Training Online Management System Chapter 6: Software Testing

164 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 Insert new Enter the Display the query result. Success
query. column,
criteria and
name for the
query and click
Generate
button.
2 Detect empty Click Generate Display error message which Success
fields. button without indicates the fields with errors.
enter anything.
3 Set criteria for Click set Set criteria panel will be displayed. Success
query criteria button
Click add Display error message which Success
button without indicates the fields with errors.
enter criteria
details
Enter criteria Entered criteria will be added into Success
details and the list box.
click add
button
Select criteria The selected criteria will be Success
and click removed from the list box
remove button
No. Test Case Test Data Expected Results Remarks
1 View query Display all queries from database. Success
2 View query Click view Display query result. Success
result query of the
query
3 Delete query Check the Display successful delete message Success

Industrial Training Online Management System Chapter 6: Software Testing
 
Coordinator Generate Query page

165 | P a g e  
 
No. Test Case Test Data Expected Results Remarks
1 View “Student Select “Student Display “Student Evaluation Success
Evaluation Evaluation Statistic”
Statistic” Statistic”
2 View “Student Select “Student Display “Student Result Statistic” Success
Result Result
Statistic” Statistic”
3 View Select Display “Company Evaluation Success
“Company “Company Statistic”
Evaluation Evaluation
Statistic” Statistic”
4 View Select Display “Allocation Summary Success
“Allocation “Allocation Report”
Summary Summary
Report” Report”
5 View Select Display “Application Status Success
“Application “Application Summary Report”
Status Status
Summary Summary
Report” Report”
checkbox of and the query list will be refreshed.
the query and
click delete
Coordinator View Query page
button.
Click delete Display error message to inform that Success
button without must check the checkbox of the
check query for delete.
checkbox of
query.
 

Industrial Training Online Management System Chapter 6: Software Testing

166 | P a g e  
 
No. Functionalities provided Details Remarks
1 Login Users can login to access the Completed
system by entering valid login
Coordinator View Report page information.
2 Reset Password Users can reset their password Completed
if they forgot their original
password.
3 Remember Me Users can create cookies for Completed
their account information.
4 Change Password User can change their Completed
passwords.
5 Differentiate users’ authorization System will display different Completed
level menu based on different roles.
6 Logout Users can logout from the Completed
system after finish access the
system.
No. Functionalities provided Details Remarks
1 Search company Students can search company Completed
by entering criteria
2 Send application Students can send their job Completed
application to preferred
companies.
3 Bookmark Students can add company into Completed
their bookmark list.
4 View company details Students can view company Completed
details.
5 Map navigation Students can view the exact Completed
location of the company.
Security Module

Industrial Training Online Management System Chapter 6: Software Testing
 
6.4.2. Module

167 | P a g e  
 
No. Functionalities provided Details Remarks
1 Allocate student(s) to company Coordinator can allocate Completed
students to their corresponding
internship companies.
2 Allocate student(s) to college Coordinator can allocate Completed
supervisor students to their corresponding
college supervisor.
3 Auto-matching for all unsecured Coordinator can generate an Completed
students auto-matching result that
Job Application Module
involves all the unsecured
students.
4 Auto-matching for selected Coordinator can generate an Completed
unsecured students auto-matching result that
involves some selected
unsecured students.
6 View bookmark Students can view the Completed
companies they bookmarked.
7 View application Students can view the Completed
companies they sent job
application to.
 

8 Update application’s status Students can update job Completed


application’s status.
No. Functionalities provided Details Remarks
1 View query Coordinator can view existing Completed
query can the query result.
2 Generate query Coordinator can generate new Completed
query can save it for future
reference.
Allocation Module

Industrial Training Online Management System Chapter 6: Software Testing

168 | P a g e  
 
No. Type of System Details Expected Remarks
Testing Result
1 Performance Testing Run the system and Less than 3 Fail
record down the seconds for
processing time for each function.
each function.
2 Stress Testing Adding new data to the Data can be Success
system continuously. added to the
Query Module
database
without errors.
Open several web The system can Success
pages at the same time run smoothly,
and check whether the
system can run
smoothly.
Reporting Module Access the system System can run Success.
from 5 computers at perfectly
the same time. without any
errors and lag.
3 Compatibility Testing Access to the web Web pages can Success
6.4.3. System pages by using be displayed
different browsers without much
(Firefox, Internet different.
Explorer 8 and Google
Chrome)
4 Security Testing Direct access to a web Cannot access Success
page by enters the to the system
No. Functionalities provided Details Remarks
1 View report Coordinator can view different Completed
types of reports.

Industrial Training Online Management System Chapter 6: Software Testing
 

169 | P a g e  
 
No. Testing Methods Details Expected Remarks
Result
1 Develop prototype and Record down all the Users are Success
demonstrate to user. comments from the satisfied with
Get users’ comments users about the the system.
on the prototype. prototype. System will
be modified follow the
users’ comment.
 

2 Beta version Demonstrate the beta Users are Success


version to users. satisfied with
Record down the the system and
comments from users no more
and modify the system. changes are
needed.
URL of the web page and display
in the browser without welcome page
login to the system. for user login.
5 Maintenance Testing Add a module and If the module is Success
record down the total small and easy
time needed to then the time
complete it. needed must
less than 1 day.
6.4.4. Acceptance If the module is
difficult, total
time needed
must less than 1
week.

Industrial Training Online Management System Chapter 6: Software Testing

170 | P a g e  
 
Industrial Training Online Management System Chapter 6: Software Testing
 
6.5. Critical Evaluation
In this chapter, I designed the testing plan. This is a very important phase as I could
found  out  the  errors  or  bugs  contained  in  the  system.  Hence,  I  can  solve  the  errors  or
bugs before finalized the system.

I tested the system followed the testing plan which I designed before. Through the
testing, I ensured all the functionalities could work properly. Any errors found in the
system will be recorded down and solved. All the expected results or outputs were
tested and reviewed. After the testing, the system can be said will be more reliable.

During this phase, I learnt to design a testing plan which I never done before. I ensured
that each function in each module of the system would not be missed out and would be
tested accordingly. Therefore, I could make sure the quality of the system developed
and all the functionalities could function properly.

171 | P a g e  
 
 

Chapter 7

System Evaluation
 
 
Industrial Training Online Management System Chapter 7: System Evaluation
 

7. System Evaluation
This chapter describes the conclusion of the system development. It contains the system
strengths, system weaknesses and future enhancement. This chapter also evaluate whether
the development is completed properly against the stated objectives.

7.1. Evaluation Against Project Objectives
This is the sub-chapter that compares the objectives stated earlier (System Planning)
with the objectives that have been achieved.

Records are easy to be retrieved
 The system stores all the data in database. The data can be retrieved by using query
module. To retrieve data, coordinators can design a query and the query result will
be displayed with relevant data.

Time and cost saving
 Search Company page is designed for students to search their preferred companies
without to view one company by one company manually.
 Notification module is developed. Hence, coordinators can use the module to
broadcast a notification in few minutes.
 Auto-matching module is developed to be used by coordinator to produce a
matching list that shows the matching result between students’ strengths and
companies’ requirement.

Save storage space
 All the records such as companies’ details are stored in database. Thus, it can save
the spaces needed to store the paper works.

Increase availability
 All the records are stored in database. Users can access the records most of the time
if needed. The records in database can be backed up and restored when the
database is corrupted. Hence, it is available all the time.

173 | P a g e  
 
Industrial Training Online Management System Chapter 7: System Evaluation
 
Up-to-date information
 Users can access make changes to the data in database. Any changes made by users
will directly update to the database.

Increase security
 User ID and password are used by users to login to access the system.
 Roles are used to differentiate the users’ authority level. Hence, it  can restrict the
authority of the users.

Restrict the student of keep sending application
 Job Application module is developed to help the students to send their job
application to internship companies. This module allows the students to send their
job application to a company one time. The email addresses of the companies are
hidden from the students. Hence, students can only send their job application by
using this system.

Better decision making
 Reporting module is designed to generate reports. Each report contains different
data which can be used by different decision making.

7.2. Project Strengths
The developed system can help to provide conveniences to users (Students,
Coordinators, Internship Companies and College Supervisors). This system can save the
users’ time and effort to complete their tasks.
The Job Application module allows the students to search their preferred companies by
using the search  company  function  without  the  need  to view  the one  company  by  one
company in the company list. Besides, students can keep track their application sent by
using  this module and  can  update  the  applications’  status.  Students  can  bookmark  the
companies for future reference.

The Allocation module allows the coordinators to allocate students to their secured
companies. It allows coordinators to keep track the students’ secured information.

174 | P a g e  
 
Industrial Training Online Management System Chapter 7: System Evaluation
 
Besides that, this module provides an auto-matching function which can match the
unsecured students’ strengths against with the companies’ requirements. The matching
list will be provided as the result of the matching function.

The Notification module allows the coordinators to broadcast a notification to all the
relevant people in few minutes. Moreover, it can send notification to students,
companies and college supervisors automatically based on the predefined time frame.

The Query module that used by coordinators allows to retrieve different set of data from
database based on the query designed by the coordinators. Coordinators can design the
query based on their needs.

The File Maintenance module allows the users access to the database to modify, view,
add  new  and  delete  the  data.  All  the  data  that  used  through  the  system  are  stored  and
maintained by using the system.

The Feedback module keeps track of the survey and evaluation forms done by students,
companies and college supervisors. The results of the survey and evaluation forms will
be analyzed to provide reports in Reporting module.

The Reporting module will provide different types of reports that can be used by
coordinators to make different conclusion. The reports produced by the system can lead
to more accurate and useful decision making.

7.3. Project Weaknesses
The system has a few of weaknesses that should be resolved in future. The weaknesses
listed below will be further described in the following sub-chapter.

Firstly, the Query module  not allows the coordinators to design a  query that involves


aggregate  function.  Secondly,  the  Reporting  module  only  provides  reports  by  analysis
current year’s data. Thirdly, the matching list which is provided by auto-matching
shows one suggested company to one student. Next, the Housekeeping module not

175 | P a g e  
 
Industrial Training Online Management System Chapter 7: System Evaluation
 
allows the coordinators to retrieve the previous years’ records by using the system.
Lastly, a maintain Main Menu screen is not included in this system.

7.4. Future Enhancements

Firstly, a Maintain Main Menu page is needed to allow the coordinators to maintain the
main menu. The coordinators will define  the roles that can access the menu and sub-
menu.

Secondly, an Upload  Monthly  Report page is needed to allow students to upload  their


monthly reports by using the system. Hence, the system can keep track the date of the
students upload their monthly reports. If the students do not submit their monthly
reports before the deadlines, a notification can be sent to inform the students to upload
their monthly reports. Besides, the college supervisors can download monthly report for
reviewing. By  refer to the date of students upload their resume which recorded by  the
system, college supervisors can know whether the students upload their monthly reports
punctually.
Thirdly, the Query module must allow the coordinator to design the query which
involves aggregate functions such as SUM, COUNT, MAX, MIN and so on. Besides
that, the Query needs to allow the ORDER BY, GROUP BY and HAVING clause
which can help to produce a better query.

Next, the Reporting module must able to produce statistic that analysis the data of
previous years and current year. A report which compares the data of previous years
and current year is needed for better decision making.

Besides that, the auto-matching result should provide more than one suggested
company which is suitable for one student. Thus, the coordinator can choose either one
of the companies suggested to the student.

Lastly, the housekeeping module should allow the coordinator retrieve the previous
years’ data. Hence, the coordinators can review and compare the data year by year.

176 | P a g e  
 
 
Chapter 8

Conclusion

 
 
Industrial Training Online Management System Chapter 8: Conclusion
 

8. Conclusion
8.1 Personal Reflection

The system that we developed is Industrial Training Online Management System which
used to support the industrial training program for Computer Science division of School
of Arts and Sciences, Tunku Abdul Rahman. There are night modules which are Login,
Job Application, Query, Notification, Feedback, Maintenance, Allocation and
Reporting modules. I am responsible in handling the Login, Job Application, Query,
Allocation and Reporting modules.
During developing the system, I go through the System Development Life Cycle stages
by  stage.  In  System Planning  phase,  I  learnt  to  state  the  system’s  objectives  and  aims
which the system need  to achieve at the end of  system development.  Besides that, the
project scope can help to set a boundary to develop the system. Hence, I will be clearer
about the system that I am going to develop.

During requirement analysis phase, I learnt to conduct interview section with the users,
coordinators  of  the  industrial  training  program.  I  recorded  down  their  requirements  of
the system. After interview section, I analyst and clarify the requirements recorded
during interview section. Use Case Diagrams were used for visualize description. This
phase is very important as it can help to develop a system that can fulfill users’
requirements.

In the System Design phase, I learnt to design database of the system based on project’s
objectives and users’ requirements stated before. To design the database, I consider the
efficient of retrieving data from multiple tables and the linkage between each table. At
this phase, I started to design the user interface of the system. By design user interfaces,
I gained the knowledge about the principles of designing user interface in order to
improve user friendly of the system.

Furthermore, to clarify each function in each module, I drew the flow of all the
functions by using Sequence Diagrams or Collaboration Diagrams. Hence, I learnt to
draw the diagrams to visualize the flow of the functions.

181 | P a g e  
 
Industrial Training Online Management System Chapter 8: Conclusion
 

In System Programming  phase,  I  started  to  code  the  system.  During  coding, I learnt  a


lot of coding features such  as  send  email,  include Google Map and so on. The coding
features mentioned are learnt through researched. Hence, it makes me become
independent and self-learning. When I faced problem,  I will research  myself and tried
to solve the problem. I believe that, self-learning can let me learn more compare to
request help from others people.

In System Testing, I learnt to test the system stage by stage. To ensure the system can
fulfill and support users’ tasks, I need to test the system carefully with different set of
inputs. Hence, I learnt to draw a testing plan and follow the plan to test all the
functionalities of all the modules in the system.

Apart from that, I learn to communicate my ideas with my partner, Looi Wai How and
accept his ideas and objections during our discussion. During system development, we
will discuss when we faced problem. Although we will argue when our ideas were
different, we will try to reach a conclusion about that. We will concentrate to
communicate ideas with each others. I very appreciate his effort to develop the system
and to operate with me. Without one of us, the system will not be developed smoothly
and completed on time.

Moreover, my supervisor, Ms. Tan Lay Aik helped us when we faced problems. She
managed to  find time to  review  the system from time  to  time and shared her opinions
and suggestions about the system. Every time of reviewing the system, she showed her
patient and concern. Besides that, she would give us enough time to complete the tasks
before next  meeting.  She  is a very  good and nice supervisor to  me as she  led us  from
the beginning until the end of system development without any complains. I very
appreciate her instruction along system development.

In the nutshell, the final year project had given me an opportunity to learnt, experience
and as well as getting more expose in managing it.

182 | P a g e  
 
 
Chapter 9

References

 
 
Industrial Training Online Management System Chapter 9: References
 

9. References

 Visual Basic Developer Center. LINQ Query Samples. Viewed on 3 June 2010. Available
from:  http://msdn.microsoft.com/en-us/vbasic/bb688084.

 Ghaffar Khan. 2009. Show Your Data on Google Map using C# and JavaScript. Viewed
on 3 June 2010. Available from: http://www.codeproject.com/KB/web-
image/Google_map.aspx.

 Google code. Google Maps API Examples. Viewed on 3 June 2010. Available from:
http://code.google.com/apis/maps/documentation/javascript/v2/examples/index.html.

 Mohamed Meligy. 2005. How do I send mail using C#?. Viewed on 9 July 2010.
Available from:  http://social.msdn.microsoft.com/Forums/en/netfxnetcom/thread/a755
33eb-131b-4ff3-a3b2-b6df87c25cc8.

 Sujith. 2008. Send Email using C# .NET. Viewed on 3 June 2010. Available from:
http://randomcodingtips.blogspot.com/2008/06/send-email-using-cnet-visual-studio.html.

 Jeremy Kadles. 2008. SQL Server Cursor Examples. Viewed on 26 July 2010. Available
from:  http://www.mssqltips.com/tip.asp?tip=1599.

 Jacob Gube. 2008. 25 Excellent Ajax Techniques and Examples. Viewed on 26 July 2010.
Available from:  http://sixrevisions.com/ajax/ajax_techniques/.

 Microsoft. How to: Deploy a Web Site Project by Using the Publish Web Site Tool.
Viewed on 10 March 2011. Available from: http://msdn.microsoft.com/en-
us/library/20yh9f1b.aspx.

 Wikipedia.2011.Iterative and incremental development. Viewed on 10 February 2011.
Available from:  http://en.wikipedia.org/wiki/Iterative_and_incremental_development.
184 | P a g e  
 
Industrial Training Online Management System Chapter 9: References
 
 Wikipedia.2011.Spiral Model. Viewed on 10 February 2011. Available from:
http://en.wikipedia.org/wiki/Iterative_and_incremental_development.

 AlaehSoft. 2011. Methodologies. Viewed on 10 February 2011. Available from:
http://www.alaehsoft.com/methodology.php.

 Edison Garcia. April 2009. A simple 3-tier layers application in ASP.NET. Viewed on 10
February 2011. Available from:  http://geekswithblogs.net/edison/archive/2009/04/05/a-
simple-3-tier-layers-application-in-asp.net.aspx.
185 | P a g e  
 
 

Chapter 10

Appendices
 
 
Industrial Training Online Management System Chapter 10: Appendices
 

10. Appendices

The appendices consist of the documents and the forms which were used as the
samples of the projects. By using the collected forms and documents, the current
business process can be clarified. Moreover, the system could be developed by
referring  to  the  documents  and  forms collected.  The  documents and  forms  collected
such as application letter, Industrial Training Briefing document, company evaluation
form, student evaluation form and so on. Besides, the meeting reports were attached
in this chapter.
187 | P a g e  
 
 

Chapter 11
User Guide

 
 
Industrial Training Online Management System Chapter 11: User Guide
 

11. User Guide

This chapter consists of the User Guide which can be referred by the users to learn the
way to use the system. The steps and expected outputs were descried clearly for each
function. Screenshots were provided to improve the readability of the User Guide and
help users to have better understanding.
189 | P a g e  
 
 

 
 
   

   
USER GUIDE 
Industrial Training Online Management System 
for Computer Science Division 
Liaw See Yun 

 
1
  1

 
   
 

 
Table of Contents   
1. How to Access to the System........................................................................................4
2. How to Login to the System ..........................................................................................5
3. How to Reset the Password...........................................................................................8
4. How to Change Password ...........................................................................................10
5. How to Fill Up Student Personal Particular .............................................................11
i.  To fill up student personal particular ...............................................................................  12 
ii. To modify student personal particular .............................................................................  12 
6. How to Fill Up Student Preference ............................................................................15
i.  To fill up student preference ..............................................................................................  15 
ii. To modify student personal particular .............................................................................  16 
7. How to Upload Resume...............................................................................................19
i.  To upload resume................................................................................................................  19 
ii. To replace current resume .................................................................................................  20 
8. How to Fill Up Company Superior’s Details............................................................22
i.  To fill up company superior’s details ...............................................................................  22 
ii. To modify company superior’s details ..............................................................................  23 
9. How to View College Supervisor’s Details ................................................................26
i.  To view college supervisor’s details...................................................................................  26 
ii. To send email to college supervisor ...................................................................................  26 
10. How to Fill Up Student Survey Form ........................................................................ 28
11. How to Search Company ............................................................................................ 30
i.  To search company .............................................................................................................  30 
ii. To view company’s details..................................................................................................  31 
iii.  To send application to company ....................................................................................  32 
iv.  To bookmark company...................................................................................................  33 
12. How to View Bookmark List ...................................................................................... 34
i.  To delete bookmark. ...........................................................................................................  34 
ii. To view company’s details..................................................................................................  34 
iii.  To send application to the company ..............................................................................  35 

 
 
13. How to View Application Sent.................................................................................... 36
i.  To update application’s status ...........................................................................................  36 
 
ii. To view company’s details..................................................................................................  37 
14. How to Send Application (by Coordinator) .............................................................. 38
 
i.  To send one student’s application to one company..........................................................  38 
ii. To send more than one student’s application to one company .......................................  39 
iii.  To use Search Company page ........................................................................................  40 
iv.  To use Search Student panel ..........................................................................................  42 
15. How to Allocate Student to Company....................................................................... 43
i.  To allocate one student to one company ...........................................................................  43 
 
ii. To allocate more than one student to one company.........................................................  44 
iii.  To use Search Company page ........................................................................................  45 
iv.  To use Search Student panel ..........................................................................................  47 
16. How to Allocate Student to College Supervisor (Lecturer) ..................................... 48
i.  To allocate one student to one lecturer .............................................................................  48 
 
ii. To allocate more than one student to one lecturer...........................................................  49 
 
iii.  To use Search Lecturer page..........................................................................................  50 
iv.  To use Search Student panel ..........................................................................................  52 
17. How to Generate Matching List ................................................................................. 53
 
i.  To match all unsecured students with companies............................................................  53 
 
ii. To match selected unsecured students with companies...................................................  55 
18. How to Generate New Query...................................................................................... 58
i.  To generate new query .......................................................................................................  59 
ii. To set criteria for query......................................................................................................  59 
19. How to View Existing Query ...................................................................................... 61
i.  To view query result ...........................................................................................................  61 
 
ii. To delete query ....................................................................................................................  61 
20. How to View Report .................................................................................................... 62
 
 
 

1. How to Access to the System
Open browser and go to http://localhost/WebsitePort/Homepage.aspx.
The Welcome page will be displayed as  Figure  1.1.

Figure  1.1:  Welcome  page.


4 | P a g e  
 
a Login button Click to confirm login to the system.
b Lost Your Password button Click to request reset button.
 

2. How to Login to the System

Figure  2.1:  Welcome  page.


a Log In button Click to open the Login panel.

1. Click the Log In button. The login panel will be opened as  Figure  2.2.


a b 
c

5 | P a g e
a Main Menu Display the menu and submenu.
b Personal Details panel Display the personal details of users.
c Announcement panel Display announcements posted.
 

c Close Panel button Click to close the Login panel.

2. Fill in username and password.
3. Click Login button. Homepage will be displayed as  Figure  2.3.

Figure  2.2:  Login  panel.


6 | P a g e
 

Remarks:
 Contents in Homepage (Main Menu, Personal Details panel and Announcement
panel) will be different based on different role of user.

Figure  2.3:  Homepage.


7 | P a g e  
 
 

3. How to Reset the Password

Figure  3.1:  Login  panel.


a Lost Your Password button Click to request reset password.

1. Fill in username.
2. Click Lost Your Password button. An email with Reset Password link will be sent to
your email address.
3. Open the email and click the Reset Password link. Reset Password page will be
displayed as  Figure  3.2.

Figure  3.2:  Reset  Password  page.


a Submit button Click to confirm reset password.
4. Fill in New Password and Confirm New Password.
5. Click Submit button. A pop-out message will be displayed as  Figure  3.3.

8 | P a g e
 

Figure  3.3:  Message  to  inform  password  is  reset  successfully.


9 | P a g e
a Submit button Click to confirm change password.
b Cancel button Click to cancel change password.
 

4. How to Change Password
Go to Main Menu >> Personal >> Change Password
a  b

Figure  4.1:  Change  Password  page.

1. Fill in Old Password, New Password and Confirm New Password.
2. Click Submit button. A pop-out message will be displayed as  Figure  4.2.

Figure  4.2:  Message  to  inform  the  password  is  changed  successfully.

10 | P a g e
 

5. How to Fill Up Student Personal Particular
Go to Main Menu >> Personal >> Personal Particular
a Submit button Click to confirm submit the student personal
particular.
b Cancel button Click to cancel submit the student personal
a  b

Figure  5.1:  Student  Personal  Particular  page.

11 | P a g e
 
particular.

i. To fill up student personal particular
1. Fill in all the required fields.
2. Click Submit button. A pop-out message will be displayed as  Figure  5.2.

Figure  5.2:  Message  to  inform  the  Student  Personal  Particular  is  submitted  successfully
and  fill  up  Student  Preference.

3. Student Preference will be displayed as  Figure  6.1.

Remarks:

 For first time login, a pop-out message will be displayed as  Figure  5.3 to inform


students to fill up Student Personal Particular.

Figure  5.3:  Message  to  inform  students  to  fill  up  Student  Personal  Particular.

 Required fields: Full Name, IC No, Gender, Program, Tutorial Group, CGPA,
Own Transport, Email Address, Temporary Address and Permanent Address.

ii. To modify student personal particular
1. Open Student Personal Particular page. The previous saved details will be displayed
as  Figure  5.4.
12 | P a g e
 

Figure  5.4:  Modify  Student  Personal  Particular.


a Modify button Click to modify Student Personal Particular.
2. Click Modify button. All the fields will be enabled, the Save button and Cancel button
will be displayed as  Figure  5.5.

13 | P a g e
 

a Save button Click to confirm save the modified details.
b Cancel button Click to cancel modify the Student Personal
Particular.

a b

Figure  5.5:  Modify  screen  of  Student  Personal  Particular.

3. Make necessary changes.
4. Click Save button. A pop-out message will be displayed as  Figure  5.6.

Figure  5.6:  Message  to  inform  the  Student  Personal  Particular  is  updated  successfully.
14 | P a g e
a Submit button Click to confirm submit the student preference.
b Cancel button Click to cancel submit the student preference.
 

6. How to Fill Up Student Preference
Go to Main Menu >> Personal >> Preference
a  b

i. To fill up student preference
1. Fill in the preferences.
2. Click Submit button. A pop-out message will be displayed as  Figure  6.2.

15 | P a g e
 

Figure  6.2:  Message  to  inform  the  Student  Preference  is  submitted  successfully.

ii. To modify student personal particular
1. Open Student Preference page. The previous saved details will be displayed as  Figure
6.3.

Figure  6.1:  Student  Preference  page.


16 | P a g e
 
a

a Save button Click to confirm save the modified details.
b Cancel button Click to cancel modify the Student Preference.
Figure  6.3:  Modify  Student  Personal  Particular.
a Modify button Click to modify Student Preference.

2. Click Modify button. All the fields will be enabled, the Save button and Cancel button
will be displayed as  Figure  6.4.

17 | P a g e
 

a b 

Figure  6.4:  Modify  screen  of  Student  Preference.


3. Make necessary changes.
4. Click Save button. A pop-out message will be displayed as  Figure  6.5.

Figure  6.5:  Message  to  inform  the  Student  Preference  is  updated  successfully.

18 | P a g e
a Browse button Click to browse resume.
b Upload button Click to confirm upload resume.
 

7. How to Upload Resume
Go to Main Menu >> Personal >> Resume
a

i. To upload resume
1. Click Browse button to browse the resume to upload.
Figure  7.1:  Upload  Resume  page.
2. Click Upload button. A pop-out message will be displayed as  Figure  7.2.

19 | P a g e
a Download My Resume button Click to download current resume.
b Browse button Click to browse resume.
c Upload button Click to confirm replace current resume.
 
Figure  7.2:  Message  to  inform  the  resume  is  uploaded  successfully.

ii. To replace current resume
1. Go to Upload Resume page and the page will be displayed as  Figure  7.3.

b

Figure  7.3:  Replace  Resume  page.

3. Click Upload button. A pop-out message will be displayed as  Figure  7.4.


2.   Click Browse button to browse resume to replace current resume.
20 | P a g e
 

Figure  7.4:  Message  to  inform  the  resume  is  uploaded  successfully.
21 | P a g e
a Submit button Click to confirm submit company superior’s details.
b Cancel button Click to cancel submit company superior’s details.
 

8. How to Fill Up Company Superior’s Details
Go to Main Menu >> Training >> My Company Superior

Figure  8.1:  Company  Superior  page.

a  b

i. To fill up company superior’s details
1. Fill in the required fields.
2. Click Submit button. A pop-out message will be displayed as  Figure  8.2.
22 | P a g e
 

Figure  8.3:  Message  to  inform  the  company  superior’s  details  is  submitted  successfully.

Remarks:
 Required fields: Name, Designation, Email Address, Telephone No., Address,
State, City and Postcode.

ii. To modify company superior’s details
1. Open Company Superior page. The previous saved details will be displayed as  Figure
8.4.
23 | P a g e
 

Figure  8.4:  Modify  Company  Superior’s  details  page.

a Modify button Click to modify the company superior’s details.
2. Click Modify button. All the fields will be enabled, the Save button and Cancel button
will be displayed as  Figure  8.5.

a b

Figure  8.5:  Modify  screen  of  Company  Superior.

a Save button Click to confirm save the changed company superior’s 
details.

24 | P a g e
 

b Cancel button Click to cancel save the changed company superior’s details.

3. Make necessary changes.
4. Click Save button. A pop-out message will be displayed as  Figure  8.6.

Figure  8.6:  Message  to  inform  the  company  superior’s  details  is  updated  successfully.
25 | P a g e
 

9. How to View College Supervisor’s Details
Go to Main Menu >> Training >> My College Supervisor

b
Figure  9.1:  Company  Supervisor  page.
a Send Email button Click to send email to college supervisor.

i. To view college supervisor’s details
1. Go to College Supervisor page. The college supervisor’s details will be displayed as
Figure  9.1.

ii. To send email to college supervisor
1. Click Send Email button. A Send Email panel will be displayed as  Figure  9.2.

a Browse button Click to browse attachment of the email.
b Send button Click to confirm send email.
c Close button Click to cancel send email and close the Send Email panel.
26 | P a g e
 

b  c
3. Click Send button. A message will be displayed as  Figure  9.3.

Figure  9.3:  Message  to  inform  the  email  is  sent  successfully.

Figure  9.2:  Send  Email  panel.

2.   Add attachment and fill in message if any.

27 | P a g e
 

10.How to Fill Up Student Survey Form

a Submit button Click to confirm submit the survey.
b Cancel button Click to cancel submit the survey.
a b

Figure  10.1:  Student  Survey  page.

28 | P a g e
 

1. Fill up all the fields.
2. Click Submit button. A pop-out message will be displayed as  Figure  10.2.
Figure  10.2:  Message  to  inform  the  survey  is  submitted  successfully.

29 | P a g e  
 
a Minimize button Click to minimize the Search Setting panel.
b Search Setting panel Set the search setting for searching company.
c Search button Click to search company.
 

11.How to Search Company
Go to Main Menu >> Training >> Search Company

i. To search company Figure  11.1;  Search  Company  page.


1. Set the search setting if any.
2. Click Search button. The searching result will be displayed as  Figure  11.2.

30 | P a g e
a Maximize button Click to maximize the Search Setting panel.
b View More button Click to view company’s details.
c Send Application button Click to send application to company.
d Bookmark button Click to add company to bookmark list.
 

Figure  11.2:  Search  Result  of  company  list.

ii. To view company’s details
1. Click the View More button (Figure  11.2). The company’s details will be displayed
as pop-out window as  Figure  11.3.
31 | P a g e
 

Figure  11.3:  View  Company’s  Details  page.


a View Exact Location button Click to view company’s exact location on Google Map.
b Close button Click to close the View Company’s Details page.

iii. To send application to company
1. Click the Send Application button (Figure  11.2). The Send Application panel will be
displayed as  Figure  11.4.
32 | P a g e
 

a  b

Figure  11.4:  Send  Application  panel.

2. Enter message if any.
3. Click Send button. A pop-out message will be displayed as  Figure  11.5.

iv. To bookmark company
1. Click Bookmark button (Figure  11.2) of the company.
33 | P a g e
a Delete button Click to delete the company from bookmark list.
b View More button Click to view company’s details.
c Send Application Click to send application to the company.
 

12.How to View Bookmark List
Go to Main Menu >> Training >> View Bookmark

a  b 


i. To delete bookmark.
1. Click delete button of the company. The company will be removed and the bookmark
list will be refreshed.

ii. To view company’s details
1. Refer to 11 (ii).

34 | P a g e
 

iii. To send application to the company
1. Refer to 11 (iii).

Figure  12.1:  View  Bookmark  page.


35 | P a g e  
 
 

13.How to View Application Sent
Go to Main Menu >> Training >> View Application

a View More button Click to view company’s details.
b Application’s Status drop down list Select the application’s status.
c Update Application Status button Click to confirm update the application’s status.
a

i. To update application’s status
1. Select the application’s status from Application’s Status drop down list.
2. Click Update Application Status button. A pop-out message will be displayed as
Figure  13.2.

Figure  13.1:  View  Application  page. 36 | P a g e


 

Figure  13.2;  Message  to  inform  the  application’s  status  is  updated  successfully.

ii. To view company’s details
1. Refer to 11 (ii).
37 | P a g e
 
  a Search Company button Click to search company by using Search Company page.
  b More than one student Check to send more than one student’s application.
 
  checkbox
  c Submit button Click to confirm send application.
 
  d Search Student panel Used to search student.
 
 

14.How to Send Application (by Coordinator)
Go to Main Menu >> Training >> Training >> Send Application

a
b

Figure  14.1:  Send  Application  page.

i. To send one student’s application to one company
1. Enter company’s name and select the company from auto-generated list according to
the entered name. The list will be displayed as  Figure  14.2.
38 | P a g e
 

Figure  14.2:  Auto-generated  list  of  companies.

2. Enter student’s name and select the student from auto-generated list according to the
entered name. The list will be displayed as  Figure  14.3.

Figure  14.3:  Auto-generated  list  of  students.


3. Click Submit button. A pop-out message will be displayed as  Figure  14.4.

Figure  14.4:  Message  to  inform  the  allocation  is  done  successfully.

ii. To send more than one student’s application to one company
1. Enter company’s name and select the company from auto-generated list according to
the entered name. The list will be displayed as  Figure  14.2.

39 | P a g e
 

2. Check the More than one student checkbox. A Student list box, Add button and
Remove button will be displayed as  Figure  14.5.

Figure  14.5:  Student  list  box,  Add  button  and  Remove  button.

a Add button Click to add the student into the Student list box.
b Remove button Click to remove selected student from Student list
box.
c Student list box Display the students for allocation.

3. Enter student’s name and select the student from auto-generated list according to the
entered name. The list will be displayed as  Figure  14.3.
4. Click Add button to add the student into Student list box.
5. Click Submit button. A pop-out message will be displayed as  Figure  14.4.

iii. To use Search Company page
1. Click to Search Company button. The Search Company page will be displayed as
pop-out window as  Figure  14.6.
40 | P a g e
a Alphabetic list Click the alphabet to display all the companies with the
Figure  14.6:  Search  Company  page.
name start with the selected alphabet.
b Search By Name textbox Enter the company’s name to search.
c Search button Click to search company.
 

b c

2. Enter company’s name to search in Search By Name textbox or click the alphabet in
Alphabetic list.
3. Click Search button. The search result will be displayed as  Figure  14.7.

Figure  14.7:  Search  Company  Result  page.


Figure  15.8:  Search  Student  panel.
a Select button Click to select the company.

41 | P a g e
a Search Criteria Set the search student criteria.
b Search button Click to search student.
 

4. Click Select button to select the company. The Search Company page will be closed
and the selected company will be displayed in the Company Name textbox (Figure
14.1).

iv. To use Search Student panel

a b

1. Set search criteria if any.
2. Click Search button. The search result will be displayed as  Figure  15.9.

Figure  15.9:  Search  Student  Result  page.


a Select button Click to select the student.
3. Click Select button to select the student. The selected student will be displayed in the
Student Name textbox (Figure  14.1).

42 | P a g e
 

15.How to Allocate Student to Company
Go to Main Menu >> Training >> Allocation >> Student – Company

a Search Company button Click to search company by using Search Company page.
b More than one student Check to allocate more than one student.
checkbox
c Submit button Click to confirm allocate.
d Search Student panel Used to search student.
a
b

i. To allocate one Figure 
student15.1: 
 to one  company
Allocate  Student  to  Company  page.
1. Enter company’s name and select the company from auto-generated list according to
the entered name. The list will be displayed as  Figure  15.2.

43 | P a g e
 
Figure  15.2:  Auto-generated  list  of  companies.

2. Enter student’s name and select the student from auto-generated list according to the
entered name. The list will be displayed as  Figure  15.3.

Figure  15.3:  Auto-generated  list  of  students.


3. Click Submit button. A pop-out message will be displayed as  Figure  15.4.

Figure  15.4:  Message  to  inform  the  allocation  is  done  successfully.

ii. To allocate more than one student to one company
1. Enter company’s name and select the company from auto-generated list according to
the entered name. The list will be displayed as  Figure  15.2.

44 | P a g e
 

2. Check the More than one student checkbox. A Student list box, Add button and
Remove button will be displayed as  Figure  15.5.

Figure  15.5:  Student  list  box,  Add  button  and  Remove  button.

a Add button Click to add the student into the Student list box.
b Remove button Click to remove selected student from Student list
box.
c Student list box Display the students for allocation.

3. Enter student’s name and select the student from auto-generated list according to the
entered name. The list will be displayed as  Figure  15.3.
4. Click Add button to add the student into Student list box.
5. Click Submit button. A pop-out message will be displayed as  Figure  15.4.

iii. To use Search Company page
1. Click to Search Company button. The Search Company page will be displayed as
pop-out window as  Figure  15.6.
45 | P a g e
a Alphabetic list Click the alphabet to display all the companies with the
name start with the selected alphabet.
b Search By Name textbox Enter the company’s name to search.
c Search button Click to search company.
 

Figure  15.6:  Search  Company  page.

b c

2. Enter company’s name to search in Search By Name textbox or click the alphabet in
Alphabetic list.
3. Click Search button. The search result will be displayed as  Figure  15.7.

Figure  15.7:  Search  Company  Result  page.


a Select button Click to select the company.

46 | P a g e
a Search Criteria Set the search student criteria.
Figure  15.8:  Search  Student  panel.
b Search button Click to search student.
 

4. Click Select button to select the company. The Search Company page will be closed
and the selected company will be displayed in the Company Name textbox (Figure
15.1).

iv. To use Search Student panel

a b

1. Set search criteria if any.
2. Click Search button. The search result will be displayed as  Figure  15.9.


Figure  15.9:  Search  Student  Result  page.
a Select button Click to select the student.
3. Click Select button to select the student. The selected student will be displayed in the
Student Name textbox (Figure  15.1).

47 | P a g e
 

16.How to Allocate Student to College Supervisor (Lecturer)
Go to Main Menu >> Training >> Allocation >> Student – Lecturer

a Search Lecturer button Click to search lecturer by using Search Lecturer page.
b More than one student checkbox Check to allocate more than one student.
c Submit button Click to confirm allocate.
d Search Student panel Used to search student.
a
b

i. To allocate one student to one lecturer
1. Enter lecturer’s name and select the lecturer from auto-generated list according to the
entered name. The list will be displayed as  Figure  16.2.

48 | P a g 
e
 
Figure  16.1:  Allocate  Student  to  Lecturer  page.

Figure  16.2:  Auto-generated  list  of  lecturers.

2. Enter student’s name and select the student from auto-generated list according to the
entered name. The list will be displayed as  Figure  15.3.
3. Click Submit button. A pop-out message will be displayed as  Figure  16.3.
Figure  16.3:  Message  to  inform  the  allocation  is  done  successfully.

ii. To allocate more than one student to one lecturer
1. Enter lecturer’s name and select the lecturer from auto-generated list according to the
entered name. The list will be displayed as  Figure  16.2.
2. Check the More than one student checkbox. A Student list box, Add button and
Remove button will be displayed as  Figure  16.4.

a Add button Click to add the student into the Student list box.
b Remove button Click to remove selected student from Student list
box.
c Student list box Display the students for allocation.

49 | P a g e
 
a

3. Enter student’s name and select the student from auto-generated list according to the
entered name. The list will be displayed as  Figure  15.3.
4. Click Add button to add the student into Student list box.
5. Click Submit button. A pop-out message will be displayed as  Figure  16.3.
Figure  16.4:  Student  list  box,  Add  button  and  Remove  button.

iii. To use Search Lecturer  page
1. Click to Search Lecturer button. The Search Lecturer page will be displayed as pop-
a Alphabetic list Click the alphabet to display all the lecturers with the name
start with the selected alphabet.
b Search By Name textbox Enter the lecturer’s name to search.
c Search button Click to search lecturer.

out window as  Figure  16.5.

50 | P a g e
 
a

b c

Figure  16.5:  Search  Company  page.

2. Enter lecturer’s name to search in Search By Name textbox or click the alphabet in
Alphabetic list.
3. Click Search button. The search result will be displayed as  Figure  16.6.

Figure  16.6:  Search  Lecturer  Result  page.


a Select button Click to select the lecturer.
51 | P a g e
 

4. Click Select button to select the lecturer. The Search Lecturer page will be closed and
the selected lecturer will be displayed in the Lecturer Name textbox (Figure  16.1).

iv. To use Search Student panel
1. Refer to 15 (iv).
52 | P a g e  
 
a Allocation Criteria Set the allocation criteria for matching.
b Start Matching Click to start matching.
button
 

17.How to Generate Matching List
 Matching all unsecured students
Go to Main Menu >> Training >> Auto-matching >> All Unsecured Students

 Matching selected students
Go to Main Menu >> Training >> Auto-matching >> Selected Students

i. To match all unsecured students with companies

a
b

Figure  17.1:  Auto-matching  All  Unsecured  Students  page.

53 | P a g e
 

1. Set the allocation criteria for matching if any.
2. Click Start Matching button. The matching result will be displayed as  Figure  17.2.


Figure  17.2:  Matching  Result.

a Save as PDF button Click to save matching result in PDF file format.

54 | P a g e
a Allocation Criteria Set the allocation criteria for matching.
b Select Student For Matching Click to select student by using Select Student panel.
button
c Start Matching button Click to start matching.
 

ii. To match selected unsecured students with companies

a

c

Figure  17.3:  Auto-matching  Selected  Students  page.

1. Set the allocation criteria for matching if any.
2. Click Select Student For Matching button. The Select Student page will be displayed
as pop-out window as  Figure  17.4.

55 | P a g e
 

Figure  17.4:  Select  Student  page.

a Search button Click to search students.

3. Select Program and Tutorial Class (if any) to search students.
4. Click Search button. The search result will be displayed as  Figure  17.5.

Figure  17.5:  Search  Result.

56 | P a g e
a Select checkbox Check to select the student.
b Confirm button Click to confirm select student(s).

5. Check the Select checkbox of student to select the student(s).
6. Click Confirm button. The pp-out window will be closed.
7. Click the Start Matching button (Figure  17.3). The matching result will be displayed
as  Figure  17.2.
57 | P a g e  
 
a Student Details checkbox list Check the checkbox to select the fields.
b Set Criteria (Student) button Set the criteria for Student Details.
 

18.How to Generate New Query
Go to Main Menu >> Training >> Query >> Generate New Query
a

58 | P a g e
c Company Details checkbox list Check the checkbox to select the fields.
d Set Criteria (Company) button Set the criteria for Company Details.
a
Add button Click to add criteria into Criteria list box.
e Generate button Figure  18.1: Click to generate the query.
Generate  New  Query  page.
b Remove button Click to remove selected criteria from Criteria list
 
box.
c Criteria list box Display criteria.
d Confirm button Click to confirm the criteria.
e Cancel button Click to cancel the criteria added.
i. To generate new query
1. Select the fields which need to be shown in the query from Student Details checkbox
list and Company Details checkbox list.
2. Set the criteria if any. (Refer to ii)
3. Enter query’s name.
4. Click Generate button. The query saved and the result will be displayed.

ii. To set criteria for query
1. Click Set Criteria button. The Set Criteria panel will be displayed as  Figure  18.2.

c  a

d  e

59 | P a g e
 
Figure  18.2:  Set  Criteria  panel.

2. Select column, operator and enter a value.
3. Click Add button.
4. Repeat Step 2 and 3 until finish set the criteria.
5. Click Confirm button. The Set Criteria panel will be closed.
60 | P a g e  
 
a Generate New Query button Click to go to Generate New Query page.
b View Query button Click to view the query result.
c Select checkbox Check the checkbox to select the query.
d Delete button Click to delete selected query.
 
19.How to View Existing Query
Go to Main Menu >> Training >> Query >> View Existing Query

b


Figure  19.1:  View  Existing  Query  page.

i. To view query result
1. Click View Query button. The query result will be displayed.

ii. To delete query
1. Check the checkbox of the query.
2. Click delete button. The selected query will be deleted and the query list will be
refreshed.

61 | P a g e
 
20.How to View Report
Go to Main Menu >> Report >>  Report  Type

Report  Types are listed as following:
 Student Evaluation Statistic
 Student Result Statistic
 Company Evaluation Statistic
 Allocation Summary Report
 Application Status Summary Report
62 | P a g e  
 
 
Figure  20.1:  Sample  Report.

63 | P a g e  
 

You might also like