YAC Interview Kit may control quotas during a survey.
Usually, these are very simple definitions specifyng the maximum sample sizes
based on responses to several single-choice or numeric responses.
Let's take, for instance, groups defined by the frequency of usage of 4 products groups:
def quota
def limit max = 100; quota_1 = a; end;
def limit max = 100; quota_1 = b; end;
def limit max = 100; quota_1 = c; end;
def limit max = 100; quota_1 = d; end;
end;
def questionnaire
def question
id = freq;
text = "Which product do you use most often?";
quota = quota_1;
rand = 1;
def response id = a; text = "Product A"; end;
def response id = b; text = "Product B"; end;
def response id = c; text = "Product C"; end;
def response id = d; text = "Product D"; end;
end;
. . .
end;
The first section defines 4 groups of respondents, with a limit of 100 interviews in each group.
These groups are then defined in the first question of the questionnaire by mapping that question to quota_1
(response identifiers are then mapped to those used in quota limits' definitions).
However, we don't always want to ask the first question in such a direct way -
for instance, the respondent may have trouble deciding or correctly estimating
which product is the one he/she buys most often.
For the sake of argument, let's assume that that's the problem in this case.
We would like to ask, for each product group, how often does the respondent buy such products.
In the case when two or more products are being bought with the same frequency,
then we ask, which of these products is being bought more often.
The definitions in the quota section will stay the same -
we want at most 100 respondents for each product.
However, the questionnaire part will get a bit more complex now
and we will be using some tricks available in YAC Interview Kit.
So first, let's ask about the frequency of usage of the four products.
This can be done in a single table, where the brand names are shown in random order:
def questionnaire
def question
id = freq;
text = "How often do you use these products?";
display = horiz;
def axis
id = brands;
rand = 1;
def response id = a; text = "Product A"; end;
def response id = b; text = "Product B"; end;
def response id = c; text = "Product C"; end;
def response id = d; text = "Product D"; end;
end;
def axis
def response id = voften; text = "very often"; end;
def response id = often; text = "quite often"; end;
def response id = sometimes; text = "sometimes"; end;
def response id = rarely; text = "rarely"; end;
def response id = never; text = "never"; end;
end;
end;
. . .
def question
id = next;
. . .
end;
end;
A couple of notes about the code above:
This is a table, where for each brand (the first axis) one of the responses from the second axis may be chosen.
Also, brands will be shown in random order.
We added a "next" question - assume this is the first question of quota checking questions.
We will need this question as a jump destination later on.
So now, what we have to do, is to get the product that is used most often
and use its identifier in the quota definition.
However, from the question above we may get that two products
that are used equally often (at least as far as the scale above allows).
In such a case we must ask the user which is the product used more often.
Consider the questions below:
def questionnaire
def question
id = freq;
. . .
end;
def question
id = freq_voften;
text = "Which of these brands do you use more often?";
rand = freq#brands;
quota = quota_1;
def response id = a; text = "Product A";
pre = voften in freq#a; action = goto next; end;
def response id = b; text = "Product B";
pre = voften in freq#b; action = goto next; end;
def response id = c; text = "Product C";
pre = voften in freq#c; action = goto next; end;
def response id = d; text = "Product D";
pre = voften in freq#d; action = goto next; end;
end;
def question
id = freq_often;
text = "Which of these brands do you use more often?";
rand = freq#brands;
quota = quota_1;
def response id = a; text = "Product A";
pre = often in freq#a; action = goto next; end;
def response id = b; text = "Product B";
pre = often in freq#b; action = goto next; end;
def response id = c; text = "Product C";
pre = often in freq#c; action = goto next; end;
def response id = d; text = "Product D";
pre = often in freq#d; action = goto next; end;
end;
// Repeat for the "sometimes" and "rarely" responses in question freq.
def question
id = next;
. . .
end;
First, the rand instruction tells the program to display responses in the same order
as responses in the brands axis of question with the freq identifier.
Next, we're specifyng that this question is a quota question -
if a responses is chosen, it should be taken into account when controlling quota sizes.
Third, each response has a pre condition specified that must be met for the response to be displayed.
So, let's see what happens depending on the responses in the freq question:
-
"very often" wasn't selected for any of the brands;
in this case, the question will not be shown - there are no responses that the respondent could select.
No quota data is written or checked.
-
"very often" was selected for a single brand;
thus a single-choice response would display a single response;
in this case, YAC Interview Kit doesn't display such questions, but selects the response automatically.
Quota data is written for this automatically selected response.
-
"very often" was selected for several brands;
this question is then shown with those brands only
and the respondent must choose the brand being used more often.
Quota data is written for the selected response.
Fourth, there's an action specified for each response - the action will be taken if a response is selected.
In the first case above, no responses are selected, so the action is not taken.
Thus the program will go on to question freq_often.
However, in the other two cases we already have the brand that is used most often,
so there's no need about asking this question for brands used "often", "sometimes", or "rarely".
So let's just skip to the first question after quota control - question "next".
The script looks pretty complicated, but fortunately, to the respondent, it is quite simple.
First we show the table, and then, only if we have two or brands used most often,
we will get a single follow up question on which of these brands is the one used most often.
And, if a single brand is selected as being used most often, there even won't be a follow up question.
This case actually came up in a survey that GaduSonda had to run for one of its clients.
So the above wasn't just some theoretical musing, but a real world example! :-)
Top
|