0% found this document useful (1 vote)
146 views49 pages

EdX MOOC

The document describes a dissertation report submitted for the Master of Technology degree. It discusses developing a system called the Blended Learning - MOOC Model of IIT Bombay (BLMM) that combines online and face-to-face classroom learning. The BLMM system allows local college students in India to take online courses from top Indian universities while still receiving direct supervision through classroom learning. The report will explain the proposed BLMM system in detail.

Uploaded by

Jimit Shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
146 views49 pages

EdX MOOC

The document describes a dissertation report submitted for the Master of Technology degree. It discusses developing a system called the Blended Learning - MOOC Model of IIT Bombay (BLMM) that combines online and face-to-face classroom learning. The BLMM system allows local college students in India to take online courses from top Indian universities while still receiving direct supervision through classroom learning. The report will explain the proposed BLMM system in detail.

Uploaded by

Jimit Shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 49

Massive Open Online Courses

Enhancement to edX-platform
M.Tech Dissertation Report

Submitted in partial fulfillment of the requirements


for the degree of

Master of Technology
by

Srinu Kolukuluri
Roll No: 123050076

under the guidance of

Prof. Deepak B. Phatak

Department of Computer Science and Engineering


Indian Institute of Technology, Bombay
Mumbai
June 2014

Abstract
Education is a powerful tool to bring change in the current society. A few prime universities from different countries are offering online MOOC courses currently to improve
educational standards all over the world. Problems with online education are it is more
like distance education rather than conventional face-to-face class room learning. Final
result of online education is not as expected due to lack of direct supervision and these
MOOC courses are optional. In order to facilitate quality education from the combination
of best teachers and best universities to Indian students through online education, we implemented a system called Blended Learning - MOOC Model of IIT Bombay (BLMM) .
This system is a combination of both face-to-face class room learning and online education
methods. In this system direct supervision is achieved by face-to-face class room learning.
Moreover course completion is not optional but compulsory. In this system prime universities from India will offer MOOC courses to Indian local college students under few terms
and conditions. The thesis explains proposed system in detail later.
Keywords: Blended Learning - MOOC Model of IIT Bombay, BLMM, distance education,
online courses, better education, mooc courses, face-to-face class room learning

Acknowledgements
This report would not have been possible without the kind support and help of many
individuals and organization. I would like to extend my sincere thanks to all of them.
I am highly indebted to Prof. Deepak B. Phatak for his guidance and constant
supervision as well as for providing necessary information regarding the project & also for
their support in completing the project. Without his guidance and persistent help, I am
afraid, this dissertation would not have been possible. In addition, thanks to Mr. Nagesh
Karmali for providing his guidance, help and support during the project.
I would like to express my gratitude towards Prof. Sridhar Iyer, Prof. Sasi Kumar for
their valuable suggestions.

Declaration
I declare that this written submission represents my ideas in my own words and where
others ideas or words have been included, I have adequately cited and referenced the original
s ources. I also declare that I have adhered to all principles of academic honesty and
integrity and have not misrepresented or fabricated or falsified any idea/data/fact/source
in my submission. I understand that any violation of the above will be cause for disciplinary
action by the Institute and can also evoke penal action from the sources which have thus
not been properly cited or from whom proper permission has not been taken when needed.

Signature

Name of Student

Roll number

Date

Dissertation Approval Certificate


Department of Computer Science and Engineering
Indian Institute of Technology, Bombay

The dissertation entitled Massive Open Online Courses - Enhancement to edXplatform, submitted by Srinu Kolukuluri (Roll No: 123050076) is approved for the
degree of Master of Technology in Computer Science and Engineering from Indian
Institute of Technology, Bombay.

Prof. Deepak B. Phatak


Dept. of CSE, IIT Bombay
Supervisor

Prof. Kavi Arya


Dept. of CSE, IIT Bombay
Internal Examiner

Mr. Avinash Awate


Dept. of CSE, IIT Bombay
External Examiner

Prof. Kannan M Moudgalya


Dept. of Chemical Engineering, IIT Bombay
Chairperson

Place: IIT Bombay, Mumbai


Date: 24th June, 2014
1

Contents
1 Introduction
1.1 Motivation . . . .
1.2 Problem Statement
1.3 Contributions . . .
1.4 Roadmap . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

2 edX
2.1 Features of edX . . . . . . . . . . . . . .
2.2 edX Modules and Their Functionalities .
2.2.1 Main Modules of edX . . . . . .
2.2.2 Extra Modules of edX . . . . . .
2.3 edX-platform and its Components . . .
2.3.1 LMS . . . . . . . . . . . . . . . .
2.3.2 CMS . . . . . . . . . . . . . . . .
2.4 edX Database . . . . . . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

4
4
5
5
5

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

6
6
7
7
9
10
10
11
12

3 Blended Learning - MOOC Model (BLMM) of IIT Bombay


3.1 Introduction to Blended Learning . . . . . . . . . . . . . . . . .
3.2 Blended Learning - MOOC Model (BLMM) of IIT Bombay . .
3.3 Explanation of BLMM in Detail . . . . . . . . . . . . . . . . .
3.3.1 Levels of Hierarchy in BLMM . . . . . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

