WO2005081146A2 - Voter registration and election management - Google Patents

Voter registration and election management Download PDF

Info

Publication number
WO2005081146A2
WO2005081146A2 PCT/EP2005/001472 EP2005001472W WO2005081146A2 WO 2005081146 A2 WO2005081146 A2 WO 2005081146A2 EP 2005001472 W EP2005001472 W EP 2005001472W WO 2005081146 A2 WO2005081146 A2 WO 2005081146A2
Authority
WO
WIPO (PCT)
Prior art keywords
governmental
data
user
election
information
Prior art date
Application number
PCT/EP2005/001472
Other languages
French (fr)
Inventor
Tracy N. Lewin
Original Assignee
Accenture Global Services Gmbh
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 Accenture Global Services Gmbh filed Critical Accenture Global Services Gmbh
Priority to AU2005215685A priority Critical patent/AU2005215685B2/en
Priority to CA002555471A priority patent/CA2555471A1/en
Publication of WO2005081146A2 publication Critical patent/WO2005081146A2/en

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C13/00Voting apparatus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • the invention provides a method and apparatus, including a computer program product, implementing techniques for developing and managing a s nationwide voter registration and election management system that is configurable to each state's laws, regulations and/or policies, as well as to those of individual constituent county, municipal, and/or precinct units.
  • the system may include a configurable user interface, intelligent workflow management, enhanced navigation, dynamic reporting capabilities, and instant data view and easy data manipulation.
  • the system provides s nationwide standardization of election data with local flexibility.
  • the invention features a system for administering election-related information.
  • the system includes a data storage system for storing information associated with voters in a first governmental unit and for storing election-related configuration data each associated with particular ones of a plurality of constituent governmental units within the first governmental unit; and a plurality of interface components each associated with a different one of the constituent governmental units, wherein each of the interface components provides access to the stored information according to election-related configuration data associated with that governmental unit.
  • Implementations may include one or more of the following.
  • the first governmental unit includes a state within a nation, and the constituent governmental units include counties within the state.
  • the election-related configuration data includes election-related rules.
  • the election-related rules include computer instructions for implementing the rules within the data storage system.
  • the governmental unit and the constituent governmental units are arranged in a tree structure of nodes. At least one constituent governmental unit inherits one or more election-related rules from its parent node.
  • the interface components are distributed separate from the data storage system.
  • the interface components are centrally hosted with the data storage system.
  • Each of the interface components includes a rules processing engine for processing election-related rules for the governmental unit with which the interface component is associated.
  • the system includes three or more tiers, including a user tier, a business tier, and a data tier.
  • Each of the interface components is configured to maintain voter registration information in the data storage system for voters associated with the governmental unit with which the interface component is associated.
  • the system includes an administration system for processing information for voters associated with multiple of the constituent governmental units. Processing the information for the voters includes identifying conflicts in the stored information associated with different of the constituent governmental units. Processing the information for the voters includes transferring stored information associated with one constituent governmental unit to be associated with another of the constituent governmental units.
  • Processing the information for the voters includes transferring stored information associated with a governmental unit to be associated with constituent units of that governmental unit.
  • the invention features a method for administering election- related information.
  • the method includes storing election-related information and providing a plurality of interfaces to the election-related information.
  • the election- related information includes information associated with voters in a first governmental unit, and election-related configuration data each associated with particular ones of a plurality of constituent governmental units within the first governmental unit. Each interface is associated with a different one of the constituent governmental units. Implementations may include one or more of the following.
  • the method further includes accessing the information associated with the voters in the first governmental unit according to the election-related configuration data associated with the governmental units.
  • the method further includes receiving a request from a user to access a portion of the information associated with the voters in the first governmental unit; determining, according to the election-related configuration data, whether the user is permitted to access the user-requested portion of the information, and if so, providing the user- requested portion of the information to an interface associated with the user.
  • the user- requested portion of the information is provided to the interface in one or more segments, each segment comprising a distinct subset of the user-requested portion of the information.
  • the invention features a system that includes a client, a server, and a collection of data, and a method for providing a multi-tier application that provides data from the collection of data in a plurality of segments.
  • the method includes at the client, receiving a request from a user to access a portion of the collection of data, processing the user request to form a plurality of page requests, and sending each page request to the server; and at the server, querying the collection of data in response to each page request to retrieve a segment of the user-requested portion of the collection of data, and providing each retrieved segment to the client, each retrieved segment comprising a distinct subset of the user-requested portion of the collection of data.
  • Each page request can sent to the server on an as-needed basis.
  • FIG. 1 shows a block diagram of a communication system. DETAILED DESCRIPTION Referring to FIG.
  • a system 100 is used by multiple users 102, including respective first, second and third users 102a, 102b and 102c, at client workstations 104, including corresponding first, second and third workstations 104a, 104b and 104c.
  • Each user 102 can access a collection of data 106 through an application server 108 across a network 110 using communication links 112a, 112b, 112c and/or 112d.
  • each of the users 102 can modify some or all of the data included in the collection of data 106.
  • the system 100 includes a three-tier voter registration and election management application for administering election-related information.
  • the application includes multiple distinct logical components that interact with one another.
  • Examples of such logical components include a data storage component for storing election-related information and one or more interface components for providing access to the election-related information.
  • the data storage component and the interface component(s) are physically and/or software architecturally distributed over the three tiers of the application, namely a user tier, a business tier, and a data tier.
  • the user tier presents, on the workstations 104, a user interface 114 for the application, displays data and collects user input.
  • the user tier also sends requests for data to the business tier, which resides at the application server 108.
  • the business tier has business objects 116 and a rule engine 118 that implement the business rules 120 (e.g., election-related configuration data) for the application.
  • This middle tier receives requests for data from the user tier, uses the business objects 116 to evaluate the data against the business rules 120, and passes them on to the data tier, which includes the collection of data 106. The business tier then receives data from the data tier and passes this back to the user tier. The data tier communicates directly with the collection of data 106 and passes data between the data store and the business tier.
  • the tiers of the application are depicted as residing on different machines, other implementations may be used, e.g., the data storage component including the business rules 120 (data tier) and the collection of data 106 (business tier) physically reside on one machine, while an interface component including the user interface 114 (user tier) and business objects 116 (business tier) physically resides on another machine.
  • the type of data included in the collection of data 106 is a voter database for a state.
  • the voter database includes data for all the registered voters in the state, for example, by including a voter record for each registered voter in the state.
  • Each voter record includes the name of a registered voter, and generally includes further information, such as personal (e.g., place of birth and social security number) and demographic (e.g., age, sex and race) information for the registered voter, voter status (e.g., party affiliation) and voter activity (e.g., date registered and date last voted).
  • personal e.g., place of birth and social security number
  • demographic e.g., age, sex and race
  • voter activity e.g., date registered and date last voted.
  • the collection of data 106 can be structured in a number of alternative ways, such as using a database system that may include a database management system, a relational database, a distributed database, or other similar structure.
  • a request for data first goes to a web server 122 residing on the user tier.
  • the web server 122 directs the request to the application server 108 on the business tier to be processed.
  • the application server 108 may query data from the collection of data 106 in the data tier.
  • the user 102a wants to create a voter report that provides a list of all of the registered voters in a county having 1 million registered voters, as well as their residential address.
  • the application may be configured to launch a "Report Generator” wizard that displays a wizard page on the user interface 114 at the workstation 104a in response to a user request to create a voter report.
  • the user 102a enters the relevant information in the wizard page (e.g., the user 102a selects data fields "Name” and "Residential Address") and clicks on an "OK” button displayed on the wizard page.
  • the wizard generates a request for 1 million voter records.
  • a page reader component 124 in the user tier of the application may be configured to process the wizard request to form multiple page requests (e.g., for 1000 voter records per page request), and sending each page request to the application server 108 (through the web server 122).
  • the application server 108 queries the collection of data 106 in the data tier for segments of the voter records, e.g., 1000 voter records rather than 1 million voter records at a time. This minimizes the likelihood that the network 110 or the application server 108 may become overloaded when processing requests from the user tier.
  • the term "current page” refers to the page of voter records that are being consumed by the user tier of the application at a particular time
  • the term “next page” refers to the page of voter records including voter records directly following the voter records of the current page.
  • the page reader component 124 retrieves pages of voter records on an as-needed basis by monitoring the consumption of the current page of voter records by the wizard, and generating a new page request (i.e., for the next page of voter records) when the current page is consumed beyond a predetermined threshold level.
  • the results of the new page request that are returned from the collection of data 106 are stored in a buffer maintained by the page reader component 124.
  • the requested data is provided on a continuous basis by the page reader component 124 as though all of the wizard requested voter records were returned in response to the single wizard request.
  • the application provides a user 102 access to the collection of data 106 based on election-related configuration data, which includes business rules 120 for handling voter records with different attributes and preferences for particular users based on the user's role 124.
  • business rules 120 are also referred to in this description as "election- related rules".
  • the system 100 supports a hierarchy of governmental units, for example with a single state at the top level, a number of counties at the next level, and a number of municipalities at the next level. Other types of governmental units can also be supported, such as federal election districts, municipal precincts, etc.
  • the data representing the inter-relationship of these constituent governmental units can be arranged in a tree structure site hierarchy.
  • a user' s role may be determined by the level of or the particular governmental unit with which that user is associated.
  • the site hierarchy represents the different levels of government within a state, for example, state-level, county-level, municipality-level, and precinct-level.
  • the ordering of the sites in the site hierarchy goes from most general (i.e., state-level) to least general (i.e., precinct-level).
  • a predefined set of election-related rules can be applied to the most general site, which in this case is the state-level site.
  • the rule engine 114 in the business tier of the application can be configured such that each site inherits the rules from its parent (e.g., county-level site inherits rules that apply to the state-level site). Each site can further include one or more local election-related rules that are only called by another rule at that same site. Such local election-related rules are typically non-inheritable.
  • the application also allows for multiple levels of security and permissions depending on the role of the user. For example, the application can be configured to authorize a user associated with a state-level site to change a county's districts, while a user associated with a county-level site is not authorized to change a state-level site function (e.g., changing a state-wide contest).
  • the security and permissions per role can be varied to provide great flexibility, for example, a user associated with county A can process a mailed-in absentee application for a voter registered in county B.
  • the application can also be configured to allow a user associated with county A to automatically forward an absentee (or voter registration) application to a person residing in county B.
  • the user can modify and/or add a voter record to the collection of data 106.
  • the user 102a (who is associated with county A) submits a voter record for "John Andrew Smith" for addition to the collection of data 106.
  • the business tier of the application can be configured to compare the submitted voter record with the voter records currently in the collection of data 106 to identify conflicts, e.g., by determining whether the newly-submitted voter record is a duplicate of an existing voter record (i.e., a voter record already exists for "John Andrew Smith" in county B). If so, the application can be configured to automatically modify the voter record to reflect the change in county and take some action, such as alert the user 102b (who is associated with county B) of the change.
  • the user 102c (who is associated with the state) can set up s nationwide elections by submitting the appropriate information (e.g., name of candidate, office, party affiliation) to the application server 108 which then propagates the information to the other sites in the site hierarchy.
  • the appropriate information e.g., name of candidate, office, party affiliation
  • the application server 108 which then propagates the information to the other sites in the site hierarchy.
  • the information for a s nationwide election need only be entered once at the state-level rather than multiple times at the county/municipal/precinct-level by each user 102a and 102b associated with a county.
  • the techniques described herein can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them.
  • the techniques can be implemented as a computer program product, i.e., a computer program tangibly embodied in an information carrier, e.g., in a machine-readable storage device or in a propagated signal, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers.
  • a computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
  • a computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.
  • Method steps of the techniques described herein can be performed by one or more programmable processors executing a computer program to perform functions of the invention by operating on input data and generating output. Method steps can also be performed by, and apparatus of the invention can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application- specific integrated circuit). Modules can refer to portions of the computer program and/or the processor/special circuitry that implements that functionality.
  • Propessors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both.
  • the essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data.
  • a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks.
  • Information carriers suitable for embodying computer program instructions and data include all forms of non- volatile memory, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DND-ROM disks.
  • the processor and the memory can be supplemented by, or incorporated in special purpose logic circuitry.
  • the techniques described herein can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer (e.g., interact with a user interface element, for example, by clicking a button on such a pointing device).
  • a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and a pointing device e.g., a mouse or a trackball
  • feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input.
  • the techniques described herein can be implemented in a distributed three-tiered computing system that includes a back-end component, e.g., as a data server, and/or a middleware component, e.g., an application server, and/or a front-end component, e.g., a client computer having a graphical user interface and/or a Web browser through which a user can interact with an implementation of the invention, or any combination of such back-end, middleware, or front-end components.
  • the components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network.
  • Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), e.g., the Internet, and include both wired and wireless networks.
  • the computing system can include clients and servers.
  • a client and server are generally remote from each other and typically interact over a communication network.
  • the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
  • Other embodiments are within the scope of the following claims. The following are examples for illustration only and not to limit the alternatives in any way. The techniques described herein can be performed in a different order and still achieve desirable results.
  • system 100 may also be used as a voter registration and election management system for governmental hierarchies that include fewer or other governmental units.
  • rules engine 118 and the page reader component 124 can stand alone as separate components for any software application implemented using an architectural model similar to that shown in FIG. 1. What is claimed is:

