[Proposal] Instructor Dashboard MFE Conversion
View the Github ticket for proposal status update
Overview
We propose opportunistically combining the Instructor Dashboard MFE conversion effort with an incremental shift to using Paragon components and modern styling. As part of this effort, we plan to also elevate this dashboard to its own product area and away from its current location as a tab appended to the learner course navigation. This initiative has two main goals:
The modernization of the instructor dashboard with a redesign to utilize Paragon components and potential other minor UX improvements. This will help push the instructor tools to UX more consistent with other platform areas.
The separation of the course instructor experience from a tab in the LMS into its own product area within courses. With this shift, educators would have improved course way-finding between the learning experience (LMS), instructor tools (Instruct), and authoring tools (Studio).
Axim and WGU are supporting an effort to modernize this area of the platform with development capacity ready to support this modernization. Schema will be helping with product and design definition in the transition of the current pages to MFEs. We would like to ensure the community has an opportunity to provide input on these changes.
Problem
The current instructor dashboard relies on legacy code, and has many opportunities for usability improvements. The current experience does not use standard typefaces, spacing, or other Paragon patterns. The implementation also does not meet our current front end development patterns and expectations, impacting the cost to maintain and improve this platform area.
The combination of misaligned components and poor distinction between different elements of the interface make the experience cluttered and difficult to use. Along with the usability issues, the instructor dashboard has long been relegated to operating as a secondary tool within the course navigation. This makes accessing instructor tools difficult while devaluing the instructor experience. We feel these tools should be separated out to provide instructors with a distinct place in the platform to operate their courses.
Use Cases
As an instructor, I need to easily find and manage key course tools (e.g., extensions, cohorts, grading) so that I can support learners more efficiently.
As a course team member, I need to navigate and perform admin tasks without confusion, so I can operate courses at scale.
Current Screens
Below is a current view of the course as seen by an instructor when navigating into a course. The Instructor tools are a tab added to the course navigation bar where it is visually grouped with student-visible course views. Separately, the masquerade bar allows for product switching back into Studio for the authoring context.
The current Instructor dashboard home view is the “Course Info” tab.
Proposed Solution
In order to support the shift of the instructor pages to MFEs and into it’s own experience within a course, we propose the following changes. These changes will not apply to the platform for those who only have a learner account.
A - Convert Instructor Tools to use Paragon
Each of the instructor area tools needs to be converted to relying on Paragon components and patterns. The following list is the known tools for the instructor dashboard as it exists today. Paragon versions of these tools are in definition, we plan to post them as soon as they are ready for review.
We will be adding designs for each of these tabs soon for review and input!
Tab | Current | Proposed |
|---|---|---|
Course Info - Basic details about course start, end, etc. |
|
|
Membership - Enrollment tools, Beta tester configuration, and Course team management |
|
|
Cohorts - Tools for managing manual and automatic cohorts |
|
|
Extensions - Student date extensions |
|
|
Student Admin - Student progress / grade review tools |
|
|
Data Download - Data researcher only tools and downloadable reports |
|
|
Open Responses - Dashboard for courses that use the ORA content block |
|
|
Bulk Email - Tool to send out course instructor emails | Bulk Email has already been converted |
|
Certificates - Issuing and revoking tools for certificates |
|
|
CCX - (We’ll need help from a instance that uses CCX to aid in gathering the screens for conversion) |
|
|
Reports - (Was shown in a recent demo, but not clear when this tab is shown) |
|
|
Others - (Need input on other non-default tabs that should be converted as well) |
|
|
B - Product Level Switching for Courses
B1 - App Header Navigation Bar Changes
We plan to introduce a change to the top level navigation to include a new dropdown that serves as a product switcher between Learn, Studio, and Instruct tools.
The routing for product switching is context dependent:
When viewing the Course Outline:
“Learn” will navigate to the current learner course home within the LMS
“Studio” will navigate to the Studio Course Outline
“Instruct” will navigate to the new Instructor Home page
The naming of these products / tools is something we should evaluate. We have drafted names here to serve as viable ‘product’ labels for these experiences as is the case with Studio for authoring.
When viewing a course unit page:
“Learn” will navigate to the course unit page within the LMS
“Studio” will navigate to the Studio Unit page
“Instruct” will navigate to the new Instructor Home page
When viewing other pages in Learn / Studio / Instruct outside of a Course:
The product switcher / dropdown becomes a static label, though Learners would not see this.
B2 - Page Level Header Changes
To accommodate the addition of the instructor experience, we will adjust the following headers in the LMS and Studio to include links to the instructor pages to have buttons to link to the Instructor page along side the current buttons to switch between the LMS and Studio. In a future release, we may propose removing these buttons and relying on the top navigation switcher.
C - Introduction of Instruct Course Home
We plan to introduce an Instructor Home as a jumping point between tools currently available in the Instructor Dashboard, replacing the current “Instruct” tab. To avoid confusion, we will keep the “Instruct” tab as a secondary way-finding mechanism. However, when accessing the tools through the “Instruct” tab, we will show a banner alerting users that the change will occur in a future release. When that shift happens, we propose a banner atop the course page that shows when an instructor first accesses a course home alerting them that the navigation has changed.
Along with this shift, the Instructor Course Home will get its own product url.
The current Studio url is: exampleinstance.com/authoring/course/courseurl
For the student experience, it is: exampleinstance.com/learning/course/courseurl
We propose the new url for the instructor experience will be: exampleinstance.com/instruct/course/courseurl
Other Approaches Considered
We considered a more minimal conversion that preserves the exact current structure and functionality with only technical upgrades. However, this would miss the opportunity to resolve long-standing usability issues and elevate the instructor experience in line with other MFE-based tools.
Implementation Plan
Below is an outline of the three major areas of the project. All three areas will require community alignment to ensure any changes to not significantly/ abruptly detriment current workflows.
Stage 1 (MVP): Convert Existing Instructor Tools to use Paragon (in previous drafts was Stage 3). This first stage will not involve any changes to wayfinding or the location of the tools.
Utilize Paragon components for design areas
Shift UI to use standard typography and colors
Suggest incremental UI improvements
Stage 2: Introduction of Instruct Course Home
Introduce a landing page with all course-specific tools from the current Instructor Dashboard
This page will allow for navigating to all the various instructor tools from one place, replacing the current tab approach.
This page will echo designs from the xBlock configuration page
Stage 3 (future direction): Product Level Switching for Courses (in previous drafts was Stage 1). This stage will require additional community alignment.
App Header changes: change the top level navigation bar to allow switching between products within a course context. The product switching will be as follows:
From the course home:
Learn: LMS Course Home/ Author: Studio Course Outline/ Instruct: Instructor Dashboard
From a Course Unit page:
Learn: LMS Unit page/ Author: Studio Unit Page/ Instruct: Instructor Dashboard
From other areas within each product, we may consider disabling the product switcher
Page Level CTAs
Change navigation from Studio and Course Masquerade bar to reflect addition of a new Instructor Dashboard
Plan for long-term ownership/maintainership
The updated Instruct product still needs a defined long term maintainer.
Schema is happy to support early stages of the product definition through documentation updates, QA pipeline recommendations, and release testing coordination to help ensure long-term stability and continuity, but a code level maintainer needs to be defined.