Requirements

Warning

Not all features written in this document will be implemented, and this document doesn’t contain any hard commitments.

Note

Missing requirements:

  • Everyone may submit their own materials;
  • Enable users to up-vote materials;

Basic requirements

  • We have a platform where partners (and third-parties) can upload content items.
  • These content items may be structured in a linear fashion.
  • Content types for these content items are TBD.
  • Teachers can download and remix materials
  • Students can participate in courses
  • Materials are cloneable/remixable by third-parties

OLCMS requirements

System is stable

System works reliably, and the urls are stable.

This addresses Adam’s story.

Content is downloadable

Content types (for which it makes sense) are downloadable.

Teacher should be able to download materials, for most material types:

  • Documents/textual content;
  • Quizzes, tests;
  • Videos;

This addresses Adam’s story.

Teacher is in control of content scheduling

When teacher is presenting the contents in class, he is in control over scheduling — he might need to skip some parts and/or focus on others.

He absolutely needs to be able to skip over content — LMS that strifctly enforces pre-requisites is totally unacceptable.

This addresses Adam’s story.

LMS part

System should contain typical LMS part that allows students to review material on their own. Teacher would point student to LMS and then student could take course on their own

This addresses Cecilia’s story.

System contains homeworks that are gradable, teacher can assess student performance
This addresses Elize’s story.
Content is browseable and searchable without login
This addresses Daryl’s, and Alan’s.
User is able to re-use content in way he is used to

Content is split in a small parts and user can download it and use it in whatever way he is comfortable with.

Videos can be downloaded and embedded in presentations, pdfs can be printed,

This addresses Daryl’s story and Vangelis.

OLCMS is translatable to many languages

We can translate OLCMS to different languages.

We will try to translate it to as many languages as feasible.

This addresses Fabio’s and Vangelis story.

OLCMS auto detects user’s language and tries to display content’s in this language
This addresses Fabio’s and Vangelis story.
User is able to switch this language
This addresses Fabio’s and Vangelis story.
OLCMS allows user to browse resources in other languages than his native.
This addresses Fabio’s story.
OLCMS role is obvious even for users that found it via the search engine

User who arrives at OLCMS is able to quickly understand that:

  • He browses a repository of teaching materials;
  • He can search for more materials;

This addresses Grace’s story.

User is informed on a Resource page what he might do with the resource

For example, when browsing Video resource, he should be informed that he might either show the video (and he gets link to Youtube) or he might download the video for off-line viewing.

This addresses Grace’s story.

OLCMS is SEO friendly
This addresses HawkBot’s story.
Users should be able to structure materials

User should be able to structure materials in a linear fashion, to create “lessons” from individual content pieces.

This addresses Adam’s story.

Users should be able to edit materials on platform

If an instructor needs to change given content piece he might do so in a “forking” manner: that is — he creates a copy of the resource which me might edit.

This addresses Adam’s story.

Materials should contain metadata
To a possible extend metadata should be extracted from the uploaded contents. But content editor should be able to add his own metadata.

Content formats

Content should be uploaded in editable format

Content’s should be uploaded in editable formats, programs that can be used to edit uploaded materials ideally should be free and open source.

Users should be able to “just” use content’s in a way they are used to.

This fulfills Adam’s and Vangelis.

User should be able to view materials in free (and, ideally, open-source software)

Contents should be playable on variety of OSes and devices.

This fulfills Brina’s.

Materials should be playable without installing new software

This fulfills Brina’s and and Vangelis.

We should strive to use formats that have pre-installed players :

  • We can assume that recent version of Chrome/Firefox browser is installed everywhere.
  • Probably the same for Adobe Reader (for MS Windows systems)
  • We can assume users will be able to play videos.
Printable documents should be uploaded in `.pdf`

But editable version (if one exists) should be uploaded alongside.

This fulfills Brina’s, Adam’s.

Formats designed for web should adapt to screen size
This fulfills Brina’s

Installation instructions are available

For each content format installation instructions are available for every platform that supports that format.

This addresses Astero story.

Pedagogical instructions are available

For each resource we also give pedagogical instructions.

Course Guidelines

Use of cheap and available materials

If Instructor needs to buy some expendable materials for classes he should need to use cheap and available materials.

Instructions should contain shops (including online shops) where he might buy the materials.

This addresses Brian’s story.

Uploaded content should be splitted in small chunks

Some teachers will have very limited time for innovation, we should attempt to produce contents that is splitted in small parts:

  • Maximal duration for playing the content should be 15minutes.
  • All reusable parts should be separated.

This addresses Vangelis story.

Materials should be printable

Content types (for which it makes sense) are printable.

This addresses Adam’s and Vangelis story.

Uploaded materials should have pedagogical guidelines

This addresses Astero story.

Misc requirements

Link to our github/gitlab/bitbucket profile is on the footer of every page.

Open problems

Printability vs. adaptability

Ideally materials generated by partners should both look good when printed, and be adaptable to various screen size.

There is no single format that fulfills both these requirements (.pdf is good for printing, and .html or .epub are good at adapting to screen sized).

Converting between these formats is not an easy thing to do.

Technical requirements

Use storage as a service solution
I’d rather not have to worry about backing up the resources too much.