+ All Categories
Home > Documents > Khuat Thuy Phuong 2010

Khuat Thuy Phuong 2010

Date post: 17-Feb-2016
Category:
Upload: satyam-bansal
View: 219 times
Download: 1 times
Share this document with a friend
Description:
Khuat Thuy PhuongKhuat Thuy Phuong
Popular Tags:
74
INTERNSHIP’S REPORT Master of Software Engineering (2008-2010) NEW TRAINING MANAGEMENT SYSTEM Place: Computer Science Centre –University of Science – VNU - HCMC Duration: 6 months (From 15 th June, 2010 to 15 th December, 2010) Supervisor: Prof. DONG Thi Bich Thuy Author: KHUAT Thuy Phuong January 07 th , 2011
Transcript
Page 1: Khuat Thuy Phuong 2010

INTERNSHIP’S REPORT

Master of Software Engineering (2008-2010)

NEW TRAINING MANAGEMENT SYSTEM

Place: Computer Science Centre –University of Science – VNU -

HCMC

Duration: 6 months (From 15th June, 2010 to 15th December,

2010)

Supervisor: Prof. DONG Thi Bich Thuy

Author: KHUAT Thuy Phuong

January 07th, 2011

Page 2: Khuat Thuy Phuong 2010

Abstract

New Training Management System Page i

Abstract Training management system is a useful application which every training and education

organization, including Computer Science Centre (CSC), needs to manage all their work.

Because CSC is one of the largest Information Technology (IT) training centers with

more than 40 affiliates over Vietnam and 50.000 registrations of students to short-term or

long-term program per year, we must have a good training management system.

Currently, CSC is using a computer system for training management but this system has

been built and exploited more than ten years, and of course, it is doesn’t satisfy the

demand now and future. Hence, constructing a new training management system which is

suitable for present and future needs is requirement for the internship.

This report writes about the internship at CSC. It will mentions to some issues such as the

current training management system; a description of requirements needed to change and

new requirements needed to add; an analysis and design of new system based on object-

oriented analysis and design and design pattern theories; and an implementation built

basing on web services, distributed architecture, especially multi-tier architecture theories

and using Java language and Java platforms.

Page 3: Khuat Thuy Phuong 2010

New Training Management System Page ii

TABLE OF CONTENTS

Page #

Abstract .............................................................................................................................................. i Acknowledgements............................................................................................................................. v

1.0 INTRODUCTION...................................................................................................................... 2 1.1 Pôles Universitaires Français (PUF)...................................................................................... 2 1.2 Computer Science Centre (CSC)........................................................................................... 2 1.3 Internship Information.......................................................................................................... 3

1.3.1 Supervisor ....................................................................................................................................... 3 1.3.2 Internship position .......................................................................................................................... 3 1.3.3 Job description and motivation ........................................................................................................ 3

2.0 ANALYSIS AND DESIGN ........................................................................................................ 6 2.1 Description of problem.......................................................................................................... 6 2.2 The current Training Management System .......................................................................... 8

2.2.1 Introduction ......................................................................................................................................... 8 2.2.2 Reason why the current system is no longer meet the requirements....................................................... 9

2.3 Requirement description ..................................................................................................... 10 2.4 Result of analysis and design............................................................................................... 11

2.4.1 Reason why the new system improves over the current system............................................................ 11 2.4.2 Class Diagram.................................................................................................................................... 14 2.4.3 Sequence Diagram ............................................................................................................................. 28

3.0 IMPLEMENTATION.............................................................................................................. 33 3.1 Structure.............................................................................................................................. 33 3.2 Packages .............................................................................................................................. 34

3.2.1 Package of Dynamic Web Project .................................................................................................. 34 3.2.2 Package of Business Project........................................................................................................... 35 3.2.3 Package of Enterprise Application Project ..................................................................................... 35

3.3 Result................................................................................................................................... 36 3.4 Advantages and Disadvantages ........................................................................................... 41

3.4.1 Advantages.................................................................................................................................... 42 3.4.2 Disadvantages ............................................................................................................................... 43

CONCLUSION AND FUTURE WORK........................................................................................ 44 Conclusion........................................................................................................................................ 44 Future work ..................................................................................................................................... 44 Bibliography .................................................................................................................................... 45 Appendix A – Requirement Description.......................................................................................... 46

Page 4: Khuat Thuy Phuong 2010

New Training Management System Page iii

A.1 Group of requirements about training program and material facilities management......... 46 A.2 Group of requirements about student management............................................................ 54 A.3 Group of requirements about certification and diploma management................................ 62 Appendix B – Installation and steps to run the application............................................................. 68 B.1 Installation........................................................................................................................... 68 B.2 Steps to run the application................................................................................................. 68

Page 5: Khuat Thuy Phuong 2010

New Training Management System Page iv

TABLE OF FIGURES

Figure 1. PUF at HCMC National University and Hanoi National University ........... 2 Figure 2. The current Training Management System ................................................. 9 Figure 3. General model of New Training Management System.............................. 15 Figure 4. Classification of regulations ..................................................................... 17 Figure 5. Unit of study ............................................................................................ 17 Figure 6. Two types of version ................................................................................ 19 Figure 7. State pattern for class LopHoc.................................................................. 20 Figure 8. Training Program and Material Facilities Management System ................ 20 Figure 9. Two kinds of student ................................................................................ 21 Figure 10. Types of study registration ....................................................................... 22 Figure 11. Types of reducing fee............................................................................... 23 Figure 12. Study Management System....................................................................... 24 Figure 13. Subclasses of exam subject....................................................................... 25 Figure 14. Examination Management System............................................................ 26 Figure 15. Types of Certificate.................................................................................. 27 Figure 16. Certificate and Diploma Management System .......................................... 28 Figure 17. Enrolling in a class ................................................................................... 29 Figure 18. Enrolling in a unit .................................................................................... 30 Figure 19. Registration to a national certificate exam................................................ 30 Figure 20. Create a unit based on training system and training program .................... 31 Figure 21. Structure of the system............................................................................. 34 Figure 22. Page index.jsp .......................................................................................... 36 Figure 23. Page group1.jsp........................................................................................ 37 Figure 24. Page group2.jsp........................................................................................ 37 Figure 25. Page group3.jsp........................................................................................ 37 Figure 26. Choose function study registration ........................................................... 38 Figure 27. Searching a student by full name and date of birth.................................... 38 Figure 28. Insert a new student page ......................................................................... 39 Figure 29. Registration a unit .................................................................................... 41

Page 6: Khuat Thuy Phuong 2010

New Training Management System Page v

Acknowledgements As the graduation requirement of Software Engineering Master Course – University of

Bordeaux 1, I applied for the internship at Computer Science Centre (CSC) – University

of Science – VNU – HCMC from the middle of June to the middle of December and was

accepted.

First of all, I am heartily thankful to Prof. DONG Thi Bich Thuy, who is both the director

of CSC and supervisor. She gives me an opportunity to work the internship here, creates

many good conditions for me to finish the internship and supports me to understand the

way how to do this internship and to improve the abilities and skills in this time.

Secondly, I offer the regards and blessings to many staff members working at CSC. They

help me in any respect during the completion of the internship.

Thirdly, it is a pleasure to thank University of Bordeaux 1 and the Pôles Universitaires

Français (PUF) for giving me a change to put the theories I have learnt into practice.

Lastly, I am indebted to all the professors who taught me in Software Engineering Master

Course, for their help. The knowledge which I have learnt from them is very useful for

me to do this internship.

Page 7: Khuat Thuy Phuong 2010

New Training Management System

1. INTRODUCTION This report is about the internship, worked at CSC from June 15th

, 2010 to December 15th,

2010, as the graduation requirement of Master of Software Engineering Course. It is a

good time for me to practice and improve the knowledge I have learnt into a real

environment. The internship report has three chapters. The first chapter is the

introduction. The second chapter writes about the current system management and the

analysis and design of new system. The third chapter says to the implementation. The last

