US20140039916A1 - System to dynamically collect and synchronize data with mobile devices - Google Patents

System to dynamically collect and synchronize data with mobile devices Download PDF

Info

Publication number
US20140039916A1
US20140039916A1 US14/047,614 US201314047614A US2014039916A1 US 20140039916 A1 US20140039916 A1 US 20140039916A1 US 201314047614 A US201314047614 A US 201314047614A US 2014039916 A1 US2014039916 A1 US 2014039916A1
Authority
US
United States
Prior art keywords
survey
participant
data
questions
date
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/047,614
Inventor
Charles Barden
Jon K. Moon
Jared D. Sieling
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MEI Research Ltd
Original Assignee
MEI Research Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MEI Research Ltd filed Critical MEI Research Ltd
Priority to US14/047,614 priority Critical patent/US20140039916A1/en
Publication of US20140039916A1 publication Critical patent/US20140039916A1/en
Priority to US15/602,412 priority patent/US11170876B2/en
Priority to US17/495,357 priority patent/US11915801B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • G06F19/363
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/20ICT specially adapted for the handling or processing of patient-related medical or healthcare data for electronic clinical trials or questionnaires
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records

Definitions

  • This invention relates to software, communications and methods to assess energy balance; obtain context information on actions and environment; and support individuals, their clinicians or other practitioners to promote a healthy lifestyle by managing weight, diet, addiction and other behaviors. More specifically, the invention can be used to collect information and responses on food choices and intake, activity diaries, ratings of exertion, mood, companions and other input sought by researchers, clinicians, advisers or counselors.
  • EMA ecological momentary assessment
  • RPE perceived exertion
  • EMA Electronic EMA
  • interventions for weight management, addictive and other deleterious behaviors can provide sustained effectiveness. Multiple factors and behaviors need to be targeted together with timely, personally tailored interventions supported by actionable information.
  • the interventions need to be maintained outside of clinic or group settings and respond to the changing needs of participants. Individualized interventions on multiple behaviors are most important with individuals who are refractory managing their weight (US Dept of Health and Human Services reports). With their rich User Interface and increasingly capable processors smartphones are able to not only gather eEMA information enhanced with objective context they can also bring immediately useful information back to participants in studies or clinical treatments.
  • the invention could be used in any situation in which a person or entity wishes to collect data from and on individuals who have agreed to provide that data.
  • this invention could be used by market researchers wishing to collect data from potential users of a new product.
  • This invention allows a Researcher, to:
  • FIG. 1 is a block diagram of the system components and flow of information.
  • FIG. 2 is a flow diagram showing the steps in the process to create and deploy a Data Request to a Participant Device; collect, store and upload data to a central Server Database; and extract, view and analyze the collected data.
  • FIG. 3 is an example of a web page to create annunciations, triggers or prompts.
  • FIG. 4 is an example of a web designer form to create Survey questions.
  • FIG. 5 is an entity relationship diagram of the Server Database tables and their relationship to each other.
  • FIG. 6 is an example of a Survey presentation on a Participant Device.
  • FIG. 7 is an example of a Survey question with the branching option.
  • FIG. 8 is a summary view of the dynamic Survey/Trigger system.
  • the present invention is a system to allow a Researcher ( 101 ) to easily and dynamically manage the collection and synchronization of data of various types from one or more Participants ( 111 ) via a Participant Device ( 108 ), then to process, validate and review the returned data.
  • a Researcher 101
  • examples in this description employ terminology from Javascript® for Android® on participant devices and on operations on a server use SQLite® and php script.
  • Javascript® for Android® on participant devices and on operations on a server use SQLite® and php script.
  • One skilled in the art will be familiar with essentially equivalent operations and terminology used on other systems.
  • FIG. 1 is a block diagram of one implementation of such a system.
  • the boxes are elements of the system and arrows indicate information flow between elements.
  • the Server Database ( 107 ) is a relational database such as provided by MySQL or Oracle. It stores data about the Participants and the study being conducted by the Researcher, Metadata about the data to be collected, and the data collected. In our implementation, the data is stored in tables that are in 3 rd normal form and data integrity is enforced with foreign keys.
  • An example of tables and structure for the Server Database is shown in FIG. 5 . This example is for a study using Smartphones as the Participant Devices and collecting only Participant Response data.
  • the Server Database will be customized, expanded or contracted for each study, depending on the data to be collected. Examples of data that could be collected include physical or physiologic sensor signals, Participant Responses, images, GPS data and audio notes or voice annotations by the Participant.
  • the tables in FIG. 5 are:
  • the Web App interfaces with the Server Database ( 107 ) to store data entered by the Researcher and to extract data for viewing or analysis by the Researcher.
  • the Web App also will create transport files based on Researcher input to create a Data Request.
  • the transport files ( 104 ) serve as a mechanism to easily transfer a Data Request to Participant Devices. This is described in more detail later.
  • Each Participant carries a Participant Device running a Participant Device App ( 109 ) provided by the Researcher.
  • the Participant Device App interfaces with the Participant via a User Interface that can present Annunciations and Items setup by the Researcher.
  • the Participant Device App creates a Participant Device Database ( 110 ), which may be a relational database, to store data collected by the Participant Device or entered Participant Responses and to store information about the Data Requests from the Researcher.
  • the Participant Device App interfaces with the Server App ( 105 ) to download new Data Requests in the form of the transport files created by the Web App and to upload the data collected from the Participant Device or entered by the Participant to the Server Database.
  • the Web App, Server App, and Server Database may be located on a single Server or virtual Server or may be distributed across multiple Servers.
  • the web-based portion of the process has three major functions:
  • a Data Request is created by presenting a web page that prompts the Researcher to fill in data.
  • the Web Application Data Request Form will have two main sections comprising a Trigger scheduler and a Survey designer.
  • a scheduled Trigger will result in the Participant Device App performing an action initiated by the occurrence of an event, the Trigger event.
  • the Trigger event Through the Web App, a Researcher will be able to setup and configure one or multiple Triggers to be scheduled on one or multiple Participant Devices.
  • the Trigger types can include but are not be limited to:
  • the Triggers will have additional options that specify the details of how the Trigger will be executed ( 301 ).
  • the data is written to the Server Database ( 203 ) via a php script and a transport file ( 204 ) (an XML example is displayed in the data transfer section below) is created by a php script that contains tags and attributes that describe the Metadata and the underlying data.
  • the transport file is stored in a directory on the Server that is accessible to the Participant Device.
  • An alternative to the creation of a file would be to create an formatted data stream instead of a file. This would eliminate the need to manage the deletion of files after the data is imported into the Participant Device database.
  • the Participant Device Application includes logic to monitor changes to the Server Database ( 107 ) SystemUpdates table and set a change flag when changes occur.
  • the transport file is downloaded to the Participant Device and the new Trigger schedule is loaded into a local relational database ( 207 ).
  • the Data Request Form also stores and retrieves data from the Server Database ( 107 ) that allows for the management of multiple Surveys.
  • the Survey designer is a collection of files and database tables for managing Surveys that encompass a cycle of data and programming scripts to act on that data and display it and scripts that collect and store changes to the data and finally notify Participant Devices of the change. Surveys are prepared for deployment from tables in the Survey Database and may comprise:
  • the data stored in the preceding tables needs to be displayed on a web page so the surveys can be created and modified.
  • the first step for processing a Survey is to read the database with a programming script. Surveys are first presented to the Researcher as a list on a web page by calling a php script Ajax Test to retrieve a list of Surveys and present it on the web page.
  • the data from the Request Form is written to the Server Database tables that have been designed along relational database rules. Writing the data to a Server Database instead of directly writing an XML file allows the data from the Request Form to be recalled and modified if needed.
  • the transport file is created by reading the Server Database and writing the data specified in the Request Form in XML format, A script called surveySubmit.php reads the Survey, Question and QuestionType tables and creates an XML file like the example below.
  • the created XML files will be based upon the unique identifier that is assigned to each Participant Device.
  • Another alternative to the creation of a file would be to create an XML data stream instead of a file. This would eliminate the need to manage the deletion of files after the data is imported into the Participant Device database.
  • the process to transfer the transport file from the Server to the Participant Device is initiated from the Participant Device.
  • Each Participant Device has a unique identifier that is stored in a table with other useful details about the Participant Device that is sent to the Server App to identify which transport file to Download.
  • the data transfer mechanism will be a network protocol initiated from the Participant Device that will pull the Survey transport file down from the Server ( 206 ).
  • a table called SystemUpdates holds a list of all updates to system files like the Survey XML file.
  • the Download process will use the HTTP protocol to Download the transport file.
  • the transport file, based on XML will contain Metadata inserted into XML attributes alongside the actual questions. Another alternative to initiate the Download of the transport file would be to use the Android Cloud to Device messaging system.
  • the Participant Device App would then be modified to monitor Android Broadcast messages from the Android operating system.
  • the Participant Device App would receive a message whenever the Server Database SystemUpdates table changes and could then start the process to Download the Survey XML data.
  • the transport file will be downloaded every time the Participant Device App contacts the Server and determines updates have been made to the Triggers and Surveys assigned to that Participant Device.
  • This file contains the instructions for the creation of Triggers and Prompts on the Participant Device.
  • Triggers The Trigger management logic of the Participant Device App has two components: Trigger Listeners and Trigger Handlers. When the transport file is downloaded, the information of the active Triggers and the corresponding actions are put into the Participant Device Database ( 207 ), and an Trigger configuration process is run. During the Trigger configuration process, active Triggers are registered with the Trigger Listeners. The role of the Trigger Listener is to detect or monitor for Trigger events and at that time send a message to the Trigger Handler that the event has transpired. An example of this is the location based trigger event, in which if a location based Trigger type has been registered, the Trigger Listener polls the location of the device periodically and compares to a registered location and radius. If the current location moves within the distance to the registered location, the Trigger Listener notifies the Trigger Handler that the location based event has transpired.
  • the Trigger Handler receives a notification that the Trigger event has occurred and through the Participant Device Database looks up what action should be taken based on the scheduled Triggers. The Trigger Handler then runs the logic to give the Annunciation and take the appropriate action. An example of this is the action notifying the Participant to take a Survey triggered by the location of the Participant Device ( 209 ).
  • the screen that displays the Survey questions is not a standard static screen that is normally displayed in Participant Devices.
  • the Survey screen for the Mobile Application starts out as a blank screen.
  • the typical Participant Device screen (a graphical User Interface screen) is based upon an XML file that is created before the Application is compiled and any change to the form requires a compiled Application.
  • the concept of a graphical User Interface created by a developer during the design phase of an Application has the advantage of reduced complexity but this approach results in additional development time and cost when specifications change.
  • a java function retrieves Metadata information from the Survey table in the Participant Device Database and creates the basic design of the screen ( FIG. 6 ).
  • the background color, font and border factors are committed to the screen by reading the values taken from a Participant Device Database table. It then establishes variables as counters to track factors such as current question, current session, etc.
  • Two buttons are displayed on the screen, named Previous and Next and activated in a prebuilt frameset as a first step in the building of the screen. These two buttons allow the Participant to navigate through the Survey ( 601 ).
  • Basic screen setup factors such as fonts, colors and borders are set based on data read from the database ( 603 ). When this has been completed, the first question of the Survey is pulled from the database. The Survey question is then displayed ( 602 ) below the navigation buttons and the program then determines the type of question and a function appends an additional view based on the type of question. ( 604 ).
  • a function When all of the Survey questions are answered, a function will group the answers as a unique event by the use of a session identifier, capture timestamps to measure Participant performance while answering questions then write the answers to the Answers table in the Participant Device database ( 605 ).
  • the transfer of captured Participant Device data will involve pulling data out of the Participant Device Database and writing it to a file for transport. This process will be accomplished by using SQL (Structured Query Language) to create an output file.
  • SQL Structured Query Language
  • the naming of the file will help to identify the source.
  • the filename will contain the user id and a date timestamp and a counter to give the file a unique identifier.
  • the file can be comma delimited, straight text of a binary file, depending on how the Server App ( 105 ) is designed to process the file. The amount and type of data to transfer will be based upon settings in the Participant Device App.
  • the Participant Device will invoke the Server App ( 105 ) to pull the file up and process it into the Database Server ( 106 ) using the HTTP post protocol.
  • An alternative method to uploading Participant Device data as a file is to read the Participant Device database and store the data in an array as key/pair values.
  • the data is uploaded using the HTTP post protocol as each record is read from the database.
  • Uploaded data will be reviewed by the Server App to ensure it meets any validation requirements set on the Create Data Request Form ( 201 ). Data will also be validated by use of foreign keys on the tables that ensure data integrity. Any resulting errors will be captured, stored and then displayed on an exception web page.
  • the Server App will have functions that allow the Researcher a view into the uploaded data by means of reports and scripts.
  • a web page will be created that displays the researcher name and institution. The page will have a calendar control so the researcher can view one or more days' worth of Survey answers.
  • a list box will contain the names of the participants that have uploaded data.
  • the answer data will be pulled from the answer table and joined with the question data and a timestamp through an SQL query. Further reports can be constructed as needed.
  • the SQL query will be constructed in a php script that is called by the web page using AJAX programming techniques and will require a javascript function to populate the page.
  • a Survey may be created for a Participant Device by using programming tools provided by the Participant Device's software development kit (SDK).
  • SDK software development kit
  • the User Interface is designed in an integrated development environment and compiled into the Application when desired. Logic for displaying questions and saving answers is written specifically for the previously designed User Interface. Multiple surveys will require the creation of additional User Interfaces and logic to populate and retrieve data from them.
  • the entire Application is compiled and loaded into the Participant Device. This method is effective but requires a programmer to create the User Interface and any ensuing changes.
  • Another method of using a Survey on a Participant Device is to use a Survey based upon a web page and running that web page from a browser contained in the Participant Device. This allows for an easily modified Survey but with the disadvantage of complete failure if there is no data connection.
  • PDA devices are capable of displaying and recording Survey information but typically do not have wireless connectivity.
  • Surveys are designed on a personal computer with a custom Application that creates a Survey file.
  • a Survey Application is loaded onto the PDA with the Survey file.
  • the Survey Application reads the Survey file and the answers are copied off the PDA. Because most PDA do not have wireless connectivity, the PDA must be physically attached to the personal computer to copy the Survey file and the resulting answers.