Description

VOTER REGISTRATION AND ELECTION MANAGEMENT CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority based on United States Provisional Patent Application No. 60/544,869 for "Voter Registration and Election Management" filed February 13, 2004, the disclosure of which is incorporated herein by reference in its entirety. BACKGROUND This description relates to voter registration and election management. Currently, state and federal elections in many states are conducted in a manner that can be thought of as a partnership between the state and the municipalities. For example, elections in a United States (U.S.) state are conducted in accordance with applicable U.S. federal and state laws, as well as the state constitution. However, individual counties, municipalities and precincts are responsible for the actual collection of registration data and maintenance of official voter registration lists. These lists are often maintained separately in a variety of disparate formats, including handwritten, typed, and computerized lists. The U.S. Help America Vote Act of 2002 (HAVA) is election reform legislation that seeks to enhance the integrity of the elections process by establishing certain minimum standards for the conduct of federal elections. HAVA mandates changes to numerous parts of the voting process, including a requirement that each state develop, implement and manage a computerized statewide voter registration list as described in HAVA §303(a). Elections in other countries also require various aspects of coordination between different levels of government.
SUMMARY OF THE INVENTION In a general aspect, the invention provides a method and apparatus, including a computer program product, implementing techniques for developing and managing a statewide voter registration and election management system that is configurable to each state's laws, regulations and/or policies, as well as to those of individual constituent county, municipal, and/or precinct units. The system may include a configurable user interface, intelligent workflow management, enhanced navigation, dynamic reporting capabilities, and instant data view and easy data manipulation. The system provides statewide standardization of election data with local flexibility. In one aspect, the invention features a system for administering election-related information. The system includes a data storage system for storing information associated with voters in a first governmental unit and for storing election-related configuration data each associated with particular ones of a plurality of constituent governmental units within the first governmental unit; and a plurality of interface components each associated with a different one of the constituent governmental units, wherein each of the interface components provides access to the stored information according to election-related configuration data associated with that governmental unit. Implementations may include one or more of the following. The first governmental unit includes a state within a nation, and the constituent governmental units include counties within the state. The election-related configuration data includes election-related rules. The election-related rules include computer instructions for implementing the rules within the data storage system. The governmental unit and the constituent governmental units are arranged in a tree structure of nodes. At least one constituent governmental unit inherits one or more election-related rules from its parent node. The interface components are distributed separate from the data storage system.
The interface components are centrally hosted with the data storage system. Each of the interface components includes a rules processing engine for processing election-related rules for the governmental unit with which the interface component is associated. The system includes three or more tiers, including a user tier, a business tier, and a data tier. Each of the interface components is configured to maintain voter registration information in the data storage system for voters associated with the governmental unit with which the interface component is associated. The system includes an administration system for processing information for voters associated with multiple of the constituent governmental units. Processing the information for the voters includes identifying conflicts in the stored information associated with different of the constituent governmental units. Processing the information for the voters includes transferring stored information associated with one constituent governmental unit to be associated with another of the constituent governmental units. Processing the information for the voters includes transferring stored information associated with a governmental unit to be associated with constituent units of that governmental unit. In another aspect, the invention features a method for administering election- related information. The method includes storing election-related information and providing a plurality of interfaces to the election-related information. The election- related information includes information associated with voters in a first governmental unit, and election-related configuration data each associated with particular ones of a plurality of constituent governmental units within the first governmental unit. Each interface is associated with a different one of the constituent governmental units. Implementations may include one or more of the following. The method further includes accessing the information associated with the voters in the first governmental unit according to the election-related configuration data associated with the governmental units. The method further includes receiving a request from a user to access a portion of the information associated with the voters in the first governmental unit; determining, according to the election-related configuration data, whether the user is permitted to access the user-requested portion of the information, and if so, providing the user- requested portion of the information to an interface associated with the user. The user- requested portion of the information is provided to the interface in one or more segments, each segment comprising a distinct subset of the user-requested portion of the information. In another aspect, the invention features a system that includes a client, a server, and a collection of data, and a method for providing a multi-tier application that provides data from the collection of data in a plurality of segments. The method includes at the client, receiving a request from a user to access a portion of the collection of data, processing the user request to form a plurality of page requests, and sending each page request to the server; and at the server, querying the collection of data in response to each page request to retrieve a segment of the user-requested portion of the collection of data, and providing each retrieved segment to the client, each retrieved segment comprising a distinct subset of the user-requested portion of the collection of data. Each page request can sent to the server on an as-needed basis. Aspects of the invention have one or more of the following advantages. The system provides statewide functionality through the use of a centralized database of voter records. In this manner, voter records may be searched across multiple jurisdictions using a single system. This eliminates duplicate records and may combat voter fraud. The system provides integrated state and county election management functionality. In this manner, contests, candidate, petitions and election calendars may be entered once at a state-level. This eliminates the need for statewide entries to be entered by individual counties, municipalities or precincts, thus reducing duplicate efforts and minimizing the likelihood of errors. The system provides a database paging technique for retrieving large datasets without maintaining an expensive, continuous database connection. This further minimizes the likelihood the network or database may be overloaded. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 shows a block diagram of a communication system. DETAILED DESCRIPTION Referring to FIG. 1, a system 100 is used by multiple users 102, including respective first, second and third users 102a, 102b and 102c, at client workstations 104, including corresponding first, second and third workstations 104a, 104b and 104c. Each user 102 can access a collection of data 106 through an application server 108 across a network 110 using communication links 112a, 112b, 112c and/or 112d. Furthermore, each of the users 102 can modify some or all of the data included in the collection of data 106. In one implementation, the system 100 includes a three-tier voter registration and election management application for administering election-related information. The application includes multiple distinct logical components that interact with one another. Examples of such logical components include a data storage component for storing election-related information and one or more interface components for providing access to the election-related information. In the example illustrated in FIG. 1, the data storage component and the interface component(s) are physically and/or software architecturally distributed over the three tiers of the application, namely a user tier, a business tier, and a data tier. The user tier presents, on the workstations 104, a user interface 114 for the application, displays data and collects user input. The user tier also sends requests for data to the business tier, which resides at the application server 108. The business tier has business objects 116 and a rule engine 118 that implement the business rules 120 (e.g., election-related configuration data) for the application. As the business objects 116 and the business rules 120 are separate components within the business tier of the application, modifications and/or additions to the business rules 120 may be made without any need to modify the business objects 116 that invoke the business rules 120 or recompile the application logic within the business objects 116. This middle tier receives requests for data from the user tier, uses the business objects 116 to evaluate the data against the business rules 120, and passes them on to the data tier, which includes the collection of data 106. The business tier then receives data from the data tier and passes this back to the user tier. The data tier communicates directly with the collection of data 106 and passes data between the data store and the business tier. Although the tiers of the application are depicted as residing on different machines, other implementations may be used, e.g., the data storage component including the business rules 120 (data tier) and the collection of data 106 (business tier) physically reside on one machine, while an interface component including the user interface 114 (user tier) and business objects 116 (business tier) physically resides on another machine. One example of the type of data included in the collection of data 106 is a voter database for a state. The voter database includes data for all the registered voters in the state, for example, by including a voter record for each registered voter in the state. Each voter record includes the name of a registered voter, and generally includes further information, such as personal (e.g., place of birth and social security number) and demographic (e.g., age, sex and race) information for the registered voter, voter status (e.g., party affiliation) and voter activity (e.g., date registered and date last voted). The collection of data 106 can be structured in a number of alternative ways, such as using a database system that may include a database management system, a relational database, a distributed database, or other similar structure. Generally, when a user 102 performs a task (e.g., adding a voter record, modifying a voter record, creating a voter report), a request for data first goes to a web server 122 residing on the user tier. The web server 122 directs the request to the application server 108 on the business tier to be processed. In processing the request, the application server 108 may query data from the collection of data 106 in the data tier. Suppose, for example, that the user 102a wants to create a voter report that provides a list of all of the registered voters in a county having 1 million registered voters, as well as their residential address. The application may be configured to launch a "Report Generator" wizard that displays a wizard page on the user interface 114 at the workstation 104a in response to a user request to create a voter report. The user 102a enters the relevant information in the wizard page (e.g., the user 102a selects data fields "Name" and "Residential Address") and clicks on an "OK" button displayed on the wizard page. The wizard generates a request for 1 million voter records. Rather than sending the wizard request for 1 million voter records directly to the web server 122, a page reader component 124 in the user tier of the application may be configured to process the wizard request to form multiple page requests (e.g., for 1000 voter records per page request), and sending each page request to the application server 108 (through the web server 122). In this manner, in processing each request received from the user tier, the application server 108 queries the collection of data 106 in the data tier for segments of the voter records, e.g., 1000 voter records rather than 1 million voter records at a time. This minimizes the likelihood that the network 110 or the application server 108 may become overloaded when processing requests from the user tier. For ease of description, the term "current page" refers to the page of voter records that are being consumed by the user tier of the application at a particular time, and the term "next page" refers to the page of voter records including voter records directly following the voter records of the current page. In one implementation, the page reader component 124 retrieves pages of voter records on an as-needed basis by monitoring the consumption of the current page of voter records by the wizard, and generating a new page request (i.e., for the next page of voter records) when the current page is consumed beyond a predetermined threshold level. The results of the new page request that are returned from the collection of data 106 (via the application server 108) are stored in a buffer maintained by the page reader component 124. From the perspective of the wizard, the requested data is provided on a continuous basis by the page reader component 124 as though all of the wizard requested voter records were returned in response to the single wizard request. The application provides a user 102 access to the collection of data 106 based on election-related configuration data, which includes business rules 120 for handling voter records with different attributes and preferences for particular users based on the user's role 124. Such business rules 120 are also referred to in this description as "election- related rules". In general, the system 100 supports a hierarchy of governmental units, for example with a single state at the top level, a number of counties at the next level, and a number of municipalities at the next level. Other types of governmental units can also be supported, such as federal election districts, municipal precincts, etc. The data representing the inter-relationship of these constituent governmental units (also referred , to as "sites") can be arranged in a tree structure site hierarchy. A user' s role may be determined by the level of or the particular governmental unit with which that user is associated. The site hierarchy represents the different levels of government within a state, for example, state-level, county-level, municipality-level, and precinct-level. In one implementation, the ordering of the sites in the site hierarchy goes from most general (i.e., state-level) to least general (i.e., precinct-level). A predefined set of election-related rules can be applied to the most general site, which in this case is the state-level site. The rule engine 114 in the business tier of the application can be configured such that each site inherits the rules from its parent (e.g., county-level site inherits rules that apply to the state-level site). Each site can further include one or more local election-related rules that are only called by another rule at that same site. Such local election-related rules are typically non-inheritable. The application also allows for multiple levels of security and permissions depending on the role of the user. For example, the application can be configured to authorize a user associated with a state-level site to change a county's districts, while a user associated with a county-level site is not authorized to change a state-level site function (e.g., changing a state-wide contest). The security and permissions per role can be varied to provide great flexibility, for example, a user associated with county A can process a mailed-in absentee application for a voter registered in county B. The application can also be configured to allow a user associated with county A to automatically forward an absentee (or voter registration) application to a person residing in county B. Depending on the role of a user, the user can modify and/or add a voter record to the collection of data 106. Suppose, the user 102a (who is associated with county A) submits a voter record for "John Andrew Smith" for addition to the collection of data 106. The business tier of the application can be configured to compare the submitted voter record with the voter records currently in the collection of data 106 to identify conflicts, e.g., by determining whether the newly-submitted voter record is a duplicate of an existing voter record (i.e., a voter record already exists for "John Andrew Smith" in county B). If so, the application can be configured to automatically modify the voter record to reflect the change in county and take some action, such as alert the user 102b (who is associated with county B) of the change. Depending on the role of a user, the user 102c (who is associated with the state) can set up statewide elections by submitting the appropriate information (e.g., name of candidate, office, party affiliation) to the application server 108 which then propagates the information to the other sites in the site hierarchy. In this manner, the information for a statewide election need only be entered once at the state-level rather than multiple times at the county/municipal/precinct-level by each user 102a and 102b associated with a county. The techniques described herein can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. The techniques can be implemented as a computer program product, i.e., a computer program tangibly embodied in an information carrier, e.g., in a machine-readable storage device or in a propagated signal, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers. A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network. Method steps of the techniques described herein can be performed by one or more programmable processors executing a computer program to perform functions of the invention by operating on input data and generating output. Method steps can also be performed by, and apparatus of the invention can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application- specific integrated circuit). Modules can refer to portions of the computer program and/or the processor/special circuitry that implements that functionality. Propessors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. Information carriers suitable for embodying computer program instructions and data include all forms of non- volatile memory, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DND-ROM disks. The processor and the memory can be supplemented by, or incorporated in special purpose logic circuitry. To provide for interaction with a user, the techniques described herein can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer (e.g., interact with a user interface element, for example, by clicking a button on such a pointing device). Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input. The techniques described herein can be implemented in a distributed three-tiered computing system that includes a back-end component, e.g., as a data server, and/or a middleware component, e.g., an application server, and/or a front-end component, e.g., a client computer having a graphical user interface and/or a Web browser through which a user can interact with an implementation of the invention, or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network ("LAN") and a wide area network ("WAN"), e.g., the Internet, and include both wired and wireless networks. The computing system can include clients and servers. A client and server are generally remote from each other and typically interact over a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. Other embodiments are within the scope of the following claims. The following are examples for illustration only and not to limit the alternatives in any way. The techniques described herein can be performed in a different order and still achieve desirable results. For example, although the system 100 has been described with reference to a governmental hierarchy that includes a state, counties, municipalities, and precincts, the system 100 may also be used as a voter registration and election management system for governmental hierarchies that include fewer or other governmental units. Although described in the context of a voter registration and election management application, both the rules engine 118 and the page reader component 124 can stand alone as separate components for any software application implemented using an architectural model similar to that shown in FIG. 1. What is claimed is:

