How does the progress work?

Hi,

Many of our learners and testers are seeing that their progress is not updating when following a class.

How is the progress calculated ? What is it that triggers a unit, subsection or section to be marked as completed ?

We have videos, some quizzes (but not in all units), some text, some jupyter xblocks.

Thanks

Hi @mboisson This is something I looked at several years ago so my info is probably a bit out of date and I’m going off memory.

But, broadly, completion events are triggered off different criteria depending on the block. Importantly, non-standard blocks (like your jupyter xblock) might not have completion criteria at all or might behave differently than you expect.

From your list:

  • Video completion fires at some percentage of the video watched. In the code it looks like this percentage is configurable and defaults to 95%.
  • Quizzes I believe are when all problems are attempted.
  • Text completions is calculated based on the amount of text. It is a certain amount of time per word or character, and the text must be in the visible part of the screen for that timer to start. You can test this by creating a unit with one text block and keeping it visible for, say, 30 seconds and refreshing the page and confirming it is marked complete.
  • Special blocks are block-specific, and some might not trigger completion. When I was looking into this I was running SCORM exercises from an HTML block. And completion was treated just like text since the platform couldn’t differentiate between an embedded scorm path and any other text. I did a quick search in the python x-block and I don’t see anything in the code for “completion” or “progress”, so you might need to ask the block owners if completion is tracked for those blocks and how.

If those aren’t working, then there might be a different issue with completion configuration in your instance. But it sounds like it is working sometimes, so I’m guessing your students are running into these nuances.

John

Completion is… difficult :sweat_smile:

Tagging @dave who may have more information to share about completion on XBlocks

@mboisson, the Progress page in the Learning MFE displays the completion based on the number of completed units. So, basically, the value should change with each green checkmark on the unit in the course navigation sidebar. If these numbers do not match, then the best place to start debugging is the BlockCompletion model.