Abstract

The invention enables bi-directional mobile communication by researchers, clinicians or counselors with their patients and study participants. An exemplary application is ecological momentary assessment of psychological and physical status related to weight management. The system may be combined with objective information to trigger a communication and enhance responses assessed on food choices, dietary intake, physical activity, exertion, mood and companions.

Description

    CROSS-REFERENCE TO RELATED PATENT DOCUMENT
  • This patent application claims the benefit of priority, under 35 U.S.C. Section 119(e), to Charles Barden U.S. Provisional Patent Application Ser. No. 61/391,591, entitled “System to Dynamically Collect and Synchronize Data with Mobile Devices”, filed on Oct. 9, 2010.
  • FIELD OF THE INVENTION
  • This invention relates to software, communications and methods to assess energy balance; obtain context information on actions and environment; and support individuals, their clinicians or other practitioners to promote a healthy lifestyle by managing weight, diet, addiction and other behaviors. More specifically, the invention can be used to collect information and responses on food choices and intake, activity diaries, ratings of exertion, mood, companions and other input sought by researchers, clinicians, advisers or counselors.
  • BACKGROUND OF THE INVENTION
  • The weight status of Americans has been declared a serious public health problem and is already burdening our health care systems. Obesity and low physical activity are prime risks for multiple forms of morbidity and mortality including several chronic diseases (coronary heart disease, Type II Diabetes, arthritis, sleep apnea and some forms of cancer). Obesity and overweight are a result of energy imbalance—excess macronutrient intake and low levels of physical activity.
  • Unfortunately, past approaches to weight loss treatments have proven ineffective for both children and adults, despite increasing awareness and individual efforts to lose weight. Traditionally effective treatments for overweight individuals need to be intensive enough to cause a change in lifestyle. Techniques to deliver such treatments would overwhelm our healthcare system. Programs also need to reach people with limited finances and who live in locations remote from experienced professionals and clinics. Further, feedback and other support for patients must be adapted to their daily lives and as concurrently as possible with behavior that should be altered.
  • An exemplary use of the invention is ecological momentary assessment (EMA). EMA is a timely record of actions and environment that preserves immediate psychological and physical status. EMA replaces recall diaries to overcome bias and errors from delayed records. Simple examples of EMA might have a study participant provide a rating of perceived exertion (RPE) after an exercise session or assign a score from a Likert scale to their present mood.
  • Electronic EMA (eEMA) methods are a further improvement that replace paper surveys and increase privacy. EMA has become a popular tool to collect data and influence behavior change. EMA allows researchers and clinicians to obtain behavioral, social context, and individual cognition in near real time. eEMA has been demonstrated as superior to other methods, especially paper, for avoiding recall bias.
  • Rofey, et al [“Utilizing Ecological Momentary Assessment in pediatric obesity to quantify behavior, emotion, and sleep”, Obesity 18(6): 1270-1272, 2010] stated that, “ . . . technological devices that gather objective data have reasonably high compliance rates, and may inform measurement of treatment outcomes in adolescents who are obese”. Mobile devices, especially “smartphones” can enhance eEMA with objective measures made by sensors such as time, location, speed, acceleration, temperature, light level, and proximity to locations of interest or electronic devices (including other smartphones) carried by people with a relation to a participant. These additional objective measures can be attached to a particular instance of eEMA (such as a Survey) to provide context. Or, the sensor measurements can be made continuously and the eEMA coordinated with the concurrent record.
  • There are indications that interventions for weight management, addictive and other deleterious behaviors can provide sustained effectiveness. Multiple factors and behaviors need to be targeted together with timely, personally tailored interventions supported by actionable information. The interventions need to be maintained outside of clinic or group settings and respond to the changing needs of participants. Individualized interventions on multiple behaviors are most important with individuals who are refractory managing their weight (US Dept of Health and Human Services reports). With their rich User Interface and increasingly capable processors smartphones are able to not only gather eEMA information enhanced with objective context they can also bring immediately useful information back to participants in studies or clinical treatments.
  • The invention could be used in any situation in which a person or entity wishes to collect data from and on individuals who have agreed to provide that data. For example, this invention could be used by market researchers wishing to collect data from potential users of a new product.
  • OBJECTS OF THE INVENTION
  • This invention allows a Researcher, to:
      • create and modify Surveys and Items for individual Participants or groups of Participants:
      • create Prompts and Annunciations that can be independent or associated with the Surveys;
      • associate the Annunciations and presentation of the Items with Triggers related to predetermined conditions;
      • deploy the Surveys to Participant Devices;
      • present the Surveys to the Participants on demand or in response to Triggers and gather Participant Responses;
      • gather, organize and attach context to Prompts and Participant Responses:
      • return the Participant Responses to a remote Server or database:
      • organize and store the Participant Responses and present them to the Researcher and/or Participant or to predetermined algorithms for automated actions.
    BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of the system components and flow of information.
  • FIG. 2 is a flow diagram showing the steps in the process to create and deploy a Data Request to a Participant Device; collect, store and upload data to a central Server Database; and extract, view and analyze the collected data.
  • FIG. 3 is an example of a web page to create annunciations, triggers or prompts.
  • FIG. 4 is an example of a web designer form to create Survey questions.
  • FIG. 5 is an entity relationship diagram of the Server Database tables and their relationship to each other.
  • FIG. 6 is an example of a Survey presentation on a Participant Device.
  • FIG. 7 is an example of a Survey question with the branching option.
  • FIG. 8 is a summary view of the dynamic Survey/Trigger system.
  • GLOSSARY
    • Researcher—an investigator, clinician, other person or entity desiring to collect information from or interact with one or more Participants.
    • Participant—a patient or other person, often enrolled in a research study, with whom a Researcher wishes to interact to provide and gather information.
    • Participant Device—computing device, typically having a display with touch or keyboard input, such as a personal computer or mobile device (e.g., smartphone or personal digital assistant).
    • App or Application—software program automatically performing singular or multiple related tasks.
    • Server—a computer, or assemblage of computers, that link other computers or electronic devices together, providing services across a network such as the internet.
    • Web Server—a computer program running on a server that delivers (serves) and receives content over the internet.
    • Database Server—a computer program that provides database services to other computing devices, such as personal computers or Participant Devices.
    • Data Request—request for data from an application operating on a device separate from the device receiving the request.
    • Survey—a data request or other assemblage of one or more Items to be presented according to metadata and other characteristics on a Participant Device
    • Item—a Prompt, and associated answers if the Prompt is in the form of a question, presented to a Participant as part of a Survey
    • User Interface—a part of an Application that controls a display for a Researcher or the Participant that allows the Researcher or Participant to interact with the system
    • Metadata—data that provides context or additional information about other data and/or its means of presentation.
    • php script—a web-based Application that is executed by a Web Server
    • XML—extensible markup language is a set of rules for encoding documents electronically
    • Transport file—a structured file, such as XML or Json, containing one or more Surveys to facilitate download to a Participant device.
    • Download—the transfer of a Transport file or other data from a Server to a Participant device
    • Upload—the transfer of Survey information and other data from a Participant device to a Server
    • PDA—personal digital assistant
    • Compile—the process of creating an Application from source code
    • Json—javascript object notation is a format for encoding data or code electronically
    • AJAX—asynchronous javascript with XML is a method to create client based interactive web applications
    • Buddy Box—a radio transponder to notify a Participant Device it is at a specific location.
    • Geolocation—absolute position obtained from GPS (a satellite-based navigation system consisting of a network of orbiting satellites), radio-frequency communication with cellular towers or other means
    • Proximity—location or distance relative to a geolocation, person or object.
    • Ping—a computer network administration utility used to test the reachability of a host on an Internet Protocol (IP) network and to measure the round-trip time for messages sent from the originating host to a destination computer
    • Annunciation—a sound, vibration, light or other means of notifying a participant of a prompt.
    • Trigger—one or more pre-determined conditions that cause a Survey to be presented on a Participant Device.
    • Prompt—information presented to a participant, including but not limited to, a statement, recommendation, command or question.
    • Participant Response—information provided by a Participant through a Participant Device.
    • Context Data—data that describes the content of the data including but not limited to time and location.
    DETAILED DESCRIPTION OF THE INVENTION System Overview
  • The present invention is a system to allow a Researcher (101) to easily and dynamically manage the collection and synchronization of data of various types from one or more Participants (111) via a Participant Device (108), then to process, validate and review the returned data. For ease of understanding, examples in this description employ terminology from Javascript® for Android® on participant devices and on operations on a server use SQLite® and php script. One skilled in the art will be familiar with essentially equivalent operations and terminology used on other systems.
  • FIG. 1 is a block diagram of one implementation of such a system. In FIG. 1 the boxes are elements of the system and arrows indicate information flow between elements.
  • The Server Database (107) is a relational database such as provided by MySQL or Oracle. It stores data about the Participants and the study being conducted by the Researcher, Metadata about the data to be collected, and the data collected. In our implementation, the data is stored in tables that are in 3rd normal form and data integrity is enforced with foreign keys. An example of tables and structure for the Server Database is shown in FIG. 5. This example is for a study using Smartphones as the Participant Devices and collecting only Participant Response data. The Server Database will be customized, expanded or contracted for each study, depending on the data to be collected. Examples of data that could be collected include physical or physiologic sensor signals, Participant Responses, images, GPS data and audio notes or voice annotations by the Participant. The tables in FIG. 5 are:
    • Study (501)—master table holding the organization and Researchers responsible for studies.
    • Survey (502)—a child of the Study table dedicated to a unique study.
    • Questions (503)—a child of the Survey table that holds unique questions for a study.
    • QuestionType (504)—a table holding available types of questions that enforces referential integrity to the Question table.
    • Options (505)—a child of the Question table that holds multiple options choices for questions.
    • CellPhoneUsers (506)—a table that holds the unique ID, such as a Participant Device IMEI, that is tied to the Survey table via a foreign key.
    • Answers (508)—a table that holds all the answers that Participants answered on their Participant Device and uploaded to the remote Server
    • Alerts (509)—a table that holds all the alerts that will be activated on a Participant Device when a trigger has been activated.
      A Researcher interfaces with the system via web pages served up by the Web Server (102) running the Web App (103). The Web App allows the Researcher to:
      • Create a Data Request, for example, create Surveys, Triggers, Prompts or Annunciations. Triggers and Prompts allow a Researcher to initiate an interaction with a Participant, start or stop a software routine or request specific information recorded by the Participant Device.
      • Enter Participant data
      • Extract and view Participant Responses and context data related to Participant Responses or items.
  • The Web App interfaces with the Server Database (107) to store data entered by the Researcher and to extract data for viewing or analysis by the Researcher. The Web App also will create transport files based on Researcher input to create a Data Request. The transport files (104) serve as a mechanism to easily transfer a Data Request to Participant Devices. This is described in more detail later.
  • Each Participant carries a Participant Device running a Participant Device App (109) provided by the Researcher. The Participant Device App interfaces with the Participant via a User Interface that can present Annunciations and Items setup by the Researcher. The Participant Device App creates a Participant Device Database (110), which may be a relational database, to store data collected by the Participant Device or entered Participant Responses and to store information about the Data Requests from the Researcher. The Participant Device App interfaces with the Server App (105) to download new Data Requests in the form of the transport files created by the Web App and to upload the data collected from the Participant Device or entered by the Participant to the Server Database.
  • The Web App, Server App, and Server Database may be located on a single Server or virtual Server or may be distributed across multiple Servers.
  • Detailed Description of Process Implementation Create Data Request (201)
  • The web-based portion of the process has three major functions:
  • 1. The creation of a Data Request via input from a web page (202)
  • 2. Data Request data written to Server Database (203)
  • 3. Creation of an transport file (204)
  • A Data Request is created by presenting a web page that prompts the Researcher to fill in data. The Web Application Data Request Form will have two main sections comprising a Trigger scheduler and a Survey designer.
  • Trigger Scheduler (FIG. 3)
  • A scheduled Trigger will result in the Participant Device App performing an action initiated by the occurrence of an event, the Trigger event. Through the Web App, a Researcher will be able to setup and configure one or multiple Triggers to be scheduled on one or multiple Participant Devices. The Trigger types can include but are not be limited to:
      • time of day
      • activity based on internal or external accelerometer data
      • location based upon GPS position
      • location based upon GPS position of friends
      • answers to Survey questions
        The actions can include but are not limited to:
      • prompt the Participant to take some action (such as view or respond to a Survey, take a picture and store the image, provide voice or text annotation for other data)
      • record data from sensors associated with the Participant Device (such as location transceiver, accelerometer, gyroscope, light, temperature, or through local area communication)
  • The Triggers will have additional options that specify the details of how the Trigger will be executed (301). When the researcher completes the Trigger scheduling process, the data is written to the Server Database (203) via a php script and a transport file (204) (an XML example is displayed in the data transfer section below) is created by a php script that contains tags and attributes that describe the Metadata and the underlying data. The transport file is stored in a directory on the Server that is accessible to the Participant Device. An alternative to the creation of a file would be to create an formatted data stream instead of a file. This would eliminate the need to manage the deletion of files after the data is imported into the Participant Device database.
  • The Participant Device Application includes logic to monitor changes to the Server Database (107) SystemUpdates table and set a change flag when changes occur. The transport file is downloaded to the Participant Device and the new Trigger schedule is loaded into a local relational database (207).
  • Survey Designer (FIG. 4)
  • The Data Request Form also stores and retrieves data from the Server Database (107) that allows for the management of multiple Surveys. The Survey designer is a collection of files and database tables for managing Surveys that encompass a cycle of data and programming scripts to act on that data and display it and scripts that collect and store changes to the data and finally notify Participant Devices of the change. Surveys are prepared for deployment from tables in the Survey Database and may comprise:
      • survey name
      • id tag to uniquely identify itself
      • Researcher
      • Valid date/time ranges for Presentation
      • Display characteristics (e.g., font or color)
        Surveys are a collection of Items pointing to a single Survey in a parent-child relationship where the Survey is the parent and the Items are the children. The Question table contains the following columns:
      • id tag to uniquely identify itself
      • the text of the question
      • type of question
      • id of parent Survey
        All questions are assigned a question type and the list of valid question types is stored in a table called QuestionType (504). This table is linked to the Question table and all questions must contain a question type contained in the QuestionType table. The table contains the following columns:
      • id to identify a question type
      • description that further describes the question type
        The QuestionType table holds values that describe the type of Participant Response expected in answer to a question, these include:
      • Text
      • Single choice
      • Multiple choice
      • Date/time
      • Body weight or other numeric
      • Record voice or sound
      • Photo or image
  • When Participants are presented with questions with expected form of answers, including the single choice, multiple choice, text input, numeric input, image capture and voice record. For single choice responses the answers may be conveniently presented as radio buttons. Checkboxes are similarly convenient for multiple choice responses.
  • The data stored in the preceding tables needs to be displayed on a web page so the surveys can be created and modified. The first step for processing a Survey is to read the database with a programming script. Surveys are first presented to the Researcher as a list on a web page by calling a php script Ajax Test to retrieve a list of Surveys and present it on the web page.
  • From this point the Researcher will be able to manage Survey questions through controls on the Survey designer component of the Data Request Form (FIG. 4). Managing survey questions is divided into five areas:
      • 1. Adding questions. To add a question, the Researcher types the question into the question textbox (401). They will then choose the form of the question by clicking on the corresponding radio button (402). If the question is a single or multiple choice type question, the choice options can be created by clicking on the add question option and typing the option text into the text box that appears (403). If the Researcher decides this new option is not needed, it can be removed by selecting the remove option button. The process for saving the question and possible options is to first call an AJAX post function in javascript that collects the entered data and passes it to a php script. The php script will extract the data and load it into a local array. It will then write the data into the appropriate tables and return a status flag reflecting the success of failure of the operation.
      • 2. Deleting questions. Existing questions can be deleted by clicking on a button placed next to all existing questions (404). The process for deleting a question is accomplished by calling and AJAX post function in javascript that passes the id of the question to a php script that runs an SQL query to delete the question which in turn deletes any options by using a foreign key command, cascade on delete.
      • 3. Viewing existing options. Existing question options can be viewed by clicking on the options button next to it (405 & 406). The click event calls a javascript function that loads the options from the Server Database using Ajax programming techniques. Ajax is used for displaying options dynamically, and it will eliminate the need to refresh the entire page when only a small part of the Survey is being modified.
      • 4. Ordering Questions. Questions can be reordered by clicking and dragging questions higher or lower until they are in the order desired. The reordering is implemented using Javascript and php sort functions. Survey design attributes such as background color or font can also be modified (407 and 408).
      • 5. Branching. The Survey software is capable of branching to multiple questions based upon the answer the participant chooses. Questions have a branching attribute which points to a branching table that changes the order of the questions and ensures the Survey returns to correct subsequent Survey question. Branching in the Application would take the following steps.
        • a) Researcher selects a question that would branch (701).
        • b) Options of the branching questions would be assigned a destination question (702).
        • c) Question set as a destination question would be tagged as a destination question (703).
        • d) Logic in Application would ensure question tagged as destination question proceeds to the next question properly (704).
    Commit Request Form Data to Database (203)
  • The data from the Request Form is written to the Server Database tables that have been designed along relational database rules. Writing the data to a Server Database instead of directly writing an XML file allows the data from the Request Form to be recalled and modified if needed. To save the Survey, the Researcher clicks the Submit button (409) and a javascript function called CreateXML collects data entered into the controls on the web page and passes them down to a php script called SurveySubmit.php. This php script commits all the data to the Survey, Question and QuestionOption tables.
  • Create Transport File (204)
  • The transport file is created by reading the Server Database and writing the data specified in the Request Form in XML format, A script called surveySubmit.php reads the Survey, Question and QuestionType tables and creates an XML file like the example below. The created XML files will be based upon the unique identifier that is assigned to each Participant Device. Another alternative to the creation of a file would be to create an XML data stream instead of a file. This would eliminate the need to manage the deletion of files after the data is imported into the Participant Device database.
  • Transfer Data (205)
  • The process to transfer the transport file from the Server to the Participant Device is initiated from the Participant Device. Each Participant Device has a unique identifier that is stored in a table with other useful details about the Participant Device that is sent to the Server App to identify which transport file to Download. The data transfer mechanism will be a network protocol initiated from the Participant Device that will pull the Survey transport file down from the Server (206). A table called SystemUpdates holds a list of all updates to system files like the Survey XML file. The Download process will use the HTTP protocol to Download the transport file. The transport file, based on XML, will contain Metadata inserted into XML attributes alongside the actual questions. Another alternative to initiate the Download of the transport file would be to use the Android Cloud to Device messaging system. This would involve registering the Web Server with Google and creating a series of messages concerning transport file creation. The Participant Device App would then be modified to monitor Android Broadcast messages from the Android operating system. The Participant Device App would receive a message whenever the Server Database SystemUpdates table changes and could then start the process to Download the Survey XML data.
  • Example of a Survey Transport Table Based on XML
  • <?XML version=“1.0”?>
    <root>
    <Survey ID=‘1’ SurveyName=‘Meals’ color=‘White’ >
    <Question ID=‘57’ Question=‘Where did you eat dinner’ QuestionOrder=‘1’ >
    <Option QuestionID=‘57’ OptionOrder=‘1’ Description=‘at home’/>
    <Option QuestionID=‘57’ OptionOrder=‘2’ Description=‘at school’/>
    <Option QuestionID=‘57’ OptionOrder=‘3’ Description=‘at a restaurant’/>
    </Question>
    <Question ID=‘159’ Question=‘How would you rate your weight’ QuestionOrder=‘2’ >
    <Option QuestionID=‘159’ OptionOrder=‘1’ Description=‘1. Good’/>
    <Option QuestionID=‘159’ OptionOrder=‘2’ Description=‘5. Too Heavy’/>
    <Option QuestionID=‘159’ OptionOrder=‘3’ Description=‘10. Too light’/>
    </Question>
    <Question ID=‘161’ Question=‘What meals did you have today?’ QuestionOrder=‘3’ >
    <Option QuestionID=‘161’ OptionOrder=‘1’ Description=‘1. breakfast’/>
    <Option QuestionID=‘161’ OptionOrder=‘2’ Description=‘2. lunch’/>
    <Option QuestionID=‘161’ OptionOrder=‘3’ Description=‘3. dinner’/>
    <Option QuestionID=‘161’ OptionOrder=‘4’ Description=‘4. at least one snack’/>
    </Question>
    <Question ID=‘160’ Question=‘What is your awareness of fats in foods’ QuestionOrder=‘4’ >
    <Option QuestionID=‘160’ OptionOrder=‘1’ Description=‘1. Not aware of it at all’/>
    <Option QuestionID=‘160’ OptionOrder=‘2’ Description=‘2. Somewhat aware’/>
    <Option QuestionID=‘160’ OptionOrder=‘3’ Description=‘3. Reasonably aware’/>
    <Option QuestionID=‘160’ OptionOrder=‘4’ Description=‘4. Acutely aware’/>
    </Question>
    <Question ID=‘155’ Question=‘Who are you with?’ QuestionOrder=‘5’ >
    </Question>
    </Survey>
    </root>
  • The transport file will be downloaded every time the Participant Device App contacts the Server and determines updates have been made to the Triggers and Surveys assigned to that Participant Device. This file contains the instructions for the creation of Triggers and Prompts on the Participant Device.
  • Example of transport alert manager file:
  • <root>
    <Items>
    <TPAItem ID=‘103’ TriggerName=‘Test 4’ TriggerType=‘3’ SurveyID=‘5’/>
    <TPAItem ID=‘104’ TriggerName=‘Post Meal 1’ TriggerType=‘3’ SurveyID=‘0’/>
    <TPAItem ID=‘105’ TriggerName=‘Post Meal 2’ TriggerType=‘3’ SurveyID=‘2’/>
    <TPAItem ID=‘106’ TriggerName=‘Test’ TriggerType=‘2’ SurveyID=‘1’/>
    <TPAItem ID=‘115’ TriggerName=‘Random Morning’ SurveyID=‘1’/>
    <TPAItem ID=‘116’ TriggerName=‘Final 1’ TriggerType=‘3’ SurveyID=‘0’/>
    </Items>
    <Attributes>
    <Attribute_Trig_TimeBased ItemID = ‘103’ Start = ‘09:00:00’ End = ‘12:00:00’/>
    <Attribute_Trig_TimeBased ItemID = ‘104’Start = ‘00:00:00’ End = ‘00:00:00’/>
    <Attribute_Trig_TimeBased ItemID = ‘105’ Start = ‘00:00:00’ End = ‘00:00:00’/>
    <Attribute_Trig_TimeBased ItemID = ‘106’ TriggerTime = ‘06:30:00’ />
    <Attribute_Trig_TimeBased ItemID = ‘115’ Start = ‘15:00:00’ End = ‘18:00:00’/>
    <Attribute_Trig_TimeBased ItemID = ‘116’ Start = ‘00:00:00’ End = ‘00:00:00’/>
    </Attributes>
    </root>
  • Collect Data (208)
  • Triggers: The Trigger management logic of the Participant Device App has two components: Trigger Listeners and Trigger Handlers. When the transport file is downloaded, the information of the active Triggers and the corresponding actions are put into the Participant Device Database (207), and an Trigger configuration process is run. During the Trigger configuration process, active Triggers are registered with the Trigger Listeners. The role of the Trigger Listener is to detect or monitor for Trigger events and at that time send a message to the Trigger Handler that the event has transpired. An example of this is the location based trigger event, in which if a location based Trigger type has been registered, the Trigger Listener polls the location of the device periodically and compares to a registered location and radius. If the current location moves within the distance to the registered location, the Trigger Listener notifies the Trigger Handler that the location based event has transpired.
  • The Trigger Handler receives a notification that the Trigger event has occurred and through the Participant Device Database looks up what action should be taken based on the scheduled Triggers. The Trigger Handler then runs the logic to give the Annunciation and take the appropriate action. An example of this is the action notifying the Participant to take a Survey triggered by the location of the Participant Device (209).
  • Collection of Survey Data.
  • The screen that displays the Survey questions is not a standard static screen that is normally displayed in Participant Devices. The Survey screen for the Mobile Application starts out as a blank screen. The typical Participant Device screen (a graphical User Interface screen) is based upon an XML file that is created before the Application is compiled and any change to the form requires a compiled Application. The concept of a graphical User Interface created by a developer during the design phase of an Application has the advantage of reduced complexity but this approach results in additional development time and cost when specifications change. With the dynamic Participant Device screen, a java function retrieves Metadata information from the Survey table in the Participant Device Database and creates the basic design of the screen (FIG. 6).
  • The background color, font and border factors are committed to the screen by reading the values taken from a Participant Device Database table. It then establishes variables as counters to track factors such as current question, current session, etc. Two buttons are displayed on the screen, named Previous and Next and activated in a prebuilt frameset as a first step in the building of the screen. These two buttons allow the Participant to navigate through the Survey (601). Basic screen setup factors such as fonts, colors and borders are set based on data read from the database (603). When this has been completed, the first question of the Survey is pulled from the database. The Survey question is then displayed (602) below the navigation buttons and the program then determines the type of question and a function appends an additional view based on the type of question. (604). There are currently five types of questions:
      • Single choice questions displayed as a list of radio buttons. For single choice question, a series of radio button controls are created based on the question options and the options in turn are added to a radio group view and this radio group is appended to the screen. Each radio button has an OnClickListener event attached to it so the radio button will respond to the participant clicking the button.
      • Multiple choice questions displayed as a list of check boxes. For multiple choice questions, a series of checkboxes are created based on the question options and each checkbox is added to a view. Each checkbox has an OnClickListener event attached to it so the checkbox will respond to the participant clicking the checkbox.
      • Questions requiring text and displayed as a text box. The text question has an EditText control appended to the screen and the EditText control has an OnClickListener event attached to it.
      • Date/time related questions displayed as a date time control. The Date/Time question has a TimePicker popup dialog control attached to it. This control sets it's date and time to the current date and time. Within the TimePicker control, an event function called onTimeSet captures the participant date/time selection.
      • Questions requiring a voice recording. The voice recording screen is created by adding a record image button and a stop recording image button. The two buttons have a OnClickListener event attached and the click events will manage a MediaRecorder control.
  • All question items require an event that captures Participant interaction so the Application will know when an item has been selected. An individual listener event is assigned to each detail that will mark all selected items. With the question on the screen, the Application waits for the Participant to click the NEXT button (602). The selected values for the question are collected and written to a table in the Participant Device Database with the exception of voice recording. Voice recordings are saved as separate files with the name of the file describing the participant and date of recording (210). The participant can also choose the Previous button provided they are past the first question (601). The function that manages the previous button will remove any answers from the previous question and then load the appropriate question. When all of the Survey questions are answered, a function will group the answers as a unique event by the use of a session identifier, capture timestamps to measure Participant performance while answering questions then write the answers to the Answers table in the Participant Device database (605).
  • Transfer Data to Server Database (211)
  • The transfer of captured Participant Device data will involve pulling data out of the Participant Device Database and writing it to a file for transport. This process will be accomplished by using SQL (Structured Query Language) to create an output file. The naming of the file will help to identify the source. The filename will contain the user id and a date timestamp and a counter to give the file a unique identifier. The file can be comma delimited, straight text of a binary file, depending on how the Server App (105) is designed to process the file. The amount and type of data to transfer will be based upon settings in the Participant Device App. Once the file has been created, the Participant Device will invoke the Server App (105) to pull the file up and process it into the Database Server (106) using the HTTP post protocol.
  • An alternative method to uploading Participant Device data as a file is to read the Participant Device database and store the data in an array as key/pair values. The data is uploaded using the HTTP post protocol as each record is read from the database.
  • Validation of Data (212)
  • Uploaded data will be reviewed by the Server App to ensure it meets any validation requirements set on the Create Data Request Form (201). Data will also be validated by use of foreign keys on the tables that ensure data integrity. Any resulting errors will be captured, stored and then displayed on an exception web page.
  • Review/Analyze Data (213)
  • With the data loaded into the Database Server, the Server App will have functions that allow the Researcher a view into the uploaded data by means of reports and scripts. A web page will be created that displays the researcher name and institution. The page will have a calendar control so the researcher can view one or more days' worth of Survey answers. A list box will contain the names of the participants that have uploaded data. The answer data will be pulled from the answer table and joined with the question data and a timestamp through an SQL query. Further reports can be constructed as needed. The SQL query will be constructed in a php script that is called by the web page using AJAX programming techniques and will require a javascript function to populate the page.
  • Alternative Methods for Creating Surveys on Participant Devices
  • A Survey may be created for a Participant Device by using programming tools provided by the Participant Device's software development kit (SDK). The User Interface is designed in an integrated development environment and compiled into the Application when desired. Logic for displaying questions and saving answers is written specifically for the previously designed User Interface. Multiple surveys will require the creation of additional User Interfaces and logic to populate and retrieve data from them. The entire Application is compiled and loaded into the Participant Device. This method is effective but requires a programmer to create the User Interface and any ensuing changes.
  • Another method of using a Survey on a Participant Device is to use a Survey based upon a web page and running that web page from a browser contained in the Participant Device. This allows for an easily modified Survey but with the disadvantage of complete failure if there is no data connection.
  • PDA devices are capable of displaying and recording Survey information but typically do not have wireless connectivity. Surveys are designed on a personal computer with a custom Application that creates a Survey file. A Survey Application is loaded onto the PDA with the Survey file. The Survey Application reads the Survey file and the answers are copied off the PDA. Because most PDA do not have wireless connectivity, the PDA must be physically attached to the personal computer to copy the Survey file and the resulting answers.

