[LON-CAPA-admin] self-service for course creation?
Stuart Peter Raeburn
raeburn at msu.edu
Sun Feb 11 21:21:10 EST 2007
At MSU course requests have been made online since 2004, and course creation
has occurred automatically for such requests since mid-2005.
LON-CAPA provides the following script:
/home/httpd/perl/Autocreate.pl to automate the process of course creation.
This script which should be run by the www user on a domain's library server
looks for files in /home/httpd/perl/tmp/addcourse/$dom/auto/pending
(where $dom is the LON-CAPA domain).
Any files it finds there are processed, and on completion moved to
The script is called with two arguments
the default domain for new course(s) and username:domain of a domain
e.g., /home/httpd/perl/Autocreate.pl sfu dcuser:sfu
(where dcuser would the username of a domain coordinator at sfu).
Logs of course creation transactions are written to
The contents of the files in
will be XML-based description(s) of the course(s)to be created:
The following URL:
on any LON-CAPA server is a help file which provides an example of the
format to be used in these course files. A file can contain more than one
course description - each separate course is included within <class
id="$id"></class> tags, where $id is a class identifier. The class
identifier is recorded in the logs along with the LON-CAPA courseID assigned
to the newly created course. You can choose to make the id anything you
like; it is not used or stored within a LON-CAPA course, but you may find it
useful for course request administration. The output from Autocreate.pl,
which prints to screen if run from the command line as user www, or to the
calling script (if called by a separate script), contains a colon-separated
list of escaped courseID:class id strings.
At MSU the course request form itself and storage of course request data are
on a separate server from the LON-CAPA library server in the msu domain.
This introduces some additional complexity into the process of automated
course creation. Things need not be set up this way - in the long run it
mught be better to make self-service course requests and their processing an
integral part of LON-CAPA. If this were to occur, I assume Domain
Coordinators would choose to enable this feature in the same way that
auto-enrollment can be enabled/disabled.
For the operation of the online course request form at MSU, the following
access to institutional data is required:
1. Ability to authenticate MSUNet ID and password (in the future this will
change to Single Sign On, in which case authentication will occur via a
central log-in service).
2. Ability to authorize MSUNet ID - is this person faculty, staff or an
actively teaching graduate student?
3. Ability to retrieve institutional department codes.
4. Ability to retrieve all sections and courses for a given semester and
5. Ability to verify instructional status for a specific user in a course
for a given year, semester, course code and section(s).
The following access to LON-CAPA data is required:
1. A list of cloneable courses available to the requestor (this combines
courses in which the requestor is a Course Coordinator, as well as courses
in which the user has been given cloning rights - set by a CC in Course
Let me know if you would like additional information. Some details of the
MSU implementation appear below.
MSU LON-CAPA group
raeburn at msu.edu
P.S. Further details of the MSU implementation
At MSU a separate script which is run periodically on the library server
sends a request to a different server used for course requests by course
coordinators. The script on the remote server checks if there are any
submitted course requests in a local "pending" directory for which the
requestor can be verified as the course owner. If there are, it sends back
a response containing the XML for the course requests, which are then
written to /home/httpd/perl/tmp/addcourse/msu/auto/pending
Autocreate.pl is then called by this script, and then the output from that
call causes further processing (e.g., dispatch of e-mail to the course
requestor etc., and some updates to course request status on the remote
At MSU the online course request form has the following characteristics:
1. Users msut authenticate with institutional ID and password
2. Users must be authorized - faculty, staff and graduate students who are
actively teaching receive authorization. Others can be authorized on a
3. Users msu choose the insititutional code for the course (year, semester,
department and number).
4. Users select which institutional sections they will teach. They can
define a mapping of institutional section to LON-CAPA section.
5. Users can indicate crosslisting of courses across departments for the
purposes of auto-enrollment.
6. Users select whether they want to merge multiple sections, or want to
create more than one LON-CAPA course for a course with more than one section
7. Users can specify additional instructional staff (including roles, and
sections for the roles).
8. Users can choose to create the course using a course for which they have
9. Users review their selections before submitting their request.
10. Requests for courses which the requestor is identified as an official
instructor are created immediately the next time the course creation script
runs on the MSU LON-CAPA library server. Other course requests remain
pending until the requestor becomes listed as an official instructor
(datafeed 5 below).
11. Requestors can modify requests after submission unless the request has
12. Requestors can display history and status of their course requests
13. Requestors receive e-mail confirmation of course requests, and when
courses have been created.
14. Requestors are warned if auto-enrollment will be unavailable for certain
15. Administrators can display the status of all course requests, by user,
or by year, semester and department.
At MSU the class id included in the <class> tag is in the following form:
number:institutional code (where number corresponds to a numbered record for
the course requestor (incremented each time a request is submitted).
Some screen shots of the MSU course request form are included in this 2004
LON-CAPA conference presentation:
(see the last few slides).
Ray Batchelor writes:
> Hi all,
> I am wondering who has already set up at their institution any kind
> self-service for creation of new courses by the prospective course
> coordinators (moderated by dom coord, or otherwise).
> I am interested in the issues and best practices.
> LON-CAPA-admin mailing list
> LON-CAPA-admin at mail.lon-capa.org
More information about the LON-CAPA-admin