Skip to main content

Decisions to make

There is a lot of flexibility in how you can build an integration between Eduframe and an LMS, and therefore a lot of choices to make. Below is a list of common decisions to answer based on the requirements of your institution.

Which courses get an LMS course​

Not every course in Eduframe needs a corresponding course in the LMS. An empty course in the LMS might confuse students. Depending on your situation you can sync:

  • All course templates. Simple, no configuration in Eduframe. Every planned course becomes an LMS course, including ones nobody will ever open.
  • Selected course templates. Only templates marked for the LMS get LMS courses, and only enrollments on those editions are synced. This is the usual choice.

If you sync selected templates, you need a marker that administrators can maintain without a developer:

MarkerHow it worksBest when
Custom field on the course templateAdd a custom field such as LMS course and read it from the course.Only a single decision needs to be made and no additional information is required.
Configuration in your middlewareKeep a list of Eduframe courses in your own application, with additional settings or information per course.You need more settings per template than a field can hold, or rules more complex than a simple yes or no.

Whatever you pick, the middleware checks the marker on every planned_course.* and enrollment.* event and skips records that are out of scope.

Which users get an LMS account​

  • On demand (recommended). Create the LMS account the first time a person gets a confirmed enrollment on an edition that has an LMS course, or is assigned as teacher on one.
  • All users. Mirror every Eduframe user into the LMS as soon as they are created.

On-demand keeps the LMS clean and reduces license or seat counts.

Sync course templates or only editions​

An LMS course is created per planned course (edition). Whether the Eduframe course template also needs a representation in the LMS depends on the LMS:

LMSTemplate object needed?Notes
MoodleNoA course needs a category, not a template. Optionally copy content from a template course you maintain per Eduframe course template.
Blackboard LearnNoCourses are created standalone. Optionally copy from a template course.
CanvasNoThe native Eduframe integration only syncs planned courses. Blueprint courses are optional.
BrightspaceYesA course offering must belong to a course template, so every Eduframe course template needs a Brightspace course template first.

If your LMS does not need it, skip template sync and use the template only for the name, code and description of the edition's LMS course.

Where courses live in the LMS hierarchy​

Most LMSs organize courses in a tree: Moodle course categories, Blackboard institutional hierarchy nodes (optional), Canvas sub-accounts, Brightspace departments. Eduframe has two candidates to drive that tree:

  • Categories. Every course template belongs to a category (category_id), and categories can be nested (parent_id). Available in every environment via GET /api/v1/categories.
  • Departments. Course templates can belong to a department (department_id), listed by GET /api/v1/departments. Departments are behind the Departments feature flag and are in beta.

Choose one of three strategies:

StrategyLMS sideWhen
Mirror Eduframe departmentsCreate one LMS node per department and place courses by department_id.You use departments in Eduframe to separate business units and want LMS permissions to follow them. Our recommended default for larger institutions.
Single predefined nodeCreate one category, node, sub-account or department by hand and put every synced course in it.Small catalogs, or when the LMS tree is managed by someone else.
Mirror Eduframe categoriesCreate one LMS node per Eduframe category, nested like Eduframe, and place courses by category_id.Your website categories are also how teachers and administrators think about the LMS.

Per LMS:

  • Moodle requires a categoryid when creating a course, so you need at least the single predefined category.
  • Blackboard Learn does not require a hierarchy and using the hierarchy is optional.
  • Canvas places every course in an account or sub-account, so the single predefined sub-account is the minimum.
  • Brightspace places every course offering under a department and a course template, so both are required.
tip

Feel free to reach out to Eduframe support for help with the decisions above. We can share best practices and lessons learned from past projects. The prerequisites page tells you which scopes and feature flags each choice requires.