Overview

This PowerLink allows an assessment hosted by QuestionMark Perception to be accessed directly from a WebCT section. User details are passed securely to the Perception server so there is no need for users to be pre-registered or for them to log into the Perception server. It is also possible for the assessment results to be saved in the WebCT Grade Book.

System requirements

The connect2QMP PowerLink is written for WebCT Vista 4.1.1 (or higher) and WebCT Campus Edition 6.1.1 (or higher) but has only been tested with WebCT Vista 8.0. It requires the webctdao.jar module to be installed on the application servers.

Description

Questionmark Perception is an on-line assessment package which provides more advanced question types and reporting than the Quiz tool built into WebCT. The software provides an interface (Perception Integration Protocol) which allows an assessment to be integrated with other applications using standard HTTP connections. This PowerLink uses this solution to allow assessments delivered by QuestionMark Perception to be opened from within WebCT without the need for any further authentication. It also allows any of the following data items about the outcome of the assessment to be passed back to WebCT and recorded in a GradeBook column (the descriptions for each are taken from the QuestionMark Perception documentation):

The assessment can be opened in a separate browser window or within the WebCT window.

Installation

This PowerLink is installed in the same way as any other WebCT Vista 4+ PowerLink:

  1. Create a directory called connect2QMP in the deployablecomponents area of the WebCT domain directory on each application server (including the administration server for a cluster).
  2. Copy the connect2QMP.jar file into the connect2QMP directory.
  3. Copy the webctdao.jar file into the same directory as the PowerLink or into the common directory so that it can be shared by other PowerLinks.
  4. Restart the WebCT service.
  5. Log into WebCT as serveradmin.
  6. In the Utilities, Settings area click on the link labelled connect2QMP module in the System Integration column.
  7. Enable the tool by selecting the radio button labelled True for the enable setting and click on the Save Values button at the bottom of the page.
  8. In the Utilities, PowerLinks Proxy Tools area click on the Add Proxy Tool button.
  9. Select connect2QMP module from the drop-down list and click on the Next button.
  10. Enter details as required in the boxes provided; for example:
    • Proxy Tool Name: QM Perception assessment
    • Version: 1.0
    • Description: Open a QuestionMark Perception assessment.
    Note: the Proxy Tool Name is what will appear to Section Designers when they add the tool to their sections. Click on the Save button.
  11. In the Utilities, Settings area click on the link labelled with the Proxy Tool Name entered in the previous step which should appear in the Tools column.
  12. Clear the tick in the Lock setting checkbox for the Enable Tool setting. Click on the Save Values button.
  13. Select the settings for the proxy tool again to enable the tool by default so that it is visible under the Add Content Link button within each section. Leaving it disabled will mean that Section Designers must enable the tool in each of their sections before it can be used.

A PIP file also needs to be placed on the QuestionMark Perception server; the location of the PIP directory is configured using the QuestionMark Perception Enterprise Manager (which is also used to enable PIP on the server). The contents of the PIP file depend upon the level of security being used for the connection between the servers. A PIP file using the recommended MD5 security level follows:

[Input]
NAME=webctid
GROUP=courseid
SESSION=id
S1=lastname
S2=firstname

[Output]
webctid=%SESSION.USER%
sectionlcid=sectionlcid
score=score
percent=percent
scoreband=scoreband
timeelapsed=timeelapsed
scoredata=%SESSION.SCORE%
percentdata=%SESSION.PERCENT%
timeelapseddata=%SESSION.TIMEELAPSED%
scorebanddata=%SESSION.SCOREBAND%
save=save
mac=%CHECKSUM%

[Security]
Level=md5
Key=SECRET

[Settings]
Method=POST
Header=Content-Type: application/x-www-form-urlencoded
OutputFormat=%s=%s&

The name of the PIP file is used below when configuring this PowerLink; the value of the Key (or Password) entries should be set to the same shared secret value as used to configure this PowerLink (see below). Lower levels of security can be used by changing the contents of the Security section in the PIP file as shown in the following examples.

Security level: Basic

[Security]
Level=basic
Key=SECRET

Security level: Password

[Security]
Level=none
Password=SECRET

Security level: None

[Security]
Level=none

Note that the level of security refers only to communication from WebCT to QuestionMark Perception; a checksum is the only security method supported by QuestionMark Perception when returning data to WebCT. Samples of each of these alternative PIP files are included in the download file for this PowerLink.

Configuration settings

The connect2QMP PowerLink has the following custom configuration settings:

