The ideal learner profiles would allow the following types of information to be captured from learners by default:
Data | Purpose | Default Visibility | |
Username | Anonymised user identification | Essential | Public |
Login, communication | Essential | Course Staff | |
First Name | Certificates, identification | Essential | Connected Learner |
Last Name | Certificates, identification | Essential | Course Staff |
Age | Research & learner personas | Demographic | Course Staff |
Location (City, Country) | Research & learner personas | Demographic | Course Staff |
Gender Identity | Research & learner personas | Demographic | Course Staff |
Religious Identity | Research & learner personas | Demographic | Course Staff |
Ethnic Identity | Research & learner personas | Demographic | Course Staff |
Qualifications | Research & learner personas | Demographic | Course Staff |
Timezone | Research, learner personas, and planning | Demographic | Connected Learner |
Learning goals | Help staff to connect with learners | Personality | Course Staff |
Areas of interest | Allow learners to connect over shared interest, help staff connect with learners | Personality | Connected Learner |
Preferred Name | Allows learners to provide a name they would rather staff and other learners use to refer to them by | Personality | Connected Learner |
Learning challenges | Help staff understand barriers to learning such as accessibility needs or personal challenges | Personality | Course Staff |
Bio | Allow learners to introduce themselves to profile viewers in their own words | Personality | Connected Learner |
Preferred Pronouns | Allow learners to specify their preferred pronouns to prevent misidentification | Personality | Connected Learner |
Courses enrolled | Display which courses a learner is currently enrolled in | Activity | Admin |
Courses started | Display which courses a learner is enrolled in, and has recorded progress | Activity | Admin |
Courses active | Display which courses a learner is currently active in (requires a definition of “active” such as progress changing in the last two weeks) | Activity | Admin |
Certificates earned | Display which certificates a learner has earned on the site | Activity | Public |
Badges earned | Display which badges a learner has earned on the site | Activity | Public |
Activity log | Display a record of all actions performed by the user | Activity | Admin |
Course-specific activity log | Display a record of all actions performed by a user within a specific course | Activity | Course Staff |
Course progress | Current progress levels for enrolled courses | Activity | Course Staff |
Course grade | Current grades for enrolled courses | Activity | Course Staff |
Average grade | Average grade across all enrolled courses marked complete | Activity | Admin |
Social media profiles | Connection of accounts on social media platforms | Connective | Public |
Website URLs | Connection to other personal websites and custom URLs | Connective | Public |
Most importantly, however, the ideal learner profile would allow a site administrator to customise which of the non-essential fields are mandatory, optional or hidden, as well as providing the ability to add custom data fields to user accounts as dropdown options or free-text. The data should be gatherable via user account settings, or at the point of registration.
...
This may make it necessary to have multiple versions of profile pages depending on context, at the very least an overall site profile vs. an in-course learner profile, potentially more depending on the desired user experience, but these should all draw from the same centralised user profile data.
User Stories
Here are these needs and others expressed as (incomplete) user stories:
As a site administrator, I need to be able to define custom user data fields to fit the needs of my organisation, and stipulate whether that data is mandatory for all users to complete.
As a site administrator with custom user data fields, I need to be able to collect that custom data from users, such as via the user profile, API, and/or registration form.
As a site administrator, I need to be able to modify and hide default user profile fields that do not fit my organisation’s policies.
As a site administrator, I need to be able to enforce validation on registration fields to ensure the data captured matches known patterns and disallows negative patterns (such as disposable email addresses).
As an institution administrator, I need to be able to integrate user data from my institution, such as student identification numbers, and retrieve that data to contextualise reporting and integrations with other institutional systems.
As a site administrator, I need to be able to modify and lock user profile fields in order to prevent inappropriate data from being shared by users for user-submitted fields.
As a learner, I want to be able to control who can see different aspects of my profile in order to allow only certain predefined groups to see certain details.
As a learner, I want to be able to have my profile share as little information as is necessary for the site to function.