WO2000060490A2 - Architecture for and method of collecting survey data in a network environment - Google Patents
Architecture for and method of collecting survey data in a network environment Download PDFInfo
- Publication number
- WO2000060490A2 WO2000060490A2 PCT/US2000/008784 US0008784W WO0060490A2 WO 2000060490 A2 WO2000060490 A2 WO 2000060490A2 US 0008784 W US0008784 W US 0008784W WO 0060490 A2 WO0060490 A2 WO 0060490A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- survey
- users
- server
- logical
- user
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
Definitions
- the present invention relates to the field of administering surveys electronically and more specifically to doing so over a computer network to users of that network.
- the Internet is becoming a major force both in society in general and in commerce specifically. It offers unprecedented access to information and, increasingly, to retailers. As use continues to increase, it also represents an enormous population of users about which very little is known.
- a survey program could be installed at each of the sites. However this would take resources away from the web site itself, in terms of processing time, storage, and network bandwidth. Few web site owners or administrators would willingly give up such resources. In addition, it would take a significant amount of time and cost to install and test thousands of survey systems. This could easily consume many weeks and tens of thousands of dollars before the first survey could be presented. Similar costs may be incurred to remove the survey program at the completion of the survey.
- the system should be able to adapt to variations in such factors as the number of visitors and the completion percentage of users presented a survey. Ideally, this adaptation would occur continuously during the administration of the survey, maintaining smooth progress towards the survey goals.
- the survey method should be scaleable from a single site to integrating the responses of thousands, or even hundreds of thousands, of sites. At the same time, it should be possible to quickly define and initiate the survey without significant impact on the web sites from which the sample population is drawn. Upon completion of the survey, it should be possible to easily disconnect the survey from those web sites. When drawing from multiple sites, the system should be able to eliminate duplicate users. Ideally, the system should allow a user to partially complete a survey during one session and return to complete it at a later time, even if connecting from a different site.
- the present invention is directed to an apparatus and method for surveying users of a network, such as the Internet, which makes use of links from the pages of independent content providers to provide the initial contact with the system.
- a set of logical servers administers surveys to a subset of the available users by selecting them randomly using an adaptive process which continuously adjusts the percentage of users selected in response to the number of users visiting the client sites and the percentage of those who are presented a survey that actually complete it.
- plural logical servers connected to a network which also serves one or more content provider sites.
- a link is embedded in a page of the provider sites which connects to a logical server.
- communications is established between the user and the survey system. The user is then presented a survey to be completed.
- the user may be mapped to a destination server by a process which results in the same user always being connected to the same destination server without regard to the client site or original server used to initially access the system.
- the original and destination servers may be roles played by a single type of logical server which can serve as either type for different connections or at different times.
- a central database server may be provided which collects, stores, and processes the survey results and makes them available to customers of the survey system.
- user profile information may be maintained by the destination server(s) which includes information about the user which allows completion of a survey at a later time, implementation of question skip patterns, and other techniques to improve the validity of the survey.
- the survey system may restrict access to only a percentage of those users visiting the client site and may adaptively adjust this response in response to factors such as the number of hits on the client sites and the percentage of users completing a survey which is presented to them.
- the advantages of such a system and method are that the population of Web users who visit a site or collection of sites can be surveyed in a statistically valid and timely manner at a minimum cost.
- a survey can be quickly defined, set up, administered, and the results obtained with little impact on the participating client sites.
- the system is self regulating in terms of sampling quotas and adjusts to load changes to maintain desired sampling levels.
- the system can be quickly reconfigured to focus on the visitors to a single site, a collection of sites in a single category, or to a diverse set of sites representative of the Web as a whole. Survey results are available shortly after completion of the survey in a variety of formats including electronically downloadable.
- FIG. 1 - provides a block diagram of the Internet.
- FIG. 2 - illustrates an abstract HTML web page.
- FIG. 3 - illustrates a hypertext link from one web page to another.
- FIG. 4 - provides a high level block diagram of the inventive system architecture.
- FIG. 5 - illustrates the creation of links to the original and destination servers.
- FIG. 6 - illustrates the sequence of messages involved in establishing a connection to the system and completing the survey.
- FIG. 7 - provides a block diagram of the major components of a logical server.
- FIG. 8 - graphically represents the selection of participating users from the available population and the reduced number who complete the survey.
- FIG. 9 - is a flowchart of the sampling adaptation process.
- FIGs. 10 A & B - are a data flow diagram illustrating the determination of new sampling parameters.
- FIGs. 11 A - K - are pseudo code of an illustrative implementation of the sampling adaptation process.
- FIG. 12 - illustrates the logical loop arrangement of servers used to collect statistics.
- FIG. 13 - illustrates the merging of template and form to create a survey questionnaire.
- Applet a special form of computer program designed to .be downloaded from a host in conjunction with a web page.
- an applet is unique in that it can be executed on any hardware platform which includes a JAVA engine. This differs significantly from normal programs which are built for a specific computer. Applets are usually restricted in the access which they are allowed to the resources of the computer on which they are executed and the type of network communications they are allowed to perform.
- Browser Software generally a computer program executing on the users local computer which is designed to navigate and display (browse) WWW documents but which includes any software program which provide an interface between a computer network and a user of that network. Examples include NCSA's Mosaic, Netscape's Navigator and Microsoft's Internet Explorer.
- Central Server - in the present invention a data storage server which collects, stores, and merges survey results.
- CGI Common Gateway Interface
- Any program can be a CGI application if it handles input and output according to the CGI standard.
- CGI applications differ from applets in that they run on a specific server and must be compatible with the hardware and operating system provided by that server.
- Client Site - in the present invention a client site is a content provider which has been modified to provide a link to the inventive system.
- the user first makes contact with the survey system through a link incorporated into one or more pages of the client site.
- Destination Server - in the present invention the server which handles the communication with the user to present and collect the survey information. After the identity of the user is established, the Original Server passes the user on to the Destination Server to handle the remainder of the transaction.
- Form - in the present invention a document which contains the survey text in a generic format. This text will be merged with a Template to create the final survey document presented to the user.
- HTML Hypertext Markup Language
- HTML Hypertext Markup Language
- Hypertext - a method of constructing documents such that there are multiple pathways through the contents that the user can select and follow, rather than only providing sequential access from beginning to end.
- the pathways are provided by hypertext links which can lead to other documents, other sections of the same document, or to alternate views.
- the link (sometimes referred to as a hyperlink) is often embedded in the text of the document and distinguished by the use of a different color, font, style, or any combination of these. This type of link is typically activated by the user selecting, or clicking on, the link. Links may also be hidden from the user and activated automatically by the browser.
- ISP Internet Service Provider
- ISP Internet Service Provider
- This may include hosting of the client's web pages and/or access to the
- IAP Internet Access Provider
- Load - generally the utilization of a resource on a computer. It may be expressed either as an absolute number, such as the number of users connected, or as a percentage, such as the ration of the portion of the disk or CPU capacity being used to that available.
- Look and Feel - a broad term encompassing most, if not all, aesthetic and some functional elements of how a computer program interacts with the user of that program. This includes, but is not limited to, color and font choices, the types of interactive controls used, and the general layout of visual elements on a screen or page.
- Original Server in the present invention, the server with which the user makes initial contact as the result of a link from the client site. The original server establishes the identity of the user and then passes the user on to the Destination Server to handle the remainder of the transaction.
- Server generally, a computer or program, in a distributed environment which provides a specialized service such as data storage, printing, or communications.
- a specialized service such as data storage, printing, or communications.
- the service is more likely to be specific to supporting the Internet such as a Web server that provides WWW pages to a browser program or a Domain Name Server (DNS) that translates logical network names into numeric addresses.
- DNS Domain Name Server
- Template - in the present invention a document which captures the appearance of the pages on a client site and which includes one or more tokens which will be replaced by the text of the survey.
- Transaction Monitor - in the present invention, an application running on a server which gathers the statistics used by the adaptive sampling algorithms.
- User the human user of a computer or software program.
- the person who is using a browser to access the web is that subset of Internet users who are interacting with the inventive system in some way.
- the same term is often used to refer to the browser software being used by the human user. Often, the distinction between the user and the user's browser is not important.
- URL Uniform Resource Locator
- URLs are commonly embedded in HTML web pages to specify the target of a hypertext link.
- a URL consists of multiple fields containing information about the target of the link. This information includes the access method, or format, of the target; the address of the server on which the target resides; and the path to the target in the server's file system. Other information may be included as necessary.
- Web Page - a logical page of HTML text which forms the basic medium of the World
- the page can also include images, sounds, embedded programs (such as applets), and other data types.
- WWW World Wide Web
- a particular protocol used for the Internet and intranets which specifies a graphical, hypertext format which provides a point and click interface to distributed documents via browser software.
- that portion of the Internet which supports the WWW protocol is loosely referred to as the "Web.”
- FIG. 1 An abstract representation of the Internet architecture is shown in FIG. 1. While the Internet itself, 500, is often thought of, and even described as a single "backbone" to which all of the systems are connected, this is incorrect.
- the Internet is a computer network which, by design, has no centralized control.
- Access to the Web is typically through the use of browser software.
- This is a computer program which resides on the Web user's local computer and which interprets and presents information received from the Web. It understands the relevant protocols and assists the user in navigating the Web. It is also instrumental in directing requests to the various servers (such as search engines) and displaying the results.
- 502 and 504 may be connected to the Internet via a dedicated connection, 502, more common in the workplace, or may connect as-needed via a dial-up connection, 504, through an ISP, 506.
- ISP ISP
- these connections are equivalent, differing only in speed or bandwidth and will generally be referred to throughout the specification as a browser, 502.
- Any device which provides network browsing capability is contemplated including laptops, personal information managers, and even telephones.
- servers are accessible via the Web.
- WWW servers which provide web pages conforming to the Web protocols.
- content providers are servers which provide information or data (the “content") which is of interest to some or all of the Web users.
- Other servers include search engines, which help search for content providers of interest, and providers of various support services, such as dynamic name translation, needed by the infrastructure of the Internet itself.
- FIG. 2 provides an illustration of a generic web page as displayed by a browser.
- the browser will typically present the web page information, 511, in a large window, and will provide it's own information in a separate area, 510.
- the browsers information area often includes a title bar, 514, a set of menus, 516, and a set of buttons, 518.
- the menus and buttons provide access to the commands supported by the browser.
- a status line, 520 is also typically provided for the display of messages to the user.
- Within the web page area a variety of material may be presented to the user. This includes text, 522, image, 524, and graphical, 526, information. The types of information which can be presented are expanding rapidly and include sound and full motion video.
- certain segments of the text, 530 may be designated as hypertext links.
- the photos, graphics, and embedded controls, such as buttons, 532 can also be used as links.
- the hypertext links are one of the chief mechanisms used in navigating the Web.
- Web pages are almost universally written in HTML which provides for both formatting of the page content and the specification of links to other pages. From within a browser, the user can easily elect to follow any link presented in the page or can choose to continue with the present page. This process is shown in FIG. 3. If a link, 536, from the page currently being displayed, 534, is followed, the browser, 502, then loads a new page, 538, which may be on the same server, 540, as the present page or may be on another server, 542, anywhere on the Web. Following links, a user can easily retrieve pages from dozens of servers scattered around the globe in just a matter of minutes. Web pages may also contain links which are automatically activated by the browser when a page is loaded.
- HTML pages are a variety of scripts and programs which provide more tailored and powerful services. While HTML is a very flexible language for the presentation of documents, it is limited in the complexity and power of the tasks it can perform. When a more involved manipulation is required, such as retrieving data from a database or generating moving graphics, a program will be activated by the browser, often as a result of a link. These programs may be interpreted scripts executed by an extension to the browser, small applications, often called applets, downloaded to the user's computer and then executed, or larger programs executed on remote server which then supplies its results to the browser for display.
- the preferred form of the present invention is preferably used.
- the present system surveys users of the Internet, adapts to the use patterns of those users, merges the results, and presents statistically reliable information for use by its clients.
- the general architecture of the present invention is shown in FIG. 4.
- the major components of the survey system are the original, 100, and destination, 102, servers and the central server, 104.
- a lesser role is served by the client sites, 106, which are modified to link to the system.
- the client sites, 106 are generally content providers as they normally exist in the Web.
- One or more pages on each of the relevant client sites has been modified with a link to an original server, 100. This link may be either a visible link, which the user elects to follow, or may be a hidden link activated by the browser. For the purposes of the present invention, either type will work.
- the sole purpose of the link is to establish the initial communications between the user and a pre-selected original server.
- the selection of server is made by the address specified in the link.
- each of these is a logical server.
- One or more logical servers may be hosted by a single physical computer. As the load on the servers varies, the logical servers can be moved between computers. This will be entirely transparent to the users, and to the system itself, as it deals with the logical entities. This flexibility also allows the system to adapt to hardware failures by moving the servers off of the faulty computer.
- FIG. 5 provides a graphical depiction of the connections and FIG. 6 captures the sequence of messages which occur.
- the user, 140 in FIG. 5 first requests a page from a client site, message 110 in FIG. 6, and is provided with that page, message 112. The user then clicks on the link to the survey system
- an applet could be associated with the page.
- the applet could contain one or more links or could retrieve link information such as from a logical server.
- the applet would then select one of the links and activate it, establishing the connection. From the users perspective, this approach would be equivalent to the selection and use of the single embedded link, and likely indistinguishable.
- the use of the applet provides more flexibility by making available more decision making capability prior to establishing the link to the system. This enables such capability as randomizing the selection of the original server; connecting directly to the destination server as described below; or merely storing the current set of links in a centralized location to remove the dependency of the client sites on a specific set of link addresses.
- the first page presented by the original server, message 116 will ask the user for identifying information such as name, age, and birth date. Additional, or alternative, fields could be used as necessary to uniquely identify each user. Clearly social security numbers or drivers license numbers could be used where appropriate.
- Each of the original servers is provided with a copy of an identical algorithm which maps a user to a single specific destination server, using the data supplied by the user, message 118, in response to the first page. In the preferred embodiment, this is implemented as a hashing algorithm where each resultant hash code matches the address of a destination server. This address is provided to the user in a second page, message 120, which also contains privacy notices, links to survey rules, and such other "housekeeping" information as may be desirable to present to the user.
- message 122 links the user, connection 148 FIG. 5, to the selected destination server, 150, and starts the actual survey process.
- the original server could cause a page to be transferred from the destination server to the user's browser without first providing the second, housekeeping page.
- the mapping algorithm could be implemented in either an applet which executes locally on the users computer, or in a CGI, or other, program executing on the original server. Either of these approaches would also eliminate the second page. These approaches reduce the number of preliminary pages seen by the user, but incur a cost in requiring multiple implementation of the mapping algorithm, one for each type of computer to be supported.
- the use of Java as the implementation language could alleviate some or all of these problems.
- the core component of all of these approaches is that, based on the user provided information, each user is always mapped to the same, specific destination server.
- a destination server, 150 that server has access to local storage, 152, and can retrieve, messages 124 and 126 in FIG. 6, containing information about the user including a history of previous responses.
- the destination server can provide survey pages, message 128, which are tailored to the specific user. The simplest application of this is to begin the survey at the point where the user previously left off. This option is available even if the user connects from a different local computer or through a different client site.
- the destination server stores the survey results and updates the user's profile, message 132. If the user responds to the first page and then declines to complete the survey when presented the second page, the database may be updated by a message from the destination server to the database, in place of message 124, and the sequence will terminate.
- mapping users to destination servers also decreases the storage needs for the servers. Without this approach, every server would need to have a duplicate copy of every user's information, or there would have to be a single centralized database which all servers would access for the user information. Either approach would incur a severe performance penalty. With the present architecture, a user's information need only be stored in a single location and the load can be adjusted by varying both the number of logical servers and the number of physical computers on which they are hosted.
- a certain amount of growth can be handled by increasing the number of computers being used and distributing the logical servers across these computers. This will work until each server is hosted on its own computer. Up to this point, these changes can be made with little impact on the system as it continues to run. After this point, if the load continues to increase, the number of logical servers will have to be increased. This will require an increase in the number of "bins" used by the hashing algorithm and distribution of a new hashing algorithm to the original servers. The user data will also have to be re-distributed across the new set of logical servers to match the mapping of the new algorithm. This would require a short down time for the system as the changes are implemented.
- FIG. 5 also illustrates the connection of a second user, 154, to the system.
- server 150 which was the destination server for the first user, acts as the original server in response to the initial connection, 156, and then directs the user to another server, 160, as the destination server.
- server 150 which was the destination server for the first user, acts as the original server in response to the initial connection, 156, and then directs the user to another server, 160, as the destination server. Note that while different users may be mapped to different servers, as illustrated, the same user will always be connected to the same destination server, as discussed above.
- the central server, 104 in FIG. 4, serves as the central database for the survey system.
- the database provides a central location for compiling survey responses and generating results. Any of the analysis techniques or tools well known in the art can be applied to the responses once they are gathered together in the database.
- the results can then be supplied to the survey customer in any desired form: printed hardcopy, magnetic media, electronic download, etc.
- a variety of data can be supplied, from the raw responses to the final statistical analysis. Because of the computerized, networked architecture of the system, these responses can be made available almost immediately upon completion of the survey. Alternatively, intermediate results can also be provided as they are compiled by the system.
- the central server is a different logical entity than the other servers in the system. If desired, it can be co-located on a physical computer which also hosts one or more of the original, 100, or destination, 102, servers. In the preferred embodiment, the central server is hosted on a separate physical server. This provides an additional level of security because it makes it more difficult to locate, and allows flexibility in terms of shutting down the central server or disconnecting it from the network, whether for maintenance or security reasons. Performance can also be an issue where significant analysis of the results is performed on the central server.
- the survey system is connected to a large number of client sites, but remains largely independent of them. All of the processing associated with gathering and compiling survey data is performed on the original and destination servers and on the central server.
- the servers also store all of the forms, survey results, and user profiles.
- a first advantage of this approach is that the system has very little impact on the client sites. Only the inclusion of a link on the client sites web page is required. This makes the inventive survey system more attractive to the client sites because they will incur no performance or storage cost by allowing the connection.
- a second advantage is that the servers remain completely under the control of the owner of the survey system.
- the various servers are not encrypted.
- the central server would be encrypted to allow access only by the owner and the destination servers would implement an encryption scheme which would allow access only by those users who access the systems through the normal login path via the original server. This would preferably be implemented via a two key encryption system in which the users key is derived from the hash key used in the user to destination server mapping as described above.
- this implementation enables literally unlimited client sites. Because the initial link is created and stored on the client site, the number of such sites has no impact on the survey system itself. The more critical factor is the number, or more accurately, the frequency with which the links are activated and the surveys presented.
- the survey system is capable of handling millions of client sites which experience only light traffic as easily as it handles hundreds of sites with very heavy traffic. This range of application greatly increases the utility of the system.
- the high level architecture of a logical server is presented in FIG. 7.
- the majority of the processing is performed by the transaction monitor, 136, which receives all incoming messages. This includes satisfying requests for survey pages, storing survey results when the user completes a survey, and compiling the local site statistics, 138, as a survey progresses.
- the transaction monitor also handles the compilation of the system wide statistics and the adaptive processing as described below.
- the user's browser, 244 is Java enabled, it communicates directly with the transaction monitor via the Internet, 210. If the browser, 242, does not handle Java, the use of a local applet is not available. In this case, a CGI script, 134, or program will execute on the server as a front end to the transaction monitor to handle the details of communication with the browser.
- the transaction monitor need only support a single interface.
- the transaction monitor maintains the user data, 140, which includes identifying information as well as historical information, such as which surveys, or portions of surveys, the user has responded to. This allows the user to complete a survey at a later time and enables such survey techniques as question skip patterns.
- the survey data, 142 includes both the forms and templates used to present the survey and the survey responses.
- each of the logical servers operates with a fairly high degree of autonomy while presenting surveys.
- each server is configured with a set of control parameters.
- each logical server updates its local statistics and the logical servers periodically communicate to update global statistics.
- the control parameters, local statistics and global statistics are then used by an adaptive selection algorithm, replicated on each server, to actively control the sampling process in order to achieve the goals of the survey.
- the efforts of the logical servers combine to present a single survey to a distributed user population in a statistically valid manner.
- the overall goal is to randomly select from among the available user population a subset to whom surveys will be presented and to then collect and compile the survey results from those who complete the survey. This process is presented graphically in FIG. 8.
- a hit is essentially one occurrence of a user requesting a page from a server.
- the hits of concern to the survey system, 144 are those requests for pages which have had a link to the survey system embedded in them.
- a set of code associated with the link executes to determine whether to present a survey to this user. The details of this process are described below.
- the completed surveys, 148 are collected and compiled to generate the survey results. Note that this process is not self selecting. The visitors to a client site can not participate in the survey unless invited to do so by the system. This helps avoid the bias associated with convenience sampling and redundant user entries, for example.
- the decision process as to which user hits to select for survey participation is handled by the original servers.
- a variety of appropriate techniques are well known in the field of statistical surveys.
- the system identifies a fixed ratio of initial hits to completed surveys and then attempts to accomplish that goal. Two simple approaches are available for reaching that goal. Assume that N out of 100 hits will need to be presented a survey in order to meet the completion percentage. The first approach is to present a survey to every Nth hit reported to an original server (several client sites may report hits to the same original server). A second approach is to use a probabilistic or pseudo random process which selects N/100 of the hits with a reasonably random distribution over the visits.
- the sampling process periodically adjusts the parameters of the user selection decision process in an attempt to keep the number of survey completions at or near the goal for the survey. While each original server may use a different set of tailored parameters, the same algorithm is used by each server. One purpose of the use of different parameter by each server is to allow a server which handles smaller sites to sample a larger percentage of the users while a server handling a very large site samples a smaller percentage. This would keep the absolute numbers in more equal proportion.
- the primary output of the adaptation algorithm is the number of surveys to be presented during the next period. In generating this value, the algorithm also updates predictions for the number of hits expected during the period and the probability that the presented surveys will be completed.
- the algorithm is depicted graphically in FIGs. 9 and 10 and presented as pseudo-code in FIGs. 11 A & B.
- the flow chart of FIG. 9 provides a high level view of the sequence of events.
- the processing for each iteration occurs at or near the end of the period.
- Two sets of data are gathered independently.
- the branch, 162-166 waits for time (i * ⁇ t - Tj) where (i * ⁇ t) represent the end of period "i" and T ; represents the mean time to complete a survey.
- system wide (global) statistics are gathered on the number of hits occurring during the latest period and the number surveys completed during the period. Since any survey started after this point would not (on average) be completed within the period, it can be ignored.
- Branch, 168-170 waits for (i * ⁇ t), the actual end of the period, and gathers the number of actual completions system wide.
- these collections are asynchronous and can be carried on concurrently.
- the process synchronizes, 172, and begins the adaptation calculations based on these statistics.
- the number of Survey desired to be collected by the end of the upcoming (next) interval is determined, 174.
- the number of desired collections during the next period can be determined, 176.
- the estimated probability of completion for the next period, 178 is combined with the desired number of completions to calculate the number of surveys that will have to be presented during the next period to achieve the goal for completions, 180. This value is provided to the survey processing portion of the system, 182, and the next period starts. This process continues iteratively until the desired number of collections have been made, 184.
- This adaptive process periodically adjusts the survey system parameters, primarily, to allow for variations in the number of hits on the client pages, and the probability of completion of those surveys presented. In this way the system actively works to achieve its goal in the estimated amount of time and smoothes out variations in collection performance to maintain an even distribution across the duration of the survey.
- Other adaptive processes considering other parameters are clearly possible.
- any form of adaptation used in conventional surveys can be used in a distributed environment.
- the frequency of the local adjustments can be higher that that of the collection of global statistics. For example: if the global statistics are compiled every 30 minutes, the servers can adjust their collection parameters at 15 minute or 10 minute intervals if desired.
- the above adaptation process makes use of both global and local statistics in adapting to changes.
- FIG. 10a the steps of the adaptation process are illustrated starting at the end of the period and assuming that all system wide statistics have been gathered and stored. Details of this process are discussed below.
- the number of hits to be experienced by the system during the next period are calculated, 188, by retrieving the number of hits during the last period from the stored global statistics, 186, and applying a predictive algorithm.
- This result is combined with the cumulative total number of hits received by the end of the last period to estimate the cumulative hits by the end of the next period, 190.
- This result is then multiplied by the constant completion ratio (determined at the start of the survey), available from the survey control parameters, 192, to calculate the desired number of completions by the end of the next period, 194.
- Subtracting out the number of actual completions achieved by the end of the last period provides the number of completions needed during the next period, 196, in order to achieve the goal for the end of the period.
- This value is then divided among the available servers to determine the number of completions each servers must achieve, 198.
- this series of calculations utilizes global data but is separately calculate by each server, using a common algorithm. In an alternative embodiment this calculation could be performed once, at least to the point of calculating the system wide desired calculations, and the result distributed.
- This portion of the process starts with the number of desired completions which has been allocated to a particular server and utilizes local statistics and control parameters to develop the parameters for the presentation of surveys during the next period.
- a calculation of a local probability of completion, 204 generates a value which is combined with the allocated number of desired completions to generate the number of surveys which must be presented for this server to achieve its goal, 206. This value is used during the next period to determine to which users surveys are presented, 208.
- local statistics on the number of hits, presented surveys, and completions are maintained in local storage, 200. Note that this process has been presented as two separate logical steps for illustration purposes only. The process can, and preferably is, implemented as a single combined process.
- the process of gathering the system wide statistics is illustrated.
- the original servers, 210-216 are logically organized as a ring.
- a designated one of the servers, 210 retrieves its local use statistics and sends them to the next server, 212, in the ring.
- This server adds in its local statistics and forwards the message to the next server, 214.
- This process continues until the last server in the ring, 216, forwards the message to the first server, 210.
- the message contains the totals for all statistics being gathered.
- the message is then forwarded again, following the same path, to allow each server to make a copy of the total for its own use in its adaptation calculations.
- the number of hits, h, and surveys presented, s are compiled with one pair of message circuits and the number of collections, c, is compiled with a second independent sequence.
- other statistics can be compiled in the same manner and using any desired number of message circuit pairs.
- an error occurs, such as the failure of a host computer, interrupting the transmission of the statistics, any of several well known recovery techniques can be used, including a time-out followed by retransmission, skipping a server, or reversing the direction of flow.
- this ring arrangement is only a logical arrangement of the servers and has no impact on their physical connections or on any other logical arrangement.
- a different type of logical arrangement could be used.
- One such anticipated alternative is a binary tree structure which would provide the well known O(log 2 (n)) performance improvement over the O(n) performance of the ring structure described above.
- the original servers are not informed of survey completion. This information is maintained on the destination servers. The collection of system side statistics then incorporates both original and destination servers to generate a complete set of statistics.
- the JAVA code in FIG. 11 is presented as pseudo code to illustrate a particular implementation of segments of the adaptive process. Other, more complex, implementations are anticipated. As an example, the estimation routines illustrated utilize a simple weighted average approach. The use of more accurate approaches, such least squares fit, will be used in alternative embodiments.
- the survey forms which are used to interface with the users will have a look and feel similar to that of the pages from which they entered the system.
- the same user, entering the system from two different client sites, would see the same content, but the presentation style would differ.
- the templates, 218, are essentially web pages created in the style of the client site. They may use colors, icons, background images, etc. which are available from the client site. Embedded in the template are one or more tokens which identify the location at which to insert survey text. In the preferred embodiment, these templates are created manually. In an alternative embodiment, they could be created automatically by scanning the client web page and extracting design elements.
- the forms, 220 contain the text which comprises the survey itself.
- the text is separated into one or more sections which correspond to the tokens embedded in the templates.
- a script, 222, or program running on the server retrieves the template corresponding to the client site associated with the requesting user, and the form appropriate to the user (dependent on the survey to which responding and historical data such as how much of the survey has been completed) and merges them to create the survey page, 224, which will be presented to the user.
- the merge process includes the steps of replacing the tokens embedded in the template with the corresponding sections of text from the form. In this manner, a single set of survey forms can be presented to the users of many client sites, in a familiar style. Having only a single set of forms significantly reduces the overhead of creating and maintaining the forms. Utilizing the style of the client site makes the survey look more integrated and more acceptable to both the user and the owner of the client site.
- the forms are created by the administrators of the survey system, based on the requirements of the person, or organization, requesting the survey (the survey customer).
- the survey customer could create their own forms and templates, possibly with the assistance of a menu driven interface.
- the customer could create and update the forms as desired. This ability would allow them to adapt the survey to the responses being received, changing information needs, or other factors important to them. With a knowledgeable customer, there would be no need for human intervention by the survey system administrator.
- survey results could be compiled automatically, or on request of the survey customer, and provided to the customer directly from the survey system.
- a customer could develop the survey, supply the forms and templates to the survey system, provide the needed configuration values (such as sample size desired, skip patterns to use, number and type of sites to survey, etc.), activate the survey collection process, and retrieve the survey results without involving a human from the survey system administrator.
- This approach would provide significant benefits in terms of turn-around time and responsiveness for the customers.
- the design of the inventive survey system is such that it offers several advantages for collecting survey data. As discussed above, rapid turn-around of results is possible.
- the architecture is scaleable from a single host with a single logical server to a large number of hosts and logical servers. This allows the system to be adapted to surveying the users of a single site or the users of thousands of sites.
- the system can be configured with link only from that site, with the option of differentiating different pages or entry points into the web site.
- the results will consist solely of user responses originating from that site.
- the system can also be configured to sample a large number of sites, all related to a particular content area (such as snow sports, or gardening) for audience research of that content area with a diverse sample population.
- the system can, of course, also connect to diverse types of web sites to collect information on the general Web population. Additional capability can be enabled by recording with each response the user and the client site through which they entered. This would allow post processing of the responses to extract data specific to a single site or content area.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
L'invention concerne un système de sondage fondé sur un réseau qui utilise des liens de sites clients vers un ensemble de serveurs logiques pour établir des communications entre des utilisateurs desdits sites et le système de sondage. De préférence, le système choisit un pourcentage d'utilisateurs disponibles pour participer au sondage au moyen d'un processus de sélection adaptatif qui s'adapte à la charge sur le système. De préférence, les utilisateurs sont cartographiés de manière déterminée vers un seul ensemble des serveurs disponibles, ce qui permet de mémoriser l'information de profil d'utilisateur sur un seul serveur. On peut utiliser ladite information pour permettre à un utilisateur de poursuivre un sondage ultérieurement ou pour mettre en oeuvre des instructions de "passez à question" ou d'autres techniques de sondage classiques. Dans un autre mode de réalisation, une base de données centrale recueille, mémorise et traite les résultats de sondage.A network-based polling system that uses links from client sites to a set of logical servers to establish communications between users of said sites and the polling system is provided. Preferably, the system chooses a percentage of available users to participate in the survey through an adaptive selection process that adapts to the load on the system. Preferably, the users are determinedly mapped to a single set of available servers, which makes it possible to store the user profile information on a single server. This information can be used to allow a user to continue a survey later or to implement "go to question" instructions or other conventional survey techniques. In another embodiment, a central database collects, stores and processes the survey results.
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AU40645/00A AU4064500A (en) | 1999-04-03 | 2000-04-03 | Architecture for and method of collecting survey data in a network environment |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US28562899A | 1999-04-03 | 1999-04-03 | |
| US09/285,628 | 1999-04-03 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2000060490A2 true WO2000060490A2 (en) | 2000-10-12 |
| WO2000060490A8 WO2000060490A8 (en) | 2002-06-13 |
Family
ID=23095057
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2000/008784 Ceased WO2000060490A2 (en) | 1999-04-03 | 2000-04-03 | Architecture for and method of collecting survey data in a network environment |
Country Status (2)
| Country | Link |
|---|---|
| AU (1) | AU4064500A (en) |
| WO (1) | WO2000060490A2 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001046891A1 (en) * | 1999-12-23 | 2001-06-28 | Intellistrategies, Inc. | Automated generation of survey questionnaire by prior response analysis |
| GB2375628A (en) * | 2000-10-31 | 2002-11-20 | Robert John Might | A computer implemented method of actioning surveys directed to given categories of users |
| CN114300074A (en) * | 2022-01-04 | 2022-04-08 | 北京声智科技有限公司 | Method and device for generating flow questionnaire link, electronic equipment and storage medium |
-
2000
- 2000-04-03 WO PCT/US2000/008784 patent/WO2000060490A2/en not_active Ceased
- 2000-04-03 AU AU40645/00A patent/AU4064500A/en not_active Abandoned
Non-Patent Citations (1)
| Title |
|---|
| No Search * |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001046891A1 (en) * | 1999-12-23 | 2001-06-28 | Intellistrategies, Inc. | Automated generation of survey questionnaire by prior response analysis |
| GB2375628A (en) * | 2000-10-31 | 2002-11-20 | Robert John Might | A computer implemented method of actioning surveys directed to given categories of users |
| US6766319B1 (en) | 2000-10-31 | 2004-07-20 | Robert J. Might | Method and apparatus for gathering and evaluating information |
| AU784428B2 (en) * | 2000-10-31 | 2006-03-30 | Robert J. Might | Method and apparatus for gathering and evaluating information |
| US7383251B2 (en) | 2000-10-31 | 2008-06-03 | Might Robert J | Method and apparatus for gathering and evaluating information |
| CN114300074A (en) * | 2022-01-04 | 2022-04-08 | 北京声智科技有限公司 | Method and device for generating flow questionnaire link, electronic equipment and storage medium |
Also Published As
| Publication number | Publication date |
|---|---|
| AU4064500A (en) | 2000-10-23 |
| WO2000060490A8 (en) | 2002-06-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7856453B2 (en) | Method and apparatus for tracking functional states of a web-site and reporting results to web developers | |
| US8621034B1 (en) | Indexing, sorting, and categorizing application media packages | |
| US7552190B1 (en) | System and method for automated electronic notification and transaction execution | |
| AU747269B2 (en) | Method and apparatus to determine user identity and limit access to a communications network | |
| US6523022B1 (en) | Method and apparatus for selectively augmenting retrieved information from a network resource | |
| US20010037359A1 (en) | System and method for a server-side browser including markup language graphical user interface, dynamic markup language rewriter engine and profile engine | |
| US7562387B2 (en) | Method and apparatus for selective disabling of tracking of click stream data | |
| US20040068460A1 (en) | Method and system for achieving an ordinal position in a list of search results returned by a bid-for-position search engine | |
| US20010037242A1 (en) | Method and system for delivering content and direct marketing over a network | |
| US20060230343A1 (en) | Method and apparatus for detecting changes in websites and reporting results to web developers for navigation template repair purposes | |
| EP1030247A2 (en) | System and method for sharing bookmark information | |
| JP2004133886A (en) | Use of an extensible markup language in systems and methods that affect locations on search result lists generated by a computer network search engine | |
| WO2001020481A2 (en) | Method and system for web user profiling and selective content delivery | |
| US20020078175A1 (en) | Scorecard wizard | |
| KR100353157B1 (en) | Two-way network based advertisement method and system using cyber pet | |
| CA2538712A1 (en) | Rich media personal selling system | |
| WO2000060490A2 (en) | Architecture for and method of collecting survey data in a network environment | |
| US20030014411A1 (en) | System and method for one-touch e-commerce | |
| EP1082673A1 (en) | Method for providing internet service with advertising | |
| JP2002041755A (en) | Questionnairing method using network system | |
| JPH11161603A (en) | Device and method of repeating data, information terminal device and method thereof, data communication system, and record medium | |
| EP1069514B1 (en) | System and method for automated access to personal information | |
| JP2001147892A (en) | Device and method for automated aggregation, device and method for delivering electronic personal information or data and transaction including electronic personal information or data | |
| JP2001142905A (en) | System and method for automatically accessing personal information | |
| JP2001147893A (en) | Device and method for automated aggregation, device and method for delivering electronic personal information or data and transaction including electronic personal information or data |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
| REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
| AK | Designated states |
Kind code of ref document: C1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: C1 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
| D17 | Declaration under article 17(2)a | ||
| 122 | Ep: pct application non-entry in european phase | ||
| NENP | Non-entry into the national phase in: |
Ref country code: JP |