part in this report is the conclusion of the internship and future work.

In this chapter, the introduction, there are three main parts. The first part introduces PUF,

where I have studied; the second part writes about CSC, where I have done the internship;

and the third part is about the job description and motivation to do it.

Page 8: Khuat Thuy Phuong 2010

New Training Management System Page 2

1.0 INTRODUCTION

1.1 Pôles Universitaires Français (PUF)

Figure 1. PUF at HCMC National University and Hanoi National University

PUF1 in Ho Chi Minh City (HCMC) is the centre where I have studied Master Course of

Software Engineering. It is located in Administrative Department of Vietnam National

University, Ward 6, Linh Trung Street, Thu Duc District, HCMC. I has chosen PUF

because of the good training quality and enviroment here.

1.2 Computer Science Centre (CSC)

CSC is an organization established in 1986. After more than 20 years continuously

developing, CSC is one of the largest Information Technology (IT) training centers with

more than 40 affiliates over Vietnam. CSC has played an important role in IT building

strategy quality of our country. At the main office at HCMC, there are 50.000 students’

registrations to short-term or long-term program per year. CSC is also well known with

new technology research services. Many businesses highly appreciate CSC in IT

consulting, application into operation of the businesses. The main activities are training

(it will be presented in details in the next chapter), programming and maintaining

software, IT consulting and application into operation of the businesses

1 www.puf.edu.vn

Page 9: Khuat Thuy Phuong 2010

New Training Management System Page 3

1.3 Internship Information

1.3.1 Supervisor

The supervisor is Professor DONG Thi Bich Thuy. Now, she works as an Associate

Professor and Director of Faculty of IT, CSC and Centre for Educational Excellence

University of Science - VNU – HCMC. Her main field of research relates to information

system. Because she is the Director of CSC, she decides which analysis and design for

the new training management system is chosen, if this system is deployed to test or not

and what functions are needed to added or removed.

1.3.2 Internship position

The internship started from June 15th, 2010 to December 15th, 2010. The project named

“New Training Management System” was assigned to me under the guidance of Professor

DONG Thi Bich Thuy. At that time, I worked at Technical Department which the main

functions are to research new technology, design new programs and deploy those

programs to learners, etc. It is also the place where I have worked from 2006 to now.

1.3.3 Job description and motivation

One of the most important activities of CSC is training opened to everyone. The variety

of training programs, such as the number of programs and training durations (6 weeks - 3

months - 6 months - 18 months - …), as well as the diversity of the regulations which

allow students to determine their study route (to complete the training program selected)

and study duration (must respect the requirement of previous subject/course and total

durations allowed) explain the complexity in the training management operations.

CSC is currently using a computer system for training management. This system manages

the study’s processes of students (from the time they register to a program to the time

they receive a certificate or a diploma). This system has been built and exploited more

than ten years, and of course, it doesn’t satisfy the current study and examination

regulations. Because of this reason, the requirements written below are posed.

Page 10: Khuat Thuy Phuong 2010

New Training Management System Page 4

The content of internship suggested is analyzing the current system and designing a new

training management system with reusable components oriented approach in order to

accept the grand flexibility about the evolution in the study and examination regulations

(conditions to study a program, determinate an "option" study route within the defined

framework...).

One solution of implementation must be proposed, not only paying attention to both new

technologies such as web services, SOA... and effect of exploitation, but also paying

attention to exploitation conditions of future system (exploitation is scattered on many

points, centralized database or distributed database). Need to implement some functions

to test the effectiveness of the proposed solution.

In conclusion, there are two main requirements. Analysis and design is a very important

work. Having a good analysis and design will help the managers can understand the

system clearly and will help the programmers implement well. So the first requirement is

to analyze and to design whole of the system. Because the time to do this internship is not

enough to implement all functions, the second requirement is choosing one or two

subsystems to implement.

Page 11: Khuat Thuy Phuong 2010

New Training Management System Page 5

2. TRAINING MANAGEMENT SYSTEM - ANALYSIS AND DESIGN In this chapter, the first part is about the description of problem. The second part

introduces the current training management system. The third part is about the description

of requirements. It lists the requirements divided into three subsystems. Next, that is the

result of the analysis and design for the new system. It includes class diagram for each

sub system and some sequence diagrams. In the internship, the time I spent to analyze and

design was the longest time (more than haft of total time I had) because they are very

important. They decide the accuracy of the project. Firstly, the director gave me some

documents about the current training management system. I must read them carefully to

understand whole the system. Secondly, I listed all problems I found in this process to ask

her. Thirdly, I surveyed the old requirements needed to change and new requirements

needed to add from the director and the staffs. Then, I made the requirement analysis and

design and sent the result to the director. She read it very careful and gave me a lot of

suggests. I corrected and sent it again. I had done these works many times, on repetitively

until they were exactly and the director accepted.

Page 12: Khuat Thuy Phuong 2010

New Training Management System Page 6

2.0 ANALYSIS AND DESIGN

2.1 Description of problem

This section is about the actual state and the development process of CSC.

More than ten years ago, CSC had two training systems. There was short-term system and

long-term system. In the short-term system, the content of each short-term course was

taught in six weeks. To have a national certificate, there were two ways. Student chose

studying three short-term courses in the regulation time or registered to take a national

certificate exam without studying to have a national certificate. In the long-term program,

the total time to study is eighteen months. Firstly, it had only one program that was

programming program. Secondly, network program was opened. After that, CSC opened

graphical program. Then, that was web programming program. When student chose one

program, they needed to register whole of this program, not a part of the program.

About the training center, at that time, CSC was the main center. Besides, there were

some associate branches (about ten branches), mainly located in the South of Vietnam.

Each branch opened the long-term system or short-term system, or both of them. But

those branches just offered material facilities, CSC had responsibility to all things related

to training such as: assigning teacher, designing the study program and holding the

exams, etc.

About the scale, at that time, there were 8000 registrations per year for short-term system

and about 600 to 800 registrations per year for long-term system. According to a report,

the annual number of registrations had grown by 15% to 20%.

That meant we needed to have a complete management tool instead of using some

software such as Access or Excel, etc, in an independent way.

The Training Management System was built and deployed. It was used through LAN

and displayed on window forms. At that time, it was satisfied the needs such as it can

keep track of each student, it allowed student studying short-term system and long-term

system to reserve their study result in a fixed time.

Page 13: Khuat Thuy Phuong 2010

New Training Management System Page 7

The time has elapsed. The demand of society about IT has changed. VNU has changed

conditions to have a national certificate (Certificate A, B and C). The number of training

system and training program has increased. They have changed through many forms. For

example:

About the training system:

With the short-term system, now it doesn’t have three courses, it only has two

courses with new content and training period. And the course also has two types:

crash course and normal course.

With the long-term system, now the courses are grouped to unit. Instead of

studying in sequence from the first course to the last course to have graduated

certificate, student can choose a unit to register. Each unit may be in order or not.

With the unit in order, student must conform to the order of the unit.

About the exam:

With the short-term system, there is no change with the normal course. To have a

national certificate, student has two times to take an exam: one for the first course,

another for the second course. With the crash course, student has one time to take

an exam for all courses.

With the long-term system, in the past, after each group of courses, there was only

one exam for each group. Now, there are many kinds of exam such as exam for

each course, exam for unit and graduation exam, etc.

About the associate branches:

Now they become more multiform. Some branches not only offer the material

facilities but also assign teacher the task of teaching so CSC just managers student,

designs the study program and holds the exams.

Page 14: Khuat Thuy Phuong 2010

New Training Management System Page 8

The number of associate branches increases from ten braches to fifty branches,

which are located everywhere in Vietnam hence the management is more

complicated than it in the previous.

This Training Management System is not suitable with the current needs so we need to

find a solution to change it in a flexible way. But it is not easy to all employees.

This is the reason why we need to propose a new analysis and design for the Training

Management System.

2.2 The current Training Management System

There are two main parts here. The first part is the introduction about the current system.

