We will provide some very basic ideas to set up an online between subjects experiment.
First: we need to decide on an
independent variable that varies across conditions. Let's say we vary the number
of response options in our response scale (5 vs 10). We could measure several
dependent variables: the variance in the items, the variance in the scale, model
fit, ...
Now we can proceed with the creation of our online experiment. Follow these easy
steps:
1) Open OSuCre and create a new project.
2) When asked if you want to create a between subjects experiment, answer Yes.
3) Enter the number of between subjects conditions
4) OSuCre will create the syntax files
5) In stead of using File => Convert, user File => Convert to between subjects experiment to create the experiment
Several folders will be created in the files folder with random names to conceal the structure of the experiment. Also, a file named index.php will be created in the files folder, which includes a randomization function. All files and folders in the files directory on your computer should be uploaded to the server. This cannot be done through the built-in upload function. However, here you can find a short tutorial on how to upload entire folders through FTP.
Random function
In most within subjects experiments it is desirable to present stimuli in a random order to prevent order effects. OSuCre provides a way to randomly present survey pages to respondents. There are however some limitations.
In order to randomize survey pages, add $random in the question column. You need to set a size for this option. Size defines the number of pages that need to be randomized. One of the limitations of the $random function, is that you cannot randomize starting from the first page. However, to solve this problem, you can start the experiment by asking some sociodemographic information or by providing information on the experiment on the first page.
A second limitation is that you cannot use the $branch function when you randomize pages.
An example:
| QUESTION | TYPE | SIZE | DIRECTION | CONTROL | LABEL 1 | LABEL 2 | LABEL 3 |
| 1. Your name is: | text | 40 | |||||
| $random | 10 |
In the above example, the first page will contain one question. The next ten pages (page 2 through 11) will be presented at random. Make sure that at least 11 pages (including the first) exist (created using the $newpage function). The survey will not function properly if there are insufficient survey pages, although OSuCre will not generate any error when converting the source file. If a twelfth page exists, the survey will continue on that page. If it does not exist, the respondent will be pointed to the new_reply.php file.
A survey can contain several blocks of questions that need to be randomized. This way several within subjects experiments can be added to one survey.
NOTE: Off course a mixed design can be generated using a combination of both above mentioned techniques. An example can be found at http://www.osucre.be/BRMexample.
Factorial designs
By going to the following web page, you can create the code for a full factorial design: http://www.osucre.be/facgen.php. If you want to create a fractional design, you can remove certain level combinations from the source file.
Multiple groups
When you are planning to test several groups (e.g. in a quasi experimental design), you may want to have a variable in your database discriminating between the different groups without having to ask your respondents which group they belong to. This can be done by adding a hidden variable to your survey.
An example. Say you have 3 groups, namely Belgian, Dutch and British students and they all have to take the same survey in English.
1. Add a question of type "hidden" with the Question column
defined as "<?php echo $_GET['v'] ?>" (without outer quotes) as
the first question of your syntax file.
2. Convert your survey.
3. The link to your survey is usually
http://servername/username. Now it will become
http://servername/username/index.php?v=en This defines a variable "v" with
value "en" (the English version). You can change the value after the = sign to
whatever you want. This way you can also create
http://servername/username/index.php?v=du
and http://servername/username/index.php?v=be.