Name Level [see note 1] Required? Default value [see note 2] Comments
URL to session.dll Server Yes https://www.qmp.server/session.dll Check the QuestionMark Perception documentation for details on the correct address for this program
Name of PIP file Server Yes vista.pip This file should reside in the PIP directory on the QuestionMark Perception server
Security level Server Yes MD5 This must be set to one of None, Basic and MD5. MD5 provides the greatest level of security and is recommended. QuestionMark Perception does not support any other forms of securing data being passed.
Details to use to identify source section Server Yes Source ID only QuestionMark strongly recommends passing a GROUP parameter which is used for reporting purposes. This can be set to identify the section and be made up of the source name and/or ID, the GLCID or the section name. Select None to omit this parameter.
Password/key Server Yes SECRET This setting is used as the password or key for generating the Checksum and MD5 security parameters. [see note 3]
List of QMP server IP addresses Server No NA A list of IP addresses from which Grade Book update requests from QuestionMark Perception may be accepted. Separate each IP address with a comma. Leave empty (or NA) to accept updates from any server.
Assessment ID Section Yes 16 digit number The ID if the QuestionMark Perception assessment to be opened.
Name of GradeBook column to hold score Section No   The name of the column in the GradeBook into which the score achieved in the assessment will be placed; leave blank to not record the score in WebCT. [see note 4]
Name of GradeBook column to hold percentage score Section No   The name of the column in the GradeBook into which the percentage score achieved in the assessment will be placed; leave blank to not record the percentage score in WebCT. [see note 4]
Name of GradeBook column to hold scoreband Section No   The name of the column in the GradeBook into which the scoreband achieved in the assessment will be placed; leave blank to not record the scoreband in WebCT. [see note 4]
Name of GradeBook column to hold time elapsed Section No   The name of the column in the GradeBook into which the time elapsed in answering the assessment will be placed; leave blank to not record the time elapsed in WebCT. [see note 4]
Which result should be saved? Section Yes Last This setting determines whether any data returned by QuestionMark Perception is saved, or not. It may be set to one of the following values:
  • First - only saves the data if the score column does not already have a value. If no column has been defined for the score data, the percentage, scoreband and time elapsed columns are inspected (in that order) and the first one defined is checked for an existing value.
  • Last - overwrite any existing values in the selected columns with the latest data.
  • Lowest - only saves the data if the score column is either empty or contains a value higher than the new score. If no column has been defined for the score data, the percentage, scoreband and time elapsed columns are inspected (in that order) and the first one defined is checked for an existing value. If an existing value is found then the data is only saved if the column is either for the score or percentage data and then only if the existing value is higher than the new value
  • Highest - only saves the data if the score column is either empty or contains a value lower than the new score. If no column has been defined for the score data, the percentage, scoreband and time elapsed columns are inspected (in that order) and the first one defined is checked for an existing value. If an existing value is found then the data is only saved if the column is either for the score or percentage data and then only if the existing value is lower than the new value

Notes:

  1. The level specifies the level of the learning context hierarchy at which this setting should be specified; it may, of course, be inherited from a higher level. Due to a bug in WebCT, value for settings at levels above Section should be edited for the module in the System Integration column of the Utilities area and not for the proxy tool itself in the tools column (see the known issues page for details).
  2. A setting value of NA is treated as an empty string; this is a workaround to the SDK bug relating to locked empty settings (see the known issues page for details).
  3. A password/key value of SECRET is ignored and should not be used to implement a secured connection.
  4. QuestionMark Perception has a bug whereby it calculates the security checksum when returning data to another system after it has encoded the values. A consequence of this is that, in order to verify the checksum value, the receiving system must replicate the exact encoding method used by QuestionMark. This bug was reported to QuestionMark in March 2005 but they have not yet been able to fix the bug, although they have provided an outline of the method used. However, it is still possible that the return connection from QuestionMark Perception to WebCT may fail if any of the column names contain characters which have been encoded differently. To minimise the risk of this, it is recommended that you only use standard characters when naming columns (such as letters, digits and spaces).

Usage

Follow these steps to add a link to a QuestionMark Perception assessment to a section:

  1. enable the tool (if it is not already) by selecting the proxy tool from the Manage Course, Settings page
  2. on the Build tab, click on the Add Content Link button and select the QuestionMark Perception proxy tool
  3. select an existing instance of this tool, or click on the Create button to add a new one
  4. enter a title to be displayed on the page and the 16 digit ID of the assessment (available from the QuestionMark Perception Authoring Manager)
  5. click on the Save button

The settings for each instance of the proxy tool can be changed by clicking on the icon from the Build tab.

Troubleshooting

If you experience any problems using this PowerLink try the following to trace the cause:

Note that the return of data from QuestionMark Perception to WebCT is implemented using an inbound authentication request to the PowerLink. This inbound request is failed once the data has been saved as no active session is required. Thus, any errors reported in the WebCT log files as a result of this unsuccessful inbound request are the result of normal behaviour and should be ignored.

Version history

VersionDateDescription
1.0.0021 April 2008Initial release
2.0.0018 June 2008Added options to return data to WebCT

Licence

Creative Commons License This work is written by Stephen Vickers and is released under a Creative Commons GNU General Public Licence. The connect2QMP PowerLink is available for download from OSCELOT where it is also possible to report bugs and submit feature requests.

Valid XHTML 1.0 Strict