LMS Tool Use
Last updated
Last updated
The mart_general.lms_tool mart keeps track of interactions with LMS tools in the learning environment.
mart_general
The following visualization shows the construction of this data mart defined in the repository. More information on the repository and diagram can be found on
udp_course_offering_id
INTEGER
The UDP ID for the Course offering associated with the LMS tool.
lms_course_offering_id
STRING
The LMS ID for the Course offering associated with the LMS tool.
sis_course_offering_id
STRING
The SIS ID for the Course offering associated with the LMS tool.
udp_person_id
INTEGER
The UDP ID for the person who used the LMS tool.
lms_person_id
STRING
The LMS ID for the person who used the LMS tool.
sis_person_id
STRING
The SIS ID for the person who used the LMS tool.
role
STRING
The role of the person who used the LMS tool, i.e. Learner or Instructor.
academic_term_name
STRING
The name of the academic term, i.e. Fall 2020.
academic_term_start_date
DATE
The start date for the academic term.
academic_organization_array
ARRAY<STRING>
An array of the academic organization(s) associated with the course offering.
academic_organization_display
STRING
An array of the academic organization(s) associated with the course offering written as a comma-separated string
course_offering_title
STRING
The title of the Course offering associated with the LMS tool, i.e. Linear Algebra.
course_offering_start_date
DATE
The start date of the Course offering associated with the LMS tool.
course_offering_subject
STRING
The subject of the Course offering associated with the LMS tool, i.e. MATH
course_offering_number
STRING
The number of the Course offering associated with the LMS tool, i.e. 310.
course_offering_code
STRING
The code of the Course offering associated with the LMS tool, i.e. MATH 310.
num_students
INTEGER
The number of students enrolled in the Course offering associated with the LMS tool.
udp_course_section_id
INTEGER
The UDP ID of the Course section associated with the LMS tool.
lms_course_section_id
STRING
The LMS ID of the Course section associated with the LMS tool.
sis_course_section_id
STRING
The SIS ID of the Course section associated with the LMS tool.
instructor_name_array
ARRAY<STRING>
An array of the instructors’ names for the Course offering associated with the LMS tool.
instructor_lms_id_array
ARRAY<STRING>
An array of the instructors’ LMS IDs for the Course offering associated with the LMS tool.
instructor_display
STRING
The array of the instructors’ names for the Course offering associated with the LMS tool written as a string.
instructor_email_address_array
ARRAY<STRING>
An array of the instructors' email addresses for the Course offering.
instructor_email_address_display
STRING
An array of the instructor's email addresses for the Course offering written as a comma-separated string.
event_time
DATETIME
The time that the LMS tool was used.
event_day
DATE
The date that the LMS tool was used.
event_hour
INTEGER
The hour that the LMS tool was used.
canvas_tool
STRING
The Canvas tool that was used if the LMS is Canvas.
asset_type
STRING
The asset type of the LMS tool.
asset_type_id
STRING
The ID for the asset type of the LMS tool.
asset_subtype
STRING
The asset subtype of the LMS tool.
asset_subtype_id
STRING
The ID for the asset subtype of the LMS tool.
module_item_id
STRING
The ID of the module item if the LMS tool is accessed as a module item.
learner_activity_id
STRING
The ID of the learner activity if a learner activity is referenced in the speed grader.
udp_discussion_id
INTEGER
The UDP ID of the discussion accessed.
udp_quiz_id
INTEGER
The UDP ID of the quiz accessed.
udp_module_item_id
INTEGER
The UDP ID of the module item accessed.
udp_file_id
INTEGER
The UDP ID of the file accessed.
udp_wiki_page_id
INTEGER
The UDP ID of the wiki page accessed.
udp_learner_activity_id
INTEGER
The UDP ID of the learner activity accessed.
The num_students field defines the number of enrolled students in a Course offering. This number is found from the course_section_enrollment table in UDP’s context store, which keeps track of enrollments in course sections. We count the number of enrollments with a role of ‘Student’ or ‘Observer’ and a role status that is not ‘Dropped’, ‘Withdrawn’, or ‘Not-enrolled’.
The field event_time defines the time the event associated with the LMS tool use took place. This field is derived from the UDP’s event store. An event is considered to be a LMS tool launch when the EdApp ID of the event is the LMS. For example, an event is a Canvas tool launch if the EdApp ID is ‘canvas’ or ‘instructure’.
The field canvas_tool defines the Canvas tool used if the LMS is Canvas. The Canvas tool used is derived from the asset_type and asset_subtype fields. If the asset_type field is ‘course’, then the canvas_tool field is defined based on the asset_subtype field. For instance, if the asset_type is ‘course’ and the asset_subtype is ‘home’, then the canvas_tool is defined as ‘Homepage’. Otherwise, the canvas_tool is defined based on the asset_type field.
The asset_type field defines the asset type of the LMS tool. This field is derived from the event store. As mentioned when discussing the event_time field, an event is a LMS tool launch if the EdApp ID of the event is the LMS. The asset type is generally extracted from the asset_type key from object.extensions.[‘com.instructure.canvas’]. However, if the asset_type key from object.extensions.[‘com.instructure.canvas’] is equal to ‘course’ and the request_url key from extensions_json[‘com.instructure.canvas’] is an URL with a path similar to ‘/course/…/grades/…’, then the asset type is defined as ‘gradebook’.
The asset_type_id field defines the ID for the asset type of the LMS tool. This field is also derived from events in the event store with an EdApp ID of the LMS. The asset type ID is extracted from the extensions of the object, or the object.extensions field. Specifically, it is extracted from the entity_id key from object.extensions.[‘com.instructure.canvas’]. If this value is null, then the asset type ID is extracted from the object.id field.
The asset_subtype field is defined as the asset subtype of the LMS tool. This field is derived from events in the event store with an EdApp ID of the LMS. If the asset_type key from object.extensions.[‘com.instructure.canvas’] is equal to ‘course’ and the request_url key from extensions_json[‘com.instructure.canvas’] is an URL with a path similar to ‘/course/…/grades/…’, then the asset subtype is ‘user’. If the asset_type key from object.extensions.[‘com.instructure.canvas’] is equal to ‘enrollment’, then the asset subtype is again defined as ‘user.’ Otherwise, the asset subtype is extracted from the asset_subtype key from object.extensions.[‘com.instructure.canvas’].
The asset_subtype_id field is the asset subtype ID for the LMS tool. This field is taken from events in the event store with an EdApp ID of the LMS. If the asset_subtype key from object.extensions.[‘com.instructure.canvas’] is not null and the asset_type key from object.extensions.[‘com.instructure.canvas’] is not equal to ‘course’, then the asset subtype ID is extracted from the entity_id key from object.extensions.[‘com.instructure.canvas’]. When this key is null, the ID is instead extracted from the object.id field. If the asset_type key from object.extensions.[‘com.instructure.canvas’] is equal to ‘enrollment’, then the asset subtype ID is extracted from the request_url key from extensions_json.[‘com.instructure.canvas’]. If the asset_type key from object.extensions.[‘com.instructure.canvas’] is equal to ‘course’ and the request_url key from extensions_json[‘com.instructure.canvas’] is an URL with a path similar to ‘/course/…/grades/…’, then the asset subtype ID is extracted from the request_url key from extensions_json.[‘com.instructure.canvas’]. Otherwise, the asset subtype ID is null.
asset_subtype key from object.extensions
asset_type key from object.extensions
request_url from extensions_json
asset_subtype_id
Is not NULL
Is not equal to ‘course’
Is equal to ‘enrollment’
Is extracted from request_url key from object.extensions field.
Is equal to ‘course’
Similar path as ‘/course/…/grades/…’
Is extracted from request_url key from extensions_json field.
As a starting point for visualization for this data mart, Unizin has created a Tableau template workbook available for download here:
Unizin does not provide active, production support for the visualizations, filters, and aggregations in the Tableau workbooks. They are intended to be used as-is, but modifications are welcome! However, we will provide support related to connecting to source data and any issues with the Bigquery -> Tableau workflow.
Once downloaded, ownership of the workbook is transferred to the user. Unizin does not host the workbook on a Tableau Server instance.
The following fields are used as filters in the Tableau Workbook:
Instructor Display - The list of names of the course's instructors.
Course Offering Title - The title of the course offering.
UDP Course Offering ID - The UDP ID of the course offering.
Academic Term - The academic term of the course; the default selection is the current term.
These filters are in scope for all visuals in the dashboard.
The metric cards displays 2 keys indicators: the total number of users and the total number of launches, showing how many users are active and how often they interact with canvas tools.
The hourly distribution of canvas tool usage offers insights into when users are most active on the platform. This helps identify peak usage hours and understand daily engagement patterns.
The daily canvas tool usage chart highlights the distribution of activity across weekdays, revealing patterns in how users engage with the platform throughout the week. This allows users to identify peak days of usage and adjust support or instructional strategies accordingly.
The hourly canvas tool usage for recent activity chart breaks down platform engagement by hour over the past week - ranging from today and yesterday to activity more than 7 days ago. This view helps track short-term usage trends and identify changes in user behavior on a day-to-day basis.
The canvas tool usage per week chart presents weekly engagement across different canvas tools throughout the term. Stacked bars represent usage trends over the term, helping to identify which tools are most used each week. Hovering over each bar section reveals the tooltip, showing the tool name and the total number of clicks for the tool in scope.
The total clicks per tool table displays the number of launches for each canvas tool. It provides a clear view of which tools are most frequently accessed across the platform.
The daily canvas tool usage line graph shows tool engagement throughout the term. It highlights daily trends and also marks the highest and lowest points for total usage and distinct users.
The canvas tool usage per course table displays tool engagement across different courses, including total clicks and the number of distinct users for each course.
Is extracted from the entity_id key from object.extensions field. If this key is null, it is then extracted from the field.
The default data connection in the workbook is to Unizin's synthetic data. After downloading the workbook, the first step will be to transfer the connection to your own production UDP data. Here is a to help with this process; also, Tableau has a for replacing data sources. For any issues connecting to source data, please contact support@unizin.org.