Claims (21)

What we claim is:
1-4. (canceled)
5. A survey system, comprising:
a mobile personal computing device, configured to receive a survey comprising at least one of information, one or more questions, or a request to take an action, to be presented by the device to a participant having possession of the device; and
wherein the device includes a module configured to present the survey to the participant when motion recorded from an accelerometer associated with the device meets a specified threshold of at least one of magnitude or duration.
6. The system of claim 5, wherein the device further comprises a module configured to present the survey within at least one of a specified beginning or ending date or time.
7. The system of claim 5, wherein the device further comprises a module configured to record at least one of the date or time at which the survey is presented to the participant.
8. The system of claim 5, wherein the device further comprises a module configured to record at least one of a date or time when motion recorded from the accelerometer meets the specified threshold of at least one of magnitude or duration.
9. The system of claim 5, wherein the device further comprises a module configured to capture one or more responses to the one or more questions in the survey.
10. The system of claim 9, wherein the device further comprises a module configured to record at least one of the date or time at which the participant completes a particular one of the one or more responses to the one or more questions in the survey.
11. The system of claim 5, wherein the accelerometer is included with the device.
12. The system of claim 5, wherein the accelerometer is separate from the device and in wired or wireless communication with the device.
13. A method of presenting a survey, the method comprising:
receiving, using a mobile personal computing device, a survey comprising at least one of information, one or more questions, or a request to take an action, to be presented by the device to a participant having possession of the device; and
presenting the survey to the participant when motion recorded from an accelerometer associated with the device meets a specified threshold of at least one of magnitude or duration.
14. The method of claim 13, further comprising presenting the survey within at least one of a specified beginning date or time or at least one of a specified ending date or time.
15. The method of claim 13, further comprising recording at least one of a date or time when motion recorded from the accelerometer meets the specified threshold of at least one of magnitude or duration.
16. The method of claim 13, further comprising capturing a response to the one or more questions in the survey.
17. The method of claim 13, further comprising recording at least one of a presentation date or time at which a question in the survey is presented to the participant and at least one of a completion date or time at which the participant completes a response to the presented item.
18. The method of claim 13, wherein the survey comprises requesting the participant to take an action.
19. A survey system, comprising:
a computer server, configured to provide a survey comprising at least one of information, one or more questions, or a request to take an action, to be presented on a mobile personal computing device; and
wherein the server includes a module adapted to configure the survey to be provided to the device to cause the device to present the survey when motion recorded from an accelerometer associated with the device meets a specified threshold of at least one of magnitude or duration.
20. The system of claim 19, wherein the server includes a web service module configured to create or configure the information, or one or more questions, or the request to take an action comprising the survey.
21. The system of claim 20, wherein the web service is adapted to enable creating one or more response choices for the one or more questions in the survey.
22. The system of claim 19, wherein the server includes a module that is adapted to enable a threshold for at least one of a magnitude or duration to be specified for motion of the mobile personal computing device.
23. The system of claim 19, wherein the server includes a module that is adapted to configure the device to present the survey within at least one of a specified beginning date or time and at least one of a specified ending date or time.
24. The system of claim 19, wherein the server includes a web service adapted to enable more than one participant to be selected to receive the survey from among a plurality of participants.
US14/047,614 2010-10-09 2013-10-07 System to dynamically collect and synchronize data with mobile devices Abandoned US20140039916A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US14/047,614 US20140039916A1 (en) 2010-10-09 2013-10-07 System to dynamically collect and synchronize data with mobile devices
US15/602,412 US11170876B2 (en) 2010-10-09 2017-05-23 System to dynamically collect and synchronize data with mobile devices
US17/495,357 US11915801B2 (en) 2010-10-09 2021-10-06 System to dynamically collect and synchronize data with mobile devices

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US39159110P 2010-10-09 2010-10-09
US13/269,611 US8554802B1 (en) 2010-10-09 2011-10-09 System to dynamically collect and synchronize data with mobile devices
US14/047,614 US20140039916A1 (en) 2010-10-09 2013-10-07 System to dynamically collect and synchronize data with mobile devices

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/269,611 Continuation US8554802B1 (en) 2010-10-09 2011-10-09 System to dynamically collect and synchronize data with mobile devices

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/602,412 Continuation US11170876B2 (en) 2010-10-09 2017-05-23 System to dynamically collect and synchronize data with mobile devices

