Docs:Quick Start

From DevWiki
Jump to navigation Jump to search

This document is intended as a rapid introduction to the course development system for academics and course creators. It is not intended as a substitute for the other supporting documents, and you should - at an absolute minimum - ensure that you read the Course Structure specification document after this.

Overview

The APEcs course development process consists of two phases:

  1. course content creation
  2. export and processing

These two phases are discussed in detail below.

Prior to v3.7.2 of the course processor toolchain, the second phase involved manually invoking the export tool and the processor tool from the command line, making the process quite unfriendly to the average user. With the introduction of the web-based interface in v3.7.2, the two stages correspond to the use of two different web based applications: course content creation is done in a wiki, while export and processing is done using a custom-written web application that wraps up all of the complicated and unfriendly work of using the course processor toolchain behind a simple web user interface.

With the introduction of the web-based processor interface, all users have the option of taking full control over creating, exporting, and processing their material without the need for direct intervention by support staff, unless exceptional circumstances arise or advice and help are needed regarding material organisation, metadata formatting, and content design.

Course content creation

Course content consists of the words that form the meat of your course, images used as figures and diagrams, animations that provide interactive illustration of concepts, video, and other supporting media. Essentially, everything that forms your course instructional material is considered "course content", and with a few exceptions it should all go into this wiki. The development wiki contains the master version of your course material, and is the only version that can be processed into a finished CBT package.

The most vital things to know about creating a course in the wiki are:

  • A course is divided up into 'themes'. A theme should contain number of conceptually related subjects - for example, you could have one theme on flow control, another on information representation. Each theme contains one or more 'modules'. Each module consists of one or more 'steps' which discuss a single concept or small number of related concepts in detail. For example, you might have one module inside the flow control theme that discusses 'for' loops, another that discusses 'if', another for 'while' and so on. The normal emphasis here is on conceptual grouping of information, not on linear narrative as found in a normal textbook: the linear narrative will usually be superimposed upon the material using external route maps and workpackages provided to the student in your VLE.
  • Steps may contain all content currently supported by the wiki. At the most basic level this means normal wiki markup - styled text, images, tables, and so on. There are also a number of special features available to you that can be utilised in steps: popups, equation embedding, flash animations, streaming video, and others. You should refer to the Module Page specification of the DevWiki Course Structuring document for more information.
  • You will have been provided with a namespace to build your course in (if you do not have one yet, you will need to request one!) If you have been given the FOO namespace for your course, then all pages you create as part of your course content must have FOO: prefixed to their title. For example, if you create a new theme called 'Bar', the page title must be 'FOO:Bar', and if you create a new module called 'Fred' it must be called 'FOO:Fred'. Namespaces are case sensitive, so be sure to use the exact namespace you were given!

For a more thorough discussion of the ideas underlying course structuring, consult the Course Development document. In essence, you should start by planning how to split your material up into themes and modules: when concepts are related, regardless of difficulty, they should go into the same theme, and then each module should discuss the concepts separately. When writing a linear textbook or course you may discuss one concept early on, and then a more complex related concept later. In this model both of those concepts should go into different modules within the same theme with different difficulty levels, rather than having one in a theme you expect to teach first, and one in a theme you expect to cover later!

Once you have a rough idea of the concepts you need to present, and how to group them into modules and themes, you can begin creating theme pages, and modules within those themes. This is done using normal wiki markup: on your CourseData page, adding [[FOO:Bar]] under the Themes header will create a link to a new theme called Bar. Clicking on that link will allow you to create the theme page. Similarly, adding a [[FOO:Fred]] link under the Modules heading on a theme page will create a link to a new module called Fred, and clicking on the link will allow you to create the new module page. You will need to read the Course Structure specification document to ensure you structure your material correctly!

As you go along, you may upload various forms of media to the wiki to include in your course - images, animations, and so forth. These should be uploaded using the normal file upload tool, and you must also include links to the files within your course's Media page or they may not be exported. While it is not absolutely required, you are very strongly advised to prefix your media file names with your course's namespace followed by an underscore, for example: FOO_diagram1.png, FOO_fancyanim.swf, FOO_lolcat.jpg, etc. This will help avoid name clashes across courses, and helps identify which course each file should belong to.

In order to process your material through the Course Processor toolchain you must ensure that metadata information is provided for the course and each theme. The metadata is specified as XML, and the format is too complicated to detail here - if you want to create the metadata yourself you should consult the metadata documentation

Exporting and processing using the web interface

The web-based interface to the course processor toolchain is available at https://elearn.cs.man.ac.uk/processor/ The application is based around a simple 'wizard' system which splits the process up into a series of discrete steps, and each step concentrates on one aspect of the process of exporting and processing material.

To export and process a course from the wiki you should go to the above URL. The stages you will go through are fully documented in the Web-based course processor interface documentation, but each stage contains documentation about what you should be doing. Follow the instructions given at each stage, and click on the Next button at the bottom right of the page to go onto the next stage. Please read the Web-based course processor interface documentation for a full description of the process.

Exporting and processing using the command line

The following information is intended for advanced users only, and is not necessary for general development work

Exporting

Before a course in the wiki can be processed into a CBT package it must be exported from the wiki. Exporting is currently accomplished using the 'wiki2course.pl' tool that forms part of the Course Processor toolchain, so you must ensure that you either have a login on elearn, or your own copy of the course processor installed, in order to export courses at this time.

Once you are logged into a system on which the course processor toolchain is available, you can export your material from the wiki using the following command:

wiki2course.pl -v -u <wikiusername> -n <namespace> -o coursedata

Replace the <...>s in the command with your wiki username and the namespace of the course you are exporting, for example:

wiki2course.pl -v -u Chris -n ITG -o coursedata

This will provide information about the current task as it proceeds. If you would prefer to not see this status information, omit the -v from the command. To see more details - if the script reports a problem, and you need more details to narrow down the cause, for example - add a second -vs to the command. If you want full debugging output you may want to use the following command:

wiki2course.pl -v -v -u <wikiusername> -n <namespace> -o coursedata 2>&1 | tee exportlog.txt

This will show you the export progress, and store a copy of the output in the exportlog.txt file for later reference. If you see any WARNING or FATAL messages during export, there may be a problem in your material that is preventing the tool from exporting it correctly. Check the wiki2course messages page for a list of messages, what they mean, and how to address any problems.

Processing

Material exported from a wiki (or, potentially, generated manually in html or LaTeX) is processed into a complete CBT using the processor.pl script that forms part of the Course Processor toolchain. Provided that the course processor has been installed correctly, you can process an exported course into a CBT using the following command:

processor.pl -c coursedata -d output

This will process the course material exported into the coursedata directory above into a CBT in the output directory. If you need to see more progress and debugging information you may add -vs to the command as above:

processor.pl -v -v -v -c coursedata -d output 2>&1 | tee processlog.txt