Learning Managment System

Download as pdf or txt
Download as pdf or txt
You are on page 1of 149

Faculty of computer science and information technology

Development of an open source Learning


Management system

By

ROOZBEH RAZAVI ARMAGHANI (WGD0700456)

Supervisor:

MR. AHMAD ABDULLA

Semester 1 2009-2010

1
Development of an Open Source Learning
Management System (LMS)

A thesis submitted to the

Faculty of Computer Science and Information Technology

University of Malaya

By

ROOZBEH RAZAVI ARMAGHANI

(WGD070056)

In Partial Fulfillment of the Requirement for the Degree of

Master Information Technology

April 2010

Supervisor:

MR. AHMAD ABDULLA


2
Abstract

LMSs are web based platforms for education distribution management and
retrieval of course materials via the internet. LMSs allow instructors and students
access to instructional materials, to manage discussion forums, to make class
announcements, file sharing, and to submit, track and grade students assignments.
More simply, LMSs provide virtual environment learning such as video training, and
virtual class management. As the result of rapid development of internet and
information technology, more than 65% of institutes started to use learning
management system in 21st century and computer network has brought to the fore
front the use of web based education so nowadays many companies, institutes and
universities use LMSs for training, e-learning as a communication platform between
their staffs, instructors, and students.

3
Acknowledgement

It is not a trivial task to complete a project of this magnitude, especially having


to meet the dateline of the project.

I would like to thank my supervisor MR. AHAMAD ABDULLA for her helpful
guidance, moral support, insight and confidence throughout the project which gave me
the inspiration and made it possible for me to finish within the time scheduled.

There are so many people who contributed to the completion of the project and
to whom I am really grateful for their moral support and provision of feedback
whenever needed; my dear friends in faculty which help me in Idea generation, testing
process and other processes; My entire family member and above all my father for his
continuous and patient support and care throughout my life.

Thank you all very much …

4
Content
Abstract ....................................................................................................................................... 3
Acknowledgement ....................................................................................................................... 4

Content ............................................................................................................................... 5
Figure Content .................................................................................................................... 8
Table Content ..................................................................................................................... 9
Chapter 1: Introduction ......................................................................................................11
1.1 Overview ....................................................................................................................................... 11
1.2 Problem statement ....................................................................................................................... 12
1.3 Project Objective ........................................................................................................................... 13
1.4 Expected outcome ........................................................................................................................ 13
1.5 Research Scope and Limitation...................................................................................................... 14
1.6 User scope..................................................................................................................................... 14
1.7 Project Schedule ........................................................................................................................... 14

Chapter 2: Literature Review..............................................................................................16


2 Introduction ....................................................................................................................... 16
2.1 History of e‐learning ...................................................................................................................... 16
2.2 Related Work ................................................................................................................................ 17
2.2.1 Blackboard ................................................................................................................................ 18
2.2.2 SharePointLMS .......................................................................................................................... 19
2.2.3 Moodle ..................................................................................................................................... 20
2.2.4 ATutor ....................................................................................................................................... 21

Chapter 3: Development Methodology ..............................................................................26


3 Introduction ....................................................................................................................... 26
3.1 Chosen Method ............................................................................................................................. 26
3.2 Conclusion ..................................................................................................................................... 29

Chapter 4: System Analysis and Design ..............................................................................30


4 Web Development Tool Requirements ............................................................................... 30
4.1 Programming Language................................................................................................................. 30
4.2 Database Management System (DBMS) ........................................................................................ 31
4.3 Operation System Review ............................................................................................................. 33
4.4 Analysis of collected data .............................................................................................................. 33
4.5 Business rules ................................................................................................................................ 34
4.6 Functional Requirement Definition ............................................................................................... 35
4.6.1 Administrator ............................................................................................................................ 35
4.6.2 Instructor................................................................................................................................... 37
4.6.3 Student ..................................................................................................................................... 40
4.6.4 Tutor ......................................................................................................................................... 41
4.7 Use Case Diagram.......................................................................................................................... 41
4.8 Use Case Description ..................................................................................................................... 44
4.8.1 Login (administrator) ................................................................................................................ 44
4.8.2 Server Configuration (administrator) ........................................................................................ 45
5
4.8.3 General Option (Administrator) ................................................................................................ 46
4.8.4 Interface Option (Administrator)............................................................................................... 47
4.8.5 Edit Number of items per page (Administrator) ........................................................................ 48
4.8.6 Add user (Administrator) .......................................................................................................... 49
4.8.7 Modify User (Administrator) ..................................................................................................... 50
4.8.8 Reactive User (Administrator) ................................................................................................... 51
4.8.9 Inactive user (Administrator) .................................................................................................... 52
4.8.10 Send mail (Administrator) ..................................................................................................... 53
4.8.11 Create New Group (administrator) ....................................................................................... 54
4.8.12 Add to group (print user) ...................................................................................................... 55
4.8.13 Remove from group (Administrator)..................................................................................... 56
4.8.14 Edit Group (Administrator) ................................................................................................... 57
4.8.15 Delete Group (Administrator) ............................................................................................... 58
4.8.16 Add a course category (Administrator) ................................................................................. 59
4.8.17 Edit category (Administrator)................................................................................................ 60
4.8.18 Delete category (Administrator) ........................................................................................... 61
4.8.19 Add Course (Administrator) .................................................................................................. 62
4.8.20 Modify Course (Administrator) ............................................................................................. 63
4.8.21 Delete course (Administrator) .............................................................................................. 64
4.8.22 Add Subscribe users to a course (Administrator) .................................................................. 65
4.8.23 Modify Subscribe users to a course (Administrator) ............................................................. 66
4.8.24 Delete Subscribe users to a course (Administrator) .............................................................. 67
4.8.25 General Reporting (Administrator) ....................................................................................... 68
4.8.26 User Reporting (Administrator)............................................................................................. 69
4.8.27 Login (Instructor, Tutor, Student) ......................................................................................... 70
4.8.28 Add an advice ....................................................................................................................... 71
4.8.29 Modify advice receiver ......................................................................................................... 72
4.8.30 Modify Advice ....................................................................................................................... 73
4.8.31 Delete advice ........................................................................................................................ 74
4.8.32 Write a new note .................................................................................................................. 75
4.8.33 Delete Note .......................................................................................................................... 76
4.8.34 Modify Note ......................................................................................................................... 77
4.8.35 Send a message (Instructor, Tutor, Student) ......................................................................... 78
4.8.36 Delete Message (Instructor, Tutor, Student) ......................................................................... 79
4.8.37 Add a New Forum (Instructor, Tutor) .................................................................................... 80
4.8.38 Modify Forum (Instructor, Tutor) .......................................................................................... 81
4.8.39 Delete a Forum (Instructor, Tutor) ........................................................................................ 82
4.8.40 Chat ...................................................................................................................................... 83
4.8.41 Create a Group ..................................................................................................................... 84
4.8.42 Modify User List in Group ..................................................................................................... 85
4.8.43 Modify Group ....................................................................................................................... 86
4.8.44 Delete Group ........................................................................................................................ 87
4.8.45 Statistics ............................................................................................................................... 88
4.8.46 Add a category for the menu ................................................................................................ 89
4.8.47 Modify Menu ........................................................................................................................ 90
4.8.48 Delete Menu ......................................................................................................................... 91
4.8.49 Logout (administrator, Student, Tutor, Instructor)................................................................ 92
4.9 Non Functional Requirements ....................................................................................................... 92
4.9.1 User Interface Requirements .................................................................................................... 92
4.9.2 4.7.2 Integrity: .......................................................................................................................... 93
4.9.3 4.7.3 Usability: .......................................................................................................................... 93

6
4.9.4 4.7.4 Flexibility: ......................................................................................................................... 93
4.9.5 4.7.5 Availability........................................................................................................................ 94
4.9.6 4.7.6 Compatibility .................................................................................................................... 94
4.10 Hardware and Software Requirements: ........................................................................................ 94
4.11 System Architecture: ..................................................................................................................... 95
4.12 4.10 Database design .................................................................................................................... 95

Chapter 5: System Development and Coding......................................................................98


5 Introduction ....................................................................................................................... 98
5.1 Login Page (Administrator) ............................................................................................................ 99
5.2 General Manage page (Administrator) .......................................................................................... 99
5.3 User manager .............................................................................................................................. 104
5.4 Send E‐mail (configuration page) ................................................................................................ 108
5.5 Course manager .......................................................................................................................... 116
5.6 Subscribe user to a course........................................................................................................... 122
5.7 General and user Reporting ........................................................................................................ 125
5.8 Login Page (Instructor, Tutor, Student) ....................................................................................... 126
5.9 Course list (Instructor, Tutor and student) .................................................................................. 127
5.10 Course menu (Instructor, Tutor and student) .............................................................................. 128
5.11 Class Room (Instructor, Tutor, student)....................................................................................... 131
5.12 Community.................................................................................................................................. 134
5.13 Authoring .................................................................................................................................... 141
5.14 Statistics and Report ................................................................................................................... 142

Chapter 6: System Testing ................................................................................................ 143


6 Testing Approach: ............................................................................................................ 143
6.1 Software testing types:................................................................................................................ 143
6.2 Unit Testing ................................................................................................................................. 144
6.3 Module Testing fffff .................................................................................................................... 144
6.4 Interface Testing fffff................................................................................................................... 145
6.5 Integration Testing ...................................................................................................................... 145
6.6 System Testing ............................................................................................................................ 146

Chapter 7: Conclusion ...................................................................................................... 147


7 Introduction: .................................................................................................................... 147
7.1 System strengths: ........................................................................................................................ 147
7.2 Future Enhancement: .................................................................................................................. 148

7
Figure Content

Figure 2-1 Blackboard LMS Main Page ............................................................................................................. 18


Figure 2-2 SharePointLMS LMS Main page ....................................................................................................... 19
Figure 2-3 Moodle LMS Main page .................................................................................................................... 20
Figure 2-4 ATutor LMS Main page..................................................................................................................... 21
Figure 4-1 Use Case Diagrams .......................................................................................................................... 42
Figure 4-2 Use Case Diagrams .......................................................................................................................... 43
Figure 4‐3 System Architecture ........................................................................................................................... 95
Figure 4‐4 DFD Diagram ..................................................................................................................................... 97
Figure 5‐1 Macromedia Dreamweaver ............................................................................................................... 98
Figure 5‐2 Login Page (Administrator) ................................................................................................................ 99
Figure 5‐3 Configure Option.............................................................................................................................. 100
Figure 5‐4 Server Configuration ........................................................................................................................ 101
Figure 5‐5 General Option Page ........................................................................................................................ 102
Figure 5‐6 Interface Option Page ...................................................................................................................... 103
Figure 5‐7 Number of item per page ................................................................................................................. 103
Figure 5‐8 Manage user page ........................................................................................................................... 104
Figure 5‐9 Add user page ................................................................................................................................. 105
Figure 5‐10 Delete Acknowledgement page...................................................................................................... 106
Figure 5‐11 Modify User Page ........................................................................................................................... 107
Figure 5‐12 Reactive and Inactive users page ................................................................................................... 108
Figure 5‐13 Send E‐mail (configuration page) ................................................................................................... 109
Figure 5‐14 Send E‐mail .................................................................................................................................... 110
Figure 5‐15 Admin permission page .................................................................................................................. 111
Figure 5‐16 Group Management Pages ............................................................................................................ 112
Figure 5‐17 create group page .......................................................................................................................... 113
Figure 5‐18 Add users to group page ................................................................................................................ 114
Figure 5‐19 Modify Group page ........................................................................................................................ 115
Figure 5‐20 Delete Group page ......................................................................................................................... 116
Figure 5‐21 course category pages ................................................................................................................... 117
Figure 5‐22 course category pages ................................................................................................................... 117
Figure 5‐23 Delete Course Category Page ......................................................................................................... 118
Figure 5‐24 Create new course page ................................................................................................................. 119
Figure 5‐25 change menu course page............................................................................................................. 120
Figure 5‐26 Modify course page........................................................................................................................ 121
Figure 5‐27 Delete course page ........................................................................................................................ 122
Figure 5‐28 Subscribe user to a course .............................................................................................................. 123
Figure 5‐29 Subscribe course page .................................................................................................................... 124
Figure 5‐30 Modify subscribe course page ........................................................................................................ 124
Figure 5‐31 General reporting page .................................................................................................................. 125
Figure 5‐32 View of General reporting page ..................................................................................................... 126

8
Figure 5‐33 login page (Instructor, Tutor and student) ..................................................................................... 127
Figure 5‐34 Course list page (Instructor, Tutor and student) ............................................................................. 128
Figure 5‐35 Course presentation page (Instructor, Tutor and student) .............................................................. 129
Figure 5‐36 Add file to project (Instructor, Tutor) .............................................................................................. 130
Figure 5‐37 Modify course information (Instructor, Tutor) ................................................................................ 130
Figure 5‐38 Add file to Material (student) ......................................................................................................... 131
Figure 5‐39 Advice page ................................................................................................................................... 132
Figure 5‐40 Write Advice Page .......................................................................................................................... 132
Figure 5‐41 Note Page ...................................................................................................................................... 133
Figure 5‐42 View Note ...................................................................................................................................... 134
Figure 5‐43 Message Main Page ....................................................................................................................... 135
Figure 5‐44 Write Message ............................................................................................................................... 135
Figure 5‐45 Chat Area ....................................................................................................................................... 136
Figure 5‐46 Forum Main page........................................................................................................................... 137
Figure 5‐47 View Forum .................................................................................................................................... 137
Figure 5‐48 Project View Page .......................................................................................................................... 138
Figure 5‐49 Project Main Page .......................................................................................................................... 139
Figure 5‐50 Create Project page........................................................................................................................ 139
Figure 5‐51 Group View Page ........................................................................................................................... 140
Figure 5‐52 Create Group Page ......................................................................................................................... 141
Figure 5‐53 Authoring Page .............................................................................................................................. 142
Figure 5‐54 Statistics and Report ...................................................................................................................... 142
Figure 6‐1 Testing Process ................................................................................................................................ 144