The second part is about the reason why the current system doesn’t satisfy the demand

now and future.

2.2.1 Introduction

The current system has been built and exploited more than ten years. It is used to manage

the study’s processes of students (from the time they register to a program to the time

they receive a certificate or a diploma). In this system, there are three subsystems such as

Management System (manages information about courses, classes…), Office System

(manages information about students) and Certificate System (manages information about

certifications). The below figure is the general structure of it.

Page 15: Khuat Thuy Phuong 2010

New Training Management System Page 9

Figure 2. The current Training Management System

2.2.2 Reason why the current system is no longer meet the requirements

There are many things to explain the reason why the current system doesn’t satisfy the

requirements:

The current system was analyzed and designed based on the classic method and

used relational database.

There is only one type of version for subjects so only the subjects can change

according to version.

Because it has no kind of unit (a group of subjects), it is very difficult to control.

The management of regulations of training system and training program are not

divided in a clear way.

The class doesn’t have state thus it makes the registrar feel inconvenient when they

choose class for student to register.

It can not automatically close the class when the time to register end.

Page 16: Khuat Thuy Phuong 2010

New Training Management System Page 10

There is only one kind of student (student who studies at CSC). It doesn’t manager

the student only enrolls to take the national certificate exam.

Taking exams and awarding certifications of national certification program for free

student are not computerized.

Student cannot determine route of study in an optional way.

More difficult to the registrar to know the number of students registering every

time and everywhere.

When student registers to study a program, he/she will have identification (ID)

number. So they can have more than one ID. => Difficult to manage students.

Information of teachers who mark the exam papers is not stored.

It is difficult to keep track of study history of a student.

Student cannot login to the system to register a class or to enroll an exam.

Type of reducing fee is not divided clearly.

It has not controlled the maximum number of student for each exam shift yet.

To rate a student is not easy.

Student cannot gather short-term certificates to have a long-term certificate.

Kinds of certificate are not divided.

2.3 Requirement description

After exploring the requirements, I divided them into three groups, basing on the function

and task of each group.

Group of requirements about training program and material facilities management:

In this group, there are many requirements about training program, study and exam

Page 17: Khuat Thuy Phuong 2010

New Training Management System Page 11

regulations for a training program, training system and its regulations, version for

subject and unit, unit, subject, course, room and class, etc.

Group of requirements about student management: This group including the

requirements about enrolling to a subject or a unit, study process of student, result

of study, exam, exam shift and exam registration, etc.

Group of requirements about certification and diploma management: A lot of

requirements about certification type, certification regulations, confirmation time,

issue time and certification… are described in this group.

To see the detail of each requirement description, please go to the Appendix A –

Requirement Description.

2.4 Result of analysis and design

This part has three main sub parts. Firstly, this is the reason why the new system is better

than the current system. The second and the third sub parts are class diagram of the

system and some sequence diagrams which are analysis and design based on the theories

of Object-Oriented Analysis and Design (OOAD) and design patterns, designed by using

Unified Modeling Language (UML), a tool to design application.

Because the new system needs to have the ability to enlarge, to reuse, to be maintain,

easy to repair errors and to be clearly and completely so OODA is chosen. Besides, there

are some problems appear in design process so some design patterns are applied to solve

them. UML2 is used to design because “it is a formal language, concise, comprehensive,

scaleable, and standard”.

2.4.1 Reason why the new system improves over the current system

Improvement of new system:

2 Russ Mileys and Kim Hamilton, “Learning UML 2.0”, chapter 1 , Oreilly, April 2006

Page 18: Khuat Thuy Phuong 2010

New Training Management System Page 12

The new system is analyzed and designed based on the theories of OOAD, and

design patterns. This will help the system to have a flexibility to enlarge and

update.

Classification of version is more clearly. There are two types of version (for

subjects and for units). This will help whole the program can change basing on

version for subject and version for unit.

There are three kinds of unit: specific unit, graduation unit and normal unit. The

units are classified basing on the kind. => It is easier for the employees to classify

and control units.

The management of regulations of training system and training program are

divided in a clear way. Both of them have their own regulations. Moreover, the

regulations of training program is divided into four group such as study regulation,

taking exam regulation, study again regulation and retaking exam regulation. =>

That helps the employees easy to manage the regulation when they apply for a

program.

Using State pattern for class LopHoc (class named Class) makes it automatically

change its state when changing the number of students, a deadline to register,

maximum students, minimum students...

There are two types of student: student who only takes the national certificate

exams (free student) and student who studies at CSC. => This system can manage

all students.

Taking exams and awarding certifications of national certification program for

free student are computerized.

Student can register to study and take short-term certificate exams. Then they can

gather them to have a long-term certificate (Technical diploma).

Page 19: Khuat Thuy Phuong 2010

New Training Management System Page 13

Student doesn’t need to register whole of long-term program. They can choose a

unit or only a subject to study.

Student can determine route of study in an optional way.

This system can help the registrar easy to know the number of students registering

to a class every time and everywhere.

If that is the first time student registers to study, he/she will have identification

(ID) number. Another time they register, they use the same ID with the first time.

=> Each student only has one ID. => Easier to manage students.

Information of teachers who mark the exam papers is stored.

In the future, student can login to the system to register a class or to enroll an

exam.

Types of reducing fee are divided very clearly with different function to calculate

rate of each concrete reducing fee by using Strategy pattern. This also aids the

users easy to add a new type or update it.

The system can control the maximum number of students for each exam shift.

The exam subject has three subclasses. This helps the users easy to determine type

of an exam, and helps student knows which kind of exam they have to take at the

end of class or unit…

With the function registration to take an exam, there also have many types of

taking exam such as: registration to take a national certificate exam, registration to

retake an exam (it has two sub types: according to subject and according to unit),

and automatically to enroll to take an exam for all students in class (it also has two

sub types like registration to retake an exam’s type). Because this function is very

complex with a lot of types so the Composite pattern is used here. In this pattern,

Page 20: Khuat Thuy Phuong 2010

New Training Management System Page 14

class automatically to enroll to take an exam for all students in class is composite

class.

To rate and to consider if a student have enough conditions to graduate or not are

easy.

Student can gather short-term certificates to have a long-term certificate (a

diploma).

Types of certificate are divided in a clear way with their standards.

2.4.2 Class Diagram

The class diagram3 describes the attributes and operations of a class and also the

constraints imposed on the system. The class diagrams are widely used in the modeling of

object oriented systems because they are the only UML diagrams which can be mapped

directly with object oriented languages.

I thought, I needed to use class diagram to analyze this system, because:

This system has complex data.

Object-oriented paradigm is based on the analysis of data.

Basing on the requirement description described in Appendix A, The Training

Management System is divided into three main systems:

Training Program and Material Facilities Management System

(HeThongQuanLyGiaoVu)

Student Management System (QuanLyHocVien): including two subsystems, there

are:

Study Management System (QuanLyHoc)

Examination Management System (QuanLyThi)

Page 21: Khuat Thuy Phuong 2010

New Training Management System Page 15

Certificate and Diploma Management System (QuanLyBangCapVaChungChi)

The below figure is the general model of the New Training Management System.

Figure 3. General model of New Training Management System

As the model, each system (including classes belong to it) has relationship with the

others. They can interact with the others, too.

In the first system, a class named unit of study based on training system and

training program (class HocPhanTheoHeVaNganh) calls to class named short-term

certificate type (class LoaiCCNganHan).

The second system calls to class HocPhanTheoHeVaNganh, class named class

(class LopHoc) and class named subject (class MonHoc).

The third system calls to the subclasses named registration to an exam (class

DangKyThi) and named registration to a unit of study (class DKTheoHP) of the

second system and class named training system(class HeDaoTao), class named

3 http://www.tutorialspoint.com/uml/uml_class_diagram.htm

Page 22: Khuat Thuy Phuong 2010

New Training Management System Page 16

training program (class NganhDaoTao) and class named branch (class CoSo) of