Claims

1. A system for administering election-related information comprising: a data storage system for storing information associated with voters in a first governmental unit and for storing election-related configuration data each associated with particular ones of a plurality of constituent governmental units within the first governmental unit; and a plurality of interface components each associated with a different one of the constituent governmental units, wherein each of the interface components provides access to the stored information according to election-related configuration data associated with that governmental unit.
2. The system of claim 1 wherein first governmental unit comprises a state within a nation.
3. The system of claim 2 wherein the constituent governmental units comprise counties within the state.
4. The system of one of the preceding claims wherein the election-related configuration data includes election-related rules.
5. The system of claim 4 wherein the election-related rules include computer instructions for implementing the rules within the data storage system.
6. The system of one of the preceding claims wherein the governmental unit and the plurality of constituent governmental units are arranged in a tree structure of nodes.
7. The system of claim 6 wherein at least one constituent governmental unit inherits one or more election-related rules from its parent node.
8. The system of one of the preceding claims wherein the interface components are distributed separate from the data storage system.
9. The system of one of the claims 1 to 7 wherein the interface components are centrally hosted with the data storage system.
10. The system of one of the preceding claims wherein each of the interface components includes a rules processing engine for processing election-related rules for the governmental unit with which the interface component is associated.
11. The system of one of the preceding claims wherein the system comprises a user tier, a business tier, and a data tier.
12. The system of one of the preceding claims wherein each of the interface components is configured to maintain voter registration information in the data storage system for voters associated with the governmental unit with which the interface component is associated.
13. The system of one of the preceding claims further comprising an administration system for processing information for voters associated with multiple of the constituent governmental units.
14. The system of claim 13 wherein processing the information for the voters includes identifying conflicts in the stored information associated with different of the constituent governmental units.
15. The system of claim 13 or 14 wherein processing the information for the voters includes transferring stored information associated with one constituent governmental unit to be associated with another of the constituent governmental units.
16. The system of one of the claims 13 to 15 wherein processing the information for the voters includes transferring stored information associated with a governmental unit to be associated with constituent units of that governmental unit.
17. A method comprising: storing election-related information including: information associated with voters in a first governmental unit, and election-related configuration data each associated with particular ones of a plurality of constituent governmental units within the first governmental unit; and providing a plurality of interfaces to the election-related information, each interface associated with a different one of the constituent governmental units.
18. The method of claim 17, further comprising accessing the information associated with the voters in the first governmental unit according to the election-related configuration data associated with the governmental units.
19. The method of claim 17 or 18, further comprising: receiving a request from a user to access a portion of the information associated with the voters in the first governmental unit; determining, according to the election-related configuration data, whether the user is permitted to access the user-requested portion of the information, and if so, providing the user-requested portion of the information to an interface associated with the user.
20. The method of claim 19, wherein the user-requested portion of the information is provided to the interface in one or more segments, each segment comprising a distinct subset of the user-requested portion of the information.
21. In a system that includes a client, a server, and a collection of data, a method for providing a multi-tier application that provides data from the collection of data in a plurality of segments, the method comprising: at the client, receiving a request from a user to access a portion of the collection of data, processing the user request to form a plurality of page requests, and sending each page request to the server; and at the server, querying the collection of data in response to each page request to retrieve a segment of the user-requested portion of the collection of data, and providing each retrieved segment to the client, each retrieved segment comprising a distinct subset of the user-requested portion of the collection of data.
22. The method of claim 21, wherein each page request is sent to the server on an as- needed basis.
PCT/EP2005/001472 2004-02-13 2005-02-14 Voter registration and election management WO2005081146A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU2005215685A AU2005215685B2 (en) 2004-02-13 2005-02-14 Voter registration and election management
CA002555471A CA2555471A1 (en) 2004-02-13 2005-02-14 Voter registration and election management

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US54486904P 2004-02-13 2004-02-13
US60/544,869 2004-02-13

