Difference between revisions of "Gateway Tests and Quizzes"

From WeBWorK_wiki
Jump to navigation Jump to search
 
(16 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<a name="TableOfContents"></a>
+
<span id="TableOfContents"></span>
From version 2.2 of WeBWorK "GatewayQuiz" assignments have been supported. These assignments are distinguished by the following characteristics:
+
__TOC__
* They have a fixed time limit;
 
* They are ''versioned'', that is, the assignment may be taken by a student some number of times (the maximum number is determined by the instructor, and could of course be one), and a different version of the assignment is generated for the student each time;
 
* They may require proctor authorization to be taken and graded;
 
* They present more than one question from the assignment on a single page; and
 
* They allow problems to be described as a group of problems from which one (or more) problem(s) is(are) drawn.
 
   
As of version 2.4 of WeBWorK there are additional features for GatewayQuiz assignments:
 
  +
== GatewayQuiz Assignments ==
* They allow restriction of the grade and related data that is shown to students when they have completed an assignment;
 
* They allow GatewayQuiz assignments to be available only from computers with specific IP addresses (e.g., a computer lab). This is a feature that is available to all assignments, but may be of particular use for GatewayQuiz assignments; and
 
* They allow proctored GatewayQuiz assignments to have a set-level proctor password defined that allows the assignment to be started, but not graded.
 
   
The effect of these features and their use are described below.
 
  +
GatewayQuiz assignments in WeBWorK have many of the characteristics that one might expect of on-line "quizzes" or "tests". In particular, they
  +
* have a time limit on the assignment,
  +
* are ''versioned'', and therefore may (depending on how the assignment is defined) be taken by a student multiple times; each version of the assignment will be different in the same way that problems on homework sets differ for different students,
  +
* may require proctor authorization to be taken and graded,
  +
* may present more than one question from the assignment on a single page,
  +
* allow problems in the assignment to be described as a group of problems from which one (or more) problem(s) is(are) drawn,
  +
* allow restriction of the grade and related data that is shown to students when they have completed an assignment,
  +
* allow specification of specific computers or labs from which the assignment may be completed, or from which it may not be completed, and
  +
* may be configured to hide students' scores or work from them after they have completed the assignment.
   
  +
In the following we consider an [[#InstructorsView|instructor's view]] and the [[#StudentsView|students' view]] of these assignments, addressing how these different aspects are incorporated into the management and use of a WeBWorK assignment. There is also a page of [[GatewayQuiz_Technical_Information_and_Philosophy|technical information and philosophy]] about these types of assignments; this last gives some of the technical information about how the assignments work that may be useful to know as you work with them.
   
== Setting up a Gateway Test/Quiz ==
 
  +
An [[Gateway_Tests_and_Quizzes_Documentation_Version_1|older version]] of this documentation also exists.
<a name="SettingUp"></a>
 
   
Any assignment may be made into a Gateway Test/Quiz assignment by selecting the set on the Instructor Tools page and clicking "Edit Set." Among the "General Information" items is the "assignment type" of the assignment, which may be set to ''homework'', the default, ''gateway/quiz'', or ''proctored gateway/quiz''. If either of the latter two types is selected and the set is saved, it is then possible to edit other parameters characteristic of Gateway Test/Quiz assignments.
 
  +
{| border="1"
  +
|-
  +
''Up to: [[#TableOfContents|table of contents]] || [[#GatewayAssignments|gateway assignments]]''
  +
|}
   
These other characteristics include
 
* '''Set Password''': (for proctored assignments only, and for WeBWorK 2.4 and later only) a password for the set that is the required password to start the assignment. This password will not authorize grading, for which a regular proctor login is required. See the [[#UsingProctored|proctored tests]] and [[#ProctorUsers|proctors and users]] sections below for additional information.
 
* '''Test Time Limit''': the length of time the student is allowed to work on each version of the assignment. Note that the expiry of the time limit has implications for the recording of student answers, as [[#DueDatesAndRecording|noted below]] in the [[#DueDates|Due Dates]] section of the documentation.
 
* '''Cap Test Time at Set Due Date''': a flag (available in WeBWorK 2.4 and later) that allows the test time to be restricted, as described below in the discussion of the GatewayQuiz [[#DueDates|due dates]].
 
* '''Number of Graded Submissions Per Test''': the number of times a student may submit each version of the assignment for a grade.
 
* '''Time Interval for New Versions''': students may be restricted to a fixed number of assignment versions in a given time interval, for example, two per day. To implement this, we specify the time interval and the number of versions per interval. Note that the time interval is a rolling interval, so that specifying one version per hour means that a student who starts a test/quiz at 11:58 may start a second at 12:58:01. To implement a daily restriction (e.g., two tests per day) it is generally sufficient to specify the number of tests in a 12 or 18 hour interval. In WeBWorK 2.4, entering "0" for the time interval for new versions gives an infinite interval.
 
* '''Number of New Versions per Time Interval''': this is explained above; entering "0" puts no limit on the number of allowed versions. If the time interval for new versions is infinite, this gives the total number of test/quizzes that may be taken.
 
* '''Order Problems Randomly''': if this is true, the problems on the test/quiz will be presented in a random order. It is worth noting that this has implications for the manner in which [[#DisplayRandomGradeOrders|student results are displayed]].
 
* '''Number of Problems per Page''': how many of the questions in the test/quiz to show on one page. For example, specifying "3" for a 5 question quiz will result in a first page of 3 questions and a second of 2. Specifying "0" problems per page puts all problems on one page.
 
* '''Show score on finished assignments''': (available in WeBWorK 2.4 and later) whether students should be able to see their score on versions of the test/quiz on which they have no remaining attempts, or no remaining time. This is described below in the [[#VisibilityManagement|Showing Student Scores and Work]] section of the documentation.
 
* '''Show student work on finished assignments''': (available in WeBWorK 2.4 and later) similarly, whether students should see the problems and their work after finishing a test version. This is also described below in the [[#VisibilityManagement|Showing Student Scores and Work]] section of the documentation.
 
   
There are also several settings in the <code>global.conf</code> file that determine the behavior of GatewayQuiz assignments. These include settings in the <code>permissionLevels</code> hash, [[#HiddenProctored|view_proctored_tests]], [[#HideWork|view_hidden_work]] and [[#IpRestrictions|view_ip_restricted_sets]], and the [[#GracePeriodVariable|gatewayGracePeriod]] variable.
 
   
<a name="UsingGateways"></a>
 
  +
<span id="InstructorsView"></span>
== Using a Gateway/Quiz ==
 
  +
== Instructor's View ==
   
Once created, gateway/quiz assignments may be used largely as regular assignments are. Because of their nature as versioned (and possibly proctored) sets, however, there are a number of features that are unique to or characteristic of this assignment type. These include:
 
  +
The information in this section is split between the following, which seeks to be more of a description of ''how to do things'', and a [[GatewayQuiz_Technical_Information_and_Philosophy|technical info and philosophy page]], that delves into more of how things are set up underneath the outer skin of WeBWorK. As you use GatewayQuiz assignments, it may be worth stopping to read that page as well to understand why some things work as they do.
* [[#TestAddresses|WeBWorK URLs of Gateway/Quiz Assignments]]
 
  +
WEBSITE IS DOWN TILL MAY 15TH DUE TO OVERLOAD OF STUDENTS
* [[#UsingProctored|Proctored Gateway Test/Quiz Assignments]]
 
  +
SORRY FOR ANY INCONVIENCE
** [[#ProctorUsers|Proctors and WeBWorK Users]]
 
* [[#DueDates|Due and Answer Dates for Gateway/Quiz Assignments]]
 
* [[#DisplayingTests|Set Listing Display of Gateway/Quiz Assignments]]
 
* [[#ActualTestTimes|Restarting Timed Tests and Other Timing Details]]
 
* [[#ScoringTests|Scoring Gateway/Quiz Assignments]]
 
* [[#VisibilityManagement|Showing Student Scores and Work]]
 
* [[#SetDefFiles|Set Definition Files for Gateway/Quiz Assignments]]
 
   
In addition, it may be useful to create a gateway/quiz assignment by [[#ProblemGroups|selecting problems from problem groups]], and to restrict access to such assignments by [[#IpRestrictions|IP address]] (e.g., lab location).
 
  +
=== Setting Up GatewayQuiz Assignments ===
   
<a name="TestAddresses"></a>
 
  +
It is possible to set up GatewayQuiz assignments by [[#GWQuizEditing|editing an existing set]] or by [[#ImportingGWQuizzes|importing a set]] from a set definition file. In addition, there are some behaviors of these assignments that are set in the [[#GWQuizGlobalConf|global.conf file]]. Other than having more settings than a usual homework assignment, GatewayQuiz assignments are essentially the same as other homework sets. It is also possible to restrict where students may take a test from, as described in the [[Assignment_Access_Restrictions|assignment access restrictions]] documentation.
=== WeBWorK URLs of Gateway/Quiz Assignments ===
 
   
A WeBWorK problem set may be obtained directly by going to the URL <code>http://webworkhost/webwork2/courseName/setName/</code>. 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 <code>http://webworkhost/webwork2/courseName/quiz_mode/setName/</code> for unproctored gateway/quiz assignments, and <code>http://webworkhost/webwork2/courseName/proctored_quiz_mode/setName/</code> for proctored assignments.
 
  +
Note that there are some restrictions on what types of problems may be used in GatewayQuiz assignments, and that problems for the assignments may be drawn from a group of problems, as is explained in the [[GatewayQuiz_Assignment_Problems|GatewayQuiz assignment problems]] page.
 
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.
 
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name="UsingProctored">
 
=== Proctored Gateway/Quiz Assignments ===
 
   
Proctored assignments require proctor authorization at two points in the test/quiz process: before the set may be started, and before it may be graded. A ''proctor'' is any member of the class with a ''permission level'' of <code>proctor</code> or better (permission levels are defined in the <code>global.conf</code> file). Note that in WeBWorK 2.4 and later, the <code>proctor</code> permission level is divided into two levels, <code>login_proctor</code> and <code>grade_proctor</code>. This is considered in the [[#ProctorUsers|proctor users]] section, below.
 
  +
<span id="GWQuizEditing"></span>
  +
==== GatewayQuiz Assignments by Editing ====
   
<a name=HiddenProctored"></a>
 
  +
To create a GatewayQuiz assignment by editing an existing set, you first create a set by using the Library Browser, or from the Instructor Tools or Homework Sets Editor page. Once the set is created, select it in the Instructor Tools menu and click "Edit one set". Under "General Information", change "Assignment type" to "gateway/quiz" or "proctored gateway/quiz" and click the "Save Changes" button.
Depending on how a WeBWorK system is set up, it may be desirable to hide proctored gateway/quiz assignments from students' view on the ProblemSets listing page, because they will not be able to actually start the assignment without a proctor being present. This is controlled by the <code>view_proctored_tests</code> setting in the <code>permissionLevels</code> hash in the WeBWorK <code>global.conf</code> file. If you find that proctored assignments are disturbingly invisible for your students, you probably want to reset this in your WeBWorK configuration.
 
  +
  +
You will then be able to set the parameters that determine the characteristics of the GatewayQuiz assignment, as described in the table below. Note that the Set Password parameter only appears for proctored sets. In addition to these specific parameters, it is also possible to set restrictions on where assignments may be completed, as described in the [[Assignment_Access_Restrictions|assignment access restrictions]] documentation.
  +
  +
<span id="GWParameters"></span>
  +
'''GatewayQuiz Parameters'''
  +
<div align="center">
  +
<table style="color:black;background-color:#eeeeff;width:85%;" cellpadding="2" cellspacing="0" border="1">
  +
<tr valign="top">
  +
<td> Test Time Limit </td>
  +
<td> The length of time the student is allowed to work on each version of the assignment. Note that the expiry of the time limit has implications for the recording of student answers, as noted below in the Due Dates section of the documentation. Also note that there is a ''[[#graceperiod|grace period]]'' at the end of the test in which students are still able to submit their answers that is set in the [[#GWQuizGlobalConf|global.conf file]]. </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Cap Test Time at Set Due Date </td>
  +
<td> Whether the time limit for a student's assignment should be truncated at the due date of the course assignment (e.g., if a 20 minute quiz must be completed by noon and a student starts it at 11:50---if the cap is set to "yes", this student will only get 10 minutes in which to complete the quiz). See also the information about [[GatewayQuiz_Technical_Information_and_Philosophy#Due_Dates_and_Time_Limits_for_GatewayQuiz_Assignments|due dates]] in the [[GatewayQuiz_Technical_Information_and_Philosophy|technical information and philosophy]] document. (Available in WeBWorK 2.4 and later.) </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Number of Graded Submissions </td>
  +
<td> The number of times a student may submit each version of the assignment for a grade. In most cases, this will be 1. </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Time Interval for New Test Versions </td>
  +
<td> If students are allowed to complete multiple versions of the assignment (e.g., if it is a skills test that may be taken multiple times for practice), this time interval gives the time interval in which those versions must be taken. For example, if a student may take the assignment once per day, we might set this to 1440 (minutes: 24 hours). Note that the time interval is a rolling interval, so that specifying one version per hour means that a student who starts a test/quiz at 11:58 may start a second at 12:58:01. To implement a daily restriction (e.g., two tests per day) it is generally sufficient to specify the number of tests in a 12 or 18 hour interval. In WeBWorK 2.4 and later, entering "0" for the time interval for new versions gives an infinite interval. </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Number of Tests per Time Interval </td>
  +
<td> This is explained above; entering "0" puts no limit on the number of allowed versions. If the time interval for new versions is infinite, this gives the total number of test/quizzes that may be taken. </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Order Problems Randomly </td>
  +
<td> If this is true, the problems on the test/quiz will be presented in a random order. It is worth noting that this has implications for the manner in which student results are displayed in the [[#StudentProgressAndStats|Student Progress and Grades]] pages. </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Number of Problems per Page (0=all) </td>
  +
<td> How many of the questions in the test/quiz to show on one page. For example, specifying "3" for a 5 question quiz will result in a first page of 3 questions and a second of 2. Specifying "0" problems per page puts all problems on one page. </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Show score on finished assignments </td>
  +
<td> Whether students should be able to see their score on versions of the test/quiz on which they have no remaining attempts, or no remaining time. (Available in WeBWorK 2.4 and later.) </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Show student work on finished assignments </td>
  +
<td> Similarly, whether students should see the problems and their work after finishing a test version. (Available in WeBWorK 2.4 and later.) </td>
  +
</tr>
  +
<tr valign="top">
  +
<td> Set-level Password </td>
  +
<td> Set Password: (for proctored assignments only, and only available in WeBWorK 2.4 and later) A password for the set that is the required password to start the assignment. This password will not authorize grading, for which a regular proctor login is required. See the [[#ProctoredTests|proctored tests]] section below and discussion of [[GatewayQuiz_Technical_Information_and_Philosophy#ProctorUsers|proctors and WeBWorK users]] in the [[GatewayQuiz_Technical_Information_and_Philosophy|technical information and philosophy]] documentation. </td>
  +
</tr>
  +
</table>
  +
</div>
  +
  +
Note that there are also several settings in the <code>global.conf</code> file that determine the behavior of GatewayQuiz assignments (as [[#GWQuizGlobalConf|noted below]]). These include settings in the <code>permissionLevels</code> hash and the <code>[[#graceperiod|gatewayGracePeriod]]</code> variable.
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name=ProctorUsers"></a>
 
==== Proctors and WeBWorK Users ====
 
   
In a WeBWorK course there are users with different permission levels, <code>student</code>, <code>proctor</code> (or <code>login_proctor</code> and <code>grade_proctor</code>, in WeBWorK 2.4 and later), <code>ta</code> and <code>professor</code>. These levels are in an ascending tree: thus a user whose permission level is <code>ta</code> has all the abilities of a proctor or student, but not all of those of a <code>professor</code>. In many cases where proctored assignments are used, it will be useful to create a set of users who are proctors, giving them <code>proctor</code> (or <code>grade_proctor</code>) permissions, but in any event all <code>ta</code> and <code>professor</code> users in the course will be able to proctor assignments as well.
 
  +
<span id="ImportingGWQuizzes"></span>
  +
==== GatewayQuiz Assignments by Importing ====
   
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.
 
  +
Gateway/Quiz assignments may be imported from set definition files in the same manner as other assignments. To specify the gateway/quiz parameters, however, additional options must be indicated in the definition file. These refer to the [[#GWParameters|gateway/quiz parameters]] that can be set by editing an assignment, as is suggested in the following example file:
   
Another aspect of user management that pertains to proctors is a user's <code>status</code> in the course. All students and instructors in a WeBWorK course have a status of <code>Enrolled</code>; other valid statuses are <code>Audit</code>, <code>Drop</code> and, new in WeBWorK 2.4, <code>Proctor</code>. These status designations determine how students interact with the system: <code>Audit</code> students' scores are not included in score reports, <code>Drop</code> students cannot log in, etc. <code>Proctor</code> users are similar to <code>Drop</code> students, in that they are unable to log in and work assignments, though if their permission level is set to <code>login_proctor</code> or <code>grade_proctor</code> they will be able to authorize proctored tests.
 
  +
openDate = 01/24/2008 at 8:00 AM
  +
dueDate = 02/23/2008 at 11:59 PM
  +
answerDate = 02/23/2008 at 11:59 PM
  +
paperHeaderFile = integralGWpaperHeader.pg
  +
assignmentType = gateway
  +
attemptsPerVersion = 1
  +
timeInterval = 43200
  +
versionsPerInterval = 0
  +
versionTimeLimit = 1800
  +
problemRandOrder = 1
  +
problemsPerPage = 0
  +
hideScore = N
  +
hideWork = N
  +
capTimeLimit = 0
  +
restrictIP = RestrictTo
  +
restrictLocation = ProctoredLabs
  +
relaxRestrictIP = No
  +
#
  +
problemList=
  +
(etc.)
  +
  +
All time limits and intervals are given in seconds (''note that this is different than the way they are entered in the [[#GWQuizEditing|edit menu]]''). Note some restriction variables have specific valid values:
  +
* <code>assignmentType</code> may be <code>gateway</code> or <code>proctored_gateway</code> (just omit assignmentType for non-gateway sets);
  +
* <code>probRandOrder</code> and <code>capTimeLimit</code> may be <code>0</code> or <code>1</code> (for don't/do display problems in a random order or cap the time available on the test);
  +
* <code>hideScore</code> and <code>hideWork</code> may be <code>N</code>, <code>Y</code>, or <code>BeforeAnswerDate</code>;
  +
* <code>restrictIP</code> may be <code>No</code>, <code>RestrictTo</code> or <code>DenyFrom</code>;
  +
* <code>relaxRestrictIP</code> may be <code>No</code>, <code>AfterAnswerDate</code>, or <code>AfterVersionAnswerDate</code>.
  +
It may also be worth observing that the input data for the <code>hideScore</code> and <code>hideWork</code> parameters are the negation of the data that are selected on the [[#GWQuizEditing|set editor]] page.
  +
  +
When importing sets from a set definition file, it is not currently possible to set IP address restrictions on sets to more than one location. The value given by <code>restrictLocation</code> must be a valid location as defined in the WeBWorK environment into which the set is being imported. It is also not currently possible to create a set-level proctor password from a set definition file. See also the [[Assignment_Access_Restrictions|assignment access restrictions]] documentation.
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name="DueDates"></a>
 
=== Due and Answer Dates for Gateway/Quiz 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 gateway/quiz assignments, where a student may be able take multiple versions of the assignment, we talk about the due (and answer) date(s) for the ''template set'', and the due (and answer) date(s) for the ''set version'' that a student is taking. The due date for the template set is the due date that the instructor sets up when editing the set in the Instructor Tools section of WeBWorK. This determines the ''latest time that a student may start a version of the assignment''.
 
  +
<span id="GWQuizGlobalConf"></span>
  +
==== GatewayQuiz Parameters in global.conf ====
   
The set version that the student starts (before the template set's due date, of course) then has a due date that is determined by the ''time limit on the test''. Thus if the template set is due at <code>3/21/2007 at 11:00am</code> 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).
 
  +
There are a number settings in the <code>permissionLevels</code> hash in the <code>global.conf</code> file that determine the behavior of GatewayQuiz assignments:
  +
* <code>proctor_quiz_login</code> - this is the permission level required to allow students to start a <code>proctored_gateway_quiz</code> assignment.
  +
* <code>proctor_quiz_grade</code> - this is the permission level required to allow students to submit (grade) a <code>proctored_gateway_quiz</code> assignment.
  +
* <code>view_proctored_tests</code> - this setting determines whether <code>proctored_gateway_quiz</code> assignments will appear in the set list page for students. If you set up an entry page that directs them to a proctored assignment (instead of having them navigate to it), you may want to set this permission level to <code>ta</code> so that they aren't confused by seeing the proctored tests showing up in their set lists.
  +
* <code>create_new_set_version_when_acting_as_student</code> - (new in WeBWorK versions > 2.4.5) this determines who (if anyone) can create a new set version when acting as a student. If this is set to something other than <code>undef</code>, e.g., <code>professor</code>, then it will be possible for them to create a new version of a set when acting as a student. ''Note that the created version will count against the student's allowed number of versions, so this is usually '''not''' desirable.''
  +
* <code>record_set_version_answers_when_acting_as_student</code> - (new in WeBWorK versions > 2.4.5) this determines who can record answers for a new set version when acting as a student. In general, this should be set to <code>undef</code>, as is <code>record_answers_when_acting_as_student</code>, but if it is necessary or desirable for an instructor to be able to create and submit student GatewayQuiz assignments it can be reset.
   
Note that regardless of the ''cap the time limit'' setting for the assignment, the student has a [[#GracePeriodVariable|grace period]] 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 in the [[#DueDatesAndRecording|second paragraph below]].
 
  +
For the last two of these, there is additional explanation below under [[#ActingOnGWAssignments|Acting as Students on Gateway Assignments]].
   
The answers available date for the template set 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 <code>3/21/2007 at 11:15am</code>. 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 [[#VisibilityManagement|show work]] settings available in WeBWorK 2.4 and later.
 
  +
In addition, there is the setting
  +
* <code>view_ip_restricted_sets</code> - which determines who is able to ignore the location restrictions on sets.
   
<a name="DueDatesAndRecording"></a>
 
  +
<span id="graceperiod"></span>
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 <code>Show Past Answers</code> feature of assignments. A Professor (or TA, or, more generally, anyone with <code>view_answers</code> permission as defined in the <code>global.conf</code> file) when viewing the set will have a <code>Show Past Answers</code> 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.
 
  +
Finally, there is one system variable that is set in <code>global.conf</code> and which helps determine the behavior of GatewayQuiz assignments. <code>$gatewayGracePeriod</code> gives the number of seconds after an assignment's due time that students will still be allowed to submit it for a grade. This only applies to <code>gateway_quiz</code> and <code>proctored_gateway_quiz</code> assignments.
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name="DisplayingTests"></a>
 
=== Set Listing Display of Gateway/Quiz Assignments ===
 
   
By default, all Gateway/Quiz assignments that are assigned to a student appear at the bottom of the ProblemSets list s/he sees when logging in to WeBWorK. Available gateway/quiz assignments will be indicated with a link called "Take SetName test" (if they are not proctored, or if the <code>view_proctored_tests</code> setting is configured appropriately, as indicated [[#UsingProctored|above]]). This link will start a new version of the gateway/quiz for the student, if s/he has available versions (that is, if s/he hasn't completed all of her/his versions for the given time interval; otherwise, an error will be returned). If the student has a version of the assignment that s/he has not completed (that is, which s/he can still submit for a grade, because s/he hasn't submitted it as many times as s/he is allowed and still has time left on the assignment), clicking the "Take SetName test" link will cause the student to resume work on that version of the test.
 
   
Once a student has completed a version of a gateway/quiz assignment, the version will show up on the ProblemSets page as a link "SetName (test N)", where N indicates the Nth test that s/he has taken. Note that once a student has completed a proctored test, ''that version'' of the test is redefined for the student as an unproctored test. Thus a student is able to review completed proctored gateway/quiz assignments without needing a proctor. Note that completed proctored assignments therefore appear on the ProblemSets page regardless of the value of <code>view_proctored_tests</code> in the <code>permisionLevels</code> hash in <code>global.conf</code>.
 
  +
<span id="EditingExistingGWAssignments"></span>
  +
  +
=== Editing Existing GatewayQuiz Assignments ===
  +
  +
When editing GatewayQuiz assignments, we may want to edit the ''global set'' (the set that is assigned to all users), or the ''user set'' (which determines the parameters---such as open date, due date, time limit, etc., associated with a specific user's, or student's, assigned set), or a particular ''set version'' (the version of the set that the user, or student, actually took). The distinction between these three is described in somewhat greater detail on the [[GatewayQuiz_Technical_Information_and_Philosophy|technical info and philosophy page]].
  +
  +
  +
==== Editing the Global GatewayQuiz Assignment ====
  +
  +
Edit the global GatewayQuiz assignment the same way you would the global set for a normal homework assignment: select the set on the Instructor Tools page, and click "Edit one set." This allows you to change the characteristics of the set, as described in the [[#GWQuizEditing|set creation by editing]] section. As with any assignment, the settings for the global set will propagate to all user sets and set versions---with the exception of those settings that are overridden in the user set or set version. In particular, the open, due and answer dates are automatically set for any set version (because they determine the test time, as noted in the discussion of [[GatewayQuiz_Technical_Information_and_Philosophy#Set_Versions_and_Assignment_Time_Limits|set versions and time limits]] in the [[GatewayQuiz_Technical_Information_and_Philosophy|technical and philosophical information]]), and the assignment type for set versions may also be set (because finished proctored tests get converted to non-proctored ones so that students can see their results). In particular, if you reset the visibility of a global set, it will change the visibility of all user sets and versions of the assignment that students have taken. Similarly, if you "mark correct" a problem on the global set it will mark that problem correct for all versions of the set that students have taken.
  +
  +
''Note that for versions of WeBWorK <= 2.4.5, changes in the global or user sets do not propagate to versions of the set that students have already taken (this includes problems that are marked correct). For all versions of WeBWorK they do propagate to new versions that are taken after the changes are saved.''
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name="ActualTestTimes"></a>
 
=== Restarting Timed Tests and Other Timing Details ===
 
   
As noted [[#DisplayingTests|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.
 
  +
==== Editing a User Set for GatewayQuiz Assignments ====
   
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 [[#DueDatesAndRecording|above]] in the [[#DueDates|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.
 
  +
This is again the same as editing a user set for a regular homework assignment. Select the set and the user(s) on the Instructor Tools page, and click "Edit one set for users". Any parameter values set for the user set will override those for the global set. Values set for a user will propagate to versions of the assignment that users take, and to those versions that are already taken (except for parameter values that are overridden by the set version, as indicated above).
   
<a name="GracePeriodVariable"></a>
 
  +
''Note that for versions of WeBWorK <= 2.4.5, changes in the global or user sets do not propagate to versions of the set that students have already taken. For all versions of WeBWorK they do propagate to new versions that are taken after the changes are saved.''
To provide some flexibility in the time deadline, there is a <code>gatewayGracePeriod</code> variable in the WeBWorK <code>global.conf</code> file 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).
 
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
  +
|}
   
  +
  +
==== Editing a Set Version for a User for GatewayQuiz Assignments ====
  +
  +
(This is only available in versions of WeBWorK > 2.4.5.) There are some cases in which it may be useful to change parameters for a version of a GatewayQuiz assignment that a student has already started. Because set versions are (necessarily) not listed in the Instructor Tools page, this function is available instead by editing all sets for a user: on the Instructor Tools page, select the user, and click "View/Edit all sets for one user". This will list all sets, including set versions. Clicking the name of a set version will allow editing of (some) set parameters for the set version (parameters that are most properly determined from the user or global sets may not be available here).
  +
  +
{| border="1"
  +
|-
  +
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
|}
 
|}
   
<a name="ScoringTests"></a>
 
=== Scoring Gateway/Quiz Assignments ===
 
   
Gateway/Quiz assignments are scored (on the Scoring page of the WeBWorK system) the same way that regular assignments are. However, ''only the best score'' over all versions is reported. Thus, if a student takes ten versions of a gateway/quiz assignment, only the best of those scores will be reported when scoring the assignment. (Note also that any test that a student does not submit before the test time limit expires is recorded with a [[#DueDatesAndRecording|score of zero]].)
 
   
This is not the case when viewing "Student Progress," or when students view their grades, however. There, if the instructor views progress by set, all versions of the assignment will be visible (though there is the option on that page to restrict to only the best assignment). Similarly, viewing results by student will show all versions of gateway/quiz assignments that the student has taken, and a student who views her/his Grades will see all versions that s/he has taken.
 
  +
<span id="StudentProgressAndStats"></span>
  +
=== Student Progress, Statistics and Scoring for GatewayQuiz Assignments ===
  +
  +
Students' progress on and statistics for GatewayQuiz assignments may be examined in the same manner as for homework assignments: click Student Progress or Statistics on the left side bar, under Instructor Tools. There are only a couple of notes about this for GatewayQuiz assignments.
  +
  +
'''Student Progress''': For GatewayQuiz assignments, there are a number of additional display options, which determine what data is shown for the assignments. In particular, display can be restricted to only the best version of the assignment (that is, only a student's set with the highest score will be shown), and many of the other columns that are normally displayed for homework assignments may be omitted. For GatewayQuiz assignments, the TestTime column will indicate if a student's assignment ran over time or is still in progress. ''Note: for versions of WeBWorK <= 2.4.5, assignments that were still being taken displayed as being over time.''
   
 
In early versions of the Gateway/Quiz module, students who have completed ''no'' versions of a gateway/quiz assignment ''do not appear'' when student results are viewed by set. In version 2.4 and later, students who are not assigned the gateway/quiz do not appear, but all others do, with students who have taken no versions of the assignment being indicated in the results listing.
 
In early versions of the Gateway/Quiz module, students who have completed ''no'' versions of a gateway/quiz assignment ''do not appear'' when student results are viewed by set. In version 2.4 and later, students who are not assigned the gateway/quiz do not appear, but all others do, with students who have taken no versions of the assignment being indicated in the results listing.
   
<a name=DisplayRandomGradeOrders"></a>
 
 
There is one more subtlety on the Grades and StudentProgress pages. When viewing students' scores by problem on gateway/quiz assignments for which the problems are ''ordered randomly'', there are two orders in which the problem scores could be presented. The first is the ''instructor's order'', that is, the order in which the problems are defined in the set, and the second is the ''test/quiz order'', that is, the order in which the problems are shown on a particular test/quiz. On the student Grades page, and on the instructor's StudentProgress page when viewing results for a student, problem results are shown in the ''test/quiz order''.
 
There is one more subtlety on the Grades and StudentProgress pages. When viewing students' scores by problem on gateway/quiz assignments for which the problems are ''ordered randomly'', there are two orders in which the problem scores could be presented. The first is the ''instructor's order'', that is, the order in which the problems are defined in the set, and the second is the ''test/quiz order'', that is, the order in which the problems are shown on a particular test/quiz. On the student Grades page, and on the instructor's StudentProgress page when viewing results for a student, problem results are shown in the ''test/quiz order''.
  +
  +
'''Statistics''': For GatewayQuiz assignments (and versions of WeBWorK > 2.4.5), the statistics page shows the statistics for all versions of the assignment that have been taken by students. ''(For versions of WeBWorK <= 2.4.5, the Statistics page fails to display the statistics for the GatewayQuiz assignments.)''
  +
  +
'''Scoring''': When scoring sets that include a GatewayQuiz assignment, the score for a student's best version is reported when there are multiple versions that were taken. (Note also that any test that a student does not submit before the test time limit expires is recorded with a score of zero, as noted in the discussion of [[GatewayQuiz_Technical_Information_and_Philosophy#DueDatesAndRecording|due dates and time limits]] in the [[GatewayQuiz_Technical_Information_and_Philosophy|technical and philosophical information]] document.)
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name="VisibilityManagement"></a>
 
=== Showing Student Scores and Work ===
 
   
Starting in version 2.4 of WeBWorK, there are two settings for gateway/quiz assignments that determine the amount of information about a completed set that is shown to students. These are ''show scores on finished assignments'' and ''show work on finished assignments''. Both of these may be set to "yes" (the default), "no," or "only after set answer date."
 
  +
<span id="ActingOnGWAssignments"></span>
  +
=== Acting as Students on GatewayQuiz Assignments ===
   
If they are set to "no," then students will not be able to view their score, or work, on a set version that they have completed. Thus setting show scores to "no" will mean that when students finish a set version they will get the message "your score was recorded," but they will not be able to see how they did on the test. Similarly, if show work is set to "no" when they finish the set version they will not be able to see the problems in their set version nor their work on the assignment. These restrictions extend to generation of hardcopies of an assignment and viewing of grades through the Grades link on the front WeBWorK page.
 
  +
In most cases, professors will only want to act as a student to see what a set version that the student has completed looks like. This is done by acting as the student (but not selecting a set) and then clicking into the version of the set that is of interest.
   
If they are set to "only after set answer date," then student scores or work will only be available to the student after the answers available date ''for the template set''. (See [[#DueDates|due dates]] for an explanation of the usual relationship between the ''template set'' and ''set version''.)
 
  +
If a professor selects a student ''and a GatewayQuiz assignment'' on the Instructor Tools page and clicks "Act as a user (on one set)", the system will return an error indicating that because the student is being acted as, new sets cannot be created (though if the professor has the permission to <code>create_new_set_version_when_acting_as_student</code>, as described in the [[#GWQuizGlobalConf|global.conf file configuration]] section, s/he will have the option to continue to do so). A similar behavior is, of course, elicited by acting as a student and then clicking the "Take new" link for a GatewayQuiz assignment from that student's problem sets list page.
   
<a name="HideWork"></a>
 
  +
''(In versions of WeBWorK <= 2.4.5, selecting a student and a GatewayQuiz assignment on the Instructor Tools page and clicking "Act as" will return the error "Requested set 'SetName' is a test/quiz assignment but the regular homework assignment content generator problem_list was called..." The error message may be construed as indicated above.)''
The effect of these settings is influenced by the <code>view_hidden_work</code> setting in the <code>permissionLevels</code> hash in the <code>global.conf</code> file. By default, anyone with a permission level of ''TA'' or higher (that is, with the usual permission settings, a permission level of 5 or higher) is able to view work and scores on gateway/quiz assignments even if the set is configured to prevent those things from being displayed.
 
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name="SetDefFiles"></a>
 
=== Set Definition Files for Gateway/Quiz Assignments ===
 
   
Gateway/Quiz assignments may be imported from set definition files in the same manner as other assignments. To specify the gateway/quiz parameters, however, additional options must be indicated in the definition file. These are largely self explanatory, as is suggested in the following example file:
 
  +
<span id="ProctoredTests"></span>
  +
=== Proctored GatewayQuiz Assignments ===
   
openDate = 01/24/2007 at 8:00 AM
 
  +
Proctored GatewayQuiz assignments require that students get a proctor's authorization to start the assignment, and then similarly get authorization before the assignment can be graded. As discussed in the [[GatewayQuiz_Technical_Information_and_Philosophy|technical info and philosophy]] documentation's [[GatewayQuiz_Technical_Information_and_Philosophy#ProctorUsers|proctoring section]], any user with a permissionLevel of <code>ta</code> or <code>professor</code> can give authorization to start or submit such an assignment, as can any user with a <code>grade_proctor</code> permissionLevel. A user with a permissionLevel of <code>login_proctor</code> may authorize the start of a test but not its grading.
dueDate = 02/23/2007 at 11:59 PM
 
answerDate = 02/23/2007 at 11:59 PM
 
paperHeaderFile = integralGWpaperHeader.pg
 
assignmentType = gateway
 
attemptsPerVersion = 1
 
timeInterval = 43200
 
versionsPerInterval = 0
 
versionTimeLimit = 1800
 
problemRandOrder = 1
 
problemsPerPage = 0
 
hideScore = N
 
hideWork = N
 
capTimeLimit = 0
 
restrictIP = RestrictTo
 
restrictLocation = ProctoredLabs
 
relaxRestrictIP = No
 
#
 
problemList=
 
(etc.)
 
   
All time limits and intervals are given in seconds. Note some restriction variables have specific valid values:
 
* <code>assignmentType</code> may be <code>gateway</code> or <code>proctored_gateway</code> (just omit assignmentType for non-gateway sets);
 
* <code>probRandOrder</code> and <code>capTimeLimit</code> may be <code>0= or =1</code> (for don't/do display problems in a random order or cap the time available on the test);
 
* <code>hideScore</code> and <code>hideWork</code> may be <code>N=, =Y</code>, or <code>BeforeAnswerDate</code>;
 
* <code>restrictIP</code> may be <code>No</code>, <code>RestrictTo</code> or <code>DenyFrom</code>;
 
* <code>relaxRestrictIP</code> may be <code>No</code>, <code>AfterAnswerDate</code>, or <code>AfterVersionAnswerDate</code>.
 
It may also be worth observing that the input data for the <code>hideScore</code> and <code>hideWork</code> parameters are the negation of the data that are selected on the set editor page.
 
   
When importing sets from a set definition file, it is not currently possible to set IP address restrictions on sets to more than one location. The value given by <code>restrictLocation</code> must be a valid location as defined in the WeBWorK environment into which the set is being imported. It is also not currently possible to create a set-level proctor password from a set definition file.
 
  +
==== Set Level Proctor Passwords ====
  +
  +
It is also possible to set a set-level proctor password for a proctored GatewayQuiz assignment. If this is done, then that password is the only one that will allow the assignment to be started. This can be useful, for example, if the assignment is given as a quiz in a computer lab and all students should be given the password at the same time to allow them to start the assignment.
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
 
 
|}
 
|}
   
<a name="ProblemGroups"></a>
 
== Selecting Problems from Problem Groups ==
 
   
The following is an overview of the process of selecting problems from groups; for more detailed information, see the ProblemGroupHowTo.
 
   
Of particular interest for gateway/quiz assignments is the ability to select problems from a group. The group of problems from which a problem on an assignment may be selected is just another problem set, which may be a set that is assigned to users or may be a set that is created just for the purposes of defining the group. To select a problem from this group, the "Source File" for the problem is specified as <code>group:setName</code>. Then when a user who is assigned the gateway/quiz starts a new set version, the version will include a randomly selected problem from the indicated set.
 
  +
<span id="StudentsView"></span>
   
For example, suppose that the set <code>chainRule</code> includes the problems <code>chain/prob1.pg</code>, <code>chain/prob2.pg</code>, etc., through <code>chain/prob9.pg</code>, and that the set <code>DerivativeGateway</code> includes four problems, <code>gateway/prob1.pg</code>, <code>gateway/prob2.pg</code>, <code>group:chainRule</code>, and <code>group:chainRule</code>. Then when a user begins a new <code>DerivativeGateway</code> assignment, the set version that s/he gets will include the problems <code>gateway/prob1.pg</code>, <code>gateway/prob2.pg</code>, and two (different) problems randomly selected from the nine that make up the <code>chainRule</code> problem set.
 
  +
== Students' View ==
   
{| border="1"
 
  +
By default, all GatewayQuiz assignments that are assigned to a student appear at the bottom of the ProblemSets list s/he sees when logging in to WeBWorK. Available GatewayQuiz assignments will be indicated with a link called "Take SetName test". If the <code>view_proctored_tests</code> <code>permissionLevel</code> in the global.conf file is set to "ta" or higher (as indicated in the [[#GWQuizGlobalConf|global.conf file discussion]] above, links for ''proctored'' GatewayQuiz assignments will not show up for students. This link will start a new version of the gateway/quiz for the student, if s/he has available versions (that is, if s/he hasn't completed all of her/his versions for the given time interval; otherwise, an error will be returned). If the student has a version of the assignment that s/he has not completed (that is, which s/he can still submit for a grade, because s/he hasn't submitted it as many times as s/he is allowed and still has time left on the assignment), clicking the "Take SetName test" link will cause the student to resume work on that version of the test.
|-
 
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
 
   
|}
 
  +
Once a student has completed a version of a gateway/quiz assignment, the version will show up on the ProblemSets page as a link "SetName (test N)", where N indicates the Nth test that s/he has taken. Note that once a student has completed a proctored test, ''that version'' of the test is redefined for the student as an unproctored test. Thus a student is able to review completed proctored gateway/quiz assignments without needing a proctor. Note that completed proctored assignments therefore appear on the ProblemSets page regardless of the value of <code>view_proctored_tests</code> in the <code>permissionLevels</code> hash in <code>global.conf</code>.
   
<a name="IpRestrictions"></a>
 
  +
See also the discussion of [[#EditingExistingGWAssignments|editing set assignments]] for notes about how setting the "hidden" property of a GatewayQuiz assignment will effect those sets that students see.
==Restricting Access to Sets by IP Address ==
 
   
Sets (both homework and gateway/quiz assignments) may be configured to restrict access to students working on computers with specific IP addresses, or to deny access to specific addresses. This is accomplished in two steps. First, a ''location'' (or locations) is (are) defined through the Course Administration course: for example, the locations defined could be "EH-B069" for a computer lab in East Hall, room B069, or "Proctored Gateway Lab", for the lab in which proctored tests are administered. Second, the set is changed by editing it to restrict access by location.
 
   
To define locations, the WeBWorK administrator selects "Manage Locations" in the Admin Course. This allows her or him to add, edit, and delete locations. Each location can have any number of IP addresses associated with it, either specified individually (e.g., as <code>192.168.15.101</code>), as a range of values (e.g., <code>192.168.15.101-192.168.15.125</code>), or by an IP mask (e.g., <code>192.168.15.0/24</code>).
 
  +
=== Test Timing and Restarting Tests ===
   
Once locations are defined, a WeBWorK professor can edit her/his sets to restrict access by location. To do this s/he selects "Restrict To" or "Deny From" from the "Restrict Access by IP" option when editing the set. After saving this change, a list of the available locations appears, from which s/he can select the desired restrictions (and then, of course, save the set again to save the changes).
 
  +
Once a student starts a new GatewayQuiz assignment version, the timer for that set version is started---that is, all elapsed time counts against the amount of time the student is allowed. In particular, this means that if the student returns to her/his problem sets list page (or if her/his browser crashes) without submitting the test, the allowed time is still being used up. A GatewayQuiz with available time will appear in the problem sets list with a notation indicating it is open and the due time. Clicking that the set version link (that labeled "SetName (test N)") will allow the student to continue work on the assignment, as will clicking the "Take new" link. Once the available time on the set version has expired, clicking the set version link will allow the student to look at and work that set version (assuming that the set isn't configured to hide student work), and clicking the "Take new" link will start a new set version (assuming that there are versions left to take).
   
Note that if no locations are defined, the "Restrict Access by IP" option is unavailable to professors. In addition, note that the <code>view_ip_restricted_sets</code> entry in the permissionLevels hash defined in the <code>global.conf</code> file determines whether a user can view a set from a computer which would otherwise be denied access to it. The default setting allows TAs and professors to ignore these restrictions.
 
 
Finally, it is possible to relax the IP address restrictions by setting a value for "Relax IP restrictions when?". Possible values are "Never," "After set answer date," (that is, after answers come available for the set, or, for gateway/quiz assignments, after they come available for the ''template set'' (c.f., [[#DueDates|due and answer dates]] for Gateway/Quiz assignments), or "After version answer date." "After version answer date" makes answers available after the answer date for a specific ''set version'' (as described in [[#DueDates|due and answer dates]]) of a gateway/quiz, which may in general be before the answer date of the ''template set''. "After version answer date" and "After set answer date" are regarded as the same thing for non-gateway/quiz assignments.
 
   
 
{| border="1"
 
{| border="1"
 
|-
 
|-
''Up to: [[#TableOfContents|table of contents]] || [[#UsingGateways|using gateways]]''
+
''Up to: [[#TableOfContents|table of contents]] || [[#InstructorsView|instructors view]]''
  +
|}
   
|}
 
   
-- Main.GavinLaRose - 06 Apr 2007
 
  +
[[Category:Instructors]]

Latest revision as of 14:07, 26 February 2021

GatewayQuiz Assignments

GatewayQuiz assignments in WeBWorK have many of the characteristics that one might expect of on-line "quizzes" or "tests". In particular, they

  • have a time limit on the assignment,
  • are versioned, and therefore may (depending on how the assignment is defined) be taken by a student multiple times; each version of the assignment will be different in the same way that problems on homework sets differ for different students,
  • may require proctor authorization to be taken and graded,
  • may present more than one question from the assignment on a single page,
  • allow problems in the assignment to be described as a group of problems from which one (or more) problem(s) is(are) drawn,
  • allow restriction of the grade and related data that is shown to students when they have completed an assignment,
  • allow specification of specific computers or labs from which the assignment may be completed, or from which it may not be completed, and
  • may be configured to hide students' scores or work from them after they have completed the assignment.

In the following we consider an instructor's view and the students' view of these assignments, addressing how these different aspects are incorporated into the management and use of a WeBWorK assignment. There is also a page of technical information and philosophy about these types of assignments; this last gives some of the technical information about how the assignments work that may be useful to know as you work with them.

An older version of this documentation also exists.

Up to: table of contents || gateway assignments


Instructor's View

The information in this section is split between the following, which seeks to be more of a description of how to do things, and a technical info and philosophy page, that delves into more of how things are set up underneath the outer skin of WeBWorK. As you use GatewayQuiz assignments, it may be worth stopping to read that page as well to understand why some things work as they do. WEBSITE IS DOWN TILL MAY 15TH DUE TO OVERLOAD OF STUDENTS SORRY FOR ANY INCONVIENCE

Setting Up GatewayQuiz Assignments

It is possible to set up GatewayQuiz assignments by editing an existing set or by importing a set from a set definition file. In addition, there are some behaviors of these assignments that are set in the global.conf file. Other than having more settings than a usual homework assignment, GatewayQuiz assignments are essentially the same as other homework sets. It is also possible to restrict where students may take a test from, as described in the assignment access restrictions documentation.

Note that there are some restrictions on what types of problems may be used in GatewayQuiz assignments, and that problems for the assignments may be drawn from a group of problems, as is explained in the GatewayQuiz assignment problems page.

Up to: table of contents || instructors view


GatewayQuiz Assignments by Editing

To create a GatewayQuiz assignment by editing an existing set, you first create a set by using the Library Browser, or from the Instructor Tools or Homework Sets Editor page. Once the set is created, select it in the Instructor Tools menu and click "Edit one set". Under "General Information", change "Assignment type" to "gateway/quiz" or "proctored gateway/quiz" and click the "Save Changes" button.

You will then be able to set the parameters that determine the characteristics of the GatewayQuiz assignment, as described in the table below. Note that the Set Password parameter only appears for proctored sets. In addition to these specific parameters, it is also possible to set restrictions on where assignments may be completed, as described in the assignment access restrictions documentation.

GatewayQuiz Parameters

Test Time Limit The length of time the student is allowed to work on each version of the assignment. Note that the expiry of the time limit has implications for the recording of student answers, as noted below in the Due Dates section of the documentation. Also note that there is a grace period at the end of the test in which students are still able to submit their answers that is set in the global.conf file.
Cap Test Time at Set Due Date Whether the time limit for a student's assignment should be truncated at the due date of the course assignment (e.g., if a 20 minute quiz must be completed by noon and a student starts it at 11:50---if the cap is set to "yes", this student will only get 10 minutes in which to complete the quiz). See also the information about due dates in the technical information and philosophy document. (Available in WeBWorK 2.4 and later.)
Number of Graded Submissions The number of times a student may submit each version of the assignment for a grade. In most cases, this will be 1.
Time Interval for New Test Versions If students are allowed to complete multiple versions of the assignment (e.g., if it is a skills test that may be taken multiple times for practice), this time interval gives the time interval in which those versions must be taken. For example, if a student may take the assignment once per day, we might set this to 1440 (minutes: 24 hours). Note that the time interval is a rolling interval, so that specifying one version per hour means that a student who starts a test/quiz at 11:58 may start a second at 12:58:01. To implement a daily restriction (e.g., two tests per day) it is generally sufficient to specify the number of tests in a 12 or 18 hour interval. In WeBWorK 2.4 and later, entering "0" for the time interval for new versions gives an infinite interval.
Number of Tests per Time Interval This is explained above; entering "0" puts no limit on the number of allowed versions. If the time interval for new versions is infinite, this gives the total number of test/quizzes that may be taken.
Order Problems Randomly If this is true, the problems on the test/quiz will be presented in a random order. It is worth noting that this has implications for the manner in which student results are displayed in the Student Progress and Grades pages.
Number of Problems per Page (0=all) How many of the questions in the test/quiz to show on one page. For example, specifying "3" for a 5 question quiz will result in a first page of 3 questions and a second of 2. Specifying "0" problems per page puts all problems on one page.
Show score on finished assignments Whether students should be able to see their score on versions of the test/quiz on which they have no remaining attempts, or no remaining time. (Available in WeBWorK 2.4 and later.)
Show student work on finished assignments Similarly, whether students should see the problems and their work after finishing a test version. (Available in WeBWorK 2.4 and later.)
Set-level Password Set Password: (for proctored assignments only, and only available in WeBWorK 2.4 and later) A password for the set that is the required password to start the assignment. This password will not authorize grading, for which a regular proctor login is required. See the proctored tests section below and discussion of proctors and WeBWorK users in the technical information and philosophy documentation.

Note that there are also several settings in the global.conf file that determine the behavior of GatewayQuiz assignments (as noted below). These include settings in the permissionLevels hash and the gatewayGracePeriod variable.

Up to: table of contents || instructors view


GatewayQuiz Assignments by Importing

Gateway/Quiz assignments may be imported from set definition files in the same manner as other assignments. To specify the gateway/quiz parameters, however, additional options must be indicated in the definition file. These refer to the gateway/quiz parameters that can be set by editing an assignment, as is suggested in the following example file:

openDate = 01/24/2008 at 8:00 AM
dueDate = 02/23/2008 at 11:59 PM
answerDate = 02/23/2008 at 11:59 PM
paperHeaderFile = integralGWpaperHeader.pg
assignmentType = gateway
attemptsPerVersion = 1
timeInterval = 43200
versionsPerInterval = 0
versionTimeLimit = 1800
problemRandOrder = 1
problemsPerPage = 0
hideScore = N
hideWork = N
capTimeLimit = 0
restrictIP = RestrictTo
restrictLocation = ProctoredLabs
relaxRestrictIP = No
#
problemList=
(etc.)

All time limits and intervals are given in seconds (note that this is different than the way they are entered in the edit menu). Note some restriction variables have specific valid values:

  • assignmentType may be gateway or proctored_gateway (just omit assignmentType for non-gateway sets);
  • probRandOrder and capTimeLimit may be 0 or 1 (for don't/do display problems in a random order or cap the time available on the test);
  • hideScore and hideWork may be N, Y, or BeforeAnswerDate;
  • restrictIP may be No, RestrictTo or DenyFrom;
  • relaxRestrictIP may be No, AfterAnswerDate, or AfterVersionAnswerDate.

It may also be worth observing that the input data for the hideScore and hideWork parameters are the negation of the data that are selected on the set editor page.

When importing sets from a set definition file, it is not currently possible to set IP address restrictions on sets to more than one location. The value given by restrictLocation must be a valid location as defined in the WeBWorK environment into which the set is being imported. It is also not currently possible to create a set-level proctor password from a set definition file. See also the assignment access restrictions documentation.

Up to: table of contents || instructors view


GatewayQuiz Parameters in global.conf

There are a number settings in the permissionLevels hash in the global.conf file that determine the behavior of GatewayQuiz assignments:

  • proctor_quiz_login - this is the permission level required to allow students to start a proctored_gateway_quiz assignment.
  • proctor_quiz_grade - this is the permission level required to allow students to submit (grade) a proctored_gateway_quiz assignment.
  • view_proctored_tests - this setting determines whether proctored_gateway_quiz assignments will appear in the set list page for students. If you set up an entry page that directs them to a proctored assignment (instead of having them navigate to it), you may want to set this permission level to ta so that they aren't confused by seeing the proctored tests showing up in their set lists.
  • create_new_set_version_when_acting_as_student - (new in WeBWorK versions > 2.4.5) this determines who (if anyone) can create a new set version when acting as a student. If this is set to something other than undef, e.g., professor, then it will be possible for them to create a new version of a set when acting as a student. Note that the created version will count against the student's allowed number of versions, so this is usually not desirable.
  • record_set_version_answers_when_acting_as_student - (new in WeBWorK versions > 2.4.5) this determines who can record answers for a new set version when acting as a student. In general, this should be set to undef, as is record_answers_when_acting_as_student, but if it is necessary or desirable for an instructor to be able to create and submit student GatewayQuiz assignments it can be reset.

For the last two of these, there is additional explanation below under Acting as Students on Gateway Assignments.

In addition, there is the setting

  • view_ip_restricted_sets - which determines who is able to ignore the location restrictions on sets.

Finally, there is one system variable that is set in global.conf and which helps determine the behavior of GatewayQuiz assignments. $gatewayGracePeriod gives the number of seconds after an assignment's due time that students will still be allowed to submit it for a grade. This only applies to gateway_quiz and proctored_gateway_quiz assignments.

Up to: table of contents || instructors view


Editing Existing GatewayQuiz Assignments

When editing GatewayQuiz assignments, we may want to edit the global set (the set that is assigned to all users), or the user set (which determines the parameters---such as open date, due date, time limit, etc., associated with a specific user's, or student's, assigned set), or a particular set version (the version of the set that the user, or student, actually took). The distinction between these three is described in somewhat greater detail on the technical info and philosophy page.


Editing the Global GatewayQuiz Assignment

Edit the global GatewayQuiz assignment the same way you would the global set for a normal homework assignment: select the set on the Instructor Tools page, and click "Edit one set." This allows you to change the characteristics of the set, as described in the set creation by editing section. As with any assignment, the settings for the global set will propagate to all user sets and set versions---with the exception of those settings that are overridden in the user set or set version. In particular, the open, due and answer dates are automatically set for any set version (because they determine the test time, as noted in the discussion of set versions and time limits in the technical and philosophical information), and the assignment type for set versions may also be set (because finished proctored tests get converted to non-proctored ones so that students can see their results). In particular, if you reset the visibility of a global set, it will change the visibility of all user sets and versions of the assignment that students have taken. Similarly, if you "mark correct" a problem on the global set it will mark that problem correct for all versions of the set that students have taken.

Note that for versions of WeBWorK <= 2.4.5, changes in the global or user sets do not propagate to versions of the set that students have already taken (this includes problems that are marked correct). For all versions of WeBWorK they do propagate to new versions that are taken after the changes are saved.

Up to: table of contents || instructors view


Editing a User Set for GatewayQuiz Assignments

This is again the same as editing a user set for a regular homework assignment. Select the set and the user(s) on the Instructor Tools page, and click "Edit one set for users". Any parameter values set for the user set will override those for the global set. Values set for a user will propagate to versions of the assignment that users take, and to those versions that are already taken (except for parameter values that are overridden by the set version, as indicated above).

Note that for versions of WeBWorK <= 2.4.5, changes in the global or user sets do not propagate to versions of the set that students have already taken. For all versions of WeBWorK they do propagate to new versions that are taken after the changes are saved.

Up to: table of contents || instructors view


Editing a Set Version for a User for GatewayQuiz Assignments

(This is only available in versions of WeBWorK > 2.4.5.) There are some cases in which it may be useful to change parameters for a version of a GatewayQuiz assignment that a student has already started. Because set versions are (necessarily) not listed in the Instructor Tools page, this function is available instead by editing all sets for a user: on the Instructor Tools page, select the user, and click "View/Edit all sets for one user". This will list all sets, including set versions. Clicking the name of a set version will allow editing of (some) set parameters for the set version (parameters that are most properly determined from the user or global sets may not be available here).

Up to: table of contents || instructors view


Student Progress, Statistics and Scoring for GatewayQuiz Assignments

Students' progress on and statistics for GatewayQuiz assignments may be examined in the same manner as for homework assignments: click Student Progress or Statistics on the left side bar, under Instructor Tools. There are only a couple of notes about this for GatewayQuiz assignments.

Student Progress: For GatewayQuiz assignments, there are a number of additional display options, which determine what data is shown for the assignments. In particular, display can be restricted to only the best version of the assignment (that is, only a student's set with the highest score will be shown), and many of the other columns that are normally displayed for homework assignments may be omitted. For GatewayQuiz assignments, the TestTime column will indicate if a student's assignment ran over time or is still in progress. Note: for versions of WeBWorK <= 2.4.5, assignments that were still being taken displayed as being over time.

In early versions of the Gateway/Quiz module, students who have completed no versions of a gateway/quiz assignment do not appear when student results are viewed by set. In version 2.4 and later, students who are not assigned the gateway/quiz do not appear, but all others do, with students who have taken no versions of the assignment being indicated in the results listing.

There is one more subtlety on the Grades and StudentProgress pages. When viewing students' scores by problem on gateway/quiz assignments for which the problems are ordered randomly, there are two orders in which the problem scores could be presented. The first is the instructor's order, that is, the order in which the problems are defined in the set, and the second is the test/quiz order, that is, the order in which the problems are shown on a particular test/quiz. On the student Grades page, and on the instructor's StudentProgress page when viewing results for a student, problem results are shown in the test/quiz order.

Statistics: For GatewayQuiz assignments (and versions of WeBWorK > 2.4.5), the statistics page shows the statistics for all versions of the assignment that have been taken by students. (For versions of WeBWorK <= 2.4.5, the Statistics page fails to display the statistics for the GatewayQuiz assignments.)

Scoring: When scoring sets that include a GatewayQuiz assignment, the score for a student's best version is reported when there are multiple versions that were taken. (Note also that any test that a student does not submit before the test time limit expires is recorded with a score of zero, as noted in the discussion of due dates and time limits in the technical and philosophical information document.)

Up to: table of contents || instructors view


Acting as Students on GatewayQuiz Assignments

In most cases, professors will only want to act as a student to see what a set version that the student has completed looks like. This is done by acting as the student (but not selecting a set) and then clicking into the version of the set that is of interest.

If a professor selects a student and a GatewayQuiz assignment on the Instructor Tools page and clicks "Act as a user (on one set)", the system will return an error indicating that because the student is being acted as, new sets cannot be created (though if the professor has the permission to create_new_set_version_when_acting_as_student, as described in the global.conf file configuration section, s/he will have the option to continue to do so). A similar behavior is, of course, elicited by acting as a student and then clicking the "Take new" link for a GatewayQuiz assignment from that student's problem sets list page.

(In versions of WeBWorK <= 2.4.5, selecting a student and a GatewayQuiz assignment on the Instructor Tools page and clicking "Act as" will return the error "Requested set 'SetName' is a test/quiz assignment but the regular homework assignment content generator problem_list was called..." The error message may be construed as indicated above.)

Up to: table of contents || instructors view


Proctored GatewayQuiz Assignments

Proctored GatewayQuiz assignments require that students get a proctor's authorization to start the assignment, and then similarly get authorization before the assignment can be graded. As discussed in the technical info and philosophy documentation's proctoring section, any user with a permissionLevel of ta or professor can give authorization to start or submit such an assignment, as can any user with a grade_proctor permissionLevel. A user with a permissionLevel of login_proctor may authorize the start of a test but not its grading.


Set Level Proctor Passwords

It is also possible to set a set-level proctor password for a proctored GatewayQuiz assignment. If this is done, then that password is the only one that will allow the assignment to be started. This can be useful, for example, if the assignment is given as a quiz in a computer lab and all students should be given the password at the same time to allow them to start the assignment.

Up to: table of contents || instructors view


Students' View

By default, all GatewayQuiz assignments that are assigned to a student appear at the bottom of the ProblemSets list s/he sees when logging in to WeBWorK. Available GatewayQuiz assignments will be indicated with a link called "Take SetName test". If the view_proctored_tests permissionLevel in the global.conf file is set to "ta" or higher (as indicated in the global.conf file discussion above, links for proctored GatewayQuiz assignments will not show up for students. This link will start a new version of the gateway/quiz for the student, if s/he has available versions (that is, if s/he hasn't completed all of her/his versions for the given time interval; otherwise, an error will be returned). If the student has a version of the assignment that s/he has not completed (that is, which s/he can still submit for a grade, because s/he hasn't submitted it as many times as s/he is allowed and still has time left on the assignment), clicking the "Take SetName test" link will cause the student to resume work on that version of the test.

Once a student has completed a version of a gateway/quiz assignment, the version will show up on the ProblemSets page as a link "SetName (test N)", where N indicates the Nth test that s/he has taken. Note that once a student has completed a proctored test, that version of the test is redefined for the student as an unproctored test. Thus a student is able to review completed proctored gateway/quiz assignments without needing a proctor. Note that completed proctored assignments therefore appear on the ProblemSets page regardless of the value of view_proctored_tests in the permissionLevels hash in global.conf.

See also the discussion of editing set assignments for notes about how setting the "hidden" property of a GatewayQuiz assignment will effect those sets that students see.


Test Timing and Restarting Tests

Once a student starts a new GatewayQuiz assignment version, the timer for that set version is started---that is, all elapsed time counts against the amount of time the student is allowed. In particular, this means that if the student returns to her/his problem sets list page (or if her/his browser crashes) without submitting the test, the allowed time is still being used up. A GatewayQuiz with available time will appear in the problem sets list with a notation indicating it is open and the due time. Clicking that the set version link (that labeled "SetName (test N)") will allow the student to continue work on the assignment, as will clicking the "Take new" link. Once the available time on the set version has expired, clicking the set version link will allow the student to look at and work that set version (assuming that the set isn't configured to hide student work), and clicking the "Take new" link will start a new set version (assuming that there are versions left to take).


Up to: table of contents || instructors view