the first system.

2.4.2.1 Training Program and Material Facilities Management System

This system is separated into two main groups:

Training Program Management: This system is designed with a high flexibility of

the training programs:

In the CSC, there are many training program (class NganhDaoTao), such as Web,

Network, Graphics Design and Multimedia program, and each program has its own study

and examination regulations, so an interface named study and examination regulation

(interface QDHocVaThi) is given with four subclasses: class named study regulation

(class QDHoc), class named examination regulation (class QDThi), class named resuming

study regulation (class QDHocLai) and class named retaking exam regulation (class

QDThiLai).

There also have a lot of training system (class HeDaoTao) with their own regulations

(class QDRiengCuaHe).

This figure displays the training system and training program with their classification of

regulations.

Page 23: Khuat Thuy Phuong 2010

New Training Management System Page 17

Figure 4. Classification of regulations

Each training system and training program has one or more units of study called class

HocPhanTheoHeVaNganh.

Each unit of study can be a normal unit (class HocPhanThongThuong), a final unit (class

HocPhanTotNghiep) or a special unit (class HocPhanDacBiet). And it has one of two

types: independent unit or dependent unit. With independent unit, student can register

whenever they want to study whereas with dependent unit, student must study another

unit before register this unit.

Figure 5. Unit of study

Page 24: Khuat Thuy Phuong 2010

New Training Management System Page 18

Example: In this case, Unit A, Unit C and Unit E are independent units;

Unit B is dependent unit (student must study Unit A and Unit C before

register Unit B) and Unit D is dependent unit, too (student must study Unit

A before register Unit D).

Each unit of study includes one or more subjects (class MonHoc).

One specialty in this system is class named version (class PhienBan). Class version has

two subclasses: version for subject (class PhienBanCapMon) and version for unit (class

PhienBanCapHP). We can apply the unit of study basing on the version for unit and

apply the subject basing on version for subject. Moreover, we can establish a certificate

which student can achieve after studying a unit relied on version for unit.

Unit A

Unit B

Unit C

Unit D

Unit E

Page 25: Khuat Thuy Phuong 2010

New Training Management System Page 19

Figure 6. Two types of version

Example: In version September, 2006, when students register forth unit of

Web program, they can archive the “Certificate of web programming with

ASP.Net” but in version September, 2009, with forth unit of Web program,

they can archive the “Certificate of Web programming with PHP”.

Material Facilities Management

The CSC has a lot of branches (class CoSo) including many rooms for study (class

Phong).

From the beginning of the year (class named Calendar), a schedule is planned for whole

year including courses (class KhoaHoc).

Before the course starts, a lot of classes are created. Each class will have one subject and

will be taught at one branch of CSC. Besides, it is arranged a schedule (class

CTThoiKhoaBieu) with rooms based on date time of week.

Each class has one of three states; this is one of three subclasses: open state, delete state,

and close state (class MoLop, class HuyLop and class DongLop) of state class (class

Page 26: Khuat Thuy Phuong 2010

New Training Management System Page 20

TrangThai). => Using State pattern for class LopHoc makes it automatically changing its

state when the number of students, a deadline to register, maximum students and

minimum students... change.

Figure 7. State pattern for class LopHoc

The figure shows the class diagram of Training Program and Material Facilities

Management System.

Figure 8. Training Program and Material Facilities Management System

Page 27: Khuat Thuy Phuong 2010

New Training Management System Page 21

2.4.2.2 Student Management System

This system is divided into two subsystems:

Study Management System (QuanLyHoc)

Student (abstract class HocVien) is the main object of this system. Each student has one

type (class LoaiHocVien) such as student, and teacher... Class named student has two

subclasses: student just registers to take an exam (class HocVienChiDKThi) and student

registers study (class HocVienTheoHoc).

Figure 9. Two kinds of student

Dividing registration into two types (registration for a unit and registration for a subject)

helps it is suitable not only for current requirement (student can register to a unit or to a

subject) but also for future requirement (student can register a subject according to credit

regulations).

Page 28: Khuat Thuy Phuong 2010

New Training Management System Page 22

Figure 10. Types of study registration

With each unit enrolled, it will be used to keep track of student’s study.

When registration (class DangKyHoc) to a unit (class DKTheoHP) or a subject (class

DKTheoMon class), student can be reduced fee (class GiamHocPhi) if their job is student

or teacher (class Giam_GVHS), they have studied at CSC (class Giam_DaTheoHoc), or

they register to study a class in the afternoon (class Giam_HocChieu)... Using Strategy

pattern for reducing fee will not only help the registrars quickly having real fee of each

study registration and updating the rate of one of the reducing fee types, but also help the

programmers easily putting a new subclass of reducing fee in need in future. This system

has an interface name reducing fee (classGiamHocPhi), which now having three

subclasses such as class Giam_GVHS, class Giam_DaTheoHoc and class

Giam_HocChieu.

Page 29: Khuat Thuy Phuong 2010

New Training Management System Page 23

Figure 11. Types of reducing fee

When students register to a unit, they can study all classes of this unit.

When students register to a subject, they can study in one class having this subject.

Each class can have many registrations (See the figure named Types of Study

Registration).

This figure is the class diagram of Study Management System.

Page 30: Khuat Thuy Phuong 2010

New Training Management System Page 24

Figure 12. Study Management System

Examination Management System (QuanLyThi)

Many exams (class KyThi) are organized per year. On each exam, there are a lot of exam

spells (class DotThi) including the information of exam shift (class CaThi), room (class

Phong), and teachers who are examiners and teachers as invigilators (class GiaoVien).

Exam subjects are classified clearly. Each exam subject (class MonThi) has three

subclasses: exam subject of national certificate (class MonThiCCQGTuDo), exam subject

based on subject (class MonThiTheoMonHoc) and exam subject at the end of the unit

(class MonThiCuoiHP).

Page 31: Khuat Thuy Phuong 2010

New Training Management System Page 25

Figure 13. Subclasses of exam subject

Dividing the registration into many types (subclasses) helps the registration management

becoming clearly. When students study in a class, list of students registering an exam will

be created automatically after the class or the unit finish. Besides, students can register to

retake an exam or to take national certificate exam by themselves.

Exam registration (class DangKyThi) has three subclasses: registration to take national

certificate exam without studying (class DKThiCCQGTuDo), registration to retake an

exam (class DKThiLai), and registration to take an exam for all class in an automatic way

(class DKThiTuDongTheoLop).

Class DKThiLai itself has two subclasses: registration to retake an exam subject based on

study subject (class DKThiLaiMonThiTheoMonHoc) and registration to retaken an exam

subject at the end of the unit (class DKThiLaiMonThiTheoHP).

Class DKThiTuDongTheoLop also has two subclasses: registration to take an exam

subject basing on study subject for all class (class DKMonThiTheoMonHoc) and

registration to take an exam subject at the end of the unit (class DKMonThiCuoiHP) in an

automatic way.

=> Because exam registration function is very complex with a lot of types so the

Composite pattern is used here. In this pattern, the class which will automatically enroll

to take an exam for all students in class is called composite class.

Page 32: Khuat Thuy Phuong 2010

New Training Management System Page 26

This figure is the whole classes of Examination Management System.

Figure 14. Examination Management System

2.4.2.3 Certificate and Diploma Management System

In this system, certificate type (class LoaiChungChi) is divided into three subclasses:

national certificate type (class LoaiCCABCTuDo), short-term certificate type (class

LoaiCCNganHan) and long-term certificate type (class LoaiCCDaiHan). Each certificate

type includes standards of certificate issue (class TieuChuanCapCC).

Page 33: Khuat Thuy Phuong 2010

New Training Management System Page 27

Figure 15. Types of Certificate

There are many certificate confirmation times (class DotXetCC) related to training

system (class HeDaoTao), training program (class NganhDaoTao), exam (class KyThi)

and branch (class CoSo).

In each certificate confirmation time, there are one or more certificate issue times (class

DotCapCC) with a lot of certificates (class ChungChi).