Publications (1)

Publication Number Publication Date
US20140039916A1 true US20140039916A1 (en) 2014-02-06

Family

ID=49262591

Family Applications (4)

Application Number Title Priority Date Filing Date
US13/269,611 Active US8554802B1 (en) 2010-10-09 2011-10-09 System to dynamically collect and synchronize data with mobile devices
US14/047,614 Abandoned US20140039916A1 (en) 2010-10-09 2013-10-07 System to dynamically collect and synchronize data with mobile devices
US15/602,412 Active 2034-09-11 US11170876B2 (en) 2010-10-09 2017-05-23 System to dynamically collect and synchronize data with mobile devices
US17/495,357 Active US11915801B2 (en) 2010-10-09 2021-10-06 System to dynamically collect and synchronize data with mobile devices

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/269,611 Active US8554802B1 (en) 2010-10-09 2011-10-09 System to dynamically collect and synchronize data with mobile devices

Family Applications After (2)

Application Number Title Priority Date Filing Date
US15/602,412 Active 2034-09-11 US11170876B2 (en) 2010-10-09 2017-05-23 System to dynamically collect and synchronize data with mobile devices
US17/495,357 Active US11915801B2 (en) 2010-10-09 2021-10-06 System to dynamically collect and synchronize data with mobile devices