Publications (1)

Publication Number Publication Date
WO2005081146A2 true WO2005081146A2 (en) 2005-09-01

Family

ID=34886089

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2005/001472 WO2005081146A2 (en) 2004-02-13 2005-02-14 Voter registration and election management

Country Status (4)

Country Link
US (1) US20050216332A1 (en)
AU (1) AU2005215685B2 (en)
CA (1) CA2555471A1 (en)
WO (1) WO2005081146A2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7597258B2 (en) * 2006-04-21 2009-10-06 Cccomplete, Inc. Confidential electronic election system
US9858341B2 (en) * 2006-08-02 2018-01-02 Jason Frankovitz Method and apparatus for remotely monitoring a social website
US7970643B2 (en) * 2006-08-10 2011-06-28 Lincoln Voters, Inc. Method and apparatus for implementing a personal “get out the vote drive” software application
US8108780B2 (en) * 2008-04-16 2012-01-31 International Business Machines Corporation Collaboration widgets with user-modal voting preference
KR101488726B1 (en) * 2008-05-27 2015-02-06 삼성전자주식회사 Display apparatus for displaying a widget window and display system including the display apparatus and method for displaying thereof
US8260660B2 (en) 2010-02-12 2012-09-04 Es&S Innovations, Llc System and method for un-issuing voting credits

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5878399A (en) * 1996-08-12 1999-03-02 Peralto; Ryan G. Computerized voting system
US6081793A (en) * 1997-12-30 2000-06-27 International Business Machines Corporation Method and system for secure computer moderated voting
US6311190B1 (en) * 1999-02-02 2001-10-30 Harris Interactive Inc. System for conducting surveys in different languages over a network with survey voter registration
US20010029463A1 (en) * 1999-12-30 2001-10-11 Fuller Patrick Neal System and method for facilitating political advocacy
US7640181B2 (en) * 2000-02-17 2009-12-29 Hart Intercivic, Inc. Distributed network voting system
US7036730B2 (en) * 2000-11-03 2006-05-02 Amerasia International Technology, Inc. Electronic voting apparatus, system and method
US20020077887A1 (en) * 2000-12-15 2002-06-20 Ibm Corporation Architecture for anonymous electronic voting using public key technologies
US20020107724A1 (en) * 2001-01-18 2002-08-08 Openshaw Charles Mark Voting method and apparatus
US20020128902A1 (en) * 2001-03-09 2002-09-12 Athan Gibbs Voting apparatus and method with certification, validation and verification thereof
US6590966B2 (en) * 2001-03-29 2003-07-08 Patrick J. Tittle Interactive voting method
US7197167B2 (en) * 2001-08-02 2007-03-27 Avante International Technology, Inc. Registration apparatus and method, as for voting
US20030055720A1 (en) * 2001-09-17 2003-03-20 Overton Joseph P. Method and system for tracking legislative activity
US20030078834A1 (en) * 2001-10-24 2003-04-24 Mcclure Neil Equal time ballot rotation
US20030149616A1 (en) * 2002-02-06 2003-08-07 Travaille Timothy V Interactive electronic voting by remote broadcasting