Certificate is also subdivided into many concrete certificates such as national certificate

(class ChungChiABCTuDo), short-term major certificate (class ChungChiCDNganHan)

and diploma (class BangTotNghiep) (See the figure named Types of Certificate above).

The Singleton pattern is used for each certificate class because at this time we don’t allow

changing the information on the certificate.

Page 34: Khuat Thuy Phuong 2010

New Training Management System Page 28

In the Student Management System, each student has enrolled to study one or more units

(class DKTheoHP). Each of them include list of exam registrations (with exam’s score).

With a unit which a student enrolls and studies, it can have a correlative certification.

Study a group of some units - according to regulation – student will have a diploma.

With each national certificate exam registration, student can have a certificate if he/she

passes the exam.

When designing in this way, we can quickly statistic the number of certificates and

diploma which a student can have after they study one program.

This figure displays the Certificate and Diploma Management System.

Figure 16. Certificate and Diploma Management System

2.4.3 Sequence Diagram

Sequence diagrams4 are used primarily to design, document and validate the architecture,

interfaces and logic of the system by describing the sequence of actions that need to be 4 http://www.sequencediagrameditor.com/uml/sequence-diagram.htm

Page 35: Khuat Thuy Phuong 2010

New Training Management System Page 29

performed to complete a task or scenario. UML sequence diagrams are useful design tools

because they provide a dynamic view of the system behavior which can be difficult to

extract from static diagrams or specifications.

In this part, sequence diagram is used to describe some complex scenarios such as

enrolling in a class or a unit and registration to a national certificate exam.

2.4.3.1 Enrolling in a class

This sequence diagram describes the process to enroll in a class.

Figure 17. Enrolling in a class

2.4.3.2 Enrolling in a unit

This sequence diagram describes the process to enroll in a unit.

Page 36: Khuat Thuy Phuong 2010

New Training Management System Page 30

Figure 18. Enrolling in a unit

2.4.3.3 Registration to a national certification exam

This sequence diagram describes the process register to a national certification exam.

Figure 19. Registration to a national certificate exam

Page 37: Khuat Thuy Phuong 2010

New Training Management System Page 31

2.4.3.4 Create a unit based on training system and training program

This sequence diagram describes the process to create a unit based on training system and

training program.

Figure 20. Create a unit based on training system and training program

Page 38: Khuat Thuy Phuong 2010

New Training Management System Page 32

3. TRAINING MANAGEMENT SYSTEM – IMPLEMENTATION This chapter is about implementation of the application. It is the second important work

of the internship. Here, I chose the method, built the main structure for the application,

and implemented some functions to test the effectiveness of the proposed solution.

In this chapter, there are four main parts. The first part is the structure of the system, the

second part introduces package on each part of the system, the third part is the result and

the last part says about advantages and disadvantages.

Page 39: Khuat Thuy Phuong 2010

New Training Management System Page 33

3.0 IMPLEMENTATION

For the implementation, a reasonable solution with new technology in order to have effect

of exploitation now and future (exploitation is scattered on many points, centralized

database or distributed database…) must be chosen to the new system. And that is

distributed architecture, especially multi-tier architecture (n-tier architecture).

About the programming language, Java language5 (and its platform) is selected because it

is a simple, object-oriented, network-savvy, interpreted, robust, secure, architecture

neutral, portable, high-performance, multithreaded, dynamic language.

About database, MySQL6 is chosen because it is not only an extensible, open storage

database engine, offering multiple variations such as Berkeley DB, InnoDB, Heap and

MyISAM, but also is open-source like Java. The combination of an open-source

programming language and an open-source database will create a unity for the system.

3.1 Structure

This is the structure of the system. It is built base on the knowledge of distributed

architecture, named multi-tier architecture. It has user interface tier (client tier),

presentation logic tier (web tier), business logic tier (application tier) and data tier. Each

of them is deployed and maintained as an independent module and on separate platform.

Function of each tier:

User interface tier: managing the interactions between user and application

Presentation logic tier: defining what needs to display to the user interface and

how the request should be treated

Business logic tier: describing the functional algorithm, workflow and model,

interface of database

Data tier: including database servers where the information is stored and retrieved

5 http://java.sun.com/docs/overviews/java/java-overview-1.html

Page 40: Khuat Thuy Phuong 2010

New Training Management System Page 34

Figure 21. Structure of the system

This system has three projects which can interact with each other. There are Dynamic

Web Project, Enterprise Application Project and Business Project (EJB project).

3.2 Packages

Each project listed above has one or more packages with a lot of classes inside. This part

is about the packages and their role in the system. It is divided into three parts: package of

Dynamic Web Project, Enterprise Application Project and Business Project.

3.2.1 Package of Dynamic Web Project

Dynamic Web Project is the implementation of presentation tier. It uses model-view-

controller (MVC) concept with the web components such as Java Bean – model, Java

Server Pages (JSP) – view and Servlet – controller. There are two main packages in this

project:

6 http://ezinearticles.com/?Advantages-and-Disadvantages-to-Using-MySQL-Vs-MS-SQL&id=1559158

Page 41: Khuat Thuy Phuong 2010

New Training Management System Page 35

Java Resources package (Servlet Controller package) – defines of servlets which

used to control requests and responses and communicate with Business Project

(the business logic tier)

WebContent package – defines of HTML pages and JSPs to display data and

response to web client request.

3.2.2 Package of Business Project

Business Project is the implementation of business logic tier using Java Enterprise

Edition (JEE) or Java Platform. This project includes five packages. There are:

businesslogic.model – defines of model (including a lot of Entity Beans: tables

and entities) needing to have in the application.

businesslogic.DAO – defines of database interface (including a lot of Session

Beans: interfaces and implementation classes).

businesslogic.interfaces – defines of services (having a lot of Session Beans:

service interfaces).

businesslogic.services – defines of services (having a lot of Session Beans: service

implementation classes).

contextService – defines of context service class to remote service.

3.2.3 Package of Enterprise Application Project

An enterprise application7 in Workshop is the collection of all resources that are built

together and then deployed as a unit to an instance of WebLogic Server. Enterprise

application components can also be archived as a unit into an Enterprise ARchive (EAR)

file. Enterprise Application (EAR) project serves as the assembly point for all of the

7 http://download.oracle.com/docs/cd/E12840_01/wlw/docs103/guide/ideuserguide/projects/conApplicationsProjects.html

Page 42: Khuat Thuy Phuong 2010

New Training Management System Page 36

projects in the application. It only has folder EarContent and JavaScript Resources

library. It doesn’t have any package inside.

3.3 Result

The time to do the implementation of the application is a short time. After discussing with

the director, I implemented database and some functions of the first sub system (Training

Program and Material Facilities Management System) and haft of the second sub system

(Student Management System – Study Management System part).

Those figures displayed below show the result when the application runs.

After login to the application, each person will have a permission to do their task.

For example, with the members having biggest permission, they will come to this

page:

Figure 22. Page index.jsp

When choosing a group (For example: Group 1. Quản Lý Chương Trình Đào Tạo,

Group 2. Quản Lý Cơ Sở Vật Chất, or Group 3. Quản Lý Học Viên – Học ), they

will come to the page having all functions for this group:

Page 43: Khuat Thuy Phuong 2010

New Training Management System Page 37

Figure 23. Page group1.jsp

Figure 24. Page group2.jsp

Figure 25. Page group3.jsp

When choosing a function, the page has this function will appear. For example

choosing study registration:

Page 44: Khuat Thuy Phuong 2010

New Training Management System Page 38

Figure 26. Choose function study registration

With this function, firstly, a page to find a student will appear with two sub forms:

searching a student by ID and searching a student by full name and date of birth to check

if the student has studied at CSC or not. Basing on the information the student give,

registrar can type student’s ID or type the full name and date of birth to find him/her.

Figure 27. Searching a student by full name and date of birth

If the system cannot find this student, which means he/she is new student, an insert new

