III. THE PROPOSED SYSTEM
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 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
Enroll Class Add Enrollment --- Enrollment Info.
NotifyManager ____________ .J :
I
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-* 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