Country Status (1)

Country Link
US (4) US8554802B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140308980A1 (en) * 2011-10-31 2014-10-16 Nokia Corporation Context enabled surveys for targeted surveys
US20160259767A1 (en) * 2015-03-08 2016-09-08 Speaktoit, Inc. Annotations in software applications for invoking dialog system functions
US9509789B2 (en) 2014-06-04 2016-11-29 Grandios Technologies, Llc Managing mood data on a user device
EP3465416A4 (en) * 2016-05-24 2020-07-22 Medable Inc. Methods and systems for creating and managing a research study and deploying via mobile and web utilizing a research module
CN113506183A (en) * 2021-06-03 2021-10-15 广东省农业科学院环境园艺研究所 Agricultural landscape bird species field investigation recording client system
US11170876B2 (en) 2010-10-09 2021-11-09 MEI Research, Ltd. System to dynamically collect and synchronize data with mobile devices
US20220247805A1 (en) * 2017-09-18 2022-08-04 Inclusive Technology Solutions, LLC Authenticating-and-profiling system and method for delivering requested content

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9339691B2 (en) 2012-01-05 2016-05-17 Icon Health & Fitness, Inc. System and method for controlling an exercise device
EP2969058B1 (en) 2013-03-14 2020-05-13 Icon Health & Fitness, Inc. Strength training apparatus with flywheel and related methods
US20140330618A1 (en) * 2013-05-01 2014-11-06 Zulimar Corporation Inc. Interactive survey system
EP3974036A1 (en) 2013-12-26 2022-03-30 iFIT Inc. Magnetic resistance mechanism in a cable machine
WO2015138339A1 (en) 2014-03-10 2015-09-17 Icon Health & Fitness, Inc. Pressure sensor to quantify work
US10426989B2 (en) 2014-06-09 2019-10-01 Icon Health & Fitness, Inc. Cable system incorporated into a treadmill
WO2015195965A1 (en) 2014-06-20 2015-12-23 Icon Health & Fitness, Inc. Post workout massage device
GB201413512D0 (en) * 2014-07-30 2014-09-10 Microsoft Corp Instant messaging
GB201413581D0 (en) 2014-07-31 2014-09-17 Microsoft Corp Instant messaging
US10909312B1 (en) 2014-12-05 2021-02-02 MEI Research, Ltd. Configuration and deployment of extensible templates
US10391361B2 (en) 2015-02-27 2019-08-27 Icon Health & Fitness, Inc. Simulating real-world terrain on an exercise device
US20170032395A1 (en) * 2015-07-31 2017-02-02 PeerAspect LLC System and method for dynamically creating, updating and managing survey questions
US10493349B2 (en) 2016-03-18 2019-12-03 Icon Health & Fitness, Inc. Display on exercise device
US10272317B2 (en) 2016-03-18 2019-04-30 Icon Health & Fitness, Inc. Lighted pace feature in a treadmill
US10625137B2 (en) 2016-03-18 2020-04-21 Icon Health & Fitness, Inc. Coordinated displays in an exercise device
US10671705B2 (en) 2016-09-28 2020-06-02 Icon Health & Fitness, Inc. Customizing recipe recommendations
US11138270B2 (en) * 2017-05-12 2021-10-05 Elumus, LLC Business software platform and kiosk
US11500909B1 (en) * 2018-06-28 2022-11-15 Coupa Software Incorporated Non-structured data oriented communication with a database
US20220037004A1 (en) * 2020-07-31 2022-02-03 Hennepin Healthcare System, Inc. Healthcare worker burnout detection tool

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960411A (en) * 1997-09-12 1999-09-28 Amazon.Com, Inc. Method and system for placing a purchase order via a communications network
US20070288488A1 (en) * 2005-12-12 2007-12-13 Rohrs Christopher H Message Catalogs for Remote Modules
US20080119131A1 (en) * 2006-11-22 2008-05-22 Bindu Rama Rao System for providing interactive user interactive user interest survey to user of mobile devices
US20080256020A1 (en) * 2007-04-10 2008-10-16 Apertio Limited Variant entries in network data repositories
US20080313010A1 (en) * 2007-06-12 2008-12-18 Stephen Jepson Online survey spawning, administration and management
US20090171616A1 (en) * 2007-12-31 2009-07-02 James Zhang Motion detector module
US20100004975A1 (en) * 2008-07-03 2010-01-07 Scott White System and method for leveraging proximity data in a web-based socially-enabled knowledge networking environment
US20100005055A1 (en) * 2008-06-30 2010-01-07 International Business Machines Corporation Multi-tenancy data storage and access method and apparatus
US7791495B1 (en) * 2004-11-12 2010-09-07 Esp Systems, Llc Service personnel communication system
US20100246322A1 (en) * 2009-03-27 2010-09-30 Welker Kenneth E Determining a position of a survey receiver in a body of water
US20100250538A1 (en) * 2009-03-27 2010-09-30 Bank Of America Corporation Electronic discovery system
US20110071003A1 (en) * 1999-07-08 2011-03-24 Watterson Scott R Portable physical activity sensing system
US20110219315A1 (en) * 2010-03-05 2011-09-08 Palo Alto Research Center Incorporated System And Method For Flexibly Taking Actions In Response To Detected Activities
US20120066373A1 (en) * 2010-09-10 2012-03-15 Ochoa Claudio Julio Gabriel Personal cloud computing with session migration

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7171567B1 (en) * 1999-08-02 2007-01-30 Harris Interactive, Inc. System for protecting information over the internet
US20060107195A1 (en) * 2002-10-02 2006-05-18 Arun Ramaswamy Methods and apparatus to present survey information
US20040128183A1 (en) * 2002-12-30 2004-07-01 Challey Darren W. Methods and apparatus for facilitating creation and use of a survey
US7330842B2 (en) * 2003-07-10 2008-02-12 Inclinix, Inc. Expert system platform
US7370283B2 (en) * 2003-08-11 2008-05-06 Core Mobility, Inc. Systems and methods for populating a ticker using multiple data transmission modes
US7644423B2 (en) * 2004-09-30 2010-01-05 Microsoft Corporation System and method for generating media consumption statistics
US7342583B2 (en) * 2004-11-17 2008-03-11 Pics, Inc. Automated system and method to develop computer-administered research questionnaires using a virtual questionnaire model
US8277302B2 (en) * 2007-05-02 2012-10-02 Igt Method and apparatus for providing a bonus to a player
US20090197236A1 (en) * 2008-02-06 2009-08-06 Phillips Ii Howard William Implementing user-generated feedback system in connection with presented content
US8239889B2 (en) * 2008-03-10 2012-08-07 Hulu, LLC Method and apparatus for collecting viewer survey data and for providing compensation for same
US20090254851A1 (en) * 2008-04-08 2009-10-08 Techneos Systems Inc. Method and system for conducting a survey by using a wireless device
US8074179B2 (en) * 2008-09-15 2011-12-06 International Business Machines Corporation User interface including question verification indicators
US20100076785A1 (en) * 2008-09-25 2010-03-25 Air Products And Chemicals, Inc. Predicting rare events using principal component analysis and partial least squares
US8054180B1 (en) * 2008-12-08 2011-11-08 Amazon Technologies, Inc. Location aware reminders
US20110119130A1 (en) * 2009-07-10 2011-05-19 Agan Thomas E Methods, systems, and apparatus to manage meal planning and coupon dispensing
CA2696345C (en) * 2009-12-04 2016-12-20 3Pd Inc. Automated survey system
US20110231226A1 (en) * 2010-03-22 2011-09-22 Pinnion, Inc. System and method to perform surveys
WO2011120010A1 (en) * 2010-03-25 2011-09-29 Michael Valdiserri Medical collaboration system and method
US20120072263A1 (en) * 2010-08-17 2012-03-22 Matthew Dusig Selecting and processing offers to complete tasks, research programs, and consumer rewards programs based on location
US8554802B1 (en) 2010-10-09 2013-10-08 MEI Research, Ltd. System to dynamically collect and synchronize data with mobile devices

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960411A (en) * 1997-09-12 1999-09-28 Amazon.Com, Inc. Method and system for placing a purchase order via a communications network
US20110071003A1 (en) * 1999-07-08 2011-03-24 Watterson Scott R Portable physical activity sensing system
US7791495B1 (en) * 2004-11-12 2010-09-07 Esp Systems, Llc Service personnel communication system
US20070288488A1 (en) * 2005-12-12 2007-12-13 Rohrs Christopher H Message Catalogs for Remote Modules
US20080119131A1 (en) * 2006-11-22 2008-05-22 Bindu Rama Rao System for providing interactive user interactive user interest survey to user of mobile devices
US20080256020A1 (en) * 2007-04-10 2008-10-16 Apertio Limited Variant entries in network data repositories
US20080313010A1 (en) * 2007-06-12 2008-12-18 Stephen Jepson Online survey spawning, administration and management
US20090171616A1 (en) * 2007-12-31 2009-07-02 James Zhang Motion detector module
US20100005055A1 (en) * 2008-06-30 2010-01-07 International Business Machines Corporation Multi-tenancy data storage and access method and apparatus
US8200628B2 (en) * 2008-06-30 2012-06-12 International Business Machines Corporation Multi-tenancy data storage and access method and apparatus
US20100004975A1 (en) * 2008-07-03 2010-01-07 Scott White System and method for leveraging proximity data in a web-based socially-enabled knowledge networking environment
US20100250538A1 (en) * 2009-03-27 2010-09-30 Bank Of America Corporation Electronic discovery system
US20100246322A1 (en) * 2009-03-27 2010-09-30 Welker Kenneth E Determining a position of a survey receiver in a body of water
US20110219315A1 (en) * 2010-03-05 2011-09-08 Palo Alto Research Center Incorporated System And Method For Flexibly Taking Actions In Response To Detected Activities
US20120066373A1 (en) * 2010-09-10 2012-03-15 Ochoa Claudio Julio Gabriel Personal cloud computing with session migration

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11170876B2 (en) 2010-10-09 2021-11-09 MEI Research, Ltd. System to dynamically collect and synchronize data with mobile devices
US11915801B2 (en) 2010-10-09 2024-02-27 MEI Research, Ltd. System to dynamically collect and synchronize data with mobile devices
US20140308980A1 (en) * 2011-10-31 2014-10-16 Nokia Corporation Context enabled surveys for targeted surveys
US9509789B2 (en) 2014-06-04 2016-11-29 Grandios Technologies, Llc Managing mood data on a user device
US20160259767A1 (en) * 2015-03-08 2016-09-08 Speaktoit, Inc. Annotations in software applications for invoking dialog system functions
US11231826B2 (en) * 2015-03-08 2022-01-25 Google Llc Annotations in software applications for invoking dialog system functions
EP3465416A4 (en) * 2016-05-24 2020-07-22 Medable Inc. Methods and systems for creating and managing a research study and deploying via mobile and web utilizing a research module
US20220247805A1 (en) * 2017-09-18 2022-08-04 Inclusive Technology Solutions, LLC Authenticating-and-profiling system and method for delivering requested content
US11765216B2 (en) * 2017-09-18 2023-09-19 Inclusive Technology Solutions, LLC Authenticating-and-profiling system and method for delivering requested content
CN113506183A (en) * 2021-06-03 2021-10-15 广东省农业科学院环境园艺研究所 Agricultural landscape bird species field investigation recording client system

