Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion: including statements when students do NOT do something #1090

Open
Billzuber opened this issue May 30, 2019 · 5 comments
Open

Suggestion: including statements when students do NOT do something #1090

Billzuber opened this issue May 30, 2019 · 5 comments

Comments

@Billzuber
Copy link

Hi all,

I would like to propose that XAPI statements include when students do NOT do something. For example, I would like to know if a student did not attend class, did not submit an assessment, did not complete an activity and so on.

The reason is so that can get a clearer idea of students/learners so that they can be identified and appropriate intervention strategies can be implemented. I believe this would be beneficial in many aspects.

At this stage, I have not seen this in the XAPI spec but correct me if I'm wrong.

Cheers

@garemoko
Copy link
Contributor

I've seen a number of implementations that record a statement when a learner failed to do something. This only works when there is a specific deadline - it doesn't make sense to record an event that the learner has not done something yet, but could still do it, and also statements need to have a timestamp stating specifically when the thing that didn't happen didn't happen.

You can use the state to keep track of things that currently haven't happened but might still happen.

It's also possible to handle this at the reporting end, by filtering people who do not have a matching statement.

@Billzuber
Copy link
Author

That's an interesting view of a student not doing something. In my role in education management, knowing when a student does not attend class or complete an assessment is vital to tracking and monitoring so that we can implement intervention stragegies. I would argue that recording when something is not done is just as important as when it's done.

I can see there are methods to filtering the data to determine when something is not done but I find it very odd that this is not part of XAPI at all.

@garemoko
Copy link
Contributor

garemoko commented Jun 3, 2019

I think we may have had a miscommunication. I'm not saying that this should not be part of xAPI, I'm saying that this is already possible with xAPI and then offering you suggestions of how you could implement it.

In both scenarios of a class and completing an assessment, there would normally be as deadline since classes have deadlines by their very nature (you can't go back and attend something in the past) and assignments normally have deadlines. In those cases it would be ok to recorded that the student failed to attend or failed to submit the assignment by the deadline.

For actions that do not have a specific deadline (e.g. watching a video or completing an online course), it does not make sense to record that the student has not done the thing yet as an interaction statement, but you can still keep track of this with xAPI using the state resource.

@FlorianTolk
Copy link

FlorianTolk commented Jun 3, 2019

In order to do this, you just need to generate a profile to track this data.

If you are unfamiliar with xAPI Profiles, you can find information here.

We also have examples here.

Hope this helps!

@DataBeeGood
Copy link

@Billzuber I feel your frustration. I am a designer using xAPI in systems I am building. Perhaps I can reframe your thinking about designing and using xAPI activity statements in education management. It may also be useful for others who are frustrated about practical applications of this specification.

An xAPI-style system has 3 parts. The first captures information about an entity that engaged in an activity. A recorder can't record what wasn't there. It records what happened, like a motion activated camera recording wildlife or a timeclock in a factory or a Clicker in a Lecture Hall. The second part stores the statements and the third part consumes them. It is a one way process... with a timestamp and no editing!

To address your case of needing to know "WHO -- DID NOT DO -- SOMETHING" …Analytics handles this very efficiently in the third part (AKA Learning Management System) because it can compare the list of all students to the list of students who DID something to determine who DID NOT do something. Stored xAPI statements just witness and have no way to compare anything. However, because they can never be changed, they provide excellent evidence!

Reframing the case

In most real world cases, the instructor is responsible for Recording the Roll regarding student attendance. The instructor would report that the student was or was not there. If you wish to measure the performance of the instructor carrying out this activity, and student attendance, then an xAPI Profile (customization) per @FlorianTolk is useful.

Here are stubs which could be polished up to create xAPI-style statements & class attendance profile:

InstructorX - recorded the attendance for - StudentZ - Timestamp - Result="Unexcused"

InstructorX - recorded the attendance for - StudentA - Timestamp - Result="Tardy"

If you need to understand a Result for the activity, then a property of "present" "excused" "unexcused" "tardy" etc.... can be included in the statement for use in your consumer analytics.

These xAPI statements are immutable and timestamped, so they would be an excellent method of recording attendance or lack thereof! Overriding the activity information in a student account for attendance would be a privilege in the consumer system, and never affect the original statements in storage. The process is one way only.

So consider the one way nature of the processing, the ability to audit an LMS database to the activity record and the fact that it can track anything you design it to witness... you might appreciate the power of xAPI compliant systems over the systems you use today.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants