Quite some time is lost to course provisioning and request management. This document both defines what course provisioning is, and is a design for how to create software to assist in automating this process.
There are three major stories/workflows that occur in our course production/publishing architecture. While all three occur for residential MITx, some of them also apply and could be used for use with MOOC/Open Education.
The three major process flows are:
New Course
course id entered (i.e. 8.01r). It is intended that the
validation for course id will either use the edX-Platform course
listing API directly to check for duplicates, or maintain a (mostly)
complete list of all current courses internally
Moving a Course
Rerunning a Course
System Architecture diagram
Below is an Oracle style ERD diagram, but I do not presuppose the database choice, and do not think it is neccessary to use a traditional RDBMS as the persistance layer in the application. The persistence area is a flexible area within the architecture since even a simple document store would likely be adequate.
Entity Relationship Diagram