Originally published March 27, 2020
There are many ways to get answers to common reporting questions via Data Hub. Here we have organized some ways to get your answers into three categories based on your familiarity with Brightspace Data and tools and experience working with data in general. You may find that you may need to stretch yourself into a higher category to get exactly the metrics you need, but also don’t discount that there may be an easier process in a lower category that may help you get those key urgent numbers to your stakeholders sooner.
Beginner assumes you are familiar with the Brightspace interface and the in-course reporting tools. It assumes you are likely trying to access this data via Excel.
Intermediate assumes you have worked with Data Hub data before or feel comfortable with the help of the Core Admin Analytics guide. It assumes you are accessing the data with a BI tool or (for the smaller data sets) are comfortable using Excel’s data model.
Advanced assumes you have worked with Data Hub before for other reporting goals. It assumes you are comfortable and regular user of a BI tool or have access to a database to store and manipulate the data as needed.
Do the courses have content?
Beginner
Instructor Usage and Learner Usage Advanced Data Sets can indicate if a course has content pages. Both count the number of content objects visited by the Instructor/Learner. The Learner Usage data set also has a count of the content objects available to be visited.
Considerations and Limitations: You have to have Learners or Instructors enrolled in the course for the course to appear in the Data Set, if you are trying to see if content is in a course with no one enrolled you will either need to enroll anyone in the course (and run the report for that role) or use the Intermediate process of looking at content. The count of content objects on Learner Usage only includes content objects currently accessible to the Learner, excluding those hidden by release conditions, to get all content objects, use the intermediate process.
Intermediate
Starting from Organizational Units Data Set, Left Join Content Objects Brightspace Data Sets on OrgUnitId and count the number of content objects per course. Then you can filter these counts to get a list of courses where there are no or minimal content objects.
Considerations and Limitations: This process lists all the content objects that exist in a course and makes no distinction based on if the content is accessible to the learner. If you want to remove content hidden by release conditions look at the beginner process or go more advanced by incorporating the Release Conditions Brightspace Data Sets. You also can not see the content itself, only meta data related to the content. Unfortunately, the content itself is not available in Brightspace Data Sets. However, you do have access to the Name and Location, which may be a link to the file and indicates the file type.
Advanced: When was the content changed? What is the kind of content?
Make the join between Organizational Units Brightspace Data Set to Content Objects Brightspace Data Set as in intermediate level. Then filter based on date modified to determine if the instructor has modified course pieces such as syllabus and faculty info that need to be updated each time the course is offered. You can also parse and group based on the location to determine the types of content in the courses. If you are wanting to see the number of courses without content at a higher level (e.g. Department) go to the section about Organizational Structure at the end of this article.
Considerations and Limitations: This process just lists all the content objects that exist in a course and makes no distinction based on if the content is accessible to the Learner. If you want to remove content hidden by release conditions look at the beginner process or go more advanced by including the Release Conditions Brightspace Data Sets. You also can not see the content itself, only meta data related to the content. Unfortunately, the content itself is not available in Brightspace Data Sets. However you do have access to the Name and Location, which may be a link to the file and indicates the file type. This process also assumes that you know when the content was copied over, and so you would be looking for modifications after that date. It is only able to see content pages and not items in the Learning Object Repository.
Next Steps
Once you have a list of courses (course name will be on the Instructor/Student Usage and Organizational Units data sets) your next step might be to follow up with those responsible for putting content in the courses. But how do you determine who should be following up or how to follow up?
You can determine where the course falls in your organizational structure by following the link listed in the Organizational Structure section at the end of this article (Intermediate/Advanced).
You can determine which instructors belong to each course either through the Instructor Usage data set (Beginner) or joining to the User Enrollments (on OrgUnitId) Brightspace Data Set, filtering to only your instructor roles, and then joining to the Users Brightspace Data Set on UserId to get the Instructor’s name and email address (Intermediate/Advanced).
You may want to compare course access for the instructor (see question about course access later in this document) with courses without content to determine if there are situations where the instructor is entering the course but not adding content and may be engaging in other ways or struggling to build the course.
Are students logging into the system? Which students haven’t logged into the system?
Beginner
Using the Learner Usage Advanced Data Set, find the most recent system login date in the ‘Last System Login’ column for each student. For those that have never logged into the system, but are enrolled in a course, they will still have a row with no value (NULL) in this column.
Considerations and Limitations: There will be one row for each learner and course they are enrolled in so you will need to filter out the duplicate values if a learner is in multiple courses. This report will not show you system access for those not enrolled in any courses, to find those individuals you will need to use the Intermediate process. The data set filters on the last course access date, so you will need to be careful setting the date filter to include everyone. This method will only give you the most recent system login date, not a log of all the dates they have logged in, to get all the sessions the learner has had in Brightspace, use the Intermediate process.
Intermediate
Using Brightspace Data Sets you can Left Join Users to User Login Data Set on the UserId to see login attempts. You may be able to identify some of the issues individuals are having logging in here - like incorrect passwords. If you only want to see successful login attempts, then join the Users Data Set to the Session History Data Set on UserId.
Considerations and Limitations: These data sets are large! You will likely need to use a BI tool (e.g. Tableau, Power BI) or a database to manipulate them. If you don’t have access to these tools, you may be limited to the Beginner process. The data sets are also so large that they will be capped at the most recent 150 million rows of data. These data sets also include all users, not just learners, so you will even see Admins that are or are not logging in. If you need to filter to students based only on data in Brightspace, you should use either the Advanced or Beginner processes.
Advanced
o As in the Intermediate Level, Left Join Users to User Login or Session History on UserId. You can filter by StartDate/AttemptDate to see who has logged in the previous week for example. You may also want to join to User Enrollments (on UserId) to filter down to those with student roles and identify the courses they should be accessing - and perhaps aren’t at all because they are not successfully logging into the system. You may also want to begin looking at this over time, for example keeping a rolling number of logins over the last 14 days and flagging when an individual drops below a threshold as a contributing indicator to their success.
o Considerations and Limitations: These data sets are large! You will likely need to use a BI tool (e.g. Tableau, Power BI) or a database to manipulate them. If you don’t have access to these tools, you may be limited to the Beginner process. The data sets are also so large that they will be capped at the most recent 150 million rows of data.
Next Steps
o Once you have identified the learners who are not logging into the system, you will likely want to check up on them to provide assistance and/or determine the issue.
o You can get the email address or Org Defined Id for a learner on the Users data set, and you can get the email address on the Learner Usage data set as well.
o You may want to group them by course (Beginner and Advanced process includes course Information) so you can ask instructors to provide assistance to identified students.
Are instructors logging into the system? Which are not?
Beginner
This one is a bit of a proxy solution to answering the question. Using Instructor Usage Advanced Data Set, you can see the last date they accessed the course (Last Access to Course Offering). If they have accessed the course, then they have definitely accessed the system. You could also use the ‘First Login Date’ column on the Users Brightspace Data Set to determine if the User has ever logged into the system.
Considerations and Limitations: If the Instructor has accessed the system, but not the course, then you will not be able to determine that using the Instructor Usage data set, but you would be able to with the Users data set or the Intermediate Process. The Users data set only shows the first login, so if your question really is ‘Did the Instructor log in in the past week?’ then use the Instructor Usage Data Set or the Intermediate process.
Intermediate
Using Brightspace Data Sets you can Left Join Users to User Login Data Set on the UserId to see login attempts. You may be able to identify some of the issues individuals are having logging in here - like incorrect passwords. If you only want to see successful login attempts then join the Users Data Set to the Session History Data Set on UserId.
Considerations and Limitations: These data sets are large! You will likely need to use a BI tool (e.g. Tableau, Power BI) or a database to manipulate them. If you don’t have access to these tools, you may be limited to the Beginner process. The data sets are also so large that they will be capped at the most recent 150 million rows of data. These data sets also include all users, not just learners, so you will even see Admins and Students that are or are not logging in. If you need to filter to students based only on data in Brightspace, you should use either the Advanced or Beginner processes.
Advanced
As in the Intermediate Level, Left Join Users to User Login or Session History on UserId. You can filter by StartDate/AttemptDate to see who has logged in the previous week for example. You may also want to join to User Enrollments (on UserId) to filter down to those with instructor roles and identify the courses they should be accessing - and perhaps aren’t at all because they are not successfully logging into the system. You may also want to begin looking at this over time, for example keeping a rolling number of logins over the last 14 days and flagging when an individual drops below an expected threshold.
Considerations and Limitations: These data sets are large! You will likely need to use a BI tool (e.g. Tableau, Power BI) or a database to manipulate them. If you don’t have access to these tools, you may be limited to the Beginner process. The data sets are also so large that they will be capped at the most recent 150 million rows of data.
Next Steps
Once you have answered the initial question you are likely wanting to follow up with the individuals who are not logging into Brightspace. You can get the instructor’s Org Defined Id from the Instructor Usage Data Set and that as well as additional contact information from the Users data set.
If you need to see which individual in you structure is responsible for this individual so you can delegate accordingly, please see the Organizational Structure section at the end of this document.
You may want to begin tracking system access over time so patterns can be determined or so there is evidence that thresholds for system access are being met. You can use the same process outlined in the Intermediate and Advanced sections to look at the data over the time periods of your choice.
Course Access (Students / Teachers)
Beginner
Using the Instructor Usage and Learner Usage Advanced Data Sets you can see the last date they accessed the course (‘Last Access to Course Offering’, ‘Last Visited Date’). These files also give you some indication of activity completed in the course such as submitting assignments (learners), viewing content (both), and giving grades (instructor). This can reassure you that teaching and learning is occurring within Brightspace.
Considerations and Limitations: This only shows the most recent course access date and aggregated activity in the course, so it will be impossible to see what was completed in the last week or how many times the course was accessed during a time period for example. You will need the intermediate process for answering those more complex questions. When you generate these reports they will also include all the individuals fitting the criteria that have never accessed the course so you may need to filter those out (or filter to them - depending on your goal).
Intermediate
Use 2 Data Sets - Course Access and either Learner or Instructor Usage (depending on your targeted group) - joining on two fields: OrgUnitId/Course Offering Id and UserId. This will allow you to filter Learner/Instructor usage to only the courses you wish to target and should make the data easier to manage. The Course Access data set has a row for each day the user has accessed a course. You may want to count the number of rows in the Course Access table for a given course/user to get the number of total visits or filter by date to see how many visits in the last week - or whichever threshold you require.
Considerations and Limitations: The Course Access Data Set does not have a threshold for the amount of time an individual must spend in the course. A visit for 1 second, a visit for 1 hour, and 3 visits for 3 hours will appear the same. There is no data set available to show exactly how much time an individual has spent in the course overall. Using the advanced process for System Access you can see the time a user has spent in the system overall, but that data is not available at the course level.
Advanced
Use 3 Data Sets - Course Access, Organizational Units, and Users. Join Users to Course Access on UserId and join Org Units to Course Access on OrgUnitId. You likely will need to filter the courses to only those being currently offered, or the course accesses that have only occurred within a certain time period. The Course Access data set has a row for each day the user has accessed a course. You may want to count the number of rows in the Course Access table for a given course/user to get the number of total visits for a given user. You may wish to additionally join to UserEnrollments data set to limit to only those that currently have a certain role in the course (e.g. Student, Faculty).
Considerations and Limitations: The Course Access Data Set does not have a threshold for the amount of time an individual must spend in the course. A visit for 1 second, a visit for 1 hour, and 3 visits for 3 hours will appear the same. There is no data set available to show exactly how much time an individual has spent in the course overall. Using the advanced process for System Access you can see the time a user has spent in the system overall, but that data is not available at the course level.
Next Steps
Much like system access, you many need to follow up with individuals to determine why they are not accessing the course. You can get the instructor’s ‘Org Defined Id’ from the Instructor Usage Data Set. You can get the learners email address on the Learner Usage data set. Both pieces of information and more is available on the Users data set.
This is likely a metric you will be looking to keep track of over time. If you are using the Intermediate or Advanced Data Sets, consider using the differential files which are a more manageable size if you only want to identify individuals who have or haven’t accessed the course on a given day.
If you need to track time in the course, consider making all of the actions on your course embedded into content pages. Time against content is tracked in the system and can be reported on.