1. Development of a MOOC
Management System
Antonio Sarasa Cabezuelo
José Luis Sierra Rodríguez
Complutense University of Madrid
2. MOOC
• In the last years, it has developed a new form of distance learning called
MOOCs (Massive Open Online Courses)
• A MOOC is a course in web format that consists:
• A set of materials in different supports (pdf documents, word documents, videos,
audio, etc.)
• A linear and time-based deployment of the materials
• An assessment system.
3. MOOC
• Characteristics:
• Massive courses: the number of students can be huge.
• It is free: anyone with an email account and internet access can register a MOOC.
• Certificate: the successful completion of the course allows to obtain a certificate
without academic validity.
• The dynamics of the course is to study the contents, and to carry out a set of
evaluation activities: quizzes, practices and a final exam.
4. MOOC
• The objective of MOOCs and the online distance education is different:
informal and formal educational process.
• In this sense a MOOC requires new tools.
5. MOOC
• There are several initiatives working on creating new systems :
• OpenEdX supported by MIT, Stanford or Google.
• MiriadaX supported by Telefónica.
• OpenClass supported by Pearson publishing.
• OPenMooc supported by UNED, Telefónica and CSEV (Virtual Centre for Higher
Education).
• FutureLearn supported by the Open University and other British universities.
• OPenUpED supported by the European Commission.
6. MOOC
• In this paper, we present an open-source management system for MOOCs,
which has been developed in the Computer Science School at the
Complutense University of Madrid.
• This platform covers the basic functionality required to create, deploy and
manage a MOOC.
7. System Requirements
• The system requirements:
• Open source software. Anyone could use the system without limitations and with the
possibility to modify and get new updates.
• MOOC life cycle support. The system must support the whole life cycle of a MOOC with
management tools oriented to teacher and students.
• Massive management of users. The server side must be scalable in terms of number of
users because it must support simultaneous access of thousands of users.
8. System Requirements
• Scalable storage. A Mooc generates a large amount of information and it is
necessary a large-enough and scalable storage system.
• Multi-language support and customization. End users can come from anywhere
and the system should provide the user the ability to customize the interface
to their native language and other aspects.
• Ease of use. The system must be easy to install, use and customize, and a user
should not need advanced technical knowledge .
9. System Requirements
• User registration. The system must distinguish between registered and
unregistered users.
• Type of roles. There are two roles: student and teacher
• Communication System. Every course provides a forum for communication
between the user and the teacher.
10. System functionality: Homepage
• Homepage
• Any user starts interacting with the system in the homepage of the platform.
• The upper horizontal bar offers links to the different parts of the system:
• The Home link to the main page.
11. System functionality : Homepage
• The Courses link enables to access to a page in which all active courses are listed :
• Courses are grouped by category: Arts, Biology and Natural Sciences, Business Administration,etc
• Next to each category, the number of active courses under that category appears.
• On the right side, the most popular courses appear.
12. System functionality : Homepage
• Once a category is selected, courses associated to the category are displayed on the right frame.
• And when a course is selected, then it is possible to access a page that displays information about
the course such as completion dates, contents, teacher who taught, frequently asked questions
about the course, and the possibility of joining the course.
13. System functionality : Homepage
• FAQ link provides access to a FAQ page.
• Language link allows to set the language of the application interface.
• Register link allows a user to register in the platform.
• Login link allows a user registered to enter in the account.
14. System functionality : Homepage
• Another links:
• Feedback links to a page where a user can send any comment to the administrator.
• Search bar lets the user search for a course by entering some terms.
• Recommended courses display information about courses whose start date is near.
15. System functionality : Homepage
• The registered user interface is similar to the home page except to the upper
horizontal bar because it includes the same links and a new link to the user’s
profile.
16. System functionality : Creation of a course
• A user with the role of teacher can create courses using the drop down
Resources that appears on the top horizontal bar, and offers the following
options:
• Managing resources. It allows the user to upload content, and view, delete or upload
resources. Resources are owned by each user and they are kept even if they are not used
in some course.
17. System functionality : Creation of a course
• Managing tests. It allows the user to create, view or delete tests. When a new test is
created then:
• The user must fill a form with a question and several possible answers, and mark the correct
answer.
• Questions and data introduced appear on the right frame, and it is possible to delete at any
time before saving the test.
• There are tests with single answer or with multiple choice answers
• Every test may have assigned a maximum number of attempts or have an unbounded
number of attempts, and they can be evaluable or non-evaluable.
18. System functionality : Creation of a course
• Create a course. It allows a user to create a new course. In order to it, the user must fill a form
and edit the course:
• Disable / Enable option: it allows to make a course visible for other users in order to let them to
register in it.
• New notice option: it allows to insert news and information that the users will see the first time that
they enter in the course.
• Edition option: the teacher can modify information about the course that users can see.
• Forum option: it provides access to the forum of communication associated of the course and the
user can create topics of discussion
• Tracking option: it allows to monitor the progress of students registered in the course.
• Lectures option: it allows to structure the content of the course in lectures.
19. System functionality : Creation of a course
• Inside of a lecture, the user can:
• Add lessons. A lesson is the structural unit of a lecture. The user can add content to a
lesson using resources and tests previously uploaded or can upload new resources. The
resources uploaded can be reused even if the lesson is removed.
• Select or create tests. The tests created can be reused even if the lecture is eliminated
from the system.
20. System functionality : Using a course
• When a student uses a course then there are two options:
• Lcture option: the student can access to the content of the lectures:
• Lessons and evaluable tests associated with the lecture in the left frame.
• Content of the lesson from the lecture in the right frame.
• Tracking option : the student can see the results for tests, and the best, worst, and the
average of these tests.
21. System architecture
• The system architecture is based on the design pattern Model-View-Controller
(MVC)), which proposes the separation of data and business logic of an
application from the user interface and the management of the events and
communications management.
22. System architecture
• We use the Ruby on Rails framework to implement this architecture because
this framework is oriented to create applications that follow this design
pattern.
23. Data model
• The model of the system makes use of a database that stores information for each
element of the system: users, courses, lectures, lesson, resources and tests
24. Data model
• The data model has been implemented using MongoDB. A non-SQL
database that stores the information in a data format based on JSON
documents. MongoDB offers the flexibility to make dynamic changes to the
underlying data schema.
25. Conclusions
• The system offers a set of basic functions for creating, editing and deploying
MOOCs
• The system follows a Model-View-Controller design pattern implemented using
the Ruby on Rails framework.
• The data persistence is implemented using a MongoDB database that offers
flexibility to change data schema dynamically, facilitating changes and
improvements.
26. Future work
• New ways of communication: chat or email, or social networks.
• Certification: an automatic generation of certificates and its stores in the user
profile in order to download anytime.
• New assessment systems: evaluation on peers or intelligent evaluation systems.
• Export / Import of courses in a specific format in order to reuse the course in
other tools.
• Data Analysis of the courses and the exportation into formats processable.
27. Development of a MOOC
Management System
Antonio Sarasa Cabezuelo
José Luis Sierra Rodríguez
Universidad Complutense de Madrid