Table Content
Table 1‐1 Project Schedule .................................................................................................................................. 15
Table 2-1 Cost of commercial LMS..................................................................................................................... 22
Table 2-2 Compare Between 4 LMS.................................................................................................................... 23
Table 2-3 Compare Between 4 LMS.................................................................................................................... 24
Table 2-4 Compare Between 4 LMS.................................................................................................................... 25
Table 4-1 Admin Login ....................................................................................................................................... 44
Table 4‐2 Server configuration ............................................................................................................................ 45
Table 4‐3 General Option .................................................................................................................................... 46
Table 4‐4 Interface Option .................................................................................................................................. 47
Table 4‐5 Edit Number of Items per page ............................................................................................................ 48
Table 4‐6 Add user .............................................................................................................................................. 49
Table 4‐7 Modify User......................................................................................................................................... 50
Table 4‐8 Reactive User ...................................................................................................................................... 51
Table 4‐9 Inactive User ....................................................................................................................................... 52
Table 4‐10 Send Mail .......................................................................................................................................... 53
Table 4‐11 Create New Group ............................................................................................................................. 54
Table 4-12 Add Supervision fieldUse Case ......................................................................................................... 54
9
Table 4‐13 Add to group ..................................................................................................................................... 55
Table 4‐14 Remove from Group .......................................................................................................................... 56
Table 4‐15 Edit Group ......................................................................................................................................... 57
Table 4‐16 Delete Group ..................................................................................................................................... 58
Table 4‐17 Add a course category ....................................................................................................................... 59
Table 4‐18 Edit Category..................................................................................................................................... 60
Table 4‐19 Delete Category ................................................................................................................................ 61
Table 4‐20 Add Course ........................................................................................................................................ 62
Table 4‐21 Modify Course ................................................................................................................................... 63
Table 4‐22 Delete course .................................................................................................................................... 64
Table 4‐23 Add Subscribe users to a course ........................................................................................................ 65
Table 4‐24 Modify Subscribe users to a course ................................................................................................... 66
Table 4‐25 Delete Subscribe users to a course..................................................................................................... 67
Table 4‐26 General Reporting ............................................................................................................................. 68
Table 4‐27 Login (Instructor, Tutor, Student) ...................................................................................................... 70
Table 4‐28 Add an advice .................................................................................................................................... 71
Table 4‐29 Modify Advice Receiver ..................................................................................................................... 72
Table 4‐30 Modify Advice ................................................................................................................................... 73
Table 4‐31 Delete advice ..................................................................................................................................... 74
Table 4‐32 write a new note ............................................................................................................................... 75
Table 4‐33 Delete Note ....................................................................................................................................... 76
Table 4‐34 Modify Note ..................................................................................................................................... 77
Table 4‐35 Send a message................................................................................................................................. 78
Table 4‐36 Delete a Message .............................................................................................................................. 79
Table 4‐37 Add a New Forum.............................................................................................................................. 80
Table 4‐38 Modify Forum.................................................................................................................................... 81
Table 4‐39 Delete a Forum.................................................................................................................................. 82
Table 4‐40 Chat .................................................................................................................................................. 83
Table 4‐41 Create a Group .................................................................................................................................. 84
Table 4‐42 Modify User List in a Group ............................................................................................................... 85
Table 4‐43 Modify Group .................................................................................................................................... 86
Table 4‐44 Delete Group ..................................................................................................................................... 87
Table 4‐45 Statistics ............................................................................................................................................ 88
Table 4‐46 Add a category for the menu ............................................................................................................. 89
Table 4‐47 Modify Menu..................................................................................................................................... 90
Table 4‐48 Delete menu ...................................................................................................................................... 91
Table 4-49 Logout .............................................................................................................................................. 92
Table 4‐50 Minimum Hardware requirement...................................................................................................... 94
Table 4‐51 Software Requirements ..................................................................................................................... 94

10
Chapter 1: Introduction
1.1 Overview

Increasing demands on modern technology-enabled learning have resulted in rapid


development of Learning Management Systems (LMS) ranging from commercial products,
institutionally developed products, and open source products. LMSs are web based platforms
for education distribution management and retrieval of course materials via the internet. LMSs
allow instructors and students access to instructional materials, to manage discussion forums,
to make class announcements, file sharing, and to submit, track and grade students
assignments [1-3]. More simply, LMSs provide virtual environment learning such as video
training, and virtual class management. As the result of rapid development of internet and
information technology, more than 65% of institutes started to use learning management
system in 21st century and computer network has brought to the fore front the use of web
based education so nowadays many companies, institutes and universities use LMSs for
training, e-learning as a communication platform between their staffs, instructors, and
students.

LMSs have appeared as dominant popular technologies because they offer a wide
range of capabilities that enable an instructor to deliver a course in a completely paperless
manner. LMSs make more usability in educational environments by achieving specified goals
with effectiveness, efficiency and satisfaction [4]. Distance learning management is more
applicable by the use of LMSs which enable the institutional innovations in learning and
education. Moreover, the active online engagement feature of LMSs is more preferred by
today’s generation of students [3]. Finally, it has been shown that LMSs help students to be
self-directed learners, more initiative, independence, and persistence in learning as they accept
responsibility for their learning [4, 5].

Most of the existing LMSs products are commercial such as very popular Blackboard
and WebCT. The key challenge of commercial versions is that they are very cost intensive.
The cost is associated with different aspects such as customer service, software licensing, host
and space expenses that has to be paid to provider companies. Moreover, it is hardly possible
to customize the software for different demands and requirements. In this project we want to
implement an open source version to deal with the above problem. Open source software is
software developed by a community of users and distributed for others to use without any
11
license fees. In open source software anyone is allowed to develop, extend, plug-in and fix the
software issues. Other considerations in pursuing open source software are accessibility;
stability and easier control. By moving to an open source solution an institution can not only
avoid the cost of licensing a system but, more importantly, have access to a fully functional,
stable LMS that is hosted on the institution's own servers and is locally administrated for
faster service and updates.

1.2 Problem statement

As already been described the commercial learning management system offer lots of
capabilities as well as the opening learning management system. But the implementations of
the commercial, proprietary version can be so expensive. The institute that has commercial
LMS must pay for lots of thing, Development and long-term maintenance costs of a custom of
built LMS can be high.

Keeping up with new requirements or security issues can take lots of time and effort.
Most vendors’ offer good LMS, which are functional, complete and in case that the system
does not match the specific needs of the institution,

The vendors can extend the functionalities with the support of their consultants. The
main problem of this approach is the financial aspect. Almost all LMS vendors ask for an
expensive site license, which has to be renewed each year.[6]

Open source LMSes combine advantage of the commercial and custom built LMS
that is ready to use but can be customized if needed (8301.html). The list of some critical
problems of commercial LMS are:

 Cost : commercial LMS are so expensive and institutes have to pay money for
maintenance, development

 Flexibility: commercial LMS are not customizable. new features and tools
can’t be import to commercial LMS

 Service continuity: the volunteer help is not available for proprietary system
and only the developer can support software.

12
In this project we want develop an open source LMS with low cost that needs win
local windows host. more flexibility and add some feature that others open source LMS
doesn’t have such as create discussion group by students, Upload multiple files at once Note,
Edit upload txt online, easy to support and has easy code.

1.3 Project Objective

1. Analysis and review the most famous learning management software

2. Compare open source and commercial software

3. Design and implement the open source learning management system with
below features: Welcome Messages, Profile, Distribution and Deliver
Messages, Instruction Bulletin, My Lessons, Classroom and Course
Management, Competency and Performance, News, Calendar, Discussion’s
Room, Video Training, Project assessment and student assessment.

4. Develop an open source software for reduce the cost, more flexibility and
accessibility.

5. To develop database with Mysql to maintain instructors and students


information. The data help to instructors to manage the courses that be taken
with students, check student’s activities also the data helps students to review
their actions, modify assignments and projects.

6. To develop a stylish, professional and friendly web site.

7. Analyze and solve problems encounter in the manual systems. In order to


develop an improving system, problems traditional system’s problems should
be analyzed and avoided.

1.4 Expected outcome

This project is designed for actual implementation in learning Management System


(LMS) for the learning in virtual environment. This system should provide some useful
services that can be used by its users such as Instructor, Tutor, admin and also student via
LMS.

13
1.5 Research Scope and Limitation

This project aims to provide student and instructor a convenient and more efficient
way of conducting their virtual learning in order to reduce efforts for all system’s users and
make their life and processes easier. It will improve processes that involved from the first to
final stages and it will contain required forms, reports and announcements for reducing
number of transporting and saving costs.

1.6 User scope

For this system we have four different types of users: Administrator, Instructor, Tutor,
student, the functions that they can perform differs from one to another based on the
privileges they have and these functions can be stated as follow.

 Administrator: This user is responsible for managing the whole system and performs
different kind of settings related to the system.

 Instructor: An instructor is responsible to group the students, specify assignments for


student, and assess and mark the assignments instructor is also responsible for time
management for doing a task such as starting and finishing time.

 Student: A new student can register and access to all learning areas that are provided
by institute. Moreover, students can take courses and connect to chat room.

Tutor: Tutor is the same as instructor. Different from an instructor, a tutor does not have
higher access to all the available functions in the system

1.7 Project Schedule

The project schedule spans from January 2010 to April 2010. Table 1 shows the
project schedule and tasks for Literature Review, Requirement Capture, Analysis and Design
.System Development, Testing, and Delivery and Acceptance phases of the project.

14
Table 1‐1 Project Schedule

Period Task Description


January  Preparation of the project proposal
To  Data gathering
Project Proposal
Beginning of  Literature Review

February  Proposal submission

 Determination of the functional and


System Analysis non functional requirements of the
February
proposed system.
To
 Develop the system database.
The 15th
 Develop the user interface.
of March System Development  Connect user interface to database.

System Testing  Overall system testing and


From 16th Documentation debugging
Of March to  Creation of the entire system
April documentation and binding.
Viva  Panel Evaluation

15
Chapter 2: Literature Review
2 Introduction

The purpose of a literature review is to find, read, and analyze the body of literature
published on a particular topic, primarily in a particular field, for itsparticular trends and gaps.

For getting the reason that why developing of virtual learning and learn management
system are so fast, we have to look at traditional education. The traditional delivery systems
for higher education has been a classroom setting whit a professor giving a lecture and
students listening and writing notes, interaction between the professor and student has been
viewed an essential learning element within this arrangement,[7] in classroom whit smaller
teacher –to- students ratio, student can even more direct assistance, because there is real time
interaction and students and their instructor speak instead of typing, more ground can be
covered in less time but in traditional classroom student must be attend in class at specific
time. Also the noisy student in the back of the room can be distracting to other student.

In the other hand whit rapid developing of information technology, million students
are doing high education online. Online Learning, e-learning or distance learning is the idea
that the teacher can reach student in remote location, which enable students to learn subjects
to which they wouldn’t otherwise have access.

One of the best reason to chose an online education is also the most obvious,
convenience is just one thing that makes online education the way to- it is the college of the
feature, by getting degree online, it means student doesn’t have to move to another place,
students are no longer restricted to day-time classes, night-time house, or even having to go
every day.

2.1 History of e‐learning

Now we have a brief look at e-learning history. In 1993, Graziadei, W. D. described an


online computer-delivered lecture, tutorial and assessment project using electronic Mail. In
1997 Graziadei, W.D., et al., published an article entitled "Building Asynchronous and
Synchronous Teaching-Learning Environments: Exploring a Course/Classroom Management
System Solution". They described a process at the State University of New York (SUNY) of
16
evaluating products and developing an overall strategy for technology-based course
development and management in teaching-learning. The product(s) had to be easy to use and
maintain, portable, replicable, scalable, and immediately affordable, and they had to have a
high probability of success with long-term cost-effectiveness. Today many technologies can
be, and are, used in e-Learning, from blogs to collaborative software, e-Portfolios, and virtual
classrooms. Most eLearning situations use combinations of these techniques.

Whit rapid develop of communication technology, institute used this technology in e-


learning. Communication technology is generally categorized as asynchronous or
synchronous. Blog, wiki and dissection boards are part of asynchronous activities, in
asynchronous main idea is that participants may engage in the exchange of idea or
information without the dependency of other participant’s involvement at the same time,
versus synchronous activities involves the exchange of idea and information with one or more
participants during the same time. Virtual classroom and online chat session are examples of
synchronous communication technology.

Learning Management System (LMS) and Learning Content Management System


(LCMS) have tools to deliver and manage instructor-led synchronous and asynchronous
online training based on learning object. In this project we concentrate on Learning
Management System (LMS), LMS is software for planning, delivering and managing learning
events within an organization, including online, virtual classroom and instructor-led course.
LMS software has divided two parts, Commercial LMS and Open Source LMS so in the rest
of literature review we compare two famous commercial LMS versus two famous open
source LMS.

2.2 Related Work

There are several previous systems that attempt to do the same tasks. In order

to come out with a better system that can stand as an improvement for what people

have done, we need to study the existing ones to avoid their mistakes and to see what
can be added or improved

17
2.2.1 Blackboard

Blackboard is a commercial, enterprise-level LMS solution that was first released in


1998. The source code for Blackboard is closed, meaning users cannot make changes to most
or all of the code. An organization can host a Blackboard LMS installation locally, or it can
pay a hosting service to do so. Using industry- verage data, the cost of selling a Blackboard
enterprise learning system is estimated to be $259,000 per sale. Analysis of the third-quarter
2005 data estimates this cost at $280,913. Other estimates range as low as $222,386. [6] Once
you’ve signed up for the Blackboard LMS, they’ll try to sell you the Blackboard content
management system, the Blackboard portal, the Blackboard toaster oven, and the Blackboard
time share in Boca. The typical customer licensing the works will pay $160,000–per year.
(Remember, you don’t buy Blackboard. You rent it.)[8]

Figure 2-1 Blackboard LMS Main Page

18
2.2.2 SharePointLMS

SharePointLMS is a Learning Management System which is based on the Microsoft


Office SharePoint Server 2007 & WSS3.0platform. SharePointLMS is an .Net-based
application that is designed to be scalable, reliable, and secure. SharePointLMS is
SCORM 1.2 and 2004 compliant and enables users to import courses either created
using SCORM Rapid E-learning authoring tools or off the shelf acquired SCORM packages.

SharePointLMS was developed in 2007 for Danish company "Elearningforce


International" by "Belitsoft" software development company at the request and in cooperation
with the Danish division of Microsoft Corp. Educational Group to bring e-Learning into
organizations and institutions that use the Microsoft Office SharePoint Server 2007 &
WSS3.0 platform. The main competitor officially included into Microsoft Learning Gateway
package - open source project SharePoint Learning Kit (SLK) had limited functionality.
SharePointLMS was designed as full blown LMS to provide vast e-Learning features for
customers. Early January 2008 SharePointLMS version 1 was released making its debut at
BETT 2008

Figure 2-2 SharePointLMS LMS Main page

19
2.2.3 Moodle

Moodle emerged in 1999 from the Australian higher education community. Much of
its rise to fame has been in the last two years, and as of September 2007 there were 69 Moodle
installations with 20,000 or more users. The Moodle Trust hires core programmers and covers
project expenses.[5] The source code for Moodle is open, meaning users can make changes to
most or all of the code. An organization can host a Moodle LMS installation locally, or it can
pay a hosting service to do so.

The Open University publicised its £5.6m OpenLearn initiative, making 900 hours of
e- earning available to their students on a customised Moodle platform. It is more recently
making an impact in the corporate sector. However, there are two problems which will hinder
the rapid uptake it has enjoyed in education: lack of competency development features and
poor user interface design. Moodle simply does not look polished enough to compete in a
market where the incumbent offerings are so much visually richer. Moodle is designed to be
reskinned easily and, while colour schemes can be changed quickly, our own experience
shows that more serious design changes are time-consuming. Epic’s Moodle theme for
Lonsdale’s Essentials Online product shows the sort of things that are possible fairly
quickly.[5]

Figure 2-3 Moodle LMS Main page

20
2.2.4 ATutor

ATutor was designed to be accessible and easily customised. A core team of 12 staff
handles ongoing development, supported by 16 separate organisations including, among
others, Adaptive Technology Resource Centre, University of Toronto, University of Bologna,
International Relations and Security Network (ISN) and Fraser Health. A range of ATutor
services are offered by the ATutor

team, including technical support, custom development, re-branding and hosting.


Services are also offered by nearly 40 external service providers. [5]

Figure 2-4 ATutor LMS Main page

In the rest of literature review we have look at average price of LMS software and we
compare some feature of open source to show why we want to develop an open source LMS.
Most of LMS software has sold based on number students. According LMS Knowledge Base
2009: In-Depth Profiles of 90+ Learning Management Systems, with Custom Comparison
Across 200+ Features , average cost of commercial LMS software in 2009 are[8]:

21
Table 2-1 Cost of commercial LMS

Low High

500 learners $499 $111,630

10,000 learners $1,099 $900,000

25,000 learners $1,299 $2,250,000

100,000 learners $1,299 $9,000,000

As you can see cost of commercial LMS are so expensive and these cost are just the
selling price. Cost of develop, maintenance and up to date are separate, because of the close
code. So some institute produce open source LMS to reduce cost, have more flexibility for
developing, up to date and maintenance. But as u can see in below compare most of open
source LMS doesn’t have some features.[4, 9]

22
Table 2-2 Compare Between 4 LMS

Blackboard
Learning Share
System CE Moodle ATutor
Point LMS
6.1 1.6.1 1.6.3
Enterprise v.2
License

spell-checker

Posts to be sent to email.


discussion Forum

receive posts by email

Subscribe to forum.

Post reviewed
Discussion Management
Communication Tools

create discussion groups

shared across courses

Submit and drop assignment


File Exchange

Define disk space

Searchable address book.


Internet Email

forward mail

email the entire class at once

23
Table 2-3 Compare Between 4 LMS

Blackboard
Learning Share
System CE Moodle ATutor
Point LMS
6.1 1.6.1 1.6.3
Enterprise v.2
License

attach notes
Online journal Notes

combine their notes

shared notes

unlimited simultaneous group


discussions
Real Time Chat

moderate chats

creates archive logs

share bookmarks
Productivity Tools

Bookmarks

create bookmarks

post events
Calendar/Progress

post announcements
Review

view their grades

24
Table 2-4 Compare Between 4 LMS

Blackboard
Learning Share
System CE Moodle ATutor
Point LMS
6.1 1.6.1 1.6.3
Enterprise v.2
License
Student Involvement Tools

Group work

assign students to groups

Discussion forum.

Chat or whiteboard.

Instructors can monitor


groups

Specific assignments or
activities
Administration Tools

Authentication

Allow guest access to all


courses

authenticate against an
external LDAP server

Against IMAP, POP3 or


secure NNTP

Central Authentication
Service (CAS)
Registration Integration

Add students to their courses

Can batch add students

Can transfer student


information bidirectional

25
Chapter 3: Development Methodology
3 Introduction

There are different methodologies that can be used to manage the system development
life cycle. Development Methodology is a software development process or a structure
imposed on the development of a software product. Synonyms include software life cycle and
software process. There are several models for such processes, each describing approaches to
a variety of tasks or activities that take place during the process. The best known ones are
Waterfall, Evolutionary Development and Component-based. Everyone has its own life cycle.

Waterfall model is a sequence of phases, every phase should not start until the
previous one has finished. In practice these stages overlap and feed information to each other.

Evolutionary Development is based on the idea of developing an initial


implementation, exposing it to user comment and refining it through many versions until an
adequate system has been developed.

Component-based which relies on reuse has emerged and is becoming increasingly


used; this approach relies on a large base of reusable software components and some
integrating framework for these components.

3.1 Chosen Method

Rapid Application Development (RAD) is a software development methodology that


focuses on building applications in a very short amount of time, traditionally with
compromises in usability, features and/or execution speed. Comparing to the stated
methodologies, it is newer methodology that generically describes applications that can be
designed and developed within 60-90 days, but it was originally intended to describe a
process of development that involves application prototyping and iterative development. I
have been choosing this methodology for some of its advantages that help me to get this
project done on time.

26
Speed Development:

For this project the time is a vital factor that should be considered, as the name
suggests, Rapid Application Development's primary advantage lies in an application's
increased development speed and decreased time to delivery. The goal of delivering
applications quickly is addressed through the use of Computer Aided Software Engineering or
CASE tools, which focus on converting requirements to code as quickly as possible, as well
as Time Boxing, in which features are pushed out to future releases in order to complete a
feature light version quickly.

Quality improvement:

Increased quality is a primary focus of the Rapid Application Development


methodology. Prior to RAD, and perhaps more intuitively, quality in development was both
the degree to which an application conforms to specifications and a lack of defects once the
application is delivered. According to RAD, quality is defined as both the degree to which a
delivered application meets the needs of users as well as the degree to which a delivered
system has low maintenance costs. Rapid Application Development attempts to deliver on
quality through the heavy involving of users in the analysis and particularly the design stages.

Even though it is the best methodology that can be used for this project but still has
some disadvantages.

Lack of scalability

Because RAD focuses on development of a prototype that is iteratively developed into


a full system, the delivered solution may lack the scalability of a solution that was designed as
a full application from the start.

Reduced features

Due to time boxing, where features are pushed off to later versions in favor of
delivering an application in a short time frame, RAD may produce applications that are less
full featured than traditionally developed applications. This concern should be addressed as
soon as possible through clear communication with the client as to what will be delivered and
when.

27
Process

The RAD process has four life cycle stages, the process consists of four lifecycle
stages: Requirements Planning, User Design, Construction, and Implementation. Also
described are typical pre and post project activities.

Pre-Project Activities

In this stage details of the project should be identified in some form of document. All
parties should agree up front on details such as potential risks and mitigation strategies, a
development schedule including resources, milestones and deliverables such as a completed
data model or types of documentation to deliver, an approach including standards, tools, and
technologies to be used, a desired end result.

Requirements Planning

The Requirements Planning stage (also known as the Concept Definition Stage)
consists of meetings between requirements planning team and key client users. Meetings
focus on both developing a high level list of initial requirements as well as setting the project
scope. The requirements planning team identifies primary business functions and initially
breaks them down into entities.

User Design

During the User Design stage also known as the Functional Design Stage, the analysis
team meets with end users in Joint Application Development (JAD) Workshops. During the
workshops the analysis team flushes out the requirements in more detail, develops the entities
developed in the Requirements Planning into a data model (Entity Relationship Diagram),
formalizes business rules, develops test plans, and creates screen flows and layouts for
essential parts of the system. During the later half of the User Design stage the development
team (also known as the SWAT or Skilled Workers with Advanced Tools team) aids the
analysis team in activities such as creating a working data model that can be converted to a
functional database, and in identifying reusable components. (such as Microsoft's Application
Blocks, which, incidentally, are an excellent time saver on Microsoft .Net projects).

28
Construction

During the Construction Phase the Design Team develops the application in iterative
cycles of development, testing, requirements refining, and development again, until the
application is complete. Development iterations should last between one day and three weeks.
The development team should convert the Data Model that was developed during the User
Design Stage into a functional database.

Implementation

The Implementation Stage (also known as the Deployment Stage) consists of


integrating the new system into the business. The Development Team prepares data (such as
lookup values like States and Countries) and implements interfaces to other systems. The
Design Team trains the system users while the users perform acceptance testing. and are
trained by the Design Team. The Design Team helps the users transfer from their old
procedures to new ones that involve the new system, trouble shoots after the deployment, and
identifies and tracks potential enhancements (read wish list). The amount of time required to
complete the Implementation Stage varies with the project Post-Project Activities

As with any project final deliverables should be handed over to the client and such
activities should be performed that will benefit future projects. Specifically it is a best practice
for a Project Manager to review, organize and store project assets such as reusable code
components, Project Plan, Project Management Plan (PMP), and Test Plan. It is also a good
practice to prepare a short lessons learned document.

3.2 Conclusion

RAD has many core elements that make it a unique methodology including
prototyping, iterative development, time boxing, team members, management approach, and
RAD tools. Rapid Application Development is not appropriate for all projects but RAD
methodology works best for projects where the scope is small or work can be broken down
into manageable chunks.

29
Chapter 4: System Analysis and Design
“Systems analysis is the dissection of a system into its component pieces for purposes
of studying how those component pieces interact and work” (Edwa, 1989). This chapter
considers as the most critical in the system development life cycle, whereby the defined and
determined design elements during this phase is to be used at the design and implementation
phases. This chapter generally discusses the requirements tools which includes the hardware
and software used for the proposed project and the functional and non-functional requirements
for the proposed system. –In addition, the flow of events that places between user and system
as well as techniques used to develop the whole system is discussed in this chapter.

4 Web Development Tool Requirements


4.1 Programming Language

The choice of language is an important part of the design since it will structure the
architecture of the system. A programming language tells the web server what to show on a
web page in response to visitor's actions. Two examples of programming languages can be
mentioned as Active Server Pages for .NET (ASP.NET) and Hypertext Preprocessor
(PHP).ASP.NET is a redevelopment of ASP and it is a complete rewrite of the software. One
of its main features is that it has the flexibility to choose the programming language desired.
ASP.NET works with scripted languages such as VBScript, JScript, PerlScript, and Python, as
well as compiled languages such as Visual Basics, C#.

 There are many useful features of ASP.NET that has made it a propoer
programming language in web development. The key advantages of ASP.NET
are the following:

 Visual interface for designers that make creating Web applications easy via an
easy-to-use drag-and-drop interface.

 Powerful code editor with rich functionality such as IntelliSense that makes
writing code and HTML faster.

 Built-in data controls and integrated access to Microsoft SQL Server.

 Support for multiple languages, including Visual Basic, C#, and J#.
30
 Supports object-oriented programming.

 Clean design & implementation.

Despite all the good features, ASP.NET is not very popular among the programmers
as it is difficult to learn, very slow in execution time, and it has a high memory usage.

PHP is a widely used open source, and server-side, cross platform, HTML-embedded
scripting language. It has syntactical similarities of Perl, C, and Java with a couple of unique
PHP-specific features. PHP is very popular for web sites.

According to (PHP web site, 2008) over 11 million domains are using PHP. In
addition, Yahoo!, which is probably the world’s most visited site, recently decided to change
from its own proprietary language to PHP (Janet Valade, 2004). The advantage of PHP over
ASP.NET can be mentioned as following:

 It is fairly easy to learn, especially for developers with C/C++, Java, or Perl
knowledge and experience.

 Active user community willing to lend you a hand getting started.

 All components are built in the language

 Cross-platform.

 PHP is free.

The main disadvantage of PHP is the fact that PHP was designed to be programmer-
friendly, which makes it less friendly to non-programmers.

4.2 Database Management System (DBMS)

The database management system (DBMS), is a computer software program that is


