Brief: A Vision for Content Libraries
Overview
It’s critical to arrive at a unified understanding of the purpose and function of Content Libraries, because Content Libraries intersect multiple short- and medium-term projects, many of which are key strategic investments for the platform, including content reuse, content modularity, and content sharing.
Current State: What’s included in the Libraries relaunch?
What’s the plan for Content Libraries after the relaunch?
While the relaunch moves Content Libraries closer toward supporting more robust content reuse and modularity use cases, there are still many feature enhancements needed to bring Content Libraries to their full potential. Content Libraries intersect the following use cases around content reuse and modularity at the junction of: Where the content needed for these initiatives is created, organized, accessed, managed and stored. Thus, additional features and enhancements will be needed to make Content Libraries more robust and functional spaces for creating, organizing and managing large and diverse types of course content for reuse and modular delivery.
Community Use Cases
Community use cases for content reuse and modularity that will rely on Content Libraries:
Harvard Medical School has a catalog of dozens of courses. They want to be able to modularize their catalog by extracting lessons from their courses (where lesson = section) and delivering them independently. They also want to create custom learning pathways by remixing sections from different courses. They need a place to store, organize and manage the extracted sections and new learning pathways. [Note: the delivery environment of new learning contexts/presentations is out of scope for this Content Libraries document.]
Western Governors University is taking a different approach to their general education requirements. They are breaking down their catalog of gen ed courses into competencies (where competency = section). Advisors will be able to custom select which competencies a student needs in order to meet their gen ed requirements. They need a place to create, organize and manage these competencies independently of the courses. They want to be able to create a competency as a stand-alone entity, in an authoring environment that is independent from the course. They may also want to extract sections from previously existing courses and be able to manage each section as an independent entity. They also need to be able to tag sections with competency metadata. [Note: the delivery environment of new learning contexts/presentations is out of scope for this Content Libraries document.]
Western Governors University wants easier ways for authors to customize course content for different audiences by substituting specific pieces of content (a problem, a unit, a section) to effectively create two versions of a course. For example, a course may have a unit on design thinking. The content within that unit was created for a business course. The IT college wants to use the same course, but swap out the unit for a different one that has content catered to the IT audience. Authors want to build a library with various iterations of the units that can be used and reused in different courses. [Note: an adjacent feature to copy a course run and remix is out of scope for this Content Libraries document.]
MITx has a similar use case, where they want to iterate on the same course for two different audiences, such that audience 1 can take V1 of the course and audience 2 can take V2 of the course, and the courses are the same except for one section, or a few units. They need a place to create, store and manage the swappable course components. [Note: an adjacent feature to copy a course run and remix is out of scope for this Content Libraries document.]
MRI Online wants to create dozens or hundreds of case studies (where case study = unit) that can be offered to administrators in a catalog and administrators can pre-select which case studies will be offered to learners. Case studies can be stacked to count to CME credits. They need an authoring environment to create these units, and to manage them. They also need to be able to add tags from learning taxonomies to the units.
The Spanish Consortium wants to be able to reuse sections of courses. “This section is good for another course that I am teaching and I want to reuse it in that other course and I don’t want to recreate it from scratch.”
Penn State wants to be able to create a library of evergreen course lessons (where lesson = section) that they can use over and over without needing to rebuild it each time.
Penn State wants to be able to create libraries of course lessons (where lesson = section) that can be offered as stand-alone credits. [Note: the delivery environment of new learning contexts/presentations is out of scope for this Content Libraries document.]
MITx wants better ways to organize content in their libraries, to make it easier to find content.
Western Governors University is looking for ways to create modularized content at scale, more quickly and efficiently. They want authors to be able to create content templates at the unit level that can be copied and quickly populated with component xblocks.
User Stories
The above use cases can be distilled into the following high-level user stories for Content Libraries:
As a content author:
I want to create a unit or a section independently from the course, so that I can reuse the unit or section in many different courses, [or future state: deliver it as a stand-alone learning objective, or sequence it into a custom learning pathway.]
I want to be able to extract units or sections from courses that already exist and put them into a Library for reuse later. I may want to do this with individual units or sections, or pull all the sections from a course into a library.
I want to be able to reuse any content that I create in a Library - whether a component xblock, a unit or a section - in any course, as many times as I want to.
I want to be able to update Library content in the Library and push out updates to courses using the content. Course teams can make the decision to accept or reject updates.
I want to be able to search and find units, sections, components and any other content in my Library easily with tools like keyword searches, sorts and filters.
I want to be able to add tags to content in my Libraries, so that I can align my content to learning competencies, or subjects, or skills. This will help me to find the right content for reuse later.
When I am ready to use content from my Library in a course, I want an easy way to search the content in my library while I’m in the course authoring environment.
I want to be able to organize or categorize content in my library, maybe into playlists, or into folders, or by tags, so that I can easily find what I need later.
I want to be able to create a template for a unit or a section, then copy that template and quickly populate it with the right component content.
Features and Requirements
(Epic level, need further refinement and incremental delivery planning)
Feature | Requirements |
More robust authoring environment in Content Libraries |
|
Enhancements to the randomization tool |
|
UX/UI enhancements |
|
Enhancements to Library Reference block/content selection tool in courses |
|
Expand content syncing options to units and sections |
|
Export from course to library |
|
Expand content tagging feature to all content in a Library |
|
Using tags to create subsets of content to randomize |
|
Better content management tools |
|
Search function |
|
Content templates feature |
|
At-a-glance information about library-course relationship |
|
Upload of static assets |
|
Open Product Questions
What’s the strategy for Files & Uploads? Do course-level files and uploads continue to live at the course level, or do we leverage Content Libraries as the home for them? This could enable authors to easily reuse external content across many courses and to take advantage of the content organization tools available in Libraries to manage their external content.
When the Content Tagging MVP launches and authors have the ability to add tags to components in Libraries, what additional enhancements do we need to add to make it possible for authors to group subsets of components in a Library by tag to use with the randomized content block?
Open Process Questions
How can we leverage the V2 release to create user feedback mechanisms that can inform how we prioritize from the above list of user stories and Features & Requirements? And to identify gaps or incorrect assumptions in the V2 functionality?
How do we pull edX partner voices into the mix to check where their expectations for Content Libraries may or may not align?
Open Technical Questions
In terms of implementation: should this be built on Blockstore, Learning Core, or ?
How do we represent structures larger than a unit within libraries? (Both in terms of UX and technically)
At what point in the editing/publishing process do we need to make this decision [the decision to break links or sync between shared content] when reusing a content object?
Does the original content author get any say here, or is it only the reusing content author?
With automated updates, do we still need a UI to show the upstream changes made over time?
Do content libraries become the defacto way for all content to be stored, even if it’s created first in a course rather than a library?
If someone creates a structure, call it a section, and that structure contains 5 units, are those units imprisoned in that structure, the section? I understand that what a unit is is fuzzy. It might, for example, be learning content, plus a formative assessment, because they are seen as inextricably bound together. But if there were 5 pairs of content + formative assessment -- units -- in a section and all that was shareable was the section, that feels sub-optimal.