student’s page will open to registrar add this student to the system.

Page 45: Khuat Thuy Phuong 2010

New Training Management System Page 39

Figure 28. Insert a new student page

If the system can find the student, study registration page with four sub forms

(registration for a subject, registration for a short-term certificate, registration for a unit

with constraint and registration for a unit without constraint) will occur. Basing on

student registration, registrar will choose one of four forms.

Page 46: Khuat Thuy Phuong 2010

New Training Management System Page 40

Now, if registrar chooses registration for a unit with constraint, the system will check if

the student has studied compulsory units (units must study before registering this unit) or

not, if yes, this registration is success.

Page 47: Khuat Thuy Phuong 2010

New Training Management System Page 41

Figure 29. Registration a unit

Now the classes opened for this unit page will open for student choose a class to study.

The operations to register to a unit on web are very simple but the implementation of this

function is quite complicated with many steps listed above.

Normally, to use a web application, we just go to this page through web browser

by typing its address. This application is just the test version so it is not published

and used on the Internet.

To know about the installation and steps to run the application on local network,

please go to the Appendix B – Installation and steps to run the application.

3.4 Advantages and Disadvantages

In this part, those are some advantages and disadvantages I met when I did the internship.

Page 48: Khuat Thuy Phuong 2010

New Training Management System Page 42

3.4.1 Advantages

3.4.1.1 About working place

In CSC, I have a good place to work. It is not very large but it is very quite so I can

concentrate on the work. Because I am working here, I go to teach one day and do the

internship four days per week.

3.4.1.2 About the director and the staffs

Although the supervisor is also the director, this is the first time I have a chance to work

with her. I think she is very helpful and careful. She not only gave me the document

related to the current system, but also helped me to understand the requirements and the

current system. She met me many times to give some more new requirements, to make

suggestions and to correct the analysis and design until it was fully worked-out.

In this internship, I needed to meet many staffs to survey information, new requirements

and need-to-change requirements. They were willing to help me. They both explained the

requirements, the process of works and provided relational papers to me. I could ask them

whenever I had queries.

3.4.1.3 About knowledge

In IT Master Course, I have learned a lot of subjects. It’s very useful to me. For example,

with Software Engineering and Project Management subject, I could make a suitable

schedule to work, choose model to make it, etc; with Advanced Software Architecture

subject, I could apply object-oriented analysis and design and design pattern theories to

the application; with Advanced Software Technologies and Application Servers (TLA-

SA), I chose web services, distributed architecture (multi-tier architecture) and Java

language and Java platforms to deploy the system, etc.

I also had some kind professors such as Mr. Samir Hanna and Mr. Tran Thai Nam. They

were ready to help me when I sent the emails to ask them why those errors appeared in

the application how to correct them.

Page 49: Khuat Thuy Phuong 2010

New Training Management System Page 43

3.4.2 Disadvantages

3.4.2.1 About working place

Nothing

3.4.2.2 About the director and the staffs

In the second part of the internship (the implementation), I had met some difficult things,

but I couldn’t ask the staffs for helping. Because the way I chose to do difference from

their current works, I didn’t want them to waste their time. Sometimes, I spent a lot of

time to search on the Internet and researched new techniques.

3.4.2.3 About knowledge

The knowledge I have learned in Master Course was the useful and essential knowledge

for the internship, but it was not enough for me to solve all problems I met. For example,

in TLA-SA subject, we just have time to learn about single entity persistence and

mapping or to use very simple query language persistence but in the real system I must

work with multiple tables, entities and mapping, complex entity relationships and

complicated query language persistence; when I was in second work, some errors which I

never saw before appeared, I wasted time to find the reason and fix them, etc.

In general, this internship gave me an opportunity to learn more clearly one thing: the

advantages are the good things but the disadvantages are not the bad things because

when I met a problem or a new thing, I had a chance to find and research more and more

to make it done.

Page 50: Khuat Thuy Phuong 2010

New Training Management System Page 44

CONCLUSION AND FUTURE WORK In the last part of this report, there are the conclusion of the internship and the future

work.

Conclusion

The main target of this internship is analysis and designs a new training management

system and implementation some functions of this application. This target is achieved by:

Analysis and design new training management system: This work is completed

with an analysis and design document.

Implementation some functions of this application: As the third chapter in this

report, there are three main sub systems in the application. In a limit time, I chose

and implemented database and some functions of the first sub system and haft of

the second sub system (Study Management System part).

This is the result of a hard, serious and careful working process. It is the starting point for

the test, the deployment and the exploitation of new training management system in the

future.

Future work

In the future, the first work is to choose one subsystem to test in the real environment. At

that time, the large data will be inputted to the system to test if this system is realizable or

not. For example, with the function study registration, time to register to a new course is

very short (just some days) whereas the number of registrations can increase to thousand

registrations. If we waste one or two minutes waiting the result of one registration, the

system is not realizable. Hence, we need to test the system to know its effect. If is not

good, we need to improve it. If it is good, the rest of this application will be implemented.

One desired result in the future is whole the system can be deployed and exploited.

Page 51: Khuat Thuy Phuong 2010

New Training Management System Page 45

Bibliography There are the reference books used in the internship:

[1] Russ Mileys and Kim Hamilton, Learning UML 2.0, Oreilly, April 2006

[2] Michael Blaha and James Rumbaugh, Object-Oriented Modeling and Design

with UML, Second Edition, Prentice Hall - Pearson Education Inc., 2005

[3] Steven John Metsker and William C. Wake, Design Patterns in Java, Addison-

Wesley, 2006

Page 52: Khuat Thuy Phuong 2010

New Training Management System Page 46

Appendix A – Requirement Description

A.1 Group of requirements about training program and material facilities

management

A.1.1 Create a training program

CREATE A TRAINING PROGRAM

Main idea Create a training program

Main actor Manager or deputy manager of training

program management department

Description Basing on the real demand of society and

learner, boards of managers will decide to

open a new training program. At that time,

a new training program will be created.

Another actor None

Previous condition Login the system

Post condition A new training program is recorded.

Time Before this training program is applied

Frequency Few

Example: CSC has some training programs such as Programming, Web Technology,

Multimedia Graphics and Network.

A.1.2 Create study and exam regulations for a training program

CREATE STUDY AND EXAM REGULATIONS

Main idea Create a study and exam regulations for a

training program

Page 53: Khuat Thuy Phuong 2010

New Training Management System Page 47

Main actor Manager or deputy manager of specialized

department

Description When a training program is created, it must

have study and exam regulations (such as

study regulations, restudy regulations,

taking exam regulations and retaking exam

regulation). So the staffs of specialized

department will discuss to make

regulations.

Another actor Staff of specialized department

Previous condition Login the system

Post condition New regulations are saved.

Time After training program is created

Frequency Not much

Example: There are some regulations of multimedia graphics:

Study regulations:

Student must be in class on time.

Student only use computer for study purpose.

Student often read the notices at the notice-board.

Taking exam regulations:

To take an exam, student must participate 2/3 the number of periods.

When take the exam of the first unit, student must give two photos size 3x4

for the invigilator to be issued A certificate

Students only register final exam (graduation exam) after they pass all units

of this training program

Page 54: Khuat Thuy Phuong 2010

New Training Management System Page 48

Retaking exam regulations:

Student who doesn’t pass or doesn’t take an exam must retake this exam.

Student fail the final exam must retake it with students of next course.

A.1.3 Create a training system

CREATE A TRAINING SYSTEM

Main idea Create a training system

Main actor Manager or deputy manager of training

program management department

Description Training system is created to satisfy the

demand of learners.

Another actor None

Previous condition Login the system

Post condition A new training system is recorded.

Time Before this training system is applied

Frequency Few

Example: CSC has some training systems such as short time, six-month-technical,

eighteen-month-technical, intermediate-technical…

A.1.4 Create regulations for a training system

CREATE REGULATIONS

Main idea Create regulations for a training system