designed as the means of managing all databases that are currently installed on a system hard
drive or network. Different types of database management systems can be mentioned as:

 Microsoft Access 2003

 Microsoft SQL Server 2008

31
 MySQL

 Oracle

Now, I briefly explain each of the above databases including their advantages and
disadvantages.

Microsoft Access 2003

Microsoft Access 2003 is a software product from Microsoft that is relational database
tool where developers can create table and manipulate databases easily. It contains the tools
for basic entering, editing and retrieving data via custom forms or reports. Microsoft Access
2003 is cheaper than many other database tools such as Microsoft SQL Server 2000 as well as
Oracle 9i and it can support many data formats, e.g. OLE, ODBC, XML. It is also very good
in error checking and backup options. Moreover, a user can have a quick view on dependency
information and automatic properties update. However, Microsoft Access 2003 has many
limitations as well. First, it does not support triggers, views, procedures and user defined
functions. Moreover, only allows recovery up to the last backup, amd finally, large amount of
data is not supported by this tool. Microsoft Access 2003 has been employed in this project
based on its advantages to draw database tables and relative relations between the tables.

 MySQL

MySQL is an open source relational database management system. MySQL stores data
in separate tables. As it is an open source DBMS, it is free. It offers fewer features as
compared to other DBMS because it was sacrificed for speed. It also promotes code
reusability it is a multi-user and multi-thread server. The searching technique in MySQL is
also easy as it supports full text indexing and searching. The advantages of this tool can be
summarized as bellow:

 Fast compared to other DBMS.

 Commercial license is cheap.

 Base code is available.

 Easy to use.

32
 Easy to build database.

MySQL suffers from the same limitations as Access 2003 where it does not support triggers,
procedures and views.

 SQL Server Express 2008

SQL Server Express 2008 is a very comprehensive database tool which has deployed
ASP and PHP applications for the purpose of programming. There are many features to be
mentioned about SQL Server Express: First, enterprise capabilities which are not available in
MySQl, have been included in this tool. Second, SQL Server Express is innovated with
geospatial maps or native XML, and it can scale up to 256 processors. Moreover, building
applications with SQL Server Express is free to develop and deploy. A user can also add
features beyond anything MySQL has, with no code changes. There is no design limitation on
database size or memory usage and web sites can be developed through low cost SQL Server
Web. Finally, reports and analysis can be added for a more user friendly results. In
conclusion, SQL Server is a very complete tool with lots of additional capabilities in the paid
edition which are not provided by the other databases such as MYSQL.

4.3 Operation System Review

An operating system (OS) is a software program that manages the hardware and
software resources of a computer. The OS performs basic tasks, such as controlling and
allocating memory, prioritizing the processing of instructions, controlling input and output
devices, facilitating networking, and managing files. There are many type of operating system
such as windows XP, windows vista, windows98, and etc. For example Windows XP is an
upgraded client version of Windows 2000 which provides numerous changes to the user
interface, including the Start menu or Windows Vista is a Graphical User Interface (GUI)
based operating system which efficiently manages the computer's resources.

4.4 Analysis of collected data

Required data has been collected by interviews, study of current system and direct
observation of process. After analyzing the collected data, simulation of workspace is done by
considering five different actors in this system. These actors interact with our system in
different ways based on their responsibilities. We have defined the actors as following:

33
 Administrator: This user is responsible for managing the whole system and performs
different kind of settings related to the system.

 Instructor: An instructor is responsible to group the students, specify assignments for


student, and assess and mark the assignments instructor is also responsible for time
management for doing a task such as starting and finishing time.

 Student: A new student can register and access to all learning areas that are provided by
institute. Moreover, students can take courses and connect to chat room.

 Tutor: Tutor is the same as instructor. Different from an instructor, a tutor does not have
higher access to all the available functions in the system.

4.5 Business rules

This system is designed for learning management to provide an environment for


virtual learning. Following rules have been defined as functionality of this system:

 This system does not have any guest user. Just the users that be registered can
login to the system

 Just Admin user can create user and provide them with different access levels.

 Just Admin user and Administrator can manage courses for students or other
users.

 Instructor can create a project when he/she subscribes as a group. If instructor


is not subscribed in a group, he/she cannot add a project.

 The LMS system shows the total time that a user is in system. Current time
that a user is in the system also is being shown in the system.

 Chat environment in this system is not an open source program. Adobe Media
Server is needed and should be bought by an institute to run the chat
environment.

34
4.6 Functional Requirement Definition

In this section, we explain the functional requirements and responsibilities which are
defined for each actor.

4.6.1 Administrator

 Login page: The admin logs in the LMS system website which gives him an
option to login either as any type of users. According to the answer, and
provision of the correct login details, the system directs the admin to the next
screen.

 General Manager: This page is the first page that administrator see after
login. The administrator can manage general functions like as configure
option, web page, E-form and news. We describe all general manager functions
briefly.

o Configure option: LMS system has some functions that need to be


configured for the whole system. Examples of these functions can be
mentioned as: where the files should be saved? or how many items
should be displayed on each page? Also an Admin can see server
configuration on this page.

o Web Page: This configuration is about creating web page and


publishes in home page or other pages. Admin can add, modify, delete,
move up and move down published web pages.

o E-form: Admin can add some E-form web pages that include
information about students who have registered in a course or title for
an specific major. Admin can create E-form, publish, modify, delete,
move up and move down the E-form web pages.

o News: An administrator can publish some news related to LMS


software, courses or any news that is dependent on virtual learning in
this page.

 User manager: Admin can mange users in this page. Management includes
adding the users, modify, deactivate and reactivate users, send emails to all the
users, and get admin permission for a user or create groups.
35
o Manage user: Admin can create user with access level as student,
instructor, god and admin. Also admin can modify, deactivate and
reactivate a user.

o Send e-mail: Admin can send e-mail to all users or a particular user.
Also he can send e-mail to a group.

o Admin permission: In this page admin can search users with id or


username and give them admin permission.

o Group management: Admin is able to create, edit, and delete groups.


Adding users or removing users from created groups is also another
task for an administrator.

 Course manager: In this page admin can classified the courses into different
categories, and manage the courses.

o Course categories: Created categories for courses can be edited or


deleted later by an administrator.

o Courses: Admin can add, delete, and modify the courses. Moreover,
level of difficulty can be defined in this page for each course.

o Subscribe a user to course: A student can be added by an Admin to a


course as a subscriber in this page.

 Report Manager: Report Manager Area is an area that admin can see all the
reports and manage them as date, time and also manage vote category and
question category.

o General Reporting: In this page admin can see reports of courses and
classes in a period of time or on a specific date. Observation of reports
in Excel can be done by exporting the provided reports as CVS in
Microsoft Excel.

o User Reporting: Admin can provide all user- related reports in this
page. Reports can be filtered by student id, student name, id course that
has been taken by a student, course category, course name and etc.

36
Same as General Reporting, an admin can export user reporting as CVS
in Microsoft Excel.

4.6.2 Instructor

 Login page: The instructor logs in the LMS system website which gives him
an option to login either as any type of users. Depending on the type of user an
instructor is logged in, and provision of the correct login details, the system
directs the instructor to the next screen.

 Course presentation: In this page instructor can see course information, and
description of courses. Also instructor is allowed to create a file for the projects
and different materials related to courses.

o Add project file: A created project file includes the defined projects
for the students to do. Each project follows by a maximum grade,
description and due date.

o Add course material file: The file includes all the information about
courses such as presentation time, and table of contents.

o Calendar: An instructor is able to manage the calendar by scheduling


meetings and appointments, his/her available time, class reminders, and
assignments due date.

o Modify course information: Instructor can modify the information of


courses in this page. Some of this information can be mentioned as:
status of courses, language, and course difficulty. Moreover,
descriptions can be edited and exams date for mid or end of semester
can be specified in this page.

 Message: This page is available for an instructor to track all the messages sent
from different users. Individual or group emails can be sent to group of
students who have subscribed for a particular course.

o Send message: An electronic mail message can be sent to one person, a


group of students who have subscribed for a course, or all the students.

37
In the other world, different access levels have been considered for an
instructor to send an email.

o Attachment: Mail messages can include attachments of different


formats such as tables, pictures, zip files, etc.

o Delete message: Mail messages can be deleted from inbox at any time
by an instructor.

 Forum: Instructor can create a discussion forum. This forum is a useful


communication environment for students to discuss about different subject and
get guidelines from the others. Access rights can be defined for different group
of students. An instructor is able to modify or delete a forum at any time.

o Add new forum: Each forum follows by a title and an introduction of


the permitted activities or discussions.

o Modify a forum: An instructor is able to modify the forum


requirements and modify the group rights to access the forum.
Instructor can also modify forum title and description.

o Delete forum: Groups can be deleted when their lifetime is over or


when there is no more activity.

o Insert new discussion: Topics for discussions can be inserted in the


groups by instructors.

 Project: Project page allows an instructor to define and create new public
projects to be done by students. Modification and deletion of projects is
another available feature in this page.

o Create new project: Instructor can create a new public project for
student with options.

o Modify Project: Modification can be done on the title and projects’


description.

o Remove Project: Instructor can remove project from project list.

38
 Chart: this component allows conducting online sessions among students and
instructors. Sending voice, text chat, webcam, whiteboard are the most
important features of this section that can help users to communicate each
other very easily. This section is also modified by level of permission which
can help instructor to control and manage students during the online session.

 Group: Grouping the students is provided to an instructor via this page. Each
group page is associated with the following features:

o Create Group: Instructor can create a group for student and he/she has
to choose a name for group, write a description for the group and select
student for that group.

o Modify Group: Properties of a group can be modified whenever it is


needed.

o Modify user list: Instructor can modify users in related group or add a
member.

o Delete Group: Instructor can delete groups from group list.

 Lessen: In this section instructor can see lessen.

 Advice: In this section instructor can write an advice to users.

o Create advice: Instructor can create an advice to users

o Modify advice: instructor can modify advice at text editor.

o Modify receiver: instructor can modify receiver users.

 Note: In this section instructor can write a note to users.

o Create Note: Instructor can create a note to users

o Modify Note: Instructor can modify note at text editor.

o Modify receiver: Instructor can modify receiver users.

 Authoring: In this section instructor can upload lessens to classroom

39
 Statistics: Statistics indicate list of students registered in a course, students’
activities, and the schedule for mid-semester or final exams. These statistics
can then be sent to notify students for example about the exams.

o Exam Uploaded: Instructor can upload exam file in statistics for


students.

 Manage Menu: This function lets an instructor to add, change, and delete a
menu and allocate a location for a menu.

4.6.3 Student

 Login page: Given a user name and password a studen is able to login into the
system. According to the answer, and provision of the correct login details, the
system directs the student to the next screen.

 Course presentation: In this page students can see all the information related
to a course such as description of a course, scheduled dayss and times for
courses. A student can only add file only for materials related to a course such
as assignments.

 Message: Mail messages for students include student inbox for all received
messages, and outbox for sent messages. A student can send email to all users
or users who are subscribed to a particular course.

o Send message: Student has access level to send message to all


students, the student that subscribed to course, write users manually or
to group.

o Attachment: Student can attach a file to the message.

o Delete message: Instructor can delete the message that sent to student.

 Forum: student can create a new discussion forum subject and reply to the
threads from other users.

o Insert new discussion: student can put new title and discussion for
each forum.

40
o Reply: student can reply a message about discussion on a specific
topic.

 Project: Defined projects can be views by students in this page. A student is


able to announce its interest on a particular project. Grouping the students for
projects is the responsibility of an instructor.

 Chat: Chat room is a palace that student can chat with instructor online and
see instructor webcam in one way..

 Lessen: In this section student can see lessen.

 Advice: In this section student only cane view advice.

 Note: In this section students can write a note to users.

o Create Note: Students can create a note to users

o Modify Note: Students can modify note at text editor.

o Modify receiver: Students can modify receiver users.

4.6.4 Tutor

Same as the other users, a tutor can enter into the system via login page by providing
the correct details. Access level of a tutor is defined the same as instructors. A tutor can add
project files, or course materials the same way as instructor. Calendar management is
provided for a tutor for scheduling. Mail message environment, chat rooms and forums with
the same functionalities for an instructor is available for a tutor. Different from an instructor,
a tutor is not allowed to create any groups or statistics for students or courses. So, the
functions provided to a tutor are not broaded as an instructor.

4.7 Use Case Diagram

Figure 1, depicts the use case diagram of our system. Use case diagram shows
different users who can be involved in the systems, their relation and their access to different
functions and pages of the system.

41
Figure 4-1 Use Case Diagrams

42
Figure 4-2 Use Case Diagrams

43
4.8 Use Case Description
4.8.1 Login (administrator)

Login

Administrator

Table 4-1 Admin Login

Use Case Description

Login User should have option to login the system

Actor Administrator

Preconditions Actor must go to admin page.

Main Flow of 1. Actor click on Administrator login button on the admin page
Events 2. The system opens a login form which contains Username,
password.
3. Actor fills the boxes that mentioned in above.
4. Actor presses the “Login” button.
5. The system sends query with relevant data to database server.
6. Database server check the data and send back the confirmation
7. The system shows the administrator desk page.
Alternate flow of events:

If the provided data is wrong the error message will come up and the
user should re enter the data.

Post
The user will be conducted to the admin page
Conditions

44
4.8.2 Server Configuration (administrator)

General
Manage
Administrator

Table 4‐2 Server configuration

Use Case Description

Configure
User can see and manage all Configuration of LMS Objectives
option

Actor Administrator

Preconditions Actor must login the system as administrator user

Main Flow of 1. Actor click configure option on General Manager page.


