Class GraffitiExperiment

java.lang.Object
  extended by GraffitiExperiment

public class GraffitiExperiment
extends java.lang.Object

GraffitiExperiment

Summary

Related References (oldest to newest)

Running the Experiment Software

Click here for instructions on launching/running the application.

Setup Parameters

Upon launching, the program presents a setup dialog:

The default parameter settings are read from a configuration file called GraffitiExperiment.cfg. This file is created automatically when the application is launched for the first time. The default parameter settings may be changed through the setup dialog. The setup parameters are as follows:

Parameter Description
Participant Code Identifies the current participant. This is used in forming the names for the output data files. Also, the sd2 output data file includes a column with the participant code.

Condition Code An arbitrary code used to associate a test condition with this invocation. This parameter might be useful if the software is used in an experiment where a condition is not inherently part of the application (e.g., Gender → male, female, Input Device → gamepad, keyboard). The condition code is used in forming the name for the output data file. Also, the sd2 output data file contains a column with the condition code.

Session Code Identifies the session. Useful if testing proceeds over multiple sessions to gauge the progression of learning.

Note: The setup dialog does not include an entry for "Block code". The block code is generated automatically by the software.

Number of Phrases Specifies the number of phrases presented to the participant in the current block.

Phrases File Specifies a file containing phrases of text to be presented to participants for entry. Phrases are drawn from the file at random. Typically, phrases2.txt is used. This is the phrase set published by MacKenzie and Soukoreff in 2003 (click here). The other files in the drop-down list are phrases2.txt, helloworld.txt, helloworld2.txt, quickbrownfox.txt, phrases.txt, phrases100.txt, vowells.txt, and alphabet.txt.

Entry Mode Specifies the stroke alphabet Although the software is primarily intended for Graffiti evaluations, three other modes are supported:

Details on defining a custom set of strokes are found in the API for the Unistroke class.

Show Gesture Set A checkbox item that determines whether or not an image showing the gesture set is shown in the experiment UI (see below).

Program Operation

Upon clicking OK in the setup dialog, the application launches:

After clicking "Begin", a phrase is selected at random from the phrase set and displayed in the top text field. Timing begins at the beginning of the first stroke. Below is a screen snap of the experiment dialog after some user input:

The user enters the phrase, stroke by stroke. Entry continues until the user clicks "Enter". Timing is stopped when "Enter" is clicked. Results of the text entry process appear in a popup dialog after each phrase. Below is an example:

Although it is not apparent in the popup dialog above, a number of errors were committed which were then corrected. This is revealed in the high KSPC value (KSPC = 1.5). The exact nature of the errors may be investigated by examining the output data files or through a special trace utility (see below).

Output Data Files

Output data are saved in files for follow-up analyses. Three "sd" (summary data) files are created. The sd1 file contains data on a stroke by stroke basis, including timestamps. The sd2 file contains summary data for each phrase, one line per phrase. The sd3 file contains trace data (x/y sample points) for each each stroke. A separate utility, GraffitiExperimentTrace, is available to facilitate viewing the trace data.

Example data files follow:

The data in the sd2 file are full-precision, comma-delimited. Importing into a spreadsheet application provides a convenient method to examine the data on a phrase-by-phrase basis. Below is an example of how the data might look after importing into Microsoft Excel: (click to enlarge)

Click here to open the spreadsheet.

Actual output files use "GraffitiExperiment" as the base filename. This is followed by the participant code, the mode, the condition code, the session code, and the block code, for example, GraffitiExperiment-P99-GR-CC-S01-B01.sd1 ("GR" = Graffiti mode).

Miscellaneous

When using this program in an experiment, it is a good idea to terminate all other applications and disable the system's network connection. This will maintain the integrity of the data collected and ensure that the program runs without hesitations.

Author:
Scott MacKenzie, 2009-2015, Steven Castellucci, 2014

Constructor Summary
GraffitiExperiment()
           
 
Method Summary
static void main(java.lang.String[] args)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GraffitiExperiment

public GraffitiExperiment()
Method Detail

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException
Throws:
java.io.IOException