Also Published As

Publication number Publication date
US20170323082A1 (en) 2017-11-09
US8554802B1 (en) 2013-10-08
US11170876B2 (en) 2021-11-09
US20220223236A1 (en) 2022-07-14
US11915801B2 (en) 2024-02-27

Similar Documents

Publication Publication Date Title
US11915801B2 (en) System to dynamically collect and synchronize data with mobile devices
US10740429B2 (en) Apparatus and method for acquiring, managing, sharing, monitoring, analyzing and publishing web-based time series data
DeRenzi et al. Mobile phone tools for field‐based health care workers in low‐income countries
KR101687927B1 (en) Obtaining event reviews
US20140229199A1 (en) System and method for dynamic and customized questionnaire generation
US20150294090A1 (en) System and method for creating and distributing a healthcare research and data collection application
Marshall et al. mHealth technologies in developing countries: a feasibility assessment and a proposed framework
US20170301255A1 (en) Behavior change system
van Lier et al. Vaccine uptake determinants in The Netherlands
McIntyre et al. Media use and gender differences in negative psychological responses to a shooting on a university campus
Lwin et al. A social media mHealth solution to address the needs of dengue prevention and management in Sri Lanka
Clouse et al. Understanding data sources to measure patient retention in HIV care in sub-Saharan Africa
Russell et al. Health-related activities in the American time use survey
Ballif et al. Tracing people living with human immunodeficiency virus who are lost to follow-up at antiretroviral therapy programs in southern Africa: a sampling-based cohort study in 6 countries
Wei et al. Using technology to measure older adults’ social networks for health and well-being: A scoping review
Gigli et al. PICU provider supply and demand: A national survey
Neumann et al. Observed reactions among patients attending HIV treatment facilities to a brief video intervention on treatment initiation and adherence
Cedars et al. Use of a disease-specific mobile health application in the care of adults with congenital heart disease
Gharani et al. Geographically-explicit Ecological Momentary Assessment (GEMA) architecture and components: lessons learned from PMOMS
KR101800660B1 (en) System for connecting between people and company
Ngo-Metzger et al. Implementation of Evidence-Based Recommendations for Preventive Services in the Veterans Health Administration
Hartung Open Data Kit: Technologies for Mobile Data Collection and Deployment Experiences in Developing Regions
Coursen An ecosystems approach to human service database design
Røen Implementing videos for health promotion and community health worker training in DHIS2 Android Capture app-Integrating and field-testing video library functionality for mobile devices
Pagno Everyday visualization: discovering more about individuals

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION