The Election Connection Requirements ljohanss (1) Problem Definition At Brown the Undergraduate Counsel of Students holds campus wide elections each spring in which undergraduates choose peers to represent them for the following school year. Traditionally the elections have been plagued by procedural, structural and technical problems. These issues have lead some to question the integrity of the current election system on a whole. The elections have been administered online for several years. In the past the Counsel has used a customized election website which could not be modified for subsequent elections because the administrator graduated and WebCT which is not designed to be able to administer an election in the first place. (2) Proposed Solution The goal is to design a system which allows the UCS Election Committee to design a ballot through the use of a straight-forward graphical user interface. The software will then generate the necessary HTML, php, scripts etc. to actually administer the election online. At the conclusion of the election the system will end voting and will prepare a summary of the votes to be reviewed and analyzed by UCS. (3) Requirements (3.1) Highest - provide an easy to use interface for designing the ballot on a question by question basis - generate HTML, scripts, etc. necessary to run a HIGHLY user friendly web-based election - output election results data in excel ready format - the system must be able to support between 2,500 and 5,500 votes cast - secure login system to ensure privacy and that each user votes only once (3.2) High - support multiple election (referendum, survey) formats - provide flexibility for different types of ballot questions (eg. vote for one of the following, rank the following candidates, etc.) - use a database of users to provide different ballots to different logins based on class year (3.3) Medium - host a site dedicated to administering the election - the server must support approximately 200 simultaneous users - allow for a section of the election website containing candidate biographies and personal statements (3.4) Low - support multiple election styles (eg. majority wins, plurality wins, instant run-off) (3.5) Lowest - provide a feature rich interface for analyzing and interpreting election results - provide an interface through which the group designing the election can modify the appearance of the web ballot itself (4) Feasibility The advantages to this project are in its applicability and the variability of its scope. It is easy to imagine designing a system which is generic enough to generate a wide variety of elections, surveys and referendums and therefore could be used at institutions other than Brown. On the other hand, even a scaled down system implementing only the high priority items would have an immediate impact on many people at Brown. The project would also lend itself to division of labor well as it would involve the design of a user friendly GUI as well as back-end logic, a package to generate web code and possibly an interface to view and manipulate the election data. Each of these systems could be designed and coded in large part independently from the others. From a technical perspective the project is interesting as it would require data-security techniques, a database and web programming. It would provide good opportunities for students to learn about new areas of computer science which they may not have previously experienced. With respect to timeline, UCS holds their spring elections in mid April, so it is unlikely that the software created in this class would be ready at that point. Instead, freshman elections, held in the fall, would be the first time the software could go live. It is somewhat unfortunate that this is the case, however the long-term benefits are still many. On the whole, it would be an appropriately large and interesting project with the potential to have a long-term positive impact on the way elections are administered at Brown and maybe even other institutions.