Events 2. The system will show list of configuration.
3. Actor can click on one of the Server Configuration - Diagnostic.
4. Actor can see server setting as :
Server IP, Server Port, Server Name, Server Admin Mail, Software
Used in This Server.
5. Actor can see version of MySQL that use for data base.
6. Actor can see information of the code software that be write with
PHP:
PHP Version, Safe Mode Status, Register Global Status, Magic
Quotes Gpc Statues, Max File Size Accepted for Upload, Max Post
Method Accepted, Max Execution Time, Domxml Statuse
Post
Nothing
Conditions

45
4.8.3 General Option (Administrator)

General
Manage
Administrator

Table 4‐3 General Option

Use Case Description

General
User can make on or off for warning and general option
Option

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks General option on General Manager page.


Events
2. The system will show list General Option
3. Actor can make on or off for website URL warning
4. Actor put reply e-mail address and define session lifetime
5. Actor clicks on save change button.
6. The system sends update query to database server
7. The system shows the acknowledgement message.
Settings correctly saved

If user cancels the process it will reset inserted data.

Post
Related record will be modified in database table.
Conditions

46
4.8.4 Interface Option (Administrator)

Table 4‐4 Interface Option

Use Case Description

Configure
User can edit the interface of LMS software
interface

Actor Administrator

Preconditions Actor must login the system as admin

Main Flow of 1. Actor clicks Interface Option on General Manager page.


Events 2. The system will show list of Interface Option.

3. Actor selects default language


4. Actor make on or off Multilanguage.
5. Actor select default template
6. Actor selects visual html text editor.
7. Actor can make on or off for allowing news publishing.
8. Actor can make on or off the active course list in home page

9. Actor clicks on save change button.


10. The system sends update query to database server
11. The system shows the acknowledgement message.

Settings correctly saved

If user cancels the process it will reset inserted data.

Post
Related record will added in database table.
Conditions

47
4.8.5 Edit Number of items per page (Administrator)

Table 4‐5 Edit Number of Items per page

Use Case Description

Display item
User can edit number of items per page that will display in LMS software
per page

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor click edit number of items per page on General Manage.
Events 2. The system will show list of edit number of items per page.
3. Actor can edit the number of items that will be show on a page for:
Advice, Forum, Discussion in forum, Message for discussion in
forum, Glossary, Web pages(admin), News, Messages, Notes, Test,
User, Number of semantics markup

4. Actor clicks on save change button


5. The system sends update query to database server
6. The system shows the acknowledgement message.

Settings correctly saved

If user cancels the process it will reset inserted data..

Post
Related record will added in database table.
Conditions

48
4.8.6 Add user (Administrator)

Table 4‐6 Add user

Use Case Description

Add User User can add new user with access level

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor click on user manager at User manager page.


Events 2. The system will show list gaps
3. Actor fill the gaps
4. Actor defines the access of user.
5. Actor click on insert button.
6. System adds record to the database.
7. System send email to the new user with below acknowledgement
Hello, you are now subscribed to our e-learning system as user,
your access data are the following
Website : http://localhost:90/university/
You are registered as user ID : WGD070042
Your password is : 12345

If user don’t fill gaps in correct way system shows the


acknowledgement message.

User id not specified

Post
Related record will added in database table.
Conditions

49
4.8.7 Modify User (Administrator)

Table 4‐7 Modify User

Use Case Description

Modify User User should have ability to modify user in system

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor click on manager users at User manager page.


Events 2. The system shows list of user.
3. Actor must choose user.
4. Actor click on modify icon to edit user.
5. System goes to next page.

6. Actor fills the gaps


7. Actor defines the access of user.
8. Actor can upload user’s picture.
9. Actor clicks on save modification button.

10. Database server stores modification data and sends back the
acknowledge message with mail.
Your user data has been changed, new data are
Website : http://localhost:90/university/
You are registered as user ID : WGD070042

Post
Related records will added in database table.
Conditions

50
4.8.8 Reactive User (Administrator)

Table 4‐8 Reactive User

Use Case Description

Reactive User User can reactive user.

Actor administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor on manage user at User manager page.


Events 2. The system shows list of user.
3. Actor must choose user.
4. Actor click on reactive icon.
5. System goes to next page.
6. System shows this acknowledgement :

Are you sure you need to reactivate this user


