How to Implement Events for the Exams IDA?


2U is developing a new exams IDA called edx-exams, which is meant to be a shiny new replacement to the current exams backend, edx-proctoring. This backend will be utilized by instructor dashboards to interact with student exam attempts, and will store data regarding those attempts. Further context for this project can be found in this ADR:

At the moment, we are currently working to implement the downstream effects that are triggered whenever an exam attempt is submitted or reviewed within this exams IDA. For example, when an exam attempt is submitted, we will want to make sure edx-platform knows to mark the respective exam subsection as completed.

The Events:

Because the new exams backend is independent, we want to avoid back-and-forth REST requests between it and edx-platform. As such, we’ve decided to use the event bus to implement this feature.

We’ve come up with some of these event definitions in this PR:

Asking for feedback:

We’d love input from folks who have expertise in exams and proctoring to help us finalize the definitions of these events.

Specifically, we’d love any feedback regarding:

  • What to name the event data/signals

  • What parameters to send

  • Considerations regarding future uses of these events

  • Anything else :slight_smile: