| Literature DB >> 35862382 |
Filip Lukasz Sosenko1, Glen Bramley2.
Abstract
Producing statistically robust profiles of small or 'hard-to-reach' populations has always been a challenge for researchers. Since surveying the wider population in order to capture a large enough sample of cases is usually too costly or impractical, researchers have been opting for 'snowballing' or 'time-location sampling'. The former does not allow for claims to representativeness, and the latter struggles with under-coverage and estimating confidence intervals. Respondent Driven Sampling (RDS) is a method that combines snowballing sampling with an analytical algorithm that corrects for biases that arise in snowballing. For all its advantages, a major weakness of RDS has been around data collection. Traditionally done on-site, the process is costly and lengthy. When done online, it is cheaper and faster but under a serious threat from fraud, compromising data quality and validity of findings. This paper describes a real-life application of a RDS data collection system that maximizes fraud prevention while still benefiting from low cost and speedy data collection.Entities:
Mesh:
Year: 2022 PMID: 35862382 PMCID: PMC9302716 DOI: 10.1371/journal.pone.0270673
Source DB: PubMed Journal: PLoS One ISSN: 1932-6203 Impact factor: 3.752
The chronological flowchart of user experience and system behaviour during data collection stage.
| User experience | System behaviour | |||||
|---|---|---|---|---|---|---|
| The participant receives a unique invitation code from a ‘parent’ (via text / email / phone call / social media message, or in person), and a mobile phone number the code needs to be texted to. | ||||||
| Participant texts his/her unique invitation code to the designated mobile phone number. | ||||||
| System A receives the text message. The content of the message is added to the log in system A, which can later be examined. | ||||||
| System A parses the message: blank characters are removed, and upper letters are converted to lower letters. | ||||||
| System A communicates with system B and checks whether the phone number from which the text was sent is already registered in the database. | ||||||
| Yes | No | |||||
| Fraudulent attempt: the participant is trying to fill in the survey for a second time. System A sends a text to the participant ‘You have already participated in the survey’. No further action is taken. | The system checks if the content of the message is a valid invitation code (i.e. is in the database). | |||||
| Yes | No | |||||
| The system checks if there is already a different phone number registered next to this invitation code (associated with it) in the database. | This is either a fraudulent attempt (the participant tried to guess the code) or the participant texted a valid code, but the message contained additional characters, e.g. ‘My code is abcd99’. System A sends a text to the participant ‘The code looks invalid. Please make sure you only include the code in your text, e.g. abcd99’. | |||||
| Yes | No | |||||
| Fraudulent attempt: the participant is trying to use a code that has already been used by someone else. No further action is taken. | The system looks up if there is a phone number associated with the parent’s invitation code. | |||||
| Yes | No | |||||
| System B registers the participant’s phone number next to its invitation code (it associates the two). System A sends an automated text message to the participant with a welcome sentence and a link to the survey. The information about the participant’s invitation code is built into the survey link. | Fraudulent attempt: the participant has not been invited but has texted a correctly guessed code. No further action is taken. | |||||
| All of the above operations take 3–5 seconds in total. | ||||||
| The participant receives an automated text message with a welcome sentence and a link to the survey. In our case, the link looked like ‘ | ||||||
| The participant taps on the link in that text message. | ||||||
| The survey opens in a web browser on the participant’s smartphone. | ||||||
| System C checks if the survey has been already completed on this smartphone / in this web browser (via a cookie). | ||||||
| Yes | No | |||||
| Fraudulent attempt: the participant is trying to re-take the survey to claim another incentive. A message is shown to the respondent ‘You have already completed the survey’. No further action is taken. | System C registers the time the survey was started. | |||||
| System C retrieves the participant’s invitation code from the survey link and stores it as a hidden variable. | ||||||
| The participant reads a short study description on the first page of the questionnaire and is informed that more information is available upon tapping a link to the full project description. (It opens as a new web page). To progress, the participant needs to check the box saying ‘I have read the full study description and consent to take part’. | ||||||
| The participant is taken to the next page of the questionnaire, where he/she is informed that the study needs to verify that the respondent is in the location where the survey is administered. The respondent is informed that upon clicking the ‘Next’ button, the smartphone is going to ask whether the respondent allows the survey to locate them geographically, and that he/she needs to agree to progress with the survey. The respondent is informed that the research team will only know the approximate location (+/- 1km), not the exact location. | ||||||
| The respondent taps the ‘Next’ button on the smartphone. | ||||||
| System C asks the smartphone to read the location using GPS. | ||||||
| The smartphone sends the location coordinates to system C. | The smartphone does not send the location coordinates to system C. | |||||
| System C registers the geographical coordinates, rounded up to provide approximate location, e.g. +/- 1km. | System C shows a message to the respondent: ‘It looks like ‘location services’ are not enabled on your phone. You need to go into the phone’s Settings = > Privacy = > Location Services and turn them on. Then tap again on the link to the survey’. | |||||
| System C checks if the geographical coordinates lie within the area of the study. | ||||||
| Yes | No | |||||
| The survey proceeds. | Fraudulent attempt: the participant is not present in the area under study. The survey is terminated and a message is shown to the respondent ‘Sorry, but it looks like you are not in [name of the town where the survey is conducted]’. | |||||
| The respondent continues to fill in the survey questionnaire. | System C registers how long the respondent spent answering each question. | |||||
| In the last question of the survey, the respondent is asked which supermarket he/she prefers (for the shopping voucher). | ||||||
| The last page of the questionnaire displays a message informing the respondent that he/she can receive a further award for inviting friends to the survey, and that a text message with invitation codes is going to be sent immediately after completing the survey. | ||||||
| Respondent taps the ‘Submit’ button at the end of the survey. | ||||||
| System C registers the time the survey was ended. | ||||||
| System C sets the cookie to ‘prevent repeat participation’. | ||||||
| System C communicates to System A the respondent’s invitation code and the name of the chosen supermarket. (Via the ‘End URL’ functionality). | ||||||
| System A communicates with system B to check if the invitation code is a valid one. | ||||||
| Yes | No | |||||
| System A checks with system B whether there is a phone number associated with it. | Fraudulent attempt: the participant manually entered the survey URL with an invalid or empty code into the Internet browser. No further action is taken. | |||||
| Yes | No | |||||
| System A checks the value of the variable ‘survey_completed’ for this particular invitation code. | Fraudulent attempt: the participant manually entered the survey URL with a guessed (but valid) code into the Internet browser. No further action is taken. | |||||
| The value is 0 | The value is 1 | |||||
| System B changes the value of the variable ‘survey_completed’ from 0 to 1. | Fraudulent attempt: the participant manually entered the survey URL with an already used code into the Internet browser. No further action is taken. | |||||
| System B looks up the first available (unused) shopping voucher for the supermarket of choice, of the desired value (primary reward–in our case, £10). System B changes the value of the variable ‘voucher_used’ from 0 to 1 for that particular voucher. | ||||||
| System A sends a text to the participant with the shopping voucher and an instruction that it needs to be shown to the cashier at the till. | ||||||
| System B looks up the parent’s mobile number and his/her supermarket of choice. | ||||||
| System B looks up the first available (unused) shopping voucher for the parent’s supermarket of choice, of the desired value (secondary reward–in our case, £5). System B changes the value of the variable ‘voucher_used’ from 0 to 1 for that particular voucher. | ||||||
| System A sends a text to the parent with the secondary reward and a message ‘Someone who you invited to the survey has just completed it. Below there is a link to the additional shopping voucher worth £5’. | ||||||
| System B retrieves follow-up invitation codes for whom the respondent is a ‘parent’ (in our case, three codes). | ||||||
| System A sends a text message to the respondent with the invitation codes and an instruction. (If there are no follow-up invitation codes in the database–i.e. the ‘chain’ is at its end—system A sends a text message saying ‘Sorry, the survey is now closed and therefore we are not sending further invitation codes’). | ||||||
| All of the above operations take 3–5 seconds in total. | ||||||
| Respondent receives a text message with follow-up invitation codes and an instruction how to invite friends to the survey. | ||||||
| Respondent distributes invitation codes among friends. | ||||||
| The survey reaches the target sample size. | ||||||
| Survey administrator deactivates the survey on system C, downloads survey responses from system C for analysis, and optionally exports a log of text messages from system A. Survey administrator sets system A to reply ‘Sorry, the survey is now closed’ to all incoming text messages. Survey administrator closes down system B. | ||||||
| Participants who have received a link to the survey earlier and who visit the survey website are shown a message that the survey has been closed. Participants who text an unused invitation code to the designated mobile number are sent an automatic reply ‘Sorry, the survey is now closed’. | ||||||
| After a week or so the survey administrator closes down system A. | ||||||
| Participants who text their unused invitation code to the designated mobile number do not receive any reply. | ||||||