Project - Offline Mode (Text + Problems) (FC-28c)

Status

DRAFT IN PROGRESS

Contributing Team

@Marco Morales , @Volodymyr Chekyrta , @Sam Daitzman

Earlier Discovery

N/A

Linked Initiatives

Tentative Funded Contribution FC-0028

Overview

The ability to access a full course experience on your phone even without connectivity will enable learning on the go and in limited bandwidth environments. Today only video downloads are possible on the mobile applications but moving to fully offline text components as well as a read-only problem component experience is a big step forward toward fully offline mobile courses.

Overview

The ability to access a full course experience on your phone even without connectivity will enable learning on the go and in limited bandwidth environments. Today only video downloads are possible on the mobile applications but moving to fully offline text components as well as a read-only problem component experience is a big step forward toward fully offline mobile courses.

Key Use Cases

  • As an learner, I can easily download my full course experience for offline mode viewing and learning.

  • As a learner, progress is tracked and stored offline for video and text problems to be synced with the learning site once connectivity is renewed.

  • As a learner, I should be able to view all text and problem components on my phone once downloaded.

  • As a learner, I should be able to see what parts of my course are available on the go, and have tools to help me manage my downloads.

  • As a course author, I should be able to see what my course support level for mobile and offline usage looks like based on my course components used.

Deliverables

  • Stage 1 - Improved Bulk Download Tools

    • Bulk Download Tools: This would improve the ability to bulk download full sections of a course or an entire course and all its downloadable elements.

    • Download Progress: Minor updates to showing downloaded status and allowing individual download of blocks when viewing a block element.

  • Stage 2 - Mobile Download Size Confirmation & Settings

    • Additional controls to support data saving and download confirmations are also a part of this set of changes.

  • Stage 2 - Offline Text Downloads

    • The ability to have text / html components be stored / cached for local render in the mobile application. Download controls would be added to elements similar to video components and bulk download controls would download all elements (Video / Text) within that level of the course.

    • Ideally, shared / cached javascript / css is also processed to support interactive offline HTML elements, but it is possible we may need some way to designate HTML blocks that might lose some interactivity when viewed offline if they rely in any way on internet connectivity to function fully. (

  • Stage 3 - Read-Only Problem Downloads

    • The ability to download capa problems in read-only mode is the next milestone, allowing learners to see an offline mode for this component with disabled input controls and some messaging that explains completing this course element is only possible while online.

  • Stage 4 - Mobile Course Download View

    • From the course page on the mobile applications it should be possible to get to a download details view, showing what percentage of the course experience is available for viewing on mobile, what percentage is available for completion on mobile, and what percentage is downloadable. Seeing currently downloaded sections and download controls should also be visible from this view.

  • Stage 5 - Mobile Authoring Stats View

    • Providing course authors visibility into mobile experience status is a way to help ensure improved mobile engagement and usage. Providing a view into this from Studio to highlight best practices and mobile view / complete / download percentages should help educators make better mobile course experiences.

Users

  • Mobile App Learner

  • Course Author

In Scope / Out of Scope

Based on the above use cases, we are breaking down on high-level scope as follows:

In Scope

Out of Scope

Text and read-only problem download mode for course blocks

Fully interactive problems for download and completion on mobile

Mobile and Studio view into course view / complete / download details

Mobile Course Content View (newly conceived, but moved to the course navigation project / effort)

MVP Specs

Features & Requirements

In order to realize this MVP, we believe the following features will be required. Refer to the following flow chart for more details:

Feature

Requirements

Improved Bulk Download Tools

Today, in the open edx mobile experience download buttons exist at the subsection, unit, and block levels. With this shift, we’d like to move bulk download controls to the course, section, and block levels.

Additional download confirmation dialogs, storage and connection error states, and download progress status updates are also planned here.

Finally, additional account settings are planned to improve data storage controls for learners.

Design screens / flows for this are included below.

Download Confirmation Dialogs

 

Download Quality Settings and Options

 

 

 

Text Problem Linting / Classification

details coming soon

Problem Linting / Classification

details coming soon

Offline Text Downloads

From an experience standpoint, this simply means that text components can be downloaded and would show download status indicators where applicable.

Achieving some performance gains when rendering these text blocks would be helpful, but the question remains of whether we could support 100% of the interactivity of all html elements when downloaded and how to detect this.

Offline Read-Only Problems

This initial version of offline problems would be focused on a read only view of (capa) problems, though we would need to decide which exact problems are in scope and which advanced problem types are not in scope for this read only view. Starting with the 5 common problem types is a useful increment, but we’d need to make sure the information necessary to classify the capa problem and its offline support level is known to the mobile application based on the OLX / metadata available.

Mobile Download Details View

Details coming soon

Studio Mobile Stats View

details coming soon

New Mobile Content Page

Moved into future Course Navigation project

All previous updates would be incremental changes to the existing Course tab within the mobile experience. This increment involves a new content page that takes the course content outline and combines it with our video tab to introduce clearer content filtering, completion status, and download status for course content.

Mockup / concept sketch coming soon. This new content page is currently being seen as something that would pair with a new course home page, but that is separately added here as its own increment.

 

Technical Open Questions

We anticipate the following to some of the key questions that we will need answered during technical discovery. 

  • X

Open Tasks

@Volodymyr Chekyrta to add some of the technical open questions and challenges the team faced building this feature for a client
@Marco Morales to finish drafting this page from offline sketches and notes

Successful Rollout: UI Considerations

We believe there is some risk in … We believe that organizations will need time to …. Therefore, we want to be conscious about how …. 

We are proposing the following to help drive adoption:

  • New User Product Tour: X

Product & UX/UI FAQ

The following represent our Product view of key questions. However, we look to the UX/UI and technical teams to validate these as needed.

Q: How ..

A:

UI Screens