WGD070056 [ ]
[ Yes, reactivate | No, don't reactivate ]

7. Actor can click on yes choice to reactive the user


8. If the actor click on yes, the user will be go on reactive user and
system backs to previous page.
9. System adds record to the database.
10. If the actor clicks on no, system goes to previous page without any
changes.

Post
Related record will added in database table.
Conditions

51
4.8.9 Inactive user (Administrator)

Table 4‐9 Inactive User

Use Case Description

Inactive User User can Inactive user.

Actor administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor on manage user at User manager page.


Events 2. The system shows list of user.
3. Actor must choose user.
4. Actor click on Inactive icon.
5. System goes to next page.
6. System shows this acknowledgement :

Are you sure you need to inactive the user?

WGD070056 [ ]

[ Yes | No ]

1. Actor can click on yes choice to inactive the user


2. If the actor clicks on yes, the user will go on reactive user and
system backs to previous page.
3. System adds record to the database.
4. If the actor clicks on no, system goes to previous page without any
changes.

Post
Related record will added in database table.
Conditions

52
4.8.10 Send mail (Administrator)

Table 4‐10 Send Mail

Use Case Description

Send Mail User can send mail to all user, specific user / access level

Actor administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor click on send mail at User manager page.


Events 2. The system will show five searches filed.
3. Actor can fill only one searches filed or more.
4. Actor can search by year entrance semester.
5. Actor click on search button.
6. The system will be shoe list of user that actor wants to send mail.
7. Actor select user that be shown.
8. After select user actor must add selected user.
9. After add selected user actor can
Leave selected.
Send Empty card.
Send e-mail.

10. If actor click on leave selected, users that add on list, will be leave
the list.
11. If actor click on send Empty card, system will send an empty mail.
12. If actor clicks on send e-mail, system will go to the next page.
13. At the next page, actor should write a subject and text.
14. Actor should click on send button.
15. If actor selected user, write a subject and text, the system will show
the acknowledgement :
Successful
16. If actor don’t select user , the system will show the
acknowledgment:
No receivers has been selected

Post
Related record will be modified in database table.
Conditions

53
4.8.11 Create New Group (administrator)

Table 4‐11 Create New Group

Table 4-12 Description


Add
Supervision
fieldUse Case

Create New
User can create new group
Group

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Group management at User manager


Events 2. Actor clicks on create new group.
3. System will go to the next page.
4. Actor chooses a name for group.
5. Actor writes a description at description area.
6. Actor click on send button.
7. System adds record to the database.
8. System will back to pervious page.

Post
Related record will be modified in database table.
Conditions

54
4.8.12 Add to group (print user)

Table 4‐13 Add to group

Use Case Description

Add new user User can add user to the group

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor click on Group Management at User manager.


Events 2. Actor click on add to group icon
3. System will go to next page.
4. Actor can search user by: Group , Only the level, User id, Surname
5. Actor clicks on search button
6. System will show the list of users.
7. Actor select user.
8. Actor add selected user to card.
9. Actor can leave selected
10. Actor can send empty card to user.
11. Actor can assign to group.
9. System adds record to the database.
12. System will back to previous page.

Post
Related record will be modified in database table.
Conditions

55
4.8.13 Remove from group (Administrator)

Table 4‐14 Remove from Group

Use Case Description

Remove user User can remove user from group.

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on group management at User manager page.


Events 2. The System will show of group’s list.
3. Actor click on remove from group icon.
4. System will go to the next page.

5. Actor can search user by: Group , Only the level, User id, Surname
6. Actor clicks on search button
7. System will show the list of users.
8. Actor select user.

9. Actor add selected user to card.


10. Actor click on Remove selected from group.

11. System adds record to the database.


12. System will back to previous page.

Post
Related record will be modified in database table.
Conditions

56
4.8.14 Edit Group (Administrator)

Table 4‐15 Edit Group

Use Case Description

Edit Group User can Edit group

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on group management at User manager page.


Events 2. The System will show of group’s list.
3. Actor click on Edit icon.
4. The system goes to next page.
5. Actor can edit the name of group, description
6. Actor click on send button.
7. System adds record to the database.
8. System will back to previous page.
9. The system shows the acknowledgement message.

Insert correct

Post
Related record will be modified in database table.
Conditions

57
4.8.15 Delete Group (Administrator)

Table 4‐16 Delete Group

Use Case Description

Delete Group User can delete group

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on group management at User manager page.


Events 2. The System will show of group’s list.
3. Actor click on Delete icon.
4. The system goes to next page.
5. System shows this acknowledgement :

Are you sure you need to delete this group?


Name : Master of Information Technology1
[ Yes, delete | No, go back ]
6. Actor can click on Yes.
7. System adds record to the database.
8. System goes back to previous page and shows the
acknowledgement:
Removal is correct
9. Actor can click on NO.
10. System goes back to pervious page without any
acknowledgement.

Post
Related record will be modified in database table.
Conditions

58
4.8.16 Add a course category (Administrator)

Table 4‐17 Add a course category

Use Case Description

Add a
User can add a course category
category

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Course Categories at Course manager page.


Events 2. Actor click on add category.
3. The system will go to the next page.
4. Actor must choose a name
5. Actor can write a description.
6. Actor click on create button.
7. System adds record to the database
8. The system goes back to previous page.
Post
Related record will be modified in database table.
Conditions

59
4.8.17 Edit category (Administrator)

Table 4‐18 Edit Category

Use Case Description

Edit a
User can edit a category
category

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Course Categories at Course manager page.


Events 2. The System will show list of course categories.
3. Actor can click on edit icon.
4. The system will go to the next page.
5. Actor can edit the name of course category and description.
6. Actor clicks on save button.
7. System adds record to the database.
8. The system goes back to previous page.
Post
Related record will be modified in database table.
Conditions

60
4.8.18 Delete category (Administrator)

Table 4‐19 Delete Category

Use Case Description

Delete a
User can delete a category
category

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Course Categories at Course manager page.


Events 2. The System will show list of course categories.
3. Actor can click on delete icon.
4. The system will go to the next page.
5. System shows this acknowledgement :

Are you sure you need to delete this category?


Name : Master of Software Engineering
[ Yes,delete | No,back ]
6. Actor can click on Yes.
7. System adds record to the database.
8. System goes back to previous page and shows the
acknowledgement:
Delete is correct
9. Actor can click on NO.
System goes back to pervious page without any
acknowledgement

Post
Related record will be modified in database table.
Conditions

61
4.8.19 Add Course (Administrator)

Table 4‐20 Add Course

Use Case Description

Add a course User can a course

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Courses at Course manager page.


Events 2. Actor click on create a new course.
3. The system will go to the next page.
4. Actor must fill all gaps.
5. Actor must choose difficulty level for new course
6. Actor must choose status of new course.
7. Actor must choose language for new course.
8. Actor must choose semester that the course will offered.
9. Actor must choose course category.
10. Actor can get access level for uploading file.
11. Actor click on insert page.
12. System adds record to the database.
13. System shows acknowledgement.

. Post
Related record will be modified in database table.
Conditions

62
4.8.20 Modify Course (Administrator)

Table 4‐21 Modify Course

Use Case Description

Modify a
User can modify a course
course

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Courses at Course manager page.


Events 2. The System will show list of course.
3. Actor clicks on modify icon
4. The system will go to the next page.
5. Actor must fill all gaps.
6. Actor can modify difficulty level for new course
7. Actor can modify status of new course.
8. Actor can modify language for new course.
9. Actor can modify semester that the course will offered.
10. Actor can modify course category.
11. Actor can modify access level for uploading file.
12. Actor click on apply change button.
13. System adds record to the database.
14. System shows acknowledgement.

. Post
Related record will be modified in database table.
Conditions

63
4.8.21 Delete course (Administrator)

Table 4‐22 Delete course

Use Case Description

Delete a
User can modify a course
course

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Courses at Course manager page.


Events 2. The System will show list of course.
3. Actor clicks on delete icon
4. The system will go to the next page.
5. System shows this acknowledgement.

Are you sure you need to delte the course?

Name : Computer Network


Code : WXGE6105

[ Yes,delete | No, back ]

6. Actor can click on Yes.


7. System adds record to the database.
8. System goes back to previous page and shows the
acknowledgement:
Delete is correct
9. Actor can click on NO.
System goes back to pervious page without any
acknowledgement

. Post
Related record will be modified in database table.
Conditions

64
4.8.22 Add Subscribe users to a course (Administrator)

Table 4‐23 Add Subscribe users to a course

Use Case Description

Add user to
User can add user to a course as subscribe
course

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Subscribe user to a course at Course manager


Events page.
2. The System will show list of course.
3. Actor clicks on Subscribe icon
4. The system will go to the next page.
5. Actor can search user by: Group , Only the level, User id,
Surname
6. Actor clicks on search button
7. System will show the list of users.
8. Actor select user.
9. Actor add selected user to card.
10. System adds record to the database.
11. Actor can unmark selected
12. Actor can send empty card
13. Actor can go on level selection
14. The system will go to the next page
15. Actor can select the access level for user
16. Actor click on subscribe user button
17. . System adds record to the database.
18. The system goes back to subscribe user to course page.

. Post
Related record will be modified in database table.
Conditions

65
4.8.23 Modify Subscribe users to a course (Administrator)

Table 4‐24 Modify Subscribe users to a course

Use Case Description

Modify user to
User can Modify user to a course as subscribe
course

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Subscribe user to a course at Courser manage


Events page.
2. The System will show list of course.
3. Actor clicks on modify icon
4. The system will go to the next page.
5. Actor select user.
6. Actor click on modify subscription.
7. The system will go to the next page.
8. Actor can select the access level for user
9. Actor click on apply modification button
10. The System adds record to the database.
11. The system show acknowledgement:
Modify Ok

. Post
Related record will be modified in database table.
Conditions

66
4.8.24 Delete Subscribe users to a course (Administrator)

Table 4‐25 Delete Subscribe users to a course

Use Case Description

Delete user to
User can delete user to a course as subscribe
course

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on Subscribe user to a course at Course manager


Events page.
2. The System will show list of course.
3. Actor clicks on delete icon
4. The system will go to the next page.
5. Actor select user.
6. Actor click on delete
7. The System adds record to the database.
8. The system show acknowledgement :
Deleting Ok

. Post
Related record will be modified in database table.
Conditions

67
4.8.25 General Reporting (Administrator)

Table 4‐26 General Reporting

Use Case Description

Course
User can view reporting of course
reporting

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on general reporting at Report Manager Page


Events Course manage page.
2. Actor choose date from specific day/month/year
3. Actor choose date to specific day/month/year
4. Actor clicks o watch report button.
5. The system will go to the next page.
6. The system shows report s.
7. Actor can search reports.
8. Actor can export report as CVS to excel.

. Post
Related record will be modified in database table.
Conditions

68
4.8.26 User Reporting (Administrator)

Table 4‐27 User Reporting

Use Case Description

User reporting User can view reporting of Users

Actor Administrator

Preconditions Actor must login the system.

Main Flow of 1. Actor clicks on User reporting at Report Manager Page Course
Events manage page.
2. Actor choose date from specific day/month/year
3. Actor choose date to specific day/month/year
4. Actor clicks o watch report button.
5. The system will go to the next page.
6. The system shows report s.
7. Actor can search reports.
8. Actor can export report as CVS to excel.

. Post
Related record will be modified in database table.
Conditions

69
4.8.27 Login (Instructor, Tutor, Student)

Table 4‐27 Login (Instructor, Tutor, Student)

Use Case Description

Login User should have option to login the system

Actor Instructor, Tutor, Student

Preconditions Actor must go to main(login) page.

Main Flow of 1. The system opens a login form which contains Username, password
Events and Security Code

2. Actor fills the boxes that mentioned in above.

3. Actor presses the “Login” button.

4. The system sends query with relevant data to database server.

5. Database server check the data and send back the confirmation

6. The system shows the main menu page.

Alternate flow of events:

If the provided data is wrong the error message will come up and the
user should re enter the data.

Post
The user will be conducted to the main menu page
Conditions

70
4.8.28 Add an advice

Table 4‐28 Add an advice

Use Case Description

Add an advice User should have option to login the system

Actor Instructor, Tutor,

Preconditions Actor must go to classroom page

Main Flow of 1. Actor must click on add an advice


Events
2. System goes to next page

3. Actor must choose a title for advice.

4. Actor can mark as important

5. Actor must write an advice on text editor.

6. Actor can send advice to group or all course users

7. Actor must press on insert button.

8. The system sends query with relevant data to database server

Post
The user will be conducted to the advice page
Conditions

71
4.8.29 Modify advice receiver

Table 4‐29 Modify Advice Receiver

Use Case Description

Modify advice
User should have option to login the system
receiver

Actor Instructor, Tutor,

Preconditions Actor must go to classroom page

Main Flow of 1. Actor must click on add Modify Receiver Icon


Events
2. System goes to next page

3. Actor cab search user with two options.

User Id, Group user

4. Actor can choose users

5. The system sends query with relevant data to database server server

Post
The user will be conducted to the advice page
Conditions

72
4.8.30 Modify Advice

Table 4‐30 Modify Advice

Use Case Description

Modify advice User should have option to login the system

Actor Instructor, Tutor,

Preconditions Actor must go to classroom page

Main Flow of 1. Actor must click on Modify advice icon


Events
2. System goes to next page

3. Actor can change title for advice.

4. Actor can change writing advice text on text editor.

5. Actor can edit users to send advice.

6. Actor must press on save change button.

7. The system sends query with relevant data to database server

Post
The user will be conducted to the advice page
Conditions

73
4.8.31 Delete advice

Table 4‐31 Delete advice

Use Case Description

Modify advice
User should have option to login the system
receiver

Actor Instructor, Tutor,

Preconditions Actor must go to classroom page

Main Flow of 1. Actor must click on add delete Icon


Events
2. System goes to next page

3. The system shows acknowledgment:

Advice title: "Take course before april 2010"


Text: To: all users
It's better all student take FIT course before first of April 2010, because
after that the course will be close.

Yes, delete | No, back

4. Actor can click on NO, back


5. The system will back to the advice page
6. Actor can click on Yes, delete
7. The system will back to the advice page
8. The advice already is deleted.
9. The system sends query with relevant data to database server.

Post
The user will be conducted to the advice page
Conditions

74
4.8.32 Write a new note

Table 4‐32 write a new note

Use Case Description

Write a new
User should have option to login the system
Note

Actor Instructor, Tutor, student

Preconditions Actor must go to classroom page

Main Flow of 1. Actor must click on Write a new Note link


Events
2. System goes to next page

3. Actor must choose a title for note.

4. Actor must write a note on text editor.

5. Actor must press on insert button.

6. The system sends query with relevant data to database server

Post
The user will be conducted to the advice page
Conditions

75
4.8.33 Delete Note

Table 4‐33 Delete Note

Use Case Description

Modify advice
User should have option to login the system
receiver

Actor Instructor, Tutor, student

Preconditions Actor must go to classroom page

Main Flow of 1. Actor must click on add delete Icon


Events
2. System goes to next page

3. The system shows acknowledgment:

Are you sure you need to delete this note

Title : Need Book

[ Yes, delete | No, keep it ]

4. Actor can click on NO, back


5. The system will back to the Note page
6. Actor can click on Yes, delete
7. The system will back to the Note page
8. The advice already is deleted.
9. The system sends query with relevant data to database server.

Post
The user will be conducted to the advice page
Conditions

76
4.8.34 Modify Note

Table 4‐34 Modify Note

Use Case Description

Modify advice User should have option to login the system

Actor Instructor, Tutor,

Preconditions Actor must go to classroom page

Main Flow of 1. Actor must click on Modify Note icon


Events
2. System goes to next page

3. Actor can change title for Note.

4. Actor can change writing Note text on text editor.

5. Actor must press on save button.

6. The system sends query with relevant data to database server

Post
The user will be conducted to the Note page
Conditions

77
4.8.35 Send a message (Instructor, Tutor, Student)

Table 4‐35 Send a message

Use Case Description

Send a
User should have option to login the system
Message

Actor Instructor, Tutor, Student

Preconditions Actor must go to message page.

Main Flow of 10. Actor must click on send a message link


Events
11. System goes to next page

12. Actor can choose user that he/she wants to send a message:

User manual selection

All the users subscribed to the course

All students

Group

13. Actor can choose the priority of message in Very High, High,
Normal, Low, Very Low
14. Actor must choose a subject for message
15. Actor can edit the txt in txt editor.
16. Actor can record voice with select voice option.
17. If actors choose voice option for recoding voice, he/she must click
on record button.
18. Actor can attach a file to message.
19. Actor click on send button to send message.
20. The system show acknowledgement:
Message correctly sent.

Post
The user will be conducted to the sent message page
Conditions

78
4.8.36 Delete Message (Instructor, Tutor, Student)

Table 4‐36 Delete a Message

Use Case Description

Delete a
User should have option to login the system
Message

Actor Instructor, Tutor, Student

Preconditions Actor must go to message page.

Main Flow of 1. Actor can select message or messages


Events
2. Actor click on icon click

3. The LMS system goes to the next page

4. The system shows acknowledgment:

Confirm message delete

Subject "assignment alert"

[ Yes, delete | No, back ]

5. Actor can click on NO, back

6. The system will back to the Forum page

7. Actor can click on Yes, delete

8. The system will back to the Forum page

9. The forum already is deleted.

10. The system sends query with relevant data to database server

Post
The user will be conducted to the sent message page
Conditions

79
4.8.37 Add a New Forum (Instructor, Tutor)

Table 4‐37 Add a New Forum

Use Case Description

Add a New
User should have option to login the system
Forum

Actor Instructor, Tutor,

Preconditions Actor must go to Forum page.

Main Flow of 1. Actor must click on add new forum link


Events
2. The LMS system goes to the next page.

3. Actor must choose a title for forum.

4. Actor can write a description for forum.

5. Actor can edit description txt with txt editor.

6. Actor can add picture, sound and video file to the forum with txt
editor in description area.

7. Actor must click on insert button.

8. The system sends query with relevant data to database server

9. System goes back to forum page.

Post
The user will be conducted to the forum page
Conditions

80
4.8.38 Modify Forum (Instructor, Tutor)

Table 4‐38 Modify Forum

Use Case Description

Modify Forum User should have option to login the system

Actor Instructor, Tutor,

Preconditions Actor must go to Forum page.

Main Flow of 1. Actor must click on modify icon


Events
2. The LMS system goes to the next page.

3. Actor can change the title of forum.

4. Actor can change the description writing.

5. Actor can edit description txt with txt editor.

6. Actor can add picture, sound and video file to the forum with txt
editor in description area.

7. Actor must click on save button.

8. The system sends query with relevant data to database server

9. System goes back to forum page.

Post
The user will be conducted to the forum page
Conditions

81
4.8.39 Delete a Forum (Instructor, Tutor)

Table 4‐39 Delete a Forum

Use Case Description

Delete Forum User should have option to login the system

Actor Instructor, Tutor,

Preconditions Actor must go to Forum page.

Main Flow of 1. Actor must click on delete icon


Events
2. The LMS system goes to the next page.

3. The system shows acknowledgment:

Are you sure you need to delete this forum

Title : FIT , New Hardware


Description :

In this forum we introduce , discuss about all new computer's


hardware

[ Yes, delete | No, back ]

4. Actor can change the title of forum.

5. Actor can change the description writing.

6. Actor can edit description txt with txt editor.

7. Actor can add picture, sound and video file to the forum with txt
editor in description area.

8. Actor must click on save button.

9. The system sends query with relevant data to database server

10. System goes back to forum page.

Post
The user will be conducted to the forum page
Conditions

82
4.8.40 Chat

Table 4‐40 Chat

Use Case Description

Chat
User should have option to login the system

Actor Instructor, Tutor, student

Preconditions Actor must go to Forum page.

Main Flow of 1. Actor must click chat link


Events
2. The LMS system goes to the chat page

3. The server state goes to green.

4. Actor must click on enter button.

5. The LMS system goes to chats program.

6. Actor can chat with others

7. Actor can use whiteboard.

8. Actor can record video.

9. Actor can see users that are online.

Post
The user will be conducted to chats start page
Conditions

83
4.8.41 Create a Group

Table 4‐41 Create a Group

Use Case Description

Create a
Group User should have option to login the system

Actor Instructor

Preconditions Actor must go to Group page.

Main Flow of 1. Actor must click Create a group link


Events 2. The LMS system goes to the Next page
3. The server state goes to green.
4. Actor must choose a name for Group.
5. Actor can write a description..
6. Actor can edit description txt with txt editor.
7. Actor can add picture, sound and video file to the forum with txt
editor in description area.
8. Actor must select users to subscribe to group.
9. Actor must click on create group
10. The system sends query with relevant data to database server.
11. The LMS system goes back to main groups’ page.

Post
The user will be conducted to group page
Conditions

84
4.8.42 Modify User List in Group

Table 4‐42 Modify User List in a Group

Table 46 Use Description


Case

Modify user User should have option to login the system and can modify the user that are
list in a group join in this group or want to join.

Actor Instructor

Preconditions Actor must go to Group page.

Main Flow of 1. Actor must click Modify User list in a group link
Events 2. The LMS system goes to the Next page
3. The actor must search the user with user ID.
4. The LMS system display user
5. Actor can click on user id
6. The user join to member group
7. The system sends query with relevant data to database server

Post
The user will be conducted to group page
Conditions

85
4.8.43 Modify Group

Table 4‐43 Modify Group

Use Case Description

Modify group User should have option to login the system and can modify group

Actor Instructor

Preconditions Actor must go to Group page.

Main Flow of 1. Actor must click Modify group link


Events 2. The LMS system goes to the Next page
3. Actor can change the title of Group.
4. Actor can change the description writing.
5. Actor can edit description txt with txt editor.
6. Actor can add picture, sound and video file to the forum with txt
editor in description area.
7. Actor must click on apply Modification button.
8. The system sends query with relevant data to database server
9. System goes back to group page.

Post
The user will be conducted to group page
Conditions

86
4.8.44 Delete Group

Table 4‐44 Delete Group

Use Case Description

Delete group User should have option to login the system and can Delete group

Actor Instructor,

Preconditions Actor must go to Group page.

Main Flow of 1. Actor must click Delete group icon


Events 2. The LMS system goes to the Next page.
3. The system shows acknowledgment:

Name : Software Engineering Group


Description : Software Engineering group

[ Yes, delete | No, back ]

4. Actor can click on NO, back


5. The system will back to the Group page
6. Actor can click on Yes, delete
7. The system will back to the group page
8. The group already is deleted.
9. The system sends query with relevant data to database server

Post
The user will be conducted to group page
Conditions

87
4.8.45 Statistics

Table 4‐45 Statistics

Use Case Description

Statistics User should have option to login the system and can get marks to students
and upload exam result

Actor Instructor,

Preconditions Actor must go to Statistics page.

Main Flow of 1. Actor must click statistics link


Events 2. Actor can click on browser and upload exam result on two
formats, HTML and EXCEL.
3. Actor can find user in two ways: one with user ID and another
one is sure name.
4. Actor can edit mid semester, final, course work and final grade.
5. Actor must click on edit button.
6. The system sends query with relevant data to database server.
7. The system shows acknowledgment:
DONE

Post
The user will be conducted to statistics page
Conditions

88
4.8.46 Add a category for the menu

Table 4‐46 Add a category for the menu

Use Case Description

Add category User should have option to login the system and can add a category for the
menu

Actor Instructor, Tutor

Preconditions Actor must go to Manage menu page.

Main Flow of 1. Actor must click mange menu link


Events 2. Actor can must click on add a category.
1. Actor must choose a name for menu .
2. Actor can choose the category image,
3. Actor can select user level that can access to this menu.
4. Actor must click on Create button.
5. The system sends query with relevant data to database server.
DONE

Post
The user will be conducted to manage menu page
Conditions

89
4.8.47 Modify Menu

Table 4‐47 Modify Menu

Use Case Description

Modify Menu User should have option to login the system and can add a category for the
menu

Actor Instructor, Tutor

Preconditions Actor must go to Manage menu page.

Main Flow of 6. Actor must click Modify icon.


Events 7. The LMS system goes to the next page.
8. Actor can change the menu name.
9. Actor can change the category image,
10. Actor can select user level that can access to this menu.
11. Actor must click on save change button.
12. The system sends query with relevant data to database server.
DONE

Post
The user will be conducted to statistics page
Conditions

90
4.8.48 Delete Menu

Table 4‐48 Delete menu

Use Case Description

Delete Menu User should have option to login the system and can Delete Menu

Actor Instructor, Tutor

Preconditions Actor must go to Group page.

Main Flow of 1. Actor must click Delete menu icon


Events 2. The LMS system goes to the Next page.
3. The system shows acknowledgment:

Confirm menu delete

Title : Course one

[ Yes, delete | No, back ]

4. Actor can click on NO, back


5. The system will back to the menu page
6. Actor can click on Yes, delete
7. The system will back to the nemu page
8. The menu already is deleted.
9. The system sends query with relevant data to database server

Post
The user will be conducted to menu page
Conditions

91
4.8.49 Logout (administrator, Student, Tutor, Instructor)

Table 4-49 Logout

Use Case Description

Login User should have option to login the system

Actor Administrator, God, Student, Tutor, Instructor

Preconditions Actor must first login the system.

Main Flow of 1. Actor press logout button.


Events 2. The system closed the session.
3. System shows the main page
Alternate flow of events:

If actor clicks on other user’s login page system automatically logout


user from the system

Post
The user will be conducted to main page.
Conditions

4.9 Non Functional Requirements

Nonfunctional requirement in software system engineering, a software requirement


that describes not what the software will do, but how the software will do it, for example,
software performance requirements, security, usability, etc.

4.9.1 User Interface Requirements

OPR system will provide a user interface that is intuitive and does not cause confusion
or ambiguity to the user. It is also preferable that the users expect what the system could
provide, and provide those expectations. The users should be able to easily find the features
without difficulties. In addition, the user interface should have Consistency of interface
between various modules. Each module should be designed with a similar look-and-feel, with
similar type of buttons and icons

92
4.9.2 4.7.2 Integrity:

Integrity is the quality of correctness, completeness, , soundness and compliance with


the intention of the creators of the data. It is achieved by preventing accidental or deliberate
but unauthorized insertion, modification or destruction of data in a database. Data integrity is
one of the six fundamental components of information security.

4.9.3 4.7.3 Usability:

In general usability refers to how well users can learn and use a product to
achieve their goals and how satisfied they are with that process. Also declare to users’
how to use the product quickly and easily to accomplish their tasks.

In my design we take some considerations like:

 Who are the users, what do they know?


 What do users want or need to do?
 What is the general background of the users?

So the administrator tools are considered as one of the easiest system in use.
As we know most users are familiar with windows operating system and Internet
Explorer, so this project used windows programs in the designing because of its
popularity and also it facilitates the user’s access to his/her requirement direct by
clicking buttons. Moreover, the interface has been designed clearly to give the users
easy view.

4.9.4 4.7.4 Flexibility:

The programmer and designer built the system regarding to the customer
requirements. The system should be flexible to upgrade, modify any part of the system
also flexible to change the users interface.

93
4.9.5 4.7.5 Availability

The system should be available as and when it is required as it will be


frustrating for practices to find it down when they want to register new user or during
other processes involved in registration.

4.9.6 4.7.6 Compatibility

The LMS system should operate on all the windows platforms and operating
systems and JAVA enabled web browser, for example, Internet Explorer, Firefox and
so on.

4.10 Hardware and Software Requirements:

The hardware and software requirements for system’s development environment are
stated in table 4.11 and table 4.2

Table 4‐50 Minimum Hardware requirement

Process Intel Pentium 4 process 2.6 GHz

Memory 512 RAM

Hard Disk 40 GB of HD space

Monitor SVGA or compatible

Input Device Keyboard , mouse

Others Network adapter , Printer

Table 4‐51 Software Requirements

Authoring tool Macromedia Dreamweaver, Editplus

Database Server MySQL

Operating System Any operating system. Microsoft


windows XP is recommended
Web Browser Firefox Mozilla
Microsoft Internet explorer 6.0 or above
Development language PHP

Media server Flash media server 2.0 or above

94
4.11 System Architecture:

LMS system will be using three–tier architecture. "The three-tier architecture is


intended to allow any of the three tiers to be upgraded or replaced independently as
requirements or technology change. For example, a change of operating system from
Microsoft Windows to UNIX would only affect the user interface code. Typically, the user
interface runs on a desktop PC or workstation and uses a standard graphical user interface,
functional process logic may consist of one or more separate modules running on a
workstation or application server, and an RDBMS on a database server or mainframe contains
the data storage logic.

Figure 4‐3 System Architecture

4.12 4.10 Database design

The database design for the system will be shown in the next page

 Learning-object: This component is for courses that be present and it includes


coursed, title, group id.

 Learning-user: This component is for all user profile information Such as user id,
first name, sure name, access level, sex, major and so on.

 Learning-course: This component is for specification of course such as course id,


category id, code, name and so on.
95
 Learning-course user: This component includes the specification of user that take
the course such as user id, course id, user level, status and so on.

 Learning-level: In this component we define access level with combine of number


and name.

 Learning-semester: This component defines semester level with combine of


number and name.

 Learning-group: This component includes all groups’ information such as group id,
name and group description.

 Learning-project: Include all components that the project needs such as project id,
course id, title, file, group id and so on.

 Learning-course file: This component includes all information that the file needs to
upload for specific course such as file id, course id, title, file, id group and so on.

 Learning-advice: This component includes all information about advice that


instructor posted to specific course with title. This component includes advice id,
course id, posted, title and so on.

 Learning-report: This component include all information that related to report


section such as enter id, course id, user id, session id, center time, IP address, active.

 Learning-message: In this component all information related to sending message to


user that taken a course such as message id, user id, and course id and reed flag.

 Learning-Note: This component includes all information that related to note section
such as idcourse, owner, title, text.

 Learnig-eform: This component includes all information that related to eform


section such as idcourse, name, date, field, data.

 Learnig_forum: This component includes all information that related to Forum


section such as idcourse, title, descp( description).

96
Figure 4‐4 DFD Diagram

97
Chapter 5: System Development and
Coding
5 Introduction

The whole system is designed using PHP. The database is designed using Microsoft
SQL Server 2008. Program code, databases and interfaces are constructed during the
development phase based on the design specification so as to ensure that the objectives of the
proposed system are met. The LMS System is made up of a collection of dynamic PHP web
pages hyperlinked together. Web server controls such as buttons, text boxes, radio buttons,
dropdown lists and data forms for displaying table format are included in the web pages.
Macromedia Dreamweaver 8 used as an editing tool for programming.

Figure 5‐1 Macromedia Dreamweaver

98
5.1 Login Page (Administrator)

The first page that the administrator wants to go inside of system is Login page. This
page designed just for administrator.

In top header is consist of University Malaya sign and also it shows this panel is for
admin. There are two empty blank for enter user id and password. There is one field that user
can choose language. After Administrator enters valid username, password, choose language
and click on login button system will show the admin desk which contains the available
functions of the administrator.

Figure 5‐2 Login Page (Administrator)

5.2 General Manage page (Administrator)

General manage page is the first page admin can see after login. This page displays
general manage function such as configure options, web page, Eform and new. Admin must
click on function to manage whole LMS system.

99
Configure Option

In this page admin can see four options for configuration. Configure Option page
display Server Configuration, General Option, Interface option and number of item per page.
Also second top header confirms this page is about Parameters configuration. For going inside
the option pages admin must click on option link.

Figure 5‐3 Configure Option

Server Configuration

Server configuration page display all information about LMS system server, coding
page and data base program version. Server setting shows to admin what server IP address,
which port is for webpage, name of server, information about server admin and the version of
software used in server.

MySQL Setting displayed version of MySQL used in LMS system.

Show PHPinfo is the section that displayed all coding information program that LMS
software wrote with that such as PHP version, maximum file size that PHP allows to upload
and also maximum post method.

100
Figure 5‐4 Server Configuration

General Option

This page is for configuration all LMS General Option. The administrator can give
allow to the user for LMS general option like as allow course selling, allow user tracking, aloe
who is online and so on. Admin can choose on or off for these option. Also in this option
admin can adjust website URL. There are another two felid for default e-mail replay address
and Session time.

101
Figure 5‐5 General Option Page

Interface option

A most important configuration for displaying whole LMS system, in this function
administrator can adjust default language that LMS system will show, allow to supporting
multi language. Choose website template and choose an editor for Visual Html txt.

Administrator can give news publishing and display active course list in homepage
allowance.

102
Figure 5‐6 Interface Option Page

Number of item per page

This option gives allowance to administrator that adjusts per each page how many
item displayed such as advice, news, message, users, web page and … .

Figure 5‐7 Number of item per page

103
5.3 User manager

This function is all about manage user, get them permission, send e-mail to them and
group management. In this function we can create user, modify, delete, get them difference
access level and all of things is related to users.

In the main page of user manager, admin can see four options for doing task. Manage
user, Send e-mail, admin permission and last one is Group management.

Manage user

This page displays all users that are included in LMS system with all information.
Administrator able to search user with 5 options: Group, users’ level, Major, User ID, User
name. Also administrator has other option to create new user, modify, delete, reactive and
inactive users.

Figure 5‐8 Manage user page

Add user

This page is one of important page because of admin can add new user to LMS
system, get them difference access level.

104
Admin in this page must fill all fields for creating new user such as user id (Normally
we use a specific number for user id), name, sure name, password for login to system, confirm
password, choose sex, choose the semester that user on it and … .

After admin fill all data in required fields, must click on insert button to add data on
database. The fields that marked by star (*) are necessary to fill.

Figure 5‐9 Add user page

Delete user acknowledgment page

Administrator can delete selected Users in the Manage User Page. This action, delete,
is confirmed in the Acknowledgment Page which shows you a message to ensure whether you
want to delete the selected users or not. There are two options, yes and no. If administrator
clicks Yes, the user will delete from LMS system, and No, the user will remain in the system.

105
Figure 5‐10 Delete Acknowledgement page

Modify user

Administrator can modify selected Users in the Manage User Page. In this page
administrator can modify all users’ information such as user id, name, surname, and
password. Also administrator can change user access level.

In modify user page admin has access to upload picture and also add courses to users.
This page has more option that add user page.

106
Figure 5‐11 Modify User Page

Reactive and Inactive page

These pages are for make user active or inactive. This option gives opportunity to
admin control users that not present in current semester or have some problems. When some
users are inactive they cannot take courses or use LMS system. Admin must reactive those
users to make them active for using LMS system.

This action, reactive and inactive uset, is confirmed in the Acknowledgment Page
which shows you a message to ensure whether you want to reactive or inactive the selected
users Yes or Not.

107
.

Figure 5‐12 Reactive and Inactive users page

5.4 Send E‐mail (configuration page)

In this page administrator can selected users to send mail to them. There are 5 options
that administrator can search users: group, Level, Major, User ID and User Name. After
admin finds users he/she has to select users and add them to selected users. This option gives
opportunity to admin for choosing users and sends E-mail only to selected user.

Also administrator can send empty E-mail to users or leave user that already has been
selected.

108
Figure 5‐13 Send E‐mail (configuration page)

Send E-mail page

In this page administrator can write an E-mail, choose subject for e-mail. There is a
text editor that admin can write e-mail on that and edit the text body. Receiver area shows
users that receive this e-mail.

109
Figure 5‐14 Send E‐mail

Admin Permission

Some time user needs high level access, such as instructor or maybe LMS system
needs two administrators for maintenance. In this page administrator gives high level access
exactly same as admin access to specific user.

Admin can search users with two options: user ID and User name and after that give
them admin level.

110
Figure 5‐15 Admin permission page

Group management (main page)

This page displays all groups that already exist and from this page administrator can
view all groups, start to create a new group, modify and delete.

111
Figure 5‐16 Group Management Pages

Create a new Group

In this page admin is able to create a group. Admin has to choose a title for group and
write a description. Also there is a text editor that administrator can edit body description or
add picture, movie, draw table and so

112
Figure 5‐17 create group page

Add user to group

Administrator is able to add users to specific group with searching users and selected
them. There are four options to search users: group, access level, user ID and user name. After
admin can find users he/she has to select users and add them to selected user card. Finally
admin can assign users to group.

113
Figure 5‐18 Add users to group page

Modify Group

Administrator is able to modify specification of group. Admin can change group title
and group description and also edit description by text editor.

114
Figure 5‐19 Modify Group page

Delete group acknowledgment page

Administrator can delete group in the Group management Page. This action, delete, is
confirmed in the Acknowledgment Page which shows you a message to ensure whether you
want to delete group or not. There are two options, yes and no. If administrator clicks Yes, the
group will delete from LMS system, and No, the group will remain in the system.

115
Figure 5‐20 Delete Group page

5.5 Course manager

Administrator has opportunity to manage courses in this page. There are three items
that admin can configure them; course categories, courses and subscribe users to a course.

Course Category

This page gives a view of all course categories that are in LMS system. Admin can see
existing course category in this page and from this page admin can start to modify and delete
group.

116
Figure 5‐21 course category pages

Add a course category

Admin can create a course category in this page. Admin must choose a name for
category and write a description for course category. Courses are subset of course category.

Figure 5‐22 course category pages

117
Delete course category

Administrator can delete course category in the course category Page. This action,
delete, is confirmed in the Acknowledgment Page which shows you a message to ensure
whether you want to delete course category or not. There are two options, yes and no. If
administrator clicks Yes, the course category will delete from LMS system, and No, the
course category will remain in the system.

Figure 5‐23 Delete Course Category Page

Create New Courses

In this page admin is able new course for LMS system. Admin must fills in all felids,
write course name, how many credit it has, Also admin can choose menu display, which
category the course does in, course statues, course difficulty, language and major.

There is text editor that administrator can write a description for course, meanwhile
admin can give access level which user can upload file in course.

118
Figure 5‐24 Create new course page

Change course menu

Administrator is able to change course menu in this page to two difference aspect,
Collaborative and complete. In collaborative aspect some menus are canceled and some
menus collaborated with others menu but in complete aspect , all menus are exist and they are
separate.

119
Figure 5‐25 change menu course page

Modify course

Administrator is able to edit all information about course that already has been created.
There are some field, some choices and description area. Administrator can modify all these
and after that save new information for course. He/she can change status course, activity,
difficulty, course category and so on.

120
Figure 5‐26 Modify course page

Delete course

Administrator can delete course in the course Page. This action, delete, is confirmed in
the Acknowledgment Page which shows you a message to ensure whether you want to delete
course or not. There are two options, yes and no. If administrator clicks Yes, the course will
delete from LMS system, and No, the course will remain in the system.

121
Figure 5‐27 Delete course page

5.6 Subscribe user to a course

Administrator is able to add users to specific course with searching users and selected
them. There are four options to search users: group, access level, user ID and user name. After
admin can find users he/she has to select users and add them to selected user card. Finally
admin can assign users to course.

122
Figure 5‐28 Subscribe user to a course

Modify and Delete subscribe user to a course

In modify page administrator can modify the user access level to a course and in delete
subscribe user to course admin is able to delete selected user from specific course.

123
Figure 5‐29 Subscribe course page

Figure 5‐30 Modify subscribe course page

124
5.7 General and user Reporting

These two pages are for getting general and user report. In these pages admin is able
to define a period time whit day/month/year and watch report on that period.

Figure 5‐31 General reporting page

125
Figure 5‐32 View of General reporting page

5.8 Login Page (Instructor, Tutor, Student)

This is the first page that all users see (except administrator). This page is separate
from admin page so only instructor, tutor and student can login. Users have to enter valid
username; password and security code system will show the user’s desk with contains the
available functions of the users (Instructor, Tutor and Student).

126
Figure 5‐33 login page (Instructor, Tutor and student)

5.9 Course list (Instructor, Tutor and student)

This the first page after user clicks on the login page. In this page users can see
courses that they are attending. User s can see welcome message at the top of the page also
there is briefly information about each course that users are attending such as course activity
and difficulty.

127
Figure 5‐34 Course list page (Instructor, Tutor and student)

5.10 Course menu (Instructor, Tutor and student)

The first page will be show after course list is course menu; this page includes course
information, description, advice, project, materials, add files, add materials, view messages
and calendar. Also instructor and tutor can modify the course information. We describe briefly
all function I below:

128
Figure 5‐35 Course presentation page (Instructor, Tutor and student)

Add file to project:

With this option instructor and tutor can add file to project. Actor has to choose
subtitle. Instructor also can upload assignment and clarify deadline, give grade and write
description about assignment.

129
Figure 5‐36 Add file to project (Instructor, Tutor)

Modify Course Information

With this option instructor and tutor can give mark and final mark, modify difficulty,
choose language and modify activity also actor can write a description over course.

Figure 5‐37 Modify course information (Instructor, Tutor)

130
Add file to material (student)

With this option students can upload a file and write a description for file.

Figure 5‐38 Add file to Material (student)

5.11 Class Room (Instructor, Tutor, student)

In this page is related to lessen that be present for course. This page includes advice,
lessen and note.

Advice

Instructor and tutor can write an advice for presented course, modify advice, modify
receivers and delete advice.

131
Figure 5‐39 Advice page

Figure 5‐40 Write Advice Page

132
Note

Write a note for specific course with instructor and tutor. Also modify and delete note.

Figure 5‐41 Note Page

133
Figure 5‐42 View Note

5.12 Community

In this page there are five functions for community between users in LMS software
such as message, chat, Forum, project and group.

Message

This function is for all users, users can send private message or public message to
other users. Also user can view messages that be received.

134
Figure 5‐43 Message Main Page

Figure 5‐44 Write Message

135
Chat

One of the important tools for communication with other user is online chat. With this
function all users can chat together via LMS software. But voice chat is one way from
instructor. Instructor must give permission to student for voice chat.

Figure 5‐45 Chat Area

Forum

Forum is a place for discussion at specific title between users. Users can create a
forum page, add discussion and edit discussion.

136
Figure 5‐46 Forum Main page

Figure 5‐47 View Forum

137
Project

This function is used to create project for described group which enables students to
doing the project collaboratively. In fact students can upload files, add news and modify the
feature task in their own project also instructor can check the file and feed back to them.

Figure 5‐48 Project View Page

138
Figure 5‐49 Project Main Page

Figure 5‐50 Create Project page

139
Group

In this section instructor can create a group which is useful either in project section or
sending message. He/she can also modify the members of groups of this part

Figure 5‐51 Group View Page

140
Figure 5‐52 Create Group Page

5.13 Authoring

In authoring section instructor has an ability to upload training materials (which is call
it as an object) of specifics course. Meanwhile students can view download and extract these
objects from lessen section. For every object, instructor can add extra description for every
one of them. These objects are shown as tree structure so they can upload as a sequence.

141
Figure 5‐53 Authoring Page

5.14 Statistics and Report

Statistics indicate list of students registered in a course, students’ activities, and the
schedule for mid-semester or final exams. These statistics can then be sent to notify students
for example about the exams.

Figure 5‐54 Statistics and Report

142
Chapter 6: System Testing
6 Testing Approach:

Testing activities focus on interfaces between and among components of the product,
such as functional correctness, system stability, overall system operability, system security,
privacy and sensitive information control, and system performance requirements (e.g.,
reliability, maintainability, and availability). Testing performed incrementally provides
feedback on quality, errors, and design weaknesses early in the integration process.

Components are integrated and tested to determine whether the product meets
predetermined functionality, performance, quality, interface, and security requirements. Once
the product is fully integrated, system testing is conducted to validate that the product will
operate in its intended environment and satisfies all user requirements. User Acceptance
Testing (UAT) follows System Testing, and solicits feedback from users to make any final
adjustments to the programming before releasing the product for implementation.

So there is less (or no) control over the environment in which the system will run.
Generally, the environment for an Intranet based system can be controlled to some extent,
whereas for a system on the World Wide Web, there is no control. The system may need to
run using different browsers and under a number of different versions. There is little
opportunity to train end-users and their actions and logic are not easily predicted. There is no
capability of controlling the sequence of events that an end-user may invoke.

Consequently, testing of web pages is often less structured, allowing the testers free
reign in their (test) use of the system, possibly with an observer or recording mechanism to
monitor events. Test Plan preparation will need to allow for this.

6.1 Software testing types:

It is the process used to help identify the correctness, completeness, security, and
quality of developed computer software. Testing is a process of technical investigation,
performed on behalf of stakeholders, that is intended to reveal quality-related information
about the product with respect to the context in which it is intended to operate. This includes,
but is not limited to, the process of executing a program or application with the intent of
finding errors. Testing can never completely establish the correctness of arbitrary computer

143
software. An important point is that software testing should be distinguished from the separate
discipline of Software Quality Assurance (SQA), which encompasses all business process
areas, not just testing.

Figure 6‐1 Testing Process

6.2 Unit Testing

The first test in the development process is the unit test. The source code is normally
divided into modules, which in turn are divided into smaller units called units. These units
have specific behavior. The test done on these units of code is called unit test. Unit test
depends upon the language on which the project is developed. Unit tests ensure that each
unique path of the project performs accurately to the documented specifications and contains
clearly defined inputs and expected results.

6.3 Module Testing

When each of the units is tested, it is necessary to ensure that the modules work
together.

144
Such as the case of appointment module must work as one unit. Then, the
administrator module initiates call to the registration module and consequently obtains the
results from the module.

Appointment module consists of several units that are combined together each of these
units must be tested earlier, and combined together to form the appointment system. Each unit
does not work alone; each unit depends on another unit to function.

6.4 Interface Testing

Interface testing has own importance in web base application, like web base
application divide in layer or tier: web layer, application layer and database layer. Interface
Testing is not focussed on what the components are doing but on how they communicate with
each other, as specified in the "System Design". The "System Design" defines relationships
between components, and this involves stating:

 What a component can expect from another component in terms of services.

 How these services will be asked for.

 How they will be given.

 How to handle non-standard conditions, i.e. errors.

6.5 Integration Testing

Integration testing is a logical extension of unit testing. In its simplest form, two units
that have already been tested are combined into a component and the interface between them
is tested. A component, in this sense, refers to an integrated aggregate of more than one unit.
In a realistic scenario, many units are combined into components, which are in turn
aggregated into even larger parts of the program. The idea is to test combinations of pieces
and eventually expand the process to test your modules with those of other groups. Eventually
all the modules making up a process are tested together. Beyond that, if the program is
composed of more than one process, they should be tested in pairs rather than all at once.

145
Integration testing identifies problems that occur when units are combined. By using a
test plan that requires you to test each unit and ensure the viability of each before combining
units, you know that any errors discovered when combining units are likely related to the
interface between units. This method reduces the number of possibilities to a far simpler level
of analysis.

6.6 System Testing

Several modules constitute a project. If the project is long-term project, several


developers write the modules. Once all the modules are integrated, several errors may arise.
The testing done at this stage is called system test.

System testing ensures that the entire integrated software system meets requirements.
It tests a configuration to ensure known and predictable results. System testing is based on
process descriptions and flows, emphasizing pre-driven process links and integration points.

Testing a specific hardware, software installation. This is typically performed on a


COTS (commercial off the shelf) system or any other system comprised of disparate parts
where custom configurations and/or unique installations are the norm.

146
Chapter 7: Conclusion
7 Introduction:

Although so many commercial or open sources Learning Management Software are


available in the internet, this software can be significant as one of the best and most efficient
system which is developed and published as an open source in this field. This software is
basically recovered all aspects of E-learning approach and have so many modules to establish
channel between instructors and students which enable them to do his/her education tasks
properly. Creating unlimited courses, uploading multiple files, registration unlimited users,
collaborative web conference system, privileged statistics, access level, professional tree, fully
administration and high security are a wide range of exclusive characteristic on this software.

7.1 System strengths:

The advantage of Learning Management System is as follow:

1. This system is an open source program and users do not need to pay for hole of
system.(except web conference )

2. Most important function which is necessary for E-learning system are


considered and implemented in designing of system.

3. Provides User-friendly and easy-to-use system. The web page is designed to be


simple and systematic to ease the users when they navigate and explore the
web site. The screen design maintains its consistency throughout the system.
All the styles and fonts type are the same multiple browser.

4. Have exclusive administrator panel for fully controlling the whole system.

5. Installing the system so easy and can be hosted in multiple OS servers(Linux,


Windows, Mac)

6. The menu of the course can be easily modified by instructors.

147
7.2 Future Enhancement:

Future enhancement could enable the system to send an automatic SMS to the
students, instructors and tutors as reminders to make them aware of new courses and
assignment deadlines.

Another future enhancement could enable the system take online exam for
assessment student.

Make conference room for each group that students and instructors can discuss at same
time. Do assignment online and storage them on system and get viewer screen.

148
References
[1] E. Beck, "Learning management systems: the need for critical analyses," in
Proceedings of the 4th decennial conference on Critical computing: between sense
and sensibility, 2005, p. 176.
[2] "Testing Types."
[3] S. Teasley and S. Lonn, "Using learning management systems to support students'
collaborative learning in higher education," in Proceedings of the 8th iternational
conference on Computer supported collaborative learning, 2007, pp. 718‐720.
[4] B. Lewis, V. MacEntee, S. DeLaCruz, C. Englander, T. Jeffrey, E. Takach, S. Wilson, and
J. Woodall, "Learning management systems comparison," in Proceedings of the 2005
Informing Science and IT Education Joint Conference, 2005.
[5] C. Keller and L. Cernerud, "Students' perceptions of e‐learning in university
education," Journal of Educational Media, vol. 27, pp. 55‐67, 2002.
[6] H. Grob, F. Bensberg, and B. Dewanto, "Developing, deploying, using and evaluating
an open source learning management system," Journal of Computing and
Information Technology, vol. 12, pp. 127‐134, 2004.
[7] J. O'Malley, "Students Perceptions of Distance Learning, Online Learning and the
Traditional Classroom."
[8] R. Nantel, "LMS KnowledgeBase 2009: In-Depth Profiles of 90+ Learning
Management Systems, with Custom Comparison Across 200+ Features.," 2009.
[9] www.weblms.com.au, "LMS Compare," 2009.

149

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy