Training Management System (TMS) for Siam Commercial Bank
by
Ms. Thatchar Trenatre
A Final Report the Three-Credit Course CS 6998 System Development Project
Submitted in Partial Fulfillment of the Requirements for the Degree of
Master of Science
in Computer Information Systems Assumption University
November 2006
Project Title
Name
Project Advisor Academic Year
Training Management System (TMS) for Siam Commercial Bank
Ms. Thatchar Trenatre Dr. Settaphong Malisuwan November 2006
The Graduate School of Assumption University has approved this final report of the three-credit course, CS 6988 System Development Project, submitted in partial fulfillment of the requirements for the degree of Master of Science in Computer Information Systems.
Approval Committee:
(Dr. Settaphong Malisuwan) Advisor
(Prof.Dr. Srisakdi Charmonman) Chainnan
(Assoc.Prof. Somchai Thayamyong) CHE Representative
November 2006
ABSTRACT
Siam Commercial Bank is one of the country's financial institutions which has many training programs each year. Since the company has been growing, the cmTent training management cannot be managed efficiently and training expenses are high costs so competitive advantages of training strategies are its weakness. The proposed modified Training Management System reduces the operating time of course enrollment and tracking enrollment information, training expenses, and increases the training hours of employees. This project will suppo1i learning programs building which include both classroom and e-leaming programs, and course enrollment management which includes the approval process via the notification. The application is web-based application which emphasizes self services workflow so Training Management System can link organizational goals to employees, managers and training division, provide a catalogue of available (and relevant) courses, self-enrollment, and notification events, and deliver content in classroom-based ore-learning fonnats.
The SDLC methodology is applied to the proposed system which tracks a project from an idea developed by the user, tlu·ough a feasibility study, systems analysis and design, programming, pilot testing, implementation, and post-implementation analysis.
System request describes the business reasons for building a system and the value that the system is expected to provide. The object-oriented design technique is applied to the project. The functional modeling, structure modeling, behavioral modeling, database design, interface design, output design and network design are applied to the system analysis and design which depict the functional and technical specifications.
Finally, the training costs will decrease, and the proposed system can enhance the achievement of the organizational goals. The future system expansion can integrate to other business operations of the organization also.
ACKNO\VLEDGEMENTS
This project is accomplished as a result of reviews by several people who generously gave their time and expertise. I would like to acknowledge their efforts and thank them for their kind contributions.
I would like to thank LTC.Assoc.Prof. Settaphong Malisuwan, my project advisor, for his valuable suggestions and advice given in the preparation of this project.
I would like to thank Dr. Quen Pin-Ngem for the instruction on the system analysis and design technique, and all MS.CIS, MS.CEM instructors for their instruction on technology and business principles programs.
I extend my sincere thanks to my family for educating me with aspects from both arts and sciences, for their unconditional support and encouragement to pursue my interest and for giving me life at all times.
Finally, I would like to thank HRMS staffs of Siam Commercial Bank for their timely assistance and information provided while HRMS project is carried out, and all help that was required for my project also.
11
TABLE OF CONTENTS
Chapter Page
ABSTRACT
ACKNOWLEDGEMENTS 11
LIST OF FIGURES v
LIST OF TABLES Vlll
I. INTRODUCTION 1
1.1 Background of the Project 1
1.2 Objectives of the Project 2
1.3 Scope of the Project 3
1.4 Deliverables 4
1.5 Project Plan 5
II. THE EXISTING SYSTEM 8
2.1 Background of the Organization 8
2.2 Business Functions and Operations 11
2.3 Current Problems and Areas for Improvement 12
III. THE PROPOSED SYSTEM 14
3.1 Requirement Analysis 14
3.2 System Design 17
3.3 Analysis of Candidate Solutions 36
3.4 Hardware and Software Requirement 43
3.5 Network Requirements 47
3.6 Security and Control 48
3.7 Cost and Benefit Analysis 50
IV. PROJECT IMPLEMENTATION 53
Chapter
4.1 Overview of Project Implementation 53
4.2 Coding 54
4.3 Testing 54
4.4 System Conversion 55
4.5 Documentation and Training 55
V. CONCLUSIONS AND RECOMMENDATIONS 57
5.1 Conclusions 57
5.2 Recommendations 58
APPENDIX A USE CASE DESCRIPTION 59
APPENDIX B DATA DICTIONARY 70
APPENDIX
c
CLASS-RESPONSIBILITY-COLLABORATION CARDS(CRC CARDS) 74
APPENDIX D SEQUENCE DIAGRAMS 88
APPENDIX E COMMUNICATION DIAGRAMS 100
APPENDIX F DATABASE TABLES 106
APPENDIX G USER INTERFACE DESIGN 117
APPENDIX H OUTPUT REPORTS 132
APPENDIX I COST ANALYSIS OF CANDIDATE SOLUTIONS 134
BIBLIOGRAPHY 140
IV
LIST OF FIGURES
Figure Page
1.1 Project Plan of Training Management System 7
2.1 The Organization Chart of Siam Commercial Bank 10
2.2 Context Data Flow of Existing Diagram 12
3.1 Element of Context Diagram (Use Gane and Sarson Symbol) 18
3.2 Context Diagram 19
3.3 Element of Activity Diagram 21
3.4 Activity Diagram 22
3.5 Element of Use Case Diagram 24
3.6 Use Case Diagram 25
3.7 Element of Class Diagram 29
3.8 Class Diagram 30
3.9 Mapping problem domain classes to RDBMS tables 34
3.10 Network Infrastructure 48
D.1 Element of Sequence Diagram 88
D.2 Sequence Diagram for Create Course Use Case 89
D.3 Sequence Diagram for Create Offering Use Case 90
D.4 Sequence Diagram for Create Class Use Case 91
D.5 Sequence Diagram for Create Leaming Object Use Case 92
D.6 Sequence Diagram for Add Enrollment Use Case 93
D.7 Sequence Diagram for Enroll Class Use Case 94
D.8 Sequence Diagram for Approve Course Use Case 95
D.9 Sequence Diagram for Attend Class Use Case 96
D.10 Sequence Diagram for Browse Class Use Case 97
Figure
D.11 Sequence Diagram for Track Enrollment Use Case D.12 Sequence Diagram for Search Course Use Case E.1 Element of Communication Diagram
E.2 Communication Diagram for Create Course Use Case E.3 Communication Diagram for Create Offering Use Case E.4 Communication Diagram for Create Class Use Case
E.5 Communication Diagram for Create Leaming Object Use Case E.6 Communication Diagram for Add Enrollment Use Case
E.7 Communication Diagram for Enroll Class Use Case E.8 Communication Diagram for Approve Course Use Case E.9 Communication Diagram for Search Course Use Case E.10 Communication Diagram for Attend Class Use Case E.11 Communication Diagram for Browse Class Use Case E.12 Communication Diagram for Track Enrollment Use Case G.1 Login Form
G.2 Main Menu Form G.3 Catalog Form G.4 Create Course Form G.5 Create Offering Form
G.6 Create Leaming Object Form G.7 Create Class Form
G.8 Enrollments Form G.9 Add Enrollments Form G.10 Select Leamer Form
Vl
Page 98 99 100 101 101 102 102 103 103 104 104 105 105 105 117 118 119
120 121 122 123 124 125 126
Figure Page
G.11 Leamer Self-Service Form 127
G.12 Notification Form 128
G.13 Notification Message Form 129
G.14 Content Link Form 130
G.15 Content Details Page 131
H.1 Enrollments Tracking Report 132
H.2 Enrollments Summary by Class Report 133
I.1 Break-Even Point of Candidate 1 135
I.2 Break-Even Point of Candidate 2 137
I.3 Break-Even Point of Candidate 3 139
LIST OF TABLES
Table Page
3.1 System Request - Training Management System (TMS) 14
3.2 List of Actors, Use Case name, Use Case description 26
3.3 Multiplicity 28
3.4 Feasibility Analysis Matrix 40
3.5 The Hardware Specification for Application Server 43
3.6 The Hardware Specification for Content Server 44
3.7 The Hardware Specification for Database Server 44
3.8 The Hardware Specification for Each Client Machine 44
3.9 The Software Specification for Application Server 45
3.10 The Software Specification for Content Server 46
3.11 The Software Specification for Database Server 46
3.12 The Software Specification for Each Client Machine 47
5.1 Degree of achievement of proposed system 57
A.I Create Course Use Case Description 59
A.2 Create Offering Use Case Description 60
A.3 Create Class Use Case Description 61
A.4 Create Leaming Object Use Case Description 62
A.5 Add Enrollment Use Case Description 63
A.6 Enroll Class Use Case Description 64
A.7 Approve Course Use Case Description 65
A.8 Attend Class Use Case Description 66
A.9 Browse Class Use Case Description 67
A.IO Track Enrollment Use Case Description 68
Vlll
Table Page
A.11 Search Course Use Case Description 69
B.1 Data Dictionary of Proposed system 70
C.1 Course Class CRC Card 74
C.2 Offering Class CRC Card 75
C.3 Delivery Mode Class CRC Card 76
C.4 Leaming Object Class CRC Card 77
C.5 Class Class CRC Card 78
C.6 Enrollment Class CRC Card 79
C.7 Notification Class CRC Card 80
C.8 Employee Class CRC Card 81
C.9 Training Administrator Class CRC Card 82
C.10 Manager Class CRC Card 83
C.11 Organization Class CRC Card 84
C.12 Users Class CRC Card 85
C.13 Responsibility Class CRC Card 86
C.14 Menu Class CRC Card 87
F.1 Course Table 106
F.2 Delivery Mode Table 106
F.3 Leaming Object Table 107
F.4 Offering Table 108
F.5 Class Table 109
F.6 Notification Table 110
F.7 Enrollment Table 111
F.8 Employee Table 112
Table Page
F.9 Organization Table 113
F.10 Users Table 114
F.11 Responsibility Table 115
F.12 Users_Resp Table 115
F.13 Menu Table 116
F.14 Resp_ Menu Table 116
I.1 Cost-Benefit Analysis of Candidate 1 134
I.2 Cost-Benefit Analysis of Candidate 2 136
I.3 Cost-Benefit Analysis of Candidate 3 138
x
I. INTRODUCTION
1.1 Background of the Project
No commercial organization today would be without its corporate strategy, its business development plan and its marketing, personnel and financial strategies. In recent years, the organization has come to realize the benefits of having quality and information-technology strategies, but few have yet to develop comprehensive strategies for training management system.
Siam Commercial Bank has many training programs each year because of the company's growth, but the current training management cannot be managed efficiently;
takes a long time to process and its competitive advantage of training strategies are its weakness. Moreover, training expenses have increased every year such as copy and distribution costs for review of materials, production and printing costs for related print materials, inventory costs for storing materials, costs of building and maintaining a learning center, travel and accommodating costs.
So, Training Management System (TMS) will be developed to provide the efficiency and effectiveness to enhance the organization's training strategies. As the strategic planning and management system for training within a company, a TMS can link organizational goals to employees, managers and training division, provide a catalogue of available (and relevant) courses, self-enrollment, and notification of events, and deliver content for e-learning formats. The system also has the ability to manage enrollment, as well as course content, timing, and tracking via the web-based application.
1.2 Objectives of the Project
This project is studied in order that the proposed modified Training Management System would cover and reduce the operating time of course enrollment and tracking
enrollment information, training expenses, and increasing the training hours of employees. Things needed to be accomplished in this project are:
1. To study and analyze the existing system of training management in training division in terms of business process flow regarding the planning of new additional tools I application system.
2. To identify the problems in the existing information system.
3. To analyze the problems and causes and to find out the solutions for those problems.
4. To identify the information system requirements as the proposed additional computerized system, considered in terms of cost effective solution and estimated budget.
5. To identify the knowledge, skills and abilities required to meet the organization's strategic plan.
6. To improve the efficiency and effectiveness of the company and reduce costs regarding the elimination of the problems identified in existing system.
7. To develop the customized software which base on web-based application using ASP.net to be the development tool
8. To design the computer-based Training Management System that is suitable and effective to the work processes of the organization, based on all requirements both functional and non-functional requirements specified by users.
Training Management System for Siam Commercial Bank is designed for benefits as follows:
1. Reduced Time, minimize the costs of training such as materials, instructor or learner travel costs, accommodation costs and facility operating costs.
2
2. Be an effective and efficient system of free self-paced personal training, available over the Internet.
3. Advantage in case of training operations when compare with other competitors.
4. Increase employee training hours which will have more perfonnance effectiveness.
5. Information control is centralized which is more reliable and accurate.
6. Leamer can access anywhere anytime that is convenient for branch network.
7. Capture enrollment details of employee for approval and reference purposes.
8. Determine course structure and categorize classes which depend on the program delivering.
9. Can extend to other interface systems such as Content server, Finance system, Core HR, Employee Self-Service.
1.3 Scope of the Project
Training Management System (TMS) is developed on Microsoft Visual Studio .net using ASP.net which is a web-based application. This project will support the following business processes.
First, organizational learning programs building are created as the catalog hierarchies which include both classroom and e-leaming programs. Online classes will link to content server which is used for e-content development.
Second, course enrollment management will receive the request from learners via Employee Self-Service or training administrators will enroll courses to learners by themselves. The approval process is required which allows only direct manager in supervisor hierarchy to approve the requested course via Manager Self-Service responsibility. Training administrators can track every enrollment stages, and submit the
enrollment summary report when enrollment process completed.
Moreover, usemame and password will be assigned before logging to the system which is followed by security profiles using roles and responsibilities concepts.
Employees and managers will use Employee Self-Service and Manager Self-Service responsibility to see theirs own home page which is used for receiving the notification and launching the online class.
1.4 Deliverables
The deliverables of the projected Training Management System are as follows:
(1) Project Introduction
(a) Background of the project (b) Objectives
(c) Scope (d) Deliverables (e) Project Plan (2) The Existing System
(a) Background of the organization
(b) Current problems and areas for improvements (3) The Proposed System
(a) Requirement Analysis (1) System request (b) System Design
(1) Context diagram (2) Activity diagram (3) Use case diagram ( 4) Class diagram
4
( 5) Sequence diagram ( 6) Communication diagram ( c) Hardware and software requirement (d) Network requirement
(e) Security and controls (f) Cost/benefit analysis (4) Project Implementation
(5) Conclusions and Recommendations
• Appendix A Use Case Description
• Appendix B Data Dictionary
• Appendix C Class-Responsibility-Collaboration Cards (CRC Cards)
• Appendix D Sequence Diagram
• Appendix E Communication Diagram
• Appendix F Database Tables
• Appendix G User Interface Design
• Appendix H Output Reports
• Appendix I Cost Analysis of Candidate Solutions
• Bibliography 1.5 Project Plan
The project plan of the proposed system takes about 4 months. From the project plan, it can be divided into:
1) Analysis of the existing system
At the beginning, we will define the objective and scope of the training management system first. Next, we will study the existing system by reviewing existing documents and staff interviewing. Then we will study
the business flow in order to analyze the gap between the proposed system and the existing system. Then, we will create the functional modeling, and study network architecture of the organization. Finally, we will do the cost and benefit analysis.
2) Analysis and Design of the proposed system
In this process, we will use details from user requirements to analyze, and design the new proposed system into the structure and behavioral modeling. We will get the functional specifications, and then create technical specifications including program, interface, network, database, output design.
3) Implementation of the proposed system
After analyzing and designing the new proposed system, it is ready to build the application. In this process, we will start to develop the application with coding, and then test the proposed system before migration to production environment. To implement the system, it includes hardware and software installation, conversion, training and support after implementation to ensure the application is satisfied.
This project plan of Siam Commercial Bank Public Company Limited: Training Management System is given in Figure 1.1
6
No. I I. 1 I 2 3 4 5 6 7 IL I 8 9 10 11 I 12 I III. 13 I 14 I 15 16 17
Task Name Analysis of the Existing System Define the Objective and Scope Study the Existing System Identify the Existing Problems Study the Existing Computer System Develop Activity Diagram Develop Use Case Diagram Cost and Benefit Analysis Analysis and Design of the Proposed System Web Interface Design Report Design Database Design Network Design Program Design Implementation of the Proposed System Coding Testing Hardware Installation Software Installation Conversion
May2006 1
I
2I
3I
4 ~June 2006 1
I
2I
3I
4....
,....... ... ~ ~
July 2006 August 2006 1
I
2I
3I
4 1I
2I
3I
4~ - ~ ... ...
~,. ~~~~ ~
~~~~ Figure 1.1 Project Plan of Training Management SystemII. THE EXISTING SYSTEM
2.1 Background of the Organization
As the first and oldest Thai commercial bank, Siam Commercial Bank has a history dating back as early as the reign of King Rama V, when the country's banking system was served only by foreign banks. Realizing that a sound and independent financial system was vital for Thailand's economic development, HRH Prince Mahisararajaharuethai initiated the establishment of the Thai banking business under the name of" The Book Club" in 1904. As its operations received wider recognition, His Royal Highness sought Royal Assent and transformed it into the Siam Commercial Bank Company Capital Limited, a full-fledged commercial bank, on January 30, 1906.
Because of his far-sighted undertaking, HRH Prince Mahisom is revered as " The Father of Thai Banking," and the Siam Commercial Bank is regarded as a prototype of Thai commercial banks.
For almost a century of business operations, the management of the Siam Commercial Bank has consistently adhered to the philosophy set forth by its founder which is to dedicate ourselves to the quality and righteousness of our work, to work as a team so that we shall provide the best of services, to respect human values, and to participate to the best of our ability in our society and nation.
Since the Siam Commercial Bank has been granted to establish in 30 January 1906(B.E. 2449), it plays important roles to serve Thai people and their society indulgence and keeps its path simultaneously with the country economic growth. As a professional and well-managed bank, it has demonstrated a leadership in utilizing modem technologies to enhance and develop new services for customers.
Under the mission " to be the Bank of Choice for our customers, shareholders, and employees", Siam Commercial Bank is committed to continuous development
8
according to the current environment. Recently, the Bank has initiated "Change Program" to restructure its organization for a better efficiency and flexibility. SCB aims to demonstrate its international performance through innovation, service enhancement and operational efficiency to achieve the highest customer satisfaction from each individual group of customers. With a strong financial foundation, over Baht 760,000 million assets, it conforms the Bank to be the country best financial institution and the country best innovative service.
Siam Commercial Bank has divided many organization types which are president and CEO, groups, divisions, units and teams. Finance Group takes proactively a leading role in financial planning to enhance SCB's financial position, and be a dynamic business partner through its quality and effectiveness of decision support within a strong internal control framework. Operations Group is responsible for cooperation to business staff in order to solve the problem of operation processes, and enhancement customer satisfaction which analyze from the problem of work flows and the result of operations.
Retail Banking Group is responsible for financial transaction of individual customers which are deposition, withdrawal, transferring and personal credit. Corporate Banking Group take care large business credits such as government, telecommunication, a public utility, and real estate. Human Resources Group is responsible for staffing and development, training, compensation, human resource administration and human resource client service division will take care separately for their customers. Information Technology Group will support for information technology operation including data management, security, IT resource management and solution development which IT client services will get the requirement from user before forwarding to concerned person. The organization chart is shown as Figure 2.1. Below:
... 0
RETAIL BANKING GROUP PRODUCTS & MARKETING DIVISION SALES& SERVICE DIVISION RETAIL CREDIT& BUSINESS SUPPORT DIVISION
INFORMATION TECHNOLOGY GROUP
PRESIDENT AND CHIEF EXECUTIVE OFFICE HUMAN RESOURCES GROUP FINANCE GROUP ITG EXECUTIVE SUPPORT IT CLIENT SERVICES DIVISION IT SOLUTION DELIVERY DIVISION DEVELOPMENT! DIVISION DEVELOPMENT2 DIVISION ITDATA MANAGEMENT DIVISION IT SCEURITY DIVISION IT RESOURCES MANAGEMENT DIVISION
HR ADMIN!STRA TION DIVISION TRAINING DIVISION STAFFING& DEVELOPMENT DIVISION HR CLIENT SERVICES DIVISION
FINANCIAL REPORTING & CONTROLS DIVISION MIS & FINANCIAL PLANNING DIVISION BALANCE SHEET MONITORING DIVISION INVESTOR RELATIONS DIVISION FINANCIAL MANAGEMENT SYSTEMS DIVISION
OPERATIONS GROUP PAYMENTS& SETTLEMENTS DIVISION CREDIT OPERATIONS DIVISION COLLECTIONS DIVISION CARD OPERATIONS DIVISION TREASURY & FUNDS OPERATIONS DIVISION INTERNATIONAL TRADE OPERA TIO NS DIVISION PLANNING& CONTROL DIVISION Figure 2.1. The Organization Chart of Siam Commercial Bank
CORPORA TE BANKING GROUP CORPORA TE DIVISION l CORPORA TE DIVISION 2 FINANCIAL& INSTITUTIONAL DIVISION BUSINESS PRODUCTS DIVISION JAPANESE DIVISION BUSINESS BANKING DIVISION CORPORATE BANK- STRA TEGIC PLANNING
2.2 Business Functions and Operations
The existing training business processes are manual which can be summarized as follows:
Process 1: Build Individual/ Organizational Learning Program
The process of responding to the training needs assessment with planned educational activities, including learning content design and structuring, sourcing of supplies, project management. This also considers financial aspects of the training courses. Program development unit receives the training requirements from different units, and then drafts the training plan in order to send to the group head for approval. After obtaining approval from the group head, program development unit prepares training program details and budget. If the budget is not planned, the request for the budget is required. Otherwise, program development unit prepares the logistics of the course.
Process 2: Maintain Knowledge Management
This procedure covers the process of general internal training. The Program Development, Training Administrator and Training Delivery units will prepare training program proposal such as content, trainer and target audience. After approved in principle by each program, they will set up the course, class and learner as the planned, and then book resources to central administration division.
Training Administrator and Training Delivery units have to wait for the response from client unit approval and employee reply in order to make class enrollments.
Also, they have to update class status to be confirmed and update employee enrollment status to be enrolled before reporting the attendee lists. In the e- learning courses, employee can launch via the intranet of the bank in the training homepage.
After completing the attendance, Training Delivery unit has to summarize the training evaluation results and training expenses in order to send to financial reporting and controls division.
The existing business functions and operations can be explained through a context data flow diagram as Figure 2.2.
Central
Training Requirements Administration
Approval Program Results Division
Client Units
I \
"
't
wTraining Programs
Resources Booking Enrollment Results
- -
Training Training Expenses ~ Financial ReportingDivision , And
Controls Division
' ,I
Figure 2.2. Context Data Flow of Existing Diagram
2.3 Current Problems and Areas for Improvement
According to the existing manual system, there are many problems which can be represented as follows:
1) There are many units in training division which have to work together so the manual system has duplicate and inconsistent data.
2) The enrollment processes take a long time for the operation such as approval process.
12
3) Training administrators cannot track the enrollment status immediately since to enrollment transaction information are offline which is inconvenient for replying to their customers.
4) Course catalogs are not centrally defined.
5) The existing system is not secured in case of data security.
6) There are many training expenses such as paper, staff administration.
7) The manual system can not interface to e-leaming homepage and employee directory system.
8) Employees have time limit for training hours because they have to train in working hour, and use intranet at office only for self-training.
The proposed system is developed in order to solve those problems which areas for improvement will be shown as follows:
1) Training expenses will decrease according to e-leaming delivery mode and can save learner expenses and administrative expenses.
2) Employees can increase training hours because they can access from anywhere and anytime so training performance of the organization is more advantageous than other competitors.
3) Training administrators operate training tasks efficiently including course centralized defines, real time enrollment tracking and accuracy information.
The proposed system also takes less enrollment time than the existing system, and provides self-service to learner and manager conveniently.
4) Using role-based access control for training administrators and users which will increase data security.
5) The proposed system supports future businesses which can extend and integrate to external system easily.
III. THE PROPOSED SYSTEM
3.1 Requirements Analysis
According to the existing system, Training Division had only the manual processes which each task is done for a long time because of the inconsistent information and redundant data. Siam Commercial Bank Public Company Limited needs to construct Training Management System (TMS) in order to facilitate the various processes of functional training tasks and solve the problems occurring from the existing manual system. Moreover, our organization would like to develop more e- Leaming class in order to reduce training costs.
A system request below describes the business reasons for building a system and the value that the system is expected to provide.
Table 3.1. System Request - Training Management System (TMS)
Project Sponsor : Senior Executive Vice President of Human Resource Group Business Need : This system has been initiated to increase the operational
efficiency and to decrease training costs using e-Leaming classes.
Business Requirements :
Using Web-based application, learners can logon to the system via the web browser, search for the classes which are allowed for self-enrollment and enroll online.
Their supervisors will receive notification via Manager Self-Service and can approve their training requests online. Training administrator can create the course catalog and add enrollment for specific training courses which are required for employee
competency. The system must be accessed to content server in order to launch contents or other learning objects fore-Leaming classes.
14
Table 3.1. System Request - Training Management System (TMS) (Continued) The functionalities that the system should have are listed below:
• Categorize courses and schedule both for classroom and on-line training
• Access to classroom and launch e-Leaming classes
• Enroll courses and support self-enrollment
• Track enrollment details
• Approve the request courses from the direct manager
• Send the notification for enrollment processes
• Interface to content server Business Value :
Banks expect that Training management System (TMS) will decrease the training costs. Training costs are divided into course costs 70% including content copyright and trainer costs, learner costs 20% including travel and accommodating costs, and
administrative costs 10%. On-line classes will save learner and administrative costs, and also decrease some course costs because banks pay only content copyright not per learner. Banks expect the operational process time and paper work will be decreased because of the real time transactions and some document form is not essential. Also, training hours for employee development will be increased because e-Leaming need not to learn in working hours so learner can access anywhere, anytime and continue from the latest access. Conservative estimates of tangible value to the bank include:
• 3,500,000 Baht training costs deduction
• 450,000 Baht paper work will be reduced
Table 3.1. System Request - Training Management System (TMS) (Continued) Special Issues or Constraints :
• Learner behavior cannot be controlled to attend e-Learning classes in time.
• User friendly interface in e-Content design is difficult.
• PC at the branch may have not enough for employees to attend e-Learning classes, and Head Office network connections are limited the bandwidth.
In order to achieve the target, the new proposed Training Management System (TMS) must do the function requirements as follows
(1) Training administrator can categorize courses and schedule both classroom training and on-line class.
(2) Employees or learners can access to the classroom and launch e-Learning classes.
(3) Employees or learners can enroll for courses which are allowed for self- enrollment.
(4) Training administrator can add enrollment for required courses for learners and track the enrollment.
(5) Enrollments require direct manager approval.
(6) Enrollment processes need to have notifications to learner and manager.
(7) The system can interface to content server which manages digital assets used for developing learning objects. These tools usually include templates, interactive quizzing features and test administrator, can incorporate files and documents from various sources, including Microsoft Word, PowerPoint, video, audio, and graphics.
16
Moreover, the new proposed Training Management System (TMS) must have the non-function requirements as follows
(1) The system should be able to work on a Web browser.
(2) The system should allow access from anywhere outside the bank, and be available for use 24 hours per day, 365 days per year.
(3) Log on user should have an employee number with at least 8 characters for application of password, and outside the bank connection should require authentication access.
3.2 System Design
3.2.1 Functional Modeling
Context Diagram shows data flow through the system. Context diagram level 0 of Training Management System (TMS) is shown in the Figure 3.2 which comprises of four external agents; Employees, Managers, Training Administrators and Content Server. Training Administrators create course details as input transactions through the system in order that the system will generate output transaction such as course outlines to Employees. Also, e-Leaming classes need to define learning objects; contents, tests, evaluations in order that Content Server can interface with Training Management System (TMS). Both of Employees and Training Administrators can make enrollments which depend on course definitions. The enrollment transaction will send enrollment details to the system after that the system will generate two notifications; enrolled course notification and requested course notification to Employees and Managers in sequence.
Managers need to take approval actions as approval results via notifications then the system will send the result to Employees as approval notification. After manager approved courses, the system will show attendance lists to Employees in
order to be able to access the class both of e-Leaming and classroom classes.
Finally, the system will generate enrollment report to Training Administrators which can track enrollment details at each enrollment states.
Process
External Entity
Data Flow
/
Name
Name
Data Name
'-->
Round Rectangle
Square
Solid-line with arrow
Figure 3.1. Element of Context Diagram (Use Gane and Sarson Symbol)
18
Enrollment Details Approval Results
Employees Attendance Lists Managers
.... ~
j~ .t. •l •l
Course Requested Course
Outlines
,, ,,
Notificationr 0
'
Approval Training
-
Course DetailsNotification
-
Enrolled Course Management
-
Enrollment DetailsNotification System
- I
'\.
·•
TrainingContent - Administrators
Server
.
Leaming Objects Enrollment Report
Figure 3.2. Context Diagram
Activity Diagram is the object-oriented equivalent of flow charts and data-flow diagrams (DFDs). Activity diagram of Training Management System (TMS) is shown in the Figure 3.4 which initial activity state are about course catalog that consists of create course, create offering, create learning object, create class. Courses information hold generic information about a course of learning, whereas offerings are specific instances of course that provide more details about the delivery of the learning, as well as, in the case of online course, linking to learning objects; actual contents, tests, evaluation and so on. Leaming objects contain metadata that describe the physical content stored on content server. A class is a specific occurrence of an offering which learner enroll in and attend, or take online. Classes identify individual dates, time, and location of scheduled courses. After training administrator categorized courses next activity state are about enrollment processes which will be allowed to take enrollments or not so check class status activity state will be checked. If class status is Planned it is not allowed for enrollment, but if class status is Normal, check enrollment type activity state will check the class conditions that is self-enrollment or not. The self enrollment option enables the learner to enroll class from Learner Self-Service while training administrator can add enrollment also if self enrollment option is not provided. After enrollment, the system will create two notifications to the learner about enrolled information and to manager about requested notification then manager have to response this action from Manager Self-Service, enrollment and notification data store will be updated status to be approved or rejected.
Learner can attend class if and only if manager approved the course which is the final activity for Training Management System (TMS) processes.
20
An Initial Node:
- Portrays the beginning of a set of actions or activities
e
A Final-Activity Node:
-
- Is used to stop all control flows and object flows in an activity
An Activity:
~
- Is used to represent a set of actions - Is labeled by its name
An Object Node:
I I
- Is used to represent an object that is connected to
Class Name a set of Object Flows
- Is labeled by its class name
A Control Flow: ~
- Shows the sequence of execution ~
A Object Flow:
- Shows the flow of an object from one activity to ---~
another activity A Decision Node:
- Is used to represent a test condition to ensure that the control flow or object flow only goes down
one path +[Decision [Decision+
- Is labeled with the decision criteria to continue Criteria!] C1iterial]
down the specific path A Merge Node:
Lr__J
- Is used to bring back together different decision paths the were created using a decision-node
A Join Node:
\ I
- Is used to bring back together a set of parallel or
concurrent flows of activities
,,
Figure 3.3. Element of Activity Diagram
r----
1 I
't
Leaming Object
Info.
---~
Course Info. [I I I I I I I I I I..---
[E-Learning Class] [Classroom]
Create Learning Object
Offering Info.
•
I I II I I I I I
Create Offering _____ J I
Class Info.
~---
Create Class Check Class Status[Self-Enrollment] [Not Self-Enrollment]
Enroll Class Add Enrollment --- Enrollment Info.
Enrollment Info.
I I I I I I I I I I I I I I I I I I I I I I I I I I I
Notify Learner
NotifyManager ____________ .J :
I I I I
________________ J I
__________________________ J
Figure 3.4. Activity Diagram 22
Use Case Diagram is a functional diagram in that they po1iray the basic functions of the system which is what the users can do and how the system should respond to the user's actions. Figure 3.6 below shows use case diagram of Training Management System (TMS) which are separated to 11 major use cases that the system will perform the benefits following the requirements needed.
From the functional modeling of the proposed training management system, there are 11 use case activities design; Browse Class, Enroll Class, Attend Class, Create Course, Create Offering, Create Class, Create Learning Object, Add Enrollment, Track Enrollment, Search Course, Approve Course. The total actors, use case name, use case description are listed in the Table 3.2 List of Actors, Use Case name, Use Case description. There are three basic parts to a use case description; overview information, relationships, and the flow of events.
Overview information comprises the use case name, ID number, importance level, primary actor, type, and a brief description. Detailed use cases extend the overview with identification and description of the stakeholders and their interest, the trigger and its type, the relationships in which the use case participates (association, extend, generalization, and include), the normal flow of events, the sub flows, and any alternate or exception flows to the normal flow of events. A use case description contains all the information needed to build the diagram as follows, but it expresses it in a less formal way that is usually simple for users to understand. All of each use case description will be shown in APPENDIX A: USE CASE DESCRIPTION.
An Actor:
- is a person or system that derives benefit from and is external to the subject - Are placed outside the system boundary - Is labeled with its role
A Use Case:
- Represents a major piece of system functionality - Is placed inside the system boundary
- Is labeled with descriptive verb-noun phrase
An Association Relationships:
- Links an actor with the use case(s) with which it interacts
Figure 3.5. Element of Use Case Diagram
24
Actor/Role
Use Case Name
* *
Training Administrator
*
Training Management System
Browse Class
A
Enroll Class
*
* *
Leamer
Attend Class
*
*
Create Leaming Object
*
Approve Course
1---+---i-
* *A
ManagerFigure 3.6. Use Case Diagram
Table 3.2. List of Actors, Use Case name, Use Case description
Actor Use Case Name Use Case Description
Training Administrator Create Course This use case describes how to create courses
Training Administrator Create Offering This use case describes how a course is delivered; synchronous or
asynchronous, online or offline as well as what are the learning objects for online courses
Training Administrator Create Class This use case describes how to define schedule dates, times, locations, and enrollment designation. Also, classes are further broken down to sessions to specify different times and locations Training Administrator Create Leaming This use case describes how to associate
Object the learning object with the physical content files that are located on content server
Training Administrator Add Enrollment This use case describes how to enroll learners with single enrollment to classes which are not allowed self enrollment
Leamer Enroll Class This use case describes how to use self enrollment option from Leamer Self- Service in order to request the course 26
Table 3.2. List of Actors, Use Case name, Use Case description (Continued)
Manager Approve Course This use case describes how manager take approval actions from Manager Self-Service in order to response the requested course
Learner Attend Class This use case describes how to launch online offerings in the player, whereas offline offerings are not launched within the application
Learner Browse Class This use case describes how to find the class that are self enrollment
Training Administrator Track Enrollment This use case describes how to track the enrollment transaction
Training Administrator Search Course This use case describes how to see the catalog hierarchy
3.2.2 Structure Modeling
Structure models. describe the underlying data structure of an object- oriented system. The models provide an internal static view of the evolving system such as how the objects are organized in the system.
Class diagram is a graphical description of the information contained on the CRC cards. It shows the classes and relationships between classes. The visibility of the attributes and operations and the multiplicity of the relationships are additional information that the class diagram portrays, which is not included
on the CRC cards. Class diagram of Training Management System (TMS) can be classified to 14 classes which store and manage information in the system (See Figure 3.8). The attributes of a class and their values define the state of each object that is created from the class, and the behavior is represented by the operations. There are 4 aggregation relationships such as Course and Offering classes because offerings are part of the courses, and the generalization of relationship; Training Administrators and Managers are kinds of employees.
Association relationships are shown by drawing lines between classes and a line label represents exactly how the two classes are related to each other.
CRC cards model the classes, their responsibilities, and their collaborations which are shown at the front of the card, and the back of the card contains the attributes and relationships (See APPENDIX C: CLASS- RESPONSIBILITY-COLLABORATION CARDS (CRC CARDS)).
Table 3.3. Multiplicity Multiplicity
Notation Minimum Maximum
Interpretation Instances Instances
Exactly one 1 1 1
Zero or more
o ..
* 0 Many (>1)One or more l..* 1 Many (>1)
Zero or one 0 .. 1 0 1
Specified range 2 . .4 2 4
Multiple, disjoint ranges 1..3, 5 1, 5 3, 5
28
A Class:
- Represents a kind of person, place, or thing about which the system will need to capture and store infonnation
- Has a name typed in bold and centered in its on top compartment
- Has a list of attributes in its middle compartment - Has a list of operations in its bottom
compartment
- Does not explicitly show operations that are available to all classes
An Attribute:
- Represents properties that describe the state of an object
- Can be derived from other attributes, shown by placing a slash before the attribute's name An Operation:
- Represents the actions or functions that a class can perform
- Can be classified as a constructor, query, or update operation
- Includes parentheses that may contain
parameters or information needed to perform the operation
An Association:
- Represents a relationship between multiple classes, or a class and itself
- Is labeled using a verb phrase or a role name, whichever better represents the relationship - Can exist between one or more classes
- Contains multiplicity symbols, which represent the minimum and maximum times a class instance can be associated with the related class instance
A Generalization Relationship:
- A "solid line with a large hollow triangle" used to connect lines between two classes denotes the generalization (or inheritance) relationship
An Aggregation Relationship:
- A "diamond" used to connect lines between two classes denotes the aggregation relationship
Classl -attribute 1 +operation!()
attribute name /derived attribute name
operation name ()
O .. * Verb phrase
I
Class AJ
I
Class BI Li:-
I
Class A~ ~
I
Class CI
j Class B
j
Figure 3.7. Element of Class Diagram
w 0
Course Delivery Mode -course code I -dm_id - -course_ name --dm_name -description -dm_online -start_ date -dm_synchronous -end_date uses 01 has o .. * Offering ~ o .. * Learning Object -offering_ id
~ -obj_id -offering_ name -obj_ name -start_ date ,..O .. * contains l -description -end_date -author """ -catalog -catalog_ number I lists -version o .. * -content_ type Class -server_ name -server_ directory -class_id -initial_ file -title -starting_ url -training_ center -location +loadContent() -status -start_ date -end_date -start_time -end_time I records o .. * -duration -unit -enrollment_start_ date -enrollment_ end_ date -min_ attendees -max_attendees -self_ enrollment +updateStatus()
Users Responsibility Menu -user_id o .. * has o .. * -resp_id contains -menu id o .. * o .. * - -user_name -resp_name -menu_name -user _password -creation_ date -page_name -creation_date -last_update_date -creation_ date -last_update _date -last_ update_ date -last_logon_date
I
0 .. 1 holdsI
1 Employee Notification -employee_id -notification_id -firstname -employee_id -lastname Organization records 2 .. * -message_ name -address -status -email -org_code -action_ type -phone_number o .. * belongs I -org_name -from_id -hire_date -org_type -creation date --salary -date_from -due date -job -date_to - +updateActionType() -person_ type 1 -manager_id +updateStatus() Enrollment I +enrollClass() -enrollment_ id +receiveNoti fication() -enrollment_ date +attendClass() -status is a ~ is a -completion_ date o .. * registers I I +updateStatus() Training Administrator Manager +sendNoti fication() +addEnrollment() +recei veNotification() +submitReport() +approveCourse() Figure 3.8. Class Diagram3.2.3 Behavioral Modeling
This model represents the underlying of the business process portrayed by interaction diagrams in UML which focuses on the object level. There are two different diagrams (sequence and communication) that can be used to model the interactions that take place between the objects in an information system.
Sequence diagrams· are shown in APPENDIX D: SEQUENCE DIAGRAM which illustrate the objects that participate in a use case and the messages that pass between them over time for one use case.
Communication diagrams are shown m APPENDIX E:
COMMUNICATION DIAGRAM which provide a view of the dynamic aspects of an object-oriented system that emphasizes the flow of messages through a set of objects so communication diagrams are very useful to show process patterns of activity that occur over a set of collaborating classes.
The proposed system is divided into eleven major use cases which are:
Use Case 1: Create Course
Training Administrator creates courses which are the first level of catalog hierarchy, the system will generate course information.
Use Case 2: Create Offering
Training Administrator looks up the course that would like to create an offering then select the delivery mode. If the mode is online, training administrator has to select the learning object before creating an offering.
Use Case 3: Create Class
Training Administrator looks up the offering that would like to create a class then create class information.
Use Case 4: Create Learning Object
Training Administrator creates learning objects for online class which are linked to content server.
Use Case 5: Add Enrollment
Training Administrator selects the class from class infonnation, then selects learner from employee information to create an enrollment. After an enrollment object is created, the system will generate notification information in order to inform the learner and manager for approval enrollment.
Use Case 6: Enroll Class
Leamer selects classes from the class information via learner self-service responsibility then enrolls the class. After an enrollment object is created, the system will generate notification information in order to inform the learner and manager for approval of enrollment.
Use Case 7: Approve Course
Manager will receive the notification via manager self-service then take approval actions. After the result, the system will update status to notification and enrollment information. Also, the result will be notified to learner.
Use Case 8: Attend Class
Leamer attend class via learner self-service which are shown as attendance lists. Fore-learning class, learner can use online player.
Use Case 9: Browse Class
Leamer browses class from class information to make an enrollment.
Use Case 10: Track Enrollment
Training Administrator track enrollments from any criteria such as class name, enrollment number, enrollment status, person type and organization.
32
Use Case 11: Search Course
Training Administrator look up course catalogs from the search criteria.
3.2.4 Database Design
Data management layer designs focuses on both data access and manipulation logic along with the actual design of the storage. The data storage component of the data management layer manages how data is stored and handled by the programs that run the system. The proposed system selects relational databases design as object-persistence formats of storage. The database design technique to store objects, objects must be converted so that its can be stored in a table. From a design perspective, this entails mapping the problem domain classes in a UML class diagram to the RDBMS-based data management layer tables which are shown in Figure 3.9. As the rules of mapping problem domain objects to RDBMS, all the concrete problem domain classes are mapped to RDBMS tables. Second, single-valued attributes are mapped to columns of the table. Third, methods are mapped to stored procedures or to program modules. Aggregation and association relationship are mapped by placing the primary key from one table into the related table as a foreign key, but if there are multi-valued aggregation and association relationship, a new associative table is created which relates the two original tables together then copy the primary from its to the new associative table. Generalization relationship is mapped by adding column to each table that represents a subclass for each of the concrete superclasses of the subclass, also the primary key of superclass and subclass have to be similar.
The database table will be shown in APPENDIX F: DATABASE TABLES. It will include attribute name, data type, length, default value, uniqueness and description.
w .+;:..
RDBMS Tables Figure 3.9.
Problem Domain Classes Mapping problem domain classes to RDBMS tables
Notification -notification _id -employee _id -message_ name -status
RDBMS Tables Figure 3.9.
Problem Domain Classes Mapping problem domain classes to RDBMS tables (Continued)
3.2.5 User Interface Design
Based on the examination of use case, sequence diagrams and requirements from users describe commonly employed patterns of actions that the user will perform so the interface design specifications will be created.
The propose system is designed to be Web-based interfaces and Graphical User Interface (GUI) which the input screen will be developed to be user friendly.
Input mechanism facilitates the entry of data into the computer system such as course code, description, enrollment number, status and so on which is designed to be simply and easily capture accurate information for the system. It will be shown in the APPENDIX G: USER INTERFACE DESIGN.
3.2.6 Output Reports
Output mechanism presents information· to users so they can accurately understand it with the least effort. Output specifications have been derived from user requirements and existing reports.
Reports of the proposed system are designed in different types of reports, such as detailed report and summary report. The report will respond to a query with matching the criteria. The system produces outputs, whether on the screen that is the web report for enrollment state, on paper. The user will see information in tabular format in the application, and can export to excel file. It will be shown in the APPENDIX H: OUTPUT REPORTS.
3.3 Analysis of Candidate Solutions
As the system request, Siam Commercial Bank Public Company Limited has own process for the feasibility analysis including 4 techniques; operational feasibility, technical feasibility, economic feasibility and schedule feasibility. The results of these techniques are combined into a feasibility study deliverable that is given to the approval
36