Also Published As

Publication number Publication date
US20050216332A1 (en) 2005-09-29
AU2005215685A1 (en) 2005-09-01
CA2555471A1 (en) 2005-09-01
AU2005215685B2 (en) 2011-10-27

Similar Documents

Publication Publication Date Title
Enos What the demolition of public housing teaches us about the impact of racial threat on political behavior
Koch et al. Testing the “Dick Cheney” hypothesis: do governments of the left attract more terrorism than governments of the right?
US20080244008A1 (en) Method and system for data exchange among data sources
US20150142680A1 (en) Method and system for assisting user and entity compliance using a communication device
US20110040796A1 (en) Method and system for querying an ontology model
AU2005215685B2 (en) Voter registration and election management
Hausman Sanctuary policies reduce deportations without increasing crime
Phillips Police officers’ opinions of the use of unnecessary force by other officers
Ulicny et al. Metrics for monitoring a social-political blogosphere: A Malaysian case study
Dyrstad et al. Perceptions of peace agreements and political trust in post-war Guatemala, Nepal, and Northern Ireland
Herron et al. Precinct closing times in Florida during the 2012 general election
Fix et al. The complexities of state court compliance with US Supreme Court precedent
Davis Testing mechanisms: Carceral contact and political participation
Grossman Constitution or conflict?
Khmelko et al. Corruption and legislatures: Exploring perceptions of Ukrainian legislators
EP3652660B1 (en) Systems and methods for joining datasets
Bell et al. “Force multipliers”: Conditional effectiveness of military and INGO human security interventions
US20220035800A1 (en) Minimizing group generation in computer systems with limited computing resources
Proeschold-Bell et al. A randomized controlled trial of health information exchange between human immunodeficiency virus institutions
Murphy Decaying national security and the rise of imagined tribalism
Freilich et al. Mismeasuring militias: Limitations of advocacy group data and of state‐level studies of paramilitary groups
Hickman Is electoral violence effective? Evidence from Sri Lanka's 2005 presidential election
US20190026679A1 (en) Method for periodical collection of information in a network of computer stations by a computer server of said network
Ayoyo Police officers’ assessment of NPF reforms: evidence from an area command in Ondo state
Miller et al. Media coverage and the escalation of militarized interstate disputes, 1992–2001

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 BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG 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 MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2555471

Country of ref document: CA

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 2005215685

Country of ref document: AU

ENP Entry into the national phase

Ref document number: 2005215685

Country of ref document: AU

Date of ref document: 20050214

Kind code of ref document: A

WWP Wipo information: published in national office

Ref document number: 2005215685

Country of ref document: AU

122 Ep: pct application non-entry in european phase