14
14
15
15
16

4 Technical Requirements
4.1 Django Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18
18

5 Design and Analysis


5.1 Users and their Objectives in BLMM . . . . . . . . . . . . .
5.1.1 MOOC University . . . . . . . . . . . . . . . . . . .
5.1.2 MOOC Instructor . . . . . . . . . . . . . . . . . . .
5.1.3 Local University . . . . . . . . . . . . . . . . . . . .
5.1.4 Affiliated College . . . . . . . . . . . . . . . . . . . .
5.1.5 Local Instructor of Affiliated College . . . . . . . . .
5.1.6 Affiliated College Student . . . . . . . . . . . . . . .
5.1.7 Sequence Diagram for Approval Heirarchy of Users .
5.1.8 WorkFlow of BLMM with respect to Users Activities
5.2 Schema of Added Database Tables to edX-platform . . . . .
5.3 ER-Diagram of added Database Tables into edX-platform .

20
21
21
22
22
23
23
23
24
26
28
31

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

6 Implementation
6.1 BLMM Components and User Classification
6.1.1 LMS User Interface . . . . . . . . . .
6.1.2 CMS User Interface . . . . . . . . .
6.2 Users Implementation in BLMM . . . . . .
6.2.1 MOOC University . . . . . . . . . .
6.2.2 Local University . . . . . . . . . . .
6.2.3 MOOC Instructor . . . . . . . . . .
6.2.4 Affiliated College . . . . . . . . . . .
6.2.5 Local Instructor of Affiliated College
6.2.6 Affiliated College Student . . . . . .

.
.
.
.
.
.
.
.
.
.

34
34
35
36
36
36
37
37
38
40
40

7 Conclusions and Future Work


7.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42
42
42

Appendices

43

A Installation Procedure for edX-platform

44

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

Chapter 1

Introduction
Now a days, learning standards and methods are changing rapidly with growing technology. Such standards and methods influences quality in education. Quality education is
restricted to prime universities and few local universities only. When it comes to private
affiliated colleges, the situation is worse than ever seen. This situation is due to lack of resources, awareness of learning standards and methods, and unavailability of proper skilled
instructors. Students of such private colleges are in very large number, and they need proper
education.
One way to facilitate quality education to such students is blended learning approach.
This approach combines different types of educational methods which are face-to-face and
e-learning methods. Moreover in this approach, academic freedom can be given since such
college students are restricted to pre-defined rigid syllabus, and restricted from accessing
published journals. In a result better learning can be achieved by private college students.
In order to facilitate the quality education from the combination of best teachers and best
universities to Indian students through online education, we implemented a system (basic
model) called Blended Learning - MOOC Model of IIT Bombay (BLMM) . This system
is a combination of both face-to-face class room learning and online education methods.
In this system direct supervision is achieved by face-to-face class room learning. Moreover
course completion is not optional but compulsory.

1.1

Motivation

Education is a powerful tool to bring change in the current society. A few prime universities from different countries are offering online MOOC courses currently to improve
educational standards all over the world. Problems with online education are it is more like
distance education rather than conventional face-to-face class room learning, final result is
not as expected due to lack of direct supervision. These MOOC courses are optional. In
order to facilitate quality education from the combination of best teachers and best universities to Indian students through online education, we implemented a system called
Blended Learning - MOOC Model of IIT Bombay (BLMM) .
4

1.2

Problem Statement

The aim of this project is to develop above mentioned model - BLMM. Basically this
model is combination of online and face-to-face conventional class room eductional methods.
Online part will be carried out by instructors from the prime universities, face-to-face part
will be carried out by local instructors from affiliated colleges. We adopted edX-platform
and modified into BLMM.

1.3

Contributions

Following contributions were made during the course of this project.


1. Total six types of user is implemented according to BLMM heirarchy (explained in
later chapters).
2. For each BLMM user (in six users) registration forms, login forms, dashbord, related
arbitrary logic for storing is implemented.
3. A new django web application is created and integrated with edX-platform to add
new set of database tables which are required by BLMM user activities.
4. One of the important activities of BLMM is approval process. It is implemented in
top to bottom fashion. This process is explained clearly in this report later.

1.4

Roadmap

The details about problem statement and contributions are given in Chapter 1. Chapter
2 explains about edX, its components, and fetures of different modules. Chapter 2 also
explains about the database of edX. Chapter 3 describes about complete details of BLMM
system along with graphical representations. Chapter 4 explains about technical requirements needed for BLMM implementation. Chapter 5 explains about design and analysis of
BLMM system. Chapter 6 explains about implementation of BLMM system. As usual the
last one, Chapter 7 concludes and hints on some future work.

Summary
In this chapter, the problem statement was introduced along with motivation. The significant contributions done so far have been listed. The structure of the report was described
in the Section 1.4. In the next chapter, we explained edX in detial.

Chapter 2

