is a is a revision and republication
December 2004's RSS Matters, You can link to the last RSS article
Creating Web Based Surveys with Zope - An Open Source Application Server
By Dr. Rich Herrington, Research and Statistical Support Services Manager
Web based surveys are becoming more popular as an alternative to conventional surveys. A major reason for this is cost. In Figure 1. we see that an Internet based survey is always cheaper by a substantial margin:
Figure 1. From
"Using the Internet
for Quantitative Survey Research", by James H. Watt (1997).
Additional reasons for implementing a web-based survey include the speed with which: 1) a survey can be created, 2) a survey can be distributed, 3) the data can be collected and put into a form which can be analyzed. Furthermore, as survey data are collected, the survey can be modified if problems arise during the survey process. Potential drawbacks with internet surveys can involve biased survey responses if the population under study is not representatively sampled via an internet medium.
Implementing a Web Survey
The typical approach to implementing a web survey will usually involve a combination of HTML and CGI programming. This can potentially involve a fairly substantial skill base: administering a webserver, HTML programming skills, and Perl or Python programming skills. In Table 1., a comparison of the strengths and weaknesses of the different survey technologies is provided:
Table 1. From
"Using the Internet for Quantitative Survey Research", by James H. Watt
In the rest of this article, we examine the use of an open source web application server (Zope), and an open source Zope based survey application (QSurvey), in providing HTML based survey services here at the University of North Texas.
Zope is a web publishing system. Zope consists of an optional webserver, a middle layer which coordinates communication between, for example, external databases and the Zope object database. The Zope default webserver is optional, and in lieu of the Zserver, Zope can function behind Apache or IIS. Zope was designed publishing dynamic content. Using Zope for a single, simple website would be inefficient; however, for hundreds and thousands of pages, many users, and the need for a publicly accessible web site, Zope is a scalable, effective solution. Zope is an open-source project, which has been crucial in its success. ("Zope" is an acronym: it stands for Z Object Publishing Environment.) The programming languages used to build Zope are Python and C. The majority of Zope code is written in Python, with performance sensitive written in C. Zope has been described as Python's showcase application. In summary:
Zope (Z Object Publishing Environment )
Next, we look at a particular Zope application - QSurvey.
The QSurvey product is designed to make on-line surveys easy to write. Instead of having first to develop the backend for the storage, then adapt the questions to the storage available, this product allows you to concentrate on the survey and its questions. Zope takes care of the storage. The page-centric model with optional branching determines at run-time which page to display next. If you need more than simple questions, you may include DTML Document material interspersed with your questions. This means that Images and other content are allowed inside a QPage.
A set of introductory lessons (AVI videos) on using Zope and QSurvey can be found at AVI tutorials.
Example of a QSurvey Survey
The following is an example survey created with QSurvey:
If you are interested in attending a short course devoted to Zope and QSurvey, contact Claudia Lynch. If you are interested in obtaining a Zope account on the UNT Zope survey server https://web2survey.unt.edu/ , contact Rich Herrington. Enjoy the holidays!