# GatewayQuiz Technical Information and Philosophy

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

> (back to) Main GatewayQuiz Documentation

## GatewayQuiz Details and Philosophy

Because GatewayQuiz assignments are perforce versioned, and have time limits, they have some characteristics that do not appear in "normal" homework assignments. In the following, we discuss some of the ramifications of these characteristics.

## Global Sets, User Sets and Set Versions

The existence of versions of GatewayQuiz assignments means that there are three "types" of these sets: the global set, the user set, and any set versions that the user has taken. For normal homework assignments, only the first two of these exist. To see how the global set, user set and set versions interact, let's first consider a regular homework assignment.

Homework assignments: For a homework assignment, the global set is the set in the course that an instructor creates. This defines the global characteristics of the set. When the set is assigned to a user, each user has a user set that is created for her/him. The user set defines the characteristics of the set that are specific for the user: the open, due and answer dates (if different from the global set), the problem seed for each problem on the set, the status of each problem on the set (that is, what the student's score is on the problem), etc. The characteristics of the set that the student actually works are then the merged combination of the characteristics of the global set and the user set: if there is a modified value for the user set it overrides the corresponding value for the global set.

GatewayQuiz assignments: For GatewayQuiz assignments, there's one more level under these two. As with homework assignments, the global set defines the global characteristics of the assignment, and the user set defines user specific characteristics. However, for a GatewayQuiz students may be able to take multiple versions of the set: thus, the user set is now a template for the set versions that the student actually works. This means that, in the same way that a user set is created for each user when the global set is assigned to a user, a new set version is created for the user when s/he takes a GatewayQuiz assignment. The characteristics of any set version that the student actually works are then the merged combination of the characteristics of the global set, user set, and the set version: similar to above, if there is a modified value for the user set it overrides the corresponding value for the global set, and if there is a modified version for the set version it overrides both the global and user set values.

In particular, the time limit for the set version is determined by the open and due dates for the set version, so these values are set in any set version that a student creates. This is discussed in the due dates and time limits section, below.

## Due Dates and Time Limits for GatewayQuiz Assignments

For a homework assignment, students must finish the assignment before its due date, and answers and solutions to the homework set are available to students after the answer date for the assignment. For GatewayQuiz assignments, where a student may be able take multiple versions of the assignment, the due date(s) for the global or user sets are analogous to those for regular homework assignments, and the due (and answer) date(s) for the set version are used to set the time limit on the time allowed on the assignment. Thus, the due date for the global or user sets determine the latest time that a student may start a version of the assignment. The due date for a set version determines the latest time that a student may submit that assignment for credit. The ramifications of this distinction are discussed below.

### Set Versions and Assignment Time Limits

Thus if the template set is due at `3/21/2007 at 11:00am` and has a time limit of 30 minutes, a student can start a test at any time up to 11:00am on 3/21/2007. If the students starts a test at 10:05am, that set version will be due at 10:35am, because the time limit is 30 minutes. (In WeBWorK 2.4 and later,) A gateway/quiz assignment can be configured to cap the time limit for a test at the due date for the template set. If this is selected, a student starting a version of our example test at 10:35am will only be allowed 25 minutes to work on it. If it is not selected, the student starting at 10:35am will still be allowed to work on the test 30 minutes, and so will not have to finish until 11:05am (even though the due date for the template set is before that).

Note that regardless of the cap the time limit setting for the assignment, the student has a grace period (as described in the main GatewayQuiz documentation, in the global.conf description) after her/his test is due in which the system will still record her/his answers. In addition, the course answer log records information about the student's work, as described below.

### Answers Available Date and Set Versions

The answers available date for the global and user sets determines the relative answer available date for versions of the set that are taken. Suppose that for our example set the answers available date is `3/21/2007 at 11:15am`. Then for all set versions, answers will be available 15 minutes after they are completed. Thus the student who starts a test at 10:05am will find answers are available for that set version at 10:50am. In most cases the answers available date will be set to be the same as the assignment due date, and restriction of availability of answers will be accomplished by using the show work settings available in WeBWorK 2.4 and later (described in the main GatewayQuiz documentation, in the GatewayQuiz parameters section).

### Time Limits and Late GatewayQuiz Submissions

One ramification of the test time limit is that a student who does not submit her/his test before it is due will not have any of her/his answers recorded. The student's score is recorded as a 0, and none of her/his answers are saved as the "last answers submitted." It is, however, possible to get a record of the student's work by using the `Show Past Answers` feature of assignments. A Professor (or TA, or, more generally, anyone with `view_answers` permission as defined in the `global.conf` file) when viewing the set will have a `Show Past Answers` button available, which will show the student's progress on the quiz problems, including all preview, new page, and submission information. This includes a submission that is sent after time has expired.

To provide some flexibility in the time deadline, there is a `gatewayGracePeriod` variable in the WeBWorK `global.conf` file (c.f., the main documentation) that specifies the time (in seconds) after the deadline for any given set version that the test will still be considered on time. Thus, if this is set to zero there is no grace period; if it is set to 30, students will be allowed to submit the test version up to 30 seconds after the server thinks they have run out of time. The default setting for the grace period is 120 seconds (two minutes).

### Restarting Timed Tests and Other Timing Details

As noted above, a test that has been started but which has not been submitted and which has time left may be reentered. It is worth observing, however, that the timer for the assignment does not stop if the student leaves the assignment, logs out of WeBWorK, etc.

The official deadline for a timed test is the due time that is stored on the server, not the time that is shown on the timer on the student's page. In general these two measures will be close to the same. When a student approaches the deadline for the test, various warnings will appear on the student's computer. If a test is submitted after its time limit has been exceeded, it will be checked but not graded: that is, the grade that is recorded for that version of the assignment in WeBWorK will be a zero (though the student's work may be logged), as noted above in the due dates section of the documentation. The time that the test is considered to have been submitted is the time when the "Grade Test" button has been pressed. Thus, if a student is taking a proctored test and clicks "Grade Test," s/he will not be penalized if the proctor is not immediately available to authorize the grading of the test.

## Proctored Tests and Proctor Users

In a WeBWorK course there are users with different permission levels, `student`, `login_proctor`, `grade_proctor` (in WeBWorK < 2.4, both proctor levels are combined as a single `proctor` level), `ta` and `professor`. These levels are in an ascending tree: thus a user whose permission level is `ta` has all the abilities of a proctor or student, but not all of those of a `professor`. In many cases where proctored assignments are used, it will be useful to create a set of users who are proctors, giving them `login_proctor` or `grade_proctor` permissions (or, in WeBWorK versions < 2.4, `proctor` permission), but in any event all `ta` and `professor` users in the course will be able to proctor assignments as well.

The one exception to this rule is when a set-level login proctor password is given for the assignment. When this password exists, the only user able to proctor the start of a test is the implicitly defined set-level proctor.

Another aspect of user management that pertains to proctors is a user's `status` in the course. All students and instructors in a WeBWorK course have a status of `Enrolled`; other valid statuses are `Audit`, `Drop` and, in WeBWorK versions >= 2.4, `Proctor`. These status designations determine how students interact with the system: `Audit` students' scores are not included in score reports, `Drop` students cannot log in, etc. `Proctor` users are similar to `Drop` students, in that they are unable to log in and work assignments, though if their permission level is set to `login_proctor` or `grade_proctor` they will be able to authorize proctored tests.

## WeBWorK URLs of Gateway/Quiz Assignments

A WeBWorK problem set may be obtained directly by going to the URL `http(s)://webworkhost/webwork2/courseName/setName/`. To go to a gateway/quiz assignment, it is necessary to specify that the assignment is a gateway/quiz in the URL: the address for a gateway/quiz assignment is thus `http(s)://webworkhost/webwork2/courseName/quiz_mode/setName/` for unproctored gateway/quiz assignments, and `http(s)://webworkhost/webwork2/courseName/proctored_quiz_mode/setName/` for proctored assignments. (The protocol is, of course, `http` for non-SSL servers and `https` for SSL connections.)

This allows one to set up an easy access page on the computers in a proctored lab or a link on a course webpage that sends students directly to the proctored assignment that they are working on.