Questionnaire Programming
This chapters relates to the process of digitization of a questionnaire, and not to the process of developing content for Questionnaire Design.
Read First
You should never start coding your survey before you and your research team has more or less finalized the content of your survey. The reason for this is that even minor content changes might require that you have to re-do something that you have already spent a long time one. See questionnaire design (content development) and questionnaire programming (functionality development) as two strictly separate tasks which requires the research team's full attention separately. Starting with functionality or late major changes to questionnaire content, are sometimes inevitable, but they are by far the most common reason for quality issues in CAPI survey data.
This chapter related to the set up, work flow and organization of questionnaire programming rather than best practices in SurveyCTO coding best practices. The two topics are related, and you will find many links to such articles. If you want to browse SurveyCTO coding best practices then go to the stand alone chapter called SurveyCTO coding practices.
Important articles often forgotten about
- Questionnaire Encryption - read before creating your questionnaire
- Survey Data Quality Checks - read while you are programming your questionnaire. Best practice is to develop data quality checks in parallel to coding your the questionnaire.
- Version control of questionnaires already used in the field - Important best practice when you realize that you need to make changes to a survey you have started to use in the field already.
Topics
The following topics are ordered in a more or less chronological order
Choosing Software
There are several software on the market for CAPI data collection. The rest of this chapter will provide advice assuming that your project will be using SurveyCTO. Many of the practices are valid in other software too, but SurveyCTO is assumed.
Setting up a Server
You can either set up your own server, but if your project is a DIME project you can use DIME's development server until your project require its own server
Create a questionnaire
The easiest way to start with one of SurveyCTO's template forms. You can either program your questionnaire in the form builder or in an Excel sheet. We recommend that your default approach is the Excel sheet. Regardless what method you use to program your questionnaire, and regardless if you start with an empty instrument or use a survey that have been used before, it is important that you encrypt your questionnaires.
How to organize the programming of a questionnaire
Before starting the programming, read this article on form settings first.
The organization of how to approach coding a questionnaire (or perhaps the lack therefore) is in our experience the most common reason for serious bugs that should have been avoidable. questionnaire organization programming will provide you with a general overview, pseudo code is a practical approach how to get started with your code. After you have planned the programming of your questionnaire, but before you start the programming, go through this list of SurveyCTO best practices and make sure that your planning are in-line with all recommended best practices.
Updating a questionnaire already used in the field
While SurveyCTO have fucntionality to allow edits to questionniares already in use, this is not advisable, instead create a new separate version of your questionnaire.