Remote exam configurations

This page lists sample assessment configurations for remote exams, where students are not physically present in the same location as the proctors.

See the Access control page for details on allowAccess rules.

Synchronous, timed exams

We recommend exams to be run using a synchronous, timed configuration. Below is an example of an assessment configured to have students taking the exam at the same time with a time limit.

This configuration is good when:

  • Almost all students take the exam at the same time
  • Some students have accommodations, such as 1.5x time — these students must be listed first in the access rules
  • Some students take the exam at a later "conflict" time, mainly because they are in a different timezone
"allowAccess": [
    {
        "role": "TA",
        "credit": 100
    },
    {
        "uids": ["[email protected]", "[email protected]"],
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T11:00:00",
        "endDate": "2020-04-20T12:40:00",
        "timeLimitMin": 90,
        "showClosedAssessment": false
    },
    {
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T11:00:00",
        "endDate": "2020-04-20T12:05:00",
        "timeLimitMin": 60,
        "showClosedAssessment": false
    },
    {
        "uids": ["[email protected]", "[email protected]"],
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T23:00:00",
        "endDate": "2020-04-21T00:05:00",
        "timeLimitMin": 60,
        "showClosedAssessment": false
    }
],

Some notes about this configuration:

  • The exam window (65 minutes, startDate to endDate) has been set to be 5 minutes longer than the exam time limit (60 minutes). However, students will not be able to access the exam past the endDate time under any circumstances. If a student starts this exam more than 5 minutes late, then the countdown timer on their exam will reflect the time remaining until endDate.
  • If a student closes their web browser accidentally during an exam, they can just re-open it and continue taking the exam where they left off. They can even switch computers and just login to PrairieLearn again, and continuing taking their exam on the new computer. The timer does not pause when the web browser is closed. The timer is always in "wall time", meaning the same as a physical clock on the wall.
  • Remember to extend both endDate and timeLimitMin for students with extra-time accommodations.
  • Students who are scheduled for a conflict exam will be able to access the exam during the primary time slot. However, if they do so, they will be blocked from the exam during the conflict timeslot.
  • After the timer expires the exam will auto-close and grade any saved but ungraded questions and show students their final score. After this time students will be unable to see any of the questions.
  • If a student closes their web browser before the exam is complete, their exam will be automatically closed and graded within 12 minutes after their timer expires. If they try and access their exam during this time it will immediately close and grade.
  • Before downloading final scores, wait at least 12 minutes after the last student would have finished to ensure all exams are closed. You can also check (and manually close exams) on the "Students" page under the assessment in PrairieLearn.

Asynchronous, timed exams

We do NOT recommend exams to be run using an asynchronous, timed configuration. While giving exams asynchronously will simplify exam administration and provide students with more flexibility, it comes at the expense of making it easier to cheat. We recommend synchronous, timed exams.

This configuration is good when:

  • Students can choose when to take the exam over a long period (typically about 24 hours)
  • Once a student starts working on the exam, they have limited time (1 hour in the example below)
  • Some students have accommodations, such as 1.5x time — these students must be listed first in the access rules
  • There is no need for conflict exams because students can choose their own time
"allowAccess": [
    {
        "role": "TA",
        "credit": 100
    },
    {
        "uids": ["[email protected]", "[email protected]"],
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T06:00:00",
        "endDate": "2020-04-21T06:00:00",
        "timeLimitMin": 90,
        "showClosedAssessment": false
    },
    {
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T06:00:00",
        "endDate": "2020-04-21T06:00:00",
        "timeLimitMin": 60,
        "showClosedAssessment": false
    }
],

Some notes about this configuration:

  • All of the the notes above still apply
  • It's a good idea to run exams early-morning to early-morning. Having an endDate at 6am is ideal. This avoids having a pile-up at the end of the testing window, because 4am to 7am is the time period when undergraduates are least likely to be active (based on PrairieLearn usage data). Pile-ups near the end are bad because some students always get confused about exactly when the window will close, and end up with less time than they should. Starting at 6am also allows students to take the exam early in morning if they want.

Post-graded exams

We do NOT recommend exams to be run using a post-graded configuration. Exams run in this manner forfeit the ability to provide immediate feedback as well as partial credit to students, but it's good for mimicking traditional pen-and-paper exams.

This configuration is good when:

  • You want to mimic a pen-and-paper exam as much as possible.
  • You have a Scantron exam you would like to convert to PrairieLearn.
  • You want to prevent students from finding out which questions they answered correctly.
  • The exam only contains multiple-choice questions or very simple numeric questions. More complex questions need to allow students multiple attempts, which this configuration disables by turning off real-time grading.
"allowRealTimeGrading": false,
"allowAccess": [
    {
        "role": "TA",
        "credit": 100
    },
    {
        "uids": ["[email protected]", "[email protected]"],
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T11:00:00",
        "endDate": "2020-04-20T12:40:00",
        "timeLimitMin": 90,
        "showClosedAssessment": false
    },
    {
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T11:00:00",
        "endDate": "2020-04-20T12:10:00",
        "timeLimitMin": 60,
        "showClosedAssessment": false
    },
    {
        "uids": ["[email protected]", "[email protected]"],
        "mode": "Public",
        "credit": 100,
        "startDate": "2020-04-20T23:00:00",
        "endDate": "2020-04-21T00:10:00",
        "timeLimitMin": 60,
        "showClosedAssessment": false
    }
],

Some notes about this configuration:

  • All of the the notes above for synchronous, timed exams still apply.
  • The only change between this configuration and the synchronous, timed configuration above is the addition of the "allowRealTimeGrading": false. Disabling real-time grading will hide the "Save & Grade" button on student question pages; only the "Save" button will be available. The "Grade saved answers" button on the assessment overview will also be hidden.
  • When they are doing the exam, students can save answers to a question as many times as they like. When the exam finishes, the most recent saved answer for each question (if any) will be graded. Any earlier saved answers will be ignored.
  • With this configuration students will never see their grading results for specific questions. This is because "allowRealTimeGrading": false disallows grading during the exam, and "showClosedAssessment": false hides per-question grading results after the exam is over.
  • Students will be shown their total exam score as soon as the exam is over. There is currently no way to prevent this in PrairieLearn, but it is intended to add a feature to prevent even total score access by students: https://github.com/PrairieLearn/PrairieLearn/issues/2181
  • Having real-time grading disabled means that students are unable to re-attempt questions. This means you should not include complex numeric or programming questions, because students will often need multiple attempts at a question after grading feedback to correct minor typos and errors.
  • It's possible to also combine this configuration with asynchronous, timed by adding "allowRealTimeGrading": false to that configuration above.