Main actor Manager or deputy manager of specialized

department

Page 55: Khuat Thuy Phuong 2010

New Training Management System Page 49

Description When a training system is created, it can

have some own regulations. So the staffs

of specialized department will discuss to

make regulations.

Another actor Staff of specialized department

Previous condition Login the system

Post condition New regulations are saved.

Time After training system is created

Frequency Not much

Example: With the short-term system, one of regulations is student can only retake the

exam one time.

A.1.5 Create a version for subject and unit

CREATE A VERSION

Main idea Create a version

Main actor Manager or deputy manager of specialized

department

Description Sometimes, a new version is built because

the old version is not suitable for the

current condition. A version can be a

version for subjects or for units.

Another actor None

Previous condition Login the system

Post condition A new version is saved.

Time Before the course which is applied start.

Page 56: Khuat Thuy Phuong 2010

New Training Management System Page 50

Frequency Few

Example:

Subject version

With version 2006, subject named SQL Server used SQL Server 2000

With version 2009, subject named SQL Server used SQL Server 2003

Unit version

With version 2006, in Web Technology program and eighteen-month-

system, the fourth unit had the subjects related to ASP.Net.

With version 2008, in Web Technology program and eighteen-month-

system, the fourth unit had the subjects related to PHP and MySQL.

A.1.6 Create a subject

CREATE A SUBJECT

Main idea Create a subject

Main actor Manager or deputy manager of specialized

department

Description A new subject often is built basing on the

real demand of the learners or society.

Each subject will have it own version at

the time it is created. One subject can

belong to a unit or not.

Another actor Staffs of specialized department

Previous condition Login the system

Post condition A new subject is saved.

Time Anytime in the year, before one course

starts.

Page 57: Khuat Thuy Phuong 2010

New Training Management System Page 51

Frequency More than seven subjects per year

Example: The subject named Advanced Joomla was created from the beginning of the

year 2010.

A.1.7 Create an unit

CREATE AN UNIT

Main idea Create an unit

Main actor Manager or deputy manager of specialized

department

Description One unit is created for long-term system (6

months, 18 months…). It includes many

subjects. These subjects are arranged in the

unit. Each unit depends on training system,

training program, and version. Basing on

the version, it can have a correlative

certificate or not. It also has its type such

as normal unit, major unit or final unit.

Another actor None

Previous condition Login the system

Post condition A new unit is recorded.

Time Before the course which is applied start.

Frequency Not much

Example: Create the third unit of Web Technical program and eighteen-month-system

with type is normal unit and correlative certificate is “Certificate of PHP Programming

Technical”.

Page 58: Khuat Thuy Phuong 2010

New Training Management System Page 52

A.1.8 Create a course

CREATE A COURSE

Main idea Create a course

Main actor Manager or deputy manager

of training program management

department

Description Create the course for each training system

at the branches. Start time base on the

schedule of each year.

Another actor None

Previous condition Login the system

Post condition A new course is saved.

Time Before the course start

Frequency Seven or eight courses per year

Example: Create a new course with start time is 14th and 15th November, 2010.

A.1.9 Create a class

CREATE A CLASS

Main idea Create a class

Main actor Class-room manager

Description Classes are opened after the course is

created. Each class has one subject. At one

time, it has one of four states such as: open

state, delete state, allow registering state,

and not allow registering.

Page 59: Khuat Thuy Phuong 2010

New Training Management System Page 53

Another actor None

Previous condition Login the system

Post condition A new class is recorded.

Time Before the course start.

Frequency About 250 classes per course.

Example: Create a new class named “Web programming with PHP and TheSQL” in the

course which starts on 14th and 15th November, 2010.

3.1.10 Arrange room for class

ARRANGE ROOM FOR CLASS

Main idea Create a schedule

Main actor Class-room manager

Description After having a class, class-room manager

need to arrange room for class, each detail

of a schedule include: class, room, day of

the week, start time and end time.

Note:

Each room has maximum capacity.

Some classes can be arranged in the

same room.

The schedule can change.

Another actor None

Previous condition Login the system

Post condition A new schedule is recorded.

Page 60: Khuat Thuy Phuong 2010

New Training Management System Page 54

Time Before the course start.

Frequency About 250 schedules per course and about

30 rooms are use in the same period.

Example: Create a schedule for class named “Web Design” with details:

Room 32 on Tuesday and Thursday with start time is 17:45 and end time is 21:00

Room 31 on Sunday with start time is 13:30 and end time is 16:45

A.2 Group of requirements about student management

A.2.1 Enroll to a unit or a subject

ENROLL TO A UNIT OR A SUBJECT

Main idea Create an enrollment to a subject or a unit

Main actor Student manager

Description Before the course begins, student will

enroll to a subject or a unit. At that time,

staffs who receive the enrollment will

instruct the student write an enrollment

note.

When enrollment, student must pay fee for

it.

Students are reduced fee when they are in

some cases such as: their job is student or

teacher (showing student’s card or

teacher’s card), or they are old student of

CSC…

After that, they write the receipt and give it

Page 61: Khuat Thuy Phuong 2010

New Training Management System Page 55

to student. Then, they write the name of

the student into a class or a unit.

Note:

Before start day, students can get

90% fee back if they don’t want to

study. After start day, students

cannot get fee back. They can only

reserve it for next course.

Students can also change the class if

a new class still has space. If fee of

new class is lower than the old

class, different fee will not be paid

back. If fee of new class is higher

than the old class, student must pay

more.

Student manger will add student to the

student management system.

With new students, firstly, create new and

input their information. Second, create

their enrollment.

With old students, find them in Student

Search Form then create their new

enrollment.

Note: Remember to choose the type of

reducing fee to have the real fee that

student paid.

Page 62: Khuat Thuy Phuong 2010

New Training Management System Page 56

Another actor Enrollment staffs

Previous condition Login the system

Post condition A new student and his/her enrollment are

recorded.

Time When having the schedule of the current

course and before the start day 3 weeks.

Frequency About 200 enrollments per day on start day

of course and littler on other days.

Example:

One student register to a class named “Web Design”, with the schedule:

Room 32 on Tuesday and Thursday with start time is 17:45 and end time is

21:00

Room 31 on Sunday with start time is 13:30 and end time is 16:45

Fee of this class is 1.850.000 VND. He is a student so the real fee he pays

is 1.480.000 VND (reduced 20% of fee).

A.2.2 Monitor study process of student

MONITOR STUDY PROCESS OF STUDENT

Main idea Monitor study process of student

Main actor Student manager

Description Monitor all the subjects that student

studied and is studying.

Another actor None

Previous condition Login the system

Post condition The process of study is display.

Page 63: Khuat Thuy Phuong 2010

New Training Management System Page 57

Time Every time

Frequency Often

A.2.3 Reserve the results of study for student

RESERVE THE RESULTS OF STUDY

Main idea Reserve the results of study for student

Main actor Student manager

Description On the process of study, student can

reserve the results of study when they

don’t finish the program or the unit they

paid fee.

Time to reserve is no more than 2 courses.

In some special cases, the time can be

longer but no more than 2 years.

Another actor None

Previous condition Login the system

Post condition Reserve is accepted.

Time Every time

Frequency 20 cases per course

A.2.4 Create an exam

CREATE AN EXAM

Main idea Create an exam

Main actor Exam management staff

Description With national certificate exam (without

Page 64: Khuat Thuy Phuong 2010

New Training Management System Page 58

study), the staff will create exam before it

start. When create this exam, the staff also

create the decision of it.

With another exam, it is made basing on

the course.

Another actor None

Previous condition Login the system

Post condition Exam is saved.

Time Basing on exam schedule of the year,

before the exam happens.

Frequency Some exams per course

Example: Create a national certification exam on 17th October, 2010

A.2.5 Create an exam shift

CREATE AN EXAM SHIFT

Main idea Create an exam shift

Main actor Exam management staff

Description An exam shift basing on an exam.

Each exam shift will have a room (One

room can have one or more exam shifts), a

shift (for example, can be shift from 8:00

AM to 10:00 AM, shift from 10:00 AM to

12:00 AM… There are many rooms for

one shift and vise versa), one or more

invigilators, one or two examiners.

Another actor None

Page 65: Khuat Thuy Phuong 2010

New Training Management System Page 59

Previous condition Login the system

Post condition Exam shift is saved.

Time Before the exam happens.

Frequency Many exam shifts of one exam

Example: Create an exam shift at room 1 (Branch: 227, Nguyen Van Cu street, dist 5,

HCMC.), shift from 8:00 AM to 10:00 AM on the national certificate exam 17th October,

2010.

A.2.5 Create a national certificate registration (without study)

CREATE A NATIONAL CERTIFICATE REGISTRATION

Main idea Create a national certification registration

Main actor Exam management staff

Description After students register to take a national

certificate (A, B or C certificate), they will

know date time and shift but at that time

they don’t know the exam shift.

Exam management staff will add

registrations to the system.

When deadline finishes, student cannot

register.

After deadline, all registration will be

divided into exam shifts.

Students will know the exam shift on the

day they take the exam.

Another actor None

Page 66: Khuat Thuy Phuong 2010

New Training Management System Page 60

Previous condition Login the system

Post condition This registration is recorded.

Time The nearest day is before the exam 3 days.

Frequency ??? More than 200 registration per time

Example: Create an exam shift at room 1 (Branch: 227, Nguyen Van Cu street, dist 5,

HCMC.), shift from 8:00 AM to 10:00 AM on the national certificate exam 17th October,

2010.

A.2.7 Create an exam registration (for student who study)

CREATE AN EXAM REGISTRATION

Main idea Create an exam registration

Main actor Exam management staff

Description There are many kind of exam subject such

as exam subject basing on study subject

and exam subject just taking at the end of a

unit.

At the first time, with the students who

study in a class, the system will

automatically create the list of exam

registrations which are relied on class.

(One exam shift will created for this class)

When students fail an exam, they must

register to retake this exam subject and

must pay fee for it. And the exam

management staff will add this registration

to the system.

Page 67: Khuat Thuy Phuong 2010

New Training Management System Page 61

Note:

If students enroll to a short time

system of one program (just study

one or two units), they are only

permit to retake the exam one time.

If students enroll to a long time

system of one program, they are

permit to retake the exam as far as

they pass. But it must be in a period

allowed.

Another actor None

Previous condition Login the system

Post condition This registration is recorded.

Time The nearest day is before the exam 3 days.

Frequency ??? More than 300 registration per time

A.2.8 Input marks

INPUT MARKS

Main idea Input marks

Main actor Examiner, exam management staff

Description Each exam shift will have two examiners

mark exam papers.

If it is the first time, after marking, they

input marks into the system.

If it is the second time, exam management

Page 68: Khuat Thuy Phuong 2010

New Training Management System Page 62

staff will input marks.

Another actor None

Previous condition Login the system

Post condition Marks are saved.

Time After examiner mark exam papers.

Frequency More than 300 exam papers per time

A.3 Group of requirements about certification and diploma management

A.3.1 Create a certificate type

CREATE A CERTIFICATE TYPE

Main idea Create a certificate type

Main actor Staff of certificate management department

Description Basing on the real demand of society and

learner, boards of managers will decide to

create a certificate type. At that time, a

new certificate will be added.

Another actor None

Previous condition Login the system

Post condition A new certificate type is recorded.

Time Before this certificate type is applied

Frequency Not very often

Example: There are some certificate type such as national certificate type, short-term

certificate type and long-term certificate type…

Page 69: Khuat Thuy Phuong 2010

New Training Management System Page 63

A.3.2 Create certificate regulations

CREATE STUDY AND EXAM REGULATIONS

Main idea Create certificate regulations

Main actor Staff of certificate management department

Description When a certificate type is created, it will

have some regulations. So the staff of

certificate management department will

discuss to make regulations.

Another actor None

Previous condition Login the system

Post condition New regulations are saved.

Time After certificate type is created

Frequency Not much

Example: There is one of some regulations of national certificate type:

To have C certificate, student must have B certificate

To pass the exam, the average mark of student must be >= 5

A.3.3 Create certificate confirmation time, certificate issue time and make the list of

students having enough conditions to have certificate

CREATE CERTIFICATE CONFIRMATION TIME, CERTIFICATE ISSUE TIME

AND MAKE THE LIST OF STUDENTS

Main idea Create certificate confirmation time,

certificate issue time and make the list of

students having enough conditions to have

Page 70: Khuat Thuy Phuong 2010

New Training Management System Page 64

certificate.

Main actor Staff of certificate management department

Description Each certificate confirmation time basing

on certification type and training system.

Moreover, it relies on an exam, a training

program and a branch.

After certificate confirmation time is

created, one certificate issue time will be

automatically recorded, it has the same

name with certificate confirmation time.

Then, list of students who can have

certificate is set up (students pass the exam

and obtain complete satisfaction of

certificate regulations).

Another actor None

Previous condition Login the system

Post condition New certificate confirmation time and

certificate issue time and saved.

List of students who can have the

certificate is set up.

Time After having marks of students.

Frequency Many (after each exam)

A.3.4 Update certificate issue time and create certificate for student

UPDATE CERTIFICATE ISSUE TIME AND CREATE CERTIFICATE FOR

STUDENT

Page 71: Khuat Thuy Phuong 2010

New Training Management System Page 65

Main idea Update a certificate issue time and create

certificate for student

Main actor Staff of certificate management department

Description Certificate issue time is automatically

created when certificate confirmation

created.

The staff adds code of certificate decision

to this certificate issue time and prints the

list of students who have certificate with

some information such as full name, place

of birth, date of birth, exam day, and rank

to print certificate.

The certificates will automatically be

created and save to the system.

Another actor None

Previous condition Login the system

Post condition Certificate issue time is updated.

List of students who have the certificate is

printed.

The certificates are saved.

Time After having certificate issue time

Frequency Many

A.3.5 Input certificate code number

INPUT CERTIFICATE CODE NUMBER

Page 72: Khuat Thuy Phuong 2010

New Training Management System Page 66

Main idea Input certificate code number for

certificate

Main actor Staff of certificate management department

Description Each certificate created will have one

certificate code number.

So the staff will input this code number

after having certificate.

Another actor None

Previous condition Login the system

Post condition Certificate code number is saved.

Time After having certificate

Frequency Many

A.3.6 Make a report about delivered certificates

MAKE A REPORT ABOUT DELIVERED CERTIFICATES

Main idea Make report about delivered certificates to

report to National University

Main actor Staff of certificate management department

Description Report list of students taking the

graduation exam of technical system

(eighteen-month-system).

Report list of students received certificate.

Another actor None

Previous condition Staff has list of student mentioned above.

Post condition Report is made.

Page 73: Khuat Thuy Phuong 2010

New Training Management System Page 67

Time The end of each quarter

Frequency One time per quarter

Page 74: Khuat Thuy Phuong 2010

New Training Management System Page 68

Appendix B – Installation and steps to run the application

B.1 Installation

This application is written by Java language and Java platform, so firstly we need to have

Eclipse or other software suitable such as Java NetBeans, etc. Here, I choose Eclipse.

Secondly, we install JBoss 4.0.4 or higher/ version EJB 3 and check if we use eclipse

with the web toolkit platform installed or not. Thirdly, we embed JBoss on Eclipse.

Fourthly, to store the database, we check if we have a database management system such

as MySQL or Oracle or not. If not, we need to install one. Here, I choose MySQL. Lastly,

we install the sql-gui-tools. Now we finish the installation.

B.2 Steps to run the application

To run this application, first, we need to have a workspace. Second, we import all the

projects into this workspace. Last, we add the Enterprise Application Project to the

server then start the server. Now we can run this application with the first page of the

website. Then, we can choose whatever functions we want.


Recommended