edX
edX is a non-profit organization and founded by the collaboration of Harward and MIT.
It was open sourced on June 1, 2013. Still, they are building with advanced features to make
online education more effective than the traditional class room methods. edX is developed
based on a python web framework called Django Framework[7] which will be discussed
later in this report. The edX provides an easy and effective way to opt online courses. This
system includes two types of users which are learners and instructors. This system also
offers the provision of certificates in two ways, the first one is proctored and the second
one is honored for those who completes the courses. The assessment strategies which are
offered by this system are peer assessment, staff assessment, instructor assessment and AI
assessment.

2.1

Features of edX

edX is developing by the contributors from all over the world since June 2013. Features,
functionalities are getting changed over the time. Main features of edX are given below
(These are not complete set of features, still we participating in discussion forums with edX
developers actively to explore more details).
1. Interactive video lectures which can be downloadable, with subtitles and indexing on
subtitles.
2. Upload and downloadable files with different formats
3. Online quizzes of different types like video embedded quiz and final tests, etc.
4. Virtual Laboratory which supports interactive interface and provides simulation.
5. Calendar based schedule.
6. Multilingual support.
7. Discussion forums.

8. Wiki edits for collaborative learning.


9. Progress reports and analytics (bar charts, etc)
10. Different types of assessment systems for submitted assignments (open response questions). The types of assessment are
(a) Peer Grading
(b) Self Grading
(c) Staff grading
(d) Machine grading
11. Emails and Notifications for users of edX.
12. Provision of certificates in two ways, 1)proctored and 2)honour.
13. Registering and deregistering facilities for a course.
14. edX meet-ups - online conferences.
15. Supports large number of user participation (scalability) at a specific time.

2.2

edX Modules and Their Functionalities

In-order to build a complete MOOC system with different functionalities, and to provide
an enhanced online learning, there are some other modules[8] existed along with LMS and
CMS. These modules are developed independently and integrated with edX-platform. These
other modules are classified into two classes namely Main Modules and Extra Modules
. The main modules are needed to get a complete edX system. Extra modules are needed
to enhance the functionality of edX system. In the next section we explained main modules
of edX.

2.2.1

Main Modules of edX

The main modules of the edX system are listed in the following Figure 2.1 . This
figure includes the important modules which are edX-platform, edx-ORA, xqueque, xserver,
codejail and cs comment service [9]. edX code is available on Github website[8]. These all
modules can be accessed on Github and anyone can contribute to enhance the edX.

Figure 2.1: Main Modules of edX


1. edX-platform: This is main module of edX system. It contains the LMS and CMS
to form a basic and initial system[6].
2. cs comments service: The Functionality of this module is to provide the discussion forums for the users.
3. codejail: The functionality of this module is to protect the system from external user.
This module provides security by creating a sandbox which executes the untrusted
code from the users.
4. xqueue: The functionality of this module is to provide an interface between the LMS
and external grading system.
5. xserver: The functionality of this module is to accept code from the users of LMS
and executes them by using courseware graders.
6. edX-ORA: The functionality of this module is to allow peer, instructor, and machine
assessment of problems on the edX-platform. Here, ORA stands for Open Response
Assessor .
I was contributed as a mentor for the project edX Development which was a part of the
eight weeks summer internship, conducted by IIT Bombay from 9th May 2013 to 3rd July
2013, under Prof. Deepak B. Phatak, Department of Computer Science & Engineering. My
students and me designed a poster to explain the overview of edX along with few important
modules. Figure 2.2 shows that designed poster.

Figure 2.2: The overview of the edX along with some modules

2.2.2

Extra Modules of edX

The extra modules are developed to enhance the edX functionality. The extra modules
are EASE, discern, djeventstream, edxanalytics, ed-insights and loghandlersplus[9]. The
following Figure 2.3 represents the extra modules of the edX.

Figure 2.3: Extra Modules of edX


1. ed-insights: The functionality of this module is to offer a framework for development
of analytics platform.
2. edxanalytics: The functionality of this module is to perform analytics on the edX
data and generates meaningful statistics. It is an analytics platform which is built
based on the ed-insights module.
3. discern: The functionality of this module is to provide services of grade arbitrary
free text responses from the system.
9

4. ease: The functionality of this module is to provide machine grading of open response
answers. EASE stands for Enhanced AI (Artificial Intelligence) Scoring Engine .
5. loghandlersplus: The functionality of this module is to perform some functions on
log file from the LMS and provides log events to edxanalytics module.
6. djeventstream: The functionality of this module is to take the log events from the
loghandlersplus module and generates appropriate Django signals for edxanalytics.
7. xblock: The functionality of this module is to provide a component architecture for
building courseware.
Apart from above mentioned modules, there are other modules presented on the Github
website[6] which are under development stage.

2.3

edX-platform and its Components

The edX-platform is the main module in edX. It contains of two main components called
LMS and CMS. LMS stands for learning management system and CMS stands for
Course Management System . The LMS offers an interface for students to opt MOOC
courses. CMS offers an interface for instructors to create and manage the courses. Figure 2.4
(taken from the website - [10]) shows components of edX-platform.

Figure 2.4: Components of edX-platform

2.3.1

LMS

LMS stands for Learning Management System. It is basically providing an interface to


the learners to register and opt MOOC courses. This is build based on the django framework. Basic features of LMS are given in the following list.
The basic features of LMS:
1. Self-Paced Learning: Using this feature, students can watch the videos again and
again. Simply he can learn anything related to a course at any time.

10

2. Online Discussion Groups: Using this feature, students can interact with each
other to share knowledge. Interaction creates more interest to students towards learning activities effectively.
3. Online Test and Assignments: Using this feature, students can attempt online
quizzes any number of times to improve the quality of understanding. LMS provides
machine evaluated grades for those quizzes.
4. Circuit Schematic Builder: Using this feature, students can get a virtual online
simulated laboratory system for making experimental viewpoint.
5. Subtitles of videos: Using this feature, accent problems can be reduced.
6. Search: Using this feature, student can search a course by its keywords.
7. Registering and Unregistering of the Courses: Using this feature, students can
register and deregister at any time.
8. Activation Emails: Using this feature, students can activate their LMS accounts
by a link send by LMS system.
9. Saved Sessions: Using this feature, every test and activity sessions can be saved in
a log file to study further.
10. Essay Assessments (Machine and Peer Grading): Using this feature, the grading process can be done in machine and peer grading methods.
11. No of Students Enrolled in a Course: Using this feature, one can see the total
number students opted for a course.
12. Recommended Courses: Using this feature, Some courses can be recommended
for students.

2.3.2

CMS

CMS stands for Course Management System. It allows an instructor to create and manage courses. CMS provides various features to an instructor and allows to add different
types of content in the created course. Important features of CMS are given in the following list.
The basic features of CMS:
1. Adding Videos: Using this feature, instructor can upload video lectures of a course.
2. Creating Assignments: Using this feature, instructor can create different kind
of assignments which are Option Response, Multiple Choice Response, Check Box
Response, String Response, Numerical Response, Formula Response, Image Response,
and Custom Response: Script Evaluation.
11

3. Import & Export Course: Using this feature, instructor can import the courses
from other edX systems, and also can exports a course to other edX systems.
4. Add Course Team: Using this feature, instructor can add other studio user in a
course team so that they can assist him in co-authoring the course.
5. Live View: Using this feature, instructor can see the student view of a course created
by him.
6. Adding Grading Policy: Using this feature, instructor can add grading rules and
policies to represent pass and fail percentages.
7. Course Updates: Using this feature, instructor also can add updates/news related
to a course.
8. Uploading Static Pages: Using this feature, instructor can add static pages which
are very important to students.

2.4

edX Database

The edX system consists two database systems, namely SQLite and Mongodb. The first
one SQLite is a relational database which stores user information. Second one is Mongodb
which stores course information. Relations of edX database are given in Figure 2.5 (This
figure was designed when I worked as mentor in the internship program of edX-Enhancement
at IIT Bombay - May 2013).

12

Figure 2.5: Categorization of edX database relations

Summary
In this chapter we explained about edX features, modules of edX, database in detail.
edX-platform also explained in detail.
In the next chapter, we explained our proposed system, Blended Learning - MOOC Model
(BLMM) of IIT Bombay.

13

Chapter 3

Blended Learning - MOOC Model


(BLMM) of IIT Bombay
3.1

Introduction to Blended Learning

Blended learning is a learning process that is facilitated by the effective combination


of different modes of delivery, models of teaching styles of learning and applying them in
an interactive meaningful learning environment. This model is a combination of online
education and face-to-face classroom methods. The blended learning mostly depends on
analysis of the learners requirements, the level of understanding, the nature and location of
the learners and resources available. The blended learning is changed the way of learning
activities like perceiving and delivering the information. The advantages of this model
is that the passive learning environment will become an active learning environment. It
brings learners together along with instructors to support collaborative learning through
interactive content. Even corporate bodies are moving from classroom training methods
to blended learning because of the benefits, costs and savings, optimizing resources, scale,
speed and throughput. The blended learning is implemented in University in Botswana,
University of Central Florida, University of Salford, Charles Strut University, etc. The
advances in technology have an impact on emerging models of blended learning. Consider
the following Figure 3.1 as a representation of basic blended learning model.

Figure 3.1: The Blended Learning Model

14

Blended Learning solves the problem of speed, scale and impact. To combine both traditional face-to-face education and e-learning, we proposed a system called Blended Learning
- MOOC Model (BLMM) of IIT Bombay and the details discussed in the next section.

3.2

Blended Learning - MOOC Model (BLMM) of IIT Bombay

Blended learning refers to any time students learns. At least in part, at a brick-andmortar facility and through online delivery with student control over time, place, path,
or pace. IIT Bombay wants to utilize this method to spread quality education from the
combination of best teachers and best universities to Indian students. In near future, IIT
Bombay may offer two kinds MOOC systems as shown in the following Figure 3.2. The
first one is general MOOC system which is like rest of the edXs from other universities and
open for all over the world. The second one is our Blended Learning - MOOC Model of
IIT Bombay. We are only working with our proposed system but not with general MOOC
system.

Figure 3.2: MOOC offerings from IIT Bombay

3.3

Explanation of BLMM in Detail

A sequence of steps that explains our proposed model BLMM are given in below. We
talks about different roles in the following list.
Sequence of Steps in Blended Learning - MOOC Model of IIT Bombay:
1. A professor from a prime university (such as IIT Bombay) offers a course.
2. BLMM approaches local universities (such as Mumbai University) with its proposal
and terms & conditions.
3. The proposal says that students of affiliated colleges which are under that local universities should opt courses from BLMM.

15

4. All local universities which are agreed with BLMM system sends same proposal to
their affiliated colleges.
5. Students from these affiliated colleges opts courses from BLMM system.
6. Course completion is compulsory in BLMM system.
7. Professors from prime universities trains instructors in affiliated colleges if necessary.
8. Instructors from affiliated colleges guides the students of that college in each course.
9. The entire course material related to a course provides by professor who offers that
course. These materials are in the form of e-documents and multimedia files. Also,
assignments, quizzes, and exams given by the same professor.
10. BLMM system sends grades of these students to respective local universities at the
end of course period.

3.3.1

Levels of Hierarchy in BLMM

Generally private colleges are affiliated from any well established educational organizations. BLMM offers course to such organizations. Main idea is facilitating quality education
to all affiliated college students. For example I certified for my under-graduation program
from a university called JNTU Kakinada. This university has more than hundred affiliated
colleges. This university gives final exam paper of 80% to all those affiliated colleges[5].
Problem with such university is lack of communication between affiliated college students
and respective local universities. Students related to such universities are not getting proper
education. This may be called as learning less examination passing (suggested by Prof.
Deepak B. Phatak). Figure 3.3 shows a hierarhy in BLMM. Also same figure explains how
a course reaches students from BLMM system.

16

Figure 3.3: levels of hierarchy in BLMM

Summary
In this chapter, proposed system BLMM is explained from the external users point of
view. Different levels in our system from the users perspective also explained with the help
of diagramatical representation.
In the next chapter, we explained about technical requirements required to implement
our BLMM system.

17

Chapter 4

Technical Requirements
This Chapter is presented to help people who works on edX or BLMM. Required technologies that one should learn are listed below. These details are highly required for beginners
to work with Dajango Framework.

4.1

Django Framework

Django Framework is a python based web framework. Using django one can create
complex and database driven web application easily. Like MVC model django follows MVT
(Model-View-Controller). MVT is explained in the following list.
Model is a python module. It is used to create database. In this python module,
every class represents a database table.
View is also a python module. It contains sevral methods. These methods serves user
request (HttpRequest). Every user request (URL) have a specified method in this
module.
Templates are used to make web pages. Mako is a template system which is used by
django framework. Mako template system combines html and python together.
URLConf is one more important python module. It contains all URLs which are
called by user. Each URL in this module associates with a specific function in view
module.
If you are new to Python then you should visit this link to learn python[1] cited on
10 June 2014.
To learn django, explore polls application from link[2] cited on June 2014.
To learn Mako template system, visit this link[4] cited on 10 June 2014.
Finally read the djangobook from link[3] cited on 10 June 2014
Search on the web for other sources too.
18

The first action that happens in django web application is requesting an url (HttpRequest)
by user from a browser. Using that url, django system finds required python method to
serve that HttpRequest. This method interacts with database through models. It sends
back the HttpResponse through Template system. This python method drives everything.
The following Figure 4.1 shows the architecture of the django faramework.

Figure 4.1: Architecture of Django Framework

Summary
In this chapter we explained important tachnical requirements which are needed to implement BLMM system. The main purpose to put this chapter in this report is to help new
developers who work on our BLMM system in future.
The next chapter is about design and analysis of BLMM system with respect to database
and user perspective.

19

Chapter 5

Design and Analysis


According to BLMM requirements, total six types of users are considered to design full
functionality. One important task in this system is approval process. Every user gets
approval by other user. Figure 5.1 shows the approval hierarchy in BLMM system. All
users are defined clearly along with their names and activities in the following list.

Figure 5.1: Approval Hierarchy - approvals in BLMM system

1. MOOC University: This is top level user in the system and designed newly in
BLMM. Goals of this user are approving mooc instructors and local university colleges
(explained later in this list).
2. MOOC Instructor: This user is adopted from existing edX-platform with a proper
modifications to it. Goals of this user are creating mooc courses and manages them.
3. Local University: This user is also designed newly in BLMM. Goals of this user
are approving all affiliated colleges (explained later in this list) which are affiliated
under this university.

20

4. Affiliated College: This user is also designed newly in BLMM. Activities of this
user are approving all local instructors and students (explained later in this list) of
this college.
5. Local Instructor of Affiliated College:
This user is also designed newly in
BLMM. Activities of this user are following respective mooc instructor to guide the
students, guiding and grading the students.
6. Affiliated College Students: This user is also adopted from existing edX-platform
with a proper modifications. Activities of this user are opting the mooc courses, and
following the both local instructor and mooc instructor.
Differences Between BLMM and edX-platform We are explaining two major differences. The first one is difference between number of users. edX-platform has only two users
which are Instructor and Learner. BLMM has six types of users which are explained in the
list5. The second difference is about activation of user account in edX-platform and BLMM.
In edX-platform user account activation is done by respective user by clicking activation
link. But in BLMM one user account activation is done by other user who is responsible.
For example, Affiliated College user activates Affiliated College Student users. Approval
process is explained in the next section.

5.1

Users and their Objectives in BLMM

Functional requirements of BLMM system are designed using the UML - use case diagrams. These diagrams represents the functionality of BLMM users from the external usage
view point. These diagrams helped to check whether all users requirements are satisfied or
not. Following subsections explains each user in detail with the help of use case diagrams.

5.1.1

MOOC University

Figure 5.2: Goals of Mooc University in BLMM

21

Mooc University is the top level user in BLMM hierarchy and it shown in Figure 5.1.
Basic activities of this user are approving local universities and mooc instructors. Figure 5.2
represents basic activities of the MOOC university. Entire process in this system starts with
this user.

5.1.2

MOOC Instructor

Figure 5.3: Goals achieved by Mooc Instructor in BLMM


MOOC instructor is adopted from edX-platform, it is the user who creates and manages
courses. The goals of this user is registers into BLMM system, creates and manages courses.
This user guides studets who opt this created courses. Also this user gives the final grades
of all students.

5.1.3

Local University

This user is designed to give the approvals to its affiliated colleges. It can approve
affiliated colleges only after it gets approval from respective MOOC university. Figure 5.4
shows the basic level goals of the local university.

Figure 5.4: Goals achieved by Local University in BLMM

22

5.1.4

Affiliated College

This user designed to give approvals to its students and instructors. Also, few functionalities like uploading marks of its local college students can be added in future work.
Figure 5.5 represents the basic goals of affiliated college.

Figure 5.5: Goals achieved by Affiliated College in BLMM

5.1.5

Local Instructor of Affiliated College

Local instructor of affiliated college registers into the system. This user chooses a course
to guide and examine students. Figure 5.6 shows a basic level activities of local instructor.

Figure 5.6: Goals achieved by Local Instructor of affiliated college in BLMM

5.1.6

Affiliated College Student

This user is adopted from edX-platform. This user has to opt available courses, and
follows all the instructions of both MOOC instructor and local instructor of affiliated college.
Figure 5.7 shows the basic level activities done by affiliated college student.

23

Figure 5.7: Goals achieved by Student of Affiliated College in BLMM

5.1.7

Sequence Diagram for Approval Heirarchy of Users

Interaction between all users for approvals is drawn into a UML - sequence diagram.
Figure 5.8 shows that sequence diagram. The following steps explains about approval
process in BLMM.
step1: The BLMM admintrative personnel sends a BLMM invitation to MOOC
University.
step2: MOOC University sign up into BLMM system.
step3: BLMM admintrative personnel checks and approves MOOC University.
step4: MOOC University sends BLMM invitation to Local Universities and MOOC
Instructors.
step5: Local Universities sign up into BLMM system.
step6: MOOC Instructors also sign up into BLMM system.
step7: BLMM system sends all details of Local Universities to respective MOOC
University.
step8: MOOC University checks and approves them.
step9: Local University sends BLMM invitaion to its Affiliated Colleges.
step10: All Affiliated Colleges of that Local University registers into BLMM system.
step11: BLMM system sends all details about Affiliated Colleges to respective Local
Universities.
step12: Local University checks and approves them.
24

step13: Affiliated College sends BLMM invitation to Local Instructor of Affiliated


College and Affiliated College Students.
step14: Local Instructors of Affiliated College and Affiliated College Students sign
up into BLMM system.
step15: BLMM system sends all details of Local Instructors of Affiliated College and
Affiliated College Students to respective Affiliated Colleges.
step16: Affiliated College checks and approves them.

25

Figure 5.8: Interaction between all users for approval process

5.1.8

WorkFlow of BLMM with respect to Users Activities

Activities of BLMM system happens in a pattern. This pattern is drawn into a diagram
and it is shown in Figure 5.9.

26

27

Figure 5.9: The WorkFlow of BLMM according to user perspective

5.2

Schema of Added Database Tables to edX-platform

To store activities of users in BLMM, we designed few database tables. The following list
gives the schema of new database tables along with foriegn key specifications. These tables
will define as classes in a python module called models.py
1. Mooc University: This database tabel stores the information about MOOC University. The attributes of this table are given below
user

(Foreign key from the User table of django)

mooc univ id
mooc univ name
state
country
website
telephone
address
2. Local University: This database table stores the information about local universities.
The attributes of this table are given below.
user

(Foreign key from the User table of django)

mooc univ id

(Foreign key from the Mooc University Table)

local univ id
local univ name
organization type

(university, Private, Govt, Others)

state
country
website
telephone
address
3. Affiliated College: This database table stores the information about all the affiliated
colleges. The attributes of this table are given below.
user

(Foreign key from the User table of django)

local univ id
mooc univ id
aff col id

(Foreign key from the Mooc University Table)


(Foreign key from the Local University Table)
28

aff col name


is approved
type of affiliation

(AICTE, DTE, UGC, MHRD)

state
city
country
website
telephone
address
4. MOOC Instructor: This database table stores the information about the instructors
of a Mooc University. The attributes of this table are given below.
user

(Foreign key from the User table of django)

mooc univ id

(Foreign key from the Mooc University Table)

mooc instructor id
mooc instructor name
designation
stream
area of specialization
email
address
telephone
5. Local Instructor: This database table stores the information about local instructors
of affiliated colleges. The attributes of the this table are given below.
user

(Foreign key from the User table of django)

local univ id

(Foreign key from the Local University Table)

local instructor id
local instructor name
designation
stream
area of specialization
email
address
telephone
29

6. Mooc Course: This database table stores the information about the courses which
are offered from Mooc university. The attributes of the this table are given below.
mooc univ id

(Foreign key from the Mooc University Table)

mooc instructor id

(Foreign key from the Mooc Instructor Table)

course id
course name
start date
end date
remarks
7. Student Aff Col: This database table stores the information about affiliated college
students user profile. The attributes of the this table are given below.
user

(Foreign key from the User table of django)

aff col id
branch id

(Foreign key from the Local University Table)


(Foreign key from the Branch Table)

active now
gender
birth date
telephone
aff col rollno
year of course
8. Branch: This database table stores the information about branches of affiliated
college students. The attributes of this table are given below.
aff col id

(Foreign key from the Local University Table)

stream id

(Foreign key from the Stream Table)

branch id
branch name
remarks
9. Stream: This database table stores the information about streams which are available
in education. The attributes of this table are given below.
stream id
stream name
remarks
30

10. Project: This database table stores the information about projects of mooc courses.
The attributes of this table are given below.
course id

(Foreign key from the Mooc Course Table)

mooc instructor id

(Foreign key from the Mooc Instructor Table)

project name
project id
11. Project Student: This database table stores the information about which student
have which project. The attributes of this table are given below.
project id
user

5.3

(Foreign key from the Project Table)


(Foreign key from the User Table of Django Web application)

ER-Diagram of added Database Tables into edX-platform

From above designed schema5.2 we drawn a ER-diagram. Figure 5.10 shows that drawn
diagram.

31

Figure 5.10: ER-diagram of BLMM database models added with edX-platform


32

We created the same database using phpmyadmin and produced relational shema. The
produced relational schema is presented in Figure 5.11.

Figure 5.11: Relational schema of database tables which are added with edX-platform

Summary
In this chapter, we explained about all user activities with the help of UML use case
daigrams. Explained new database from different perspectives.
In the next chapter, we given details about implemented BLMM system.

33

Chapter 6

Implementation
6.1

BLMM Components and User Classification

BLMM is implemented by adopting and modifying edX-platform (explained in Chapter 2). BLMM also has two main components similar to edX-platform. The components
are LMS (Learning Management System) and Studio (CMS-Course Management System).
Users of BLMM are categorized into two groups in which one group is presented in LMS
module and the other group is presented in CMS module. Users in LMS module are MOOC
university, MOOC instructor, and Local university. Users in CMS module are Affiliated
College, Local Instructors, and Students of Affiliated College. Figure 6.1 shows users categorization in BLMM with respect to main modules.

Figure 6.1: User classification with respect to BLMM main modules

34

6.1.1

LMS User Interface

The home page of LMS module is presented in Figure 6.2. This page provides links for
sign in and sign up for users. Different sign in links are presented for different user types.
These links are used to redirect them to different registration forms. Apart from these
sign in links, one extra link called SIGN IN PAGE, this link presents a sign in page for
users. The sign in page is shown in Figure 6.3. A typical logo is created for the purpose of
demonstration and it is embedded into this home page at top left corner.

Figure 6.2: Home Page of LMS module in BLMM


In sign in page also different sign in links are presented for different user types. These
links are used to redirect them to different dashbords according to user type. A short
introduction about BLMM and its aim is presented in sign in page. Logo acts as hyperlink
and it redirects to LMS home page.

Figure 6.3: Sign in page of LMS module

35

6.1.2

CMS User Interface

The home page of this module is presented in Figure 6.4. In the same way in LMS
module, CMS home page also presented with different sign in links and different sign up
links for different user types. We are skipping details of registration, login web pages.

Figure 6.4: Home page CMS module in BLMM

6.2
6.2.1

Users Implementation in BLMM


MOOC University

This user is developed in CMS module and it represents a prime university in real world.
This is the top level user in BLMM user hierarchy which is shown in Figure 6.1. Registration
process for this user type collects complete details of a real world prime university. A
dashboard interface is developed for this user to carry out administative activities. One
of the main adminstrative activity of this user is approving MOOC Instructors and Local
Universities user types. A list of these users who needs approval are given in a table in the
dashboard of MOOC University. In this tabel, each row stores details about a specific user.
The admin personnel of this MOOC University checks each user in that table and need to
approves them. This approval actually activates BLMM account of respective user. Local
Universities in this table are universities which agree the terms and conditions of MOOC
University. MOOC Instructors in this table are instructors who create courses and manage
them. The dashboard of this user is shown in Figure 6.5. This same figure also shows a
table of users for whom approval is needed.

36

Figure 6.5: Dashboard of MOOC University

6.2.2

Local University

This user also newly developed in CMS module. This user type represents a Local University in real world. A dashboard also developed for this user to carry out adminstrative
tasks. Adminstrative tasks are approving Affiliated Colleges of this Local University. All
affiliated colleges who needs approval are given in a table in the dashboard of this Local
University. Adminstrative people are responsible for checking and and approving them.
Figure 6.6 shows the dashboard of this user type. This same figure also shows a table of
users for whom approval is needed.

Figure 6.6: Dashboard of Local University

6.2.3

MOOC Instructor

The mooc instructor is adopted from CMS module of edX-platform. This user represents
a Professor from prime university. All features are kept as they are in edX-platform, features
such as create and manage courses. The registration process of this user type also collects

37

all information related to a Professor. We are skipping remaining details about this user.
Figure 6.7 shows dashboard of this user type.

Figure 6.7: Dashboard of MOOC Instructor

6.2.4

Affiliated College

This user newly developed in LMS module and it represents a private affiliated college in
real world. The registration process for this user collects all details related to a private affiliated college. To carry out administrative tasks of this user, a dashboard is implemented.
Administrative tasks are approving Affiliated College Students, Local Instructors of Affiliated College. A list of users who need approval are given in a table in the dashboard of this
Affiliated College. Administrative personnel of this Affiliated College checks and approves
them. Figure 6.8 shows a dashboard of this user type. From this an hyper link is provided
to go to approval page.

38

Figure 6.8: Dashboard of the Affiliated College


Observe the table given in Figure 6.9. Each record from that table has a button in last
column called APPROVE NOW . When that button clicked, respective user BLMM
account will be activated. Figure 6.10 shows which page appears after clicking approval
button.

Figure 6.9: A table of users who needs approval

39

Figure 6.10: Approval message of a specific user

6.2.5

Local Instructor of Affiliated College

This user developed in LMS module, and it represents a instructor from an affiliated
college in real world. A dashboard interface is developed. From this dashboard, instructor
can follow a course from MOOC Instructor. Also, from this dashboard instructor can upload
marks of his class students. Figure 6.11 shows a dashboard of local instructor.

Figure 6.11: Dashboard of Local Instructor of Affiliated College

6.2.6

Affiliated College Student

This user is adopted from edX-platform, and it represents a student in real world. Registration process collects information related to a college student. Dashboard also modified
according to BLMM requirement. This user can opt courses which are available. Following
Figure 6.12 shows the dashboard of affiliated college student.

40

Figure 6.12: Dashboard of the Affiliated College Student

Summary
In this chapter, we explained every user how they implemeted. Most importantly the
approval process for all users from top-bottom level is explained in detail with the help of
screen shots.
In the next chapter, we conclude and comment on some future work.

41

Chapter 7

Conclusions and Future Work


7.1

Conclusions

The main challenge for local college students is that technology is changing fast, faster
than ever actually. The skills these students learned in their schools may not be useful
anymore. Such students needs a proper education. One of the problem with local private
colleges is unavailability of skilled staff. Using our system these problem can be solved. It
can be the future of modern education. We hope this system will be online soon under the
supervision of IIT Bombay.

7.2

Future Work

Short term
BLMM system is implemented in basic level to support important administrative activities. So, future work of short term can be adding required functionalities such as uploading
marks of students by instructors. If there are any new modules or changes in edX-platform
functionalities, those can be integrated with BLMM.

Long term
All requirements of users in BLMM can be collected and can be implemented in existing
system. The performance can be tuned according to user response time perspective.

42

Appendices

43

Appendix A

Installation Procedure for


edX-platform
There are two types of configurations with edX deployment, the production and development stack. The production stack includes the components of LMS, CMS (studio), Xqueue/Xserver (student code submissions), Forums/elasticsearch/ruby (discussion
forums). On the other hand development stack includes LMS and CMS only. Development
stack is useful for development environment. The people who are proxy free can follow
direct installation procedure that suggested on the Github[6].
We followed and installed edX-platform from direct installation procedure only. This
installation process consists of several steps. All those steps are need to run from a terminal
to install edX-platform. We tried hardly to make this steps into a single line command
script. But we could not succeed. It was a good learing experience. We hope a single line
command script will be available for edX-platform installation in near future.

44

Bibliography
[1] http://learnpythonthehardway.org/book/. Created on 21 Oct, 2013.
[2] https://docs.djangoproject.com/en/dev/intro/tutorial01/. Created on 21 Oct, 2013.
[3] http://www.djangobook.com/en/2.0/index.html. Created on 21 Oct, 2013.
[4] http://www.makotemplates.org/. Created on 21 Oct, 2013.
[5] http://jntuk.edu.in/atozindex/atozinstitutions/. Referred on 12 August, 2013.
[6] https://github.com/edx/. Referred on 12 August, 2013.
[7] https://www.djangoproject.com/. Referred on 23 Sept, 2013.
[8] https://github.com/edx. Referred on 24 August, 2013.
[9] https://github.com/edx. Referred on 24 August, 2013.
[10] https://groups.google.com/forum/. Referred on 26 August, 2013.

45

You might also like