Wikiversity:MOOC Interface/Doc

Landing page
To create a reasonable structure is the task of a teacher. To create pages that reflect this structure and link between the single items is not. Thus the MOOC interface provides methods to create such pages and contains a MOOC module that loads the structure of your MOOC. The interface enables the user to navigate through the MOOC and displays the correct page

Data structure
At first we want to make clear that a MOOC in the context of this interface is well structured. A MOOC contains any number of lessons and each lesson contains any number of learning units, which we will simply call unit. Lessons and units are both items of the MOOC.

This leads to a tree-like structure such as:

This structure is saved in a page we call the MOOC index.

Lesson
A lesson is a collection of units and thus try to convey a larger piece of information, such as a whole subtopic. Lessons can have a number of resources. The table below gives you an overview.

Unit
A unit is a small piece of information a student has to learn. Units can have a number of resources, the following table lists.

Resources
While videos, scripts and quizzes are standalone and could be used on other pages, learning goals and further reading are not.

Components
The following graphic gives an overview of the components the MOOC interface consists of. It illustrates the involvement of these components when a user requests a wiki page that is part of a MOOC.

Course:

1. MOOC item's wiki page
The entry point of the interface is the wiki page a user browses to, that is part of a MOOC. In this example it is the wiki page of the MOOC unit Ethernet header that is part of the Web Science MOOC.

page content:

This line invokes the MOOC module and uses the -option to tell which MOOC it belongs to.

2. MOOC module
The core of the MOOC interface is the MOOC module. It is a collection of Lua scripts that load the MOOC index and render the requested MOOC item into a template, together with all its resources and a navigation.


 * 1) Index Parser
 * 2) Models
 * 3) Templates