Content uploaded by Ghassan Qadah
Author content
All content in this area was uploaded by Ghassan Qadah
Content may be subject to copyright.
REQUIREMENTS, DESIGN AND IMPLEMENTATION OF
AN E-VOTING SYSTEM
Ghassan Z. Qadah
American University of Sharjah
United Arab Emerites
ABSTRACT
The rapid advancement in database, web and wireless technologies have given rise to new applications that were
impossible just few years ago. One of these applications is e-Voting. The term “e-Voting” is defined as the process of
casting votes in an election using electronic means. This paper details the requirements, design and implementation of a
generic and secure electronic voting system where voters can cast their votes anytime, any place and using a number of
electronic devices including Web and mobile phones.
KEYWORDS
e-Voting, web technology, mobile phones, system requirements, databases, software development.
1. INTRODUCTION
Voting and elections are essential ingredients of modern democratic societies. Unlike any other transactional
event, the result of elections can have many effects on societies and their economic and financial wellbeing.
Recent elections have seen a gradual decline in the overall percentage of the electorate exercising their right
to vote. This is worrying from a democratic point of view in that, if the reasons of the decline are left
unchecked, the mandate of those elected to hold the positions might eventually be questionable. Moreover, it
is interesting to note here that traditional/manual voting systems are slow, complex, inaccurate and
inefficient.
To counter these drawbacks, Governments have proposed a number of possible methods for re-engaging
the electorate in the voting process. One of these methods is the modernization of the way in which the
elections are being conducted. These methods include the use of electronic voting (e-Voting) as a new and
modernized way to carry out the election process. e-Voting extends polling hours (anytime voting) and
enables casting of votes from any place (anywhere voting) using different electronic means (any device
voting) such as mobile devices and Internet-based voting.
In this technological age, it is imperative to explore and encourage greater use of information technology
(IT) in most forms of service delivery. The ability to cast a vote through a multitude of choices such as web
and mobile technologies is instantly attractive. Such facilities should also overcome constraints associated
with the current voting process and engage more young voters. There is no doubt that remote electronic
voting offers a convenience that would be appreciated by many people. E-voting enables citizens to
participate electronically in democracy and provides them with more information about candidates and the
election they are being asked to participate in.
This paper details the requirements, design and implementation of a generic e-Voting System, where
voters can cast their votes anytime, anywhere and using a number of electronic devices including Web and
mobile phones. Section 2 details a high-level set of requirements that an e-Voting system must satisfy. The
architecture of an e-voting system that satisfies the stated requirements is presented in section 3. Section 4
outlines the implementation of a prototype for the e-Voting system. Finally, section 5 presents some
concluding remarks.
IADIS International Conference on Applied Computing 2005
405
2. REQUIRMENTS FOR THE E-VOTING SYSTEM
Prior to e-Voting System design, a comprehensive and detailed set of requirements have been developed.
These requirements are divided into two groups, namely, generic and system-specific. The generic
requirements are those requirements that apply to any voting system [1]. The generic requirements, as shown
in Figure 1, include:
Voting System
Vote
for
Candidate Y
Authenticity
Security
Person X voted
for
Candidate Z
Integrity
Privacy
Fig. 1. A generic set of requirments
• Privacy: after casting a vote, no one should be able to link the voter to this vote;
• Authenticity: only eligible voters can cast their votes;
• Integrity/accuracy: once a voter cast a vote, no alternation to this vote is permitted. Moreover, all
valid votes must be counted, whereas all invalid votes must not be counted;
• Security: throughout the voting process, a vote can’t be tampered with;
• Democracy: all eligible voters must be able to vote, one person - one vote and no one can vote more
than once or vote for others.
The system-specific requirements, on the other hand, are those requirements that are specific to the
electronic-voting systems. The system-specific requirements include:
• Multi-user: a number of voters can vote simultaneously;
• Multi-campaign: a number of elections can be running simultaneously;
• Accessibility: the system can be accessed by voters from any location using secure Internet and/or
mobile devices;
• Availability: the system must have high-availability during an election campaign.
3. E-VOTING SYSTEM ARCHITECTURE
To accommodate these requirements, an architecture, presented in Figure 2, for the e-Voting system has been
developed. The main elements of this architecture include:
• The databases: two databases have been developed for the e-Voting system, namely the election
and Meta databases. The election database keeps track of campaigns, candidates and voters. The
Meta database, on the other hand contains information about the structure and format of the different
type of election campaigns as well as the applicable voting rules;
• The database management system (DBMS): the DBMS [2] manages the election and Meta
databases;
• The web server: the web sever interfaces the e-Voting system to web voters. In addition, it stores
the different web pages containing the code required to interact with the user as well as the database
system;
• The SMS (Short Message Service) server: the SMS sever, as shown in Figure 2, interacts with
voters that use their mobile telephone set and the SMS messaging service to access the e-Voting
system. At the lowest level, the SMS server interfaces to a number of GSM (Global System for
Mobile Communications) modems that receive voters’ SMS messages through an SMS service
Figure 1. A generic set of requirements
ISBN: 972-99353-6-X © 2005 IADIS
406
provider (mobile operator). Once an SMS message is received by a modem, the SMS server grap
this message, perform, on its content, the required checks and then respond to the voter accordingly,
by either placing a vote in the database or informing the voter about the occurrence of an error (e.g.
invalid user name and/or password or multiple voting). After the voting campaign is completed, the
SMS server sends all registered mobile voters (whether they have actually cast a vote or not) a
message with the election results.
4. E-VOTING SYSTEM IMPLEMENTATION
Following the architecture presented in section 3, a prototype for an e-Voting system has been developed.
The developed prototype makes use of two hardware (Pentium) servers, the database and the e-Voting ones.
Both of these servers run Windows NT as an operating system. The details of these servers are presented
next.
4.1 The database Server Implementation
The database server runs Oracle 9i [3] as a DBMS. In addition, the database server runs a newly
implemented software tool, namely, the database creator. This tool, as shown in Figure 3, creates the election
and Meta databases, according to the proper schema, and populates them with the initially needed
information. In addition to database creation, the tool is used to clear the database tables and/or dropping the
databases. The database creator tool makes use of Microsoft (MS) Visual Basic (VB.Net) framework to
implement its interface to users. In addition, this tool uses ADO.NET technology to connect to Oracle to
perform the different database creation/deletion activities.
Figure 2. An architecture for the e-Voting system.
Figure 3. The database creator.
IADIS International Conference on Applied Computing 2005
407
4.2 The e-Voting Server Implementation
The e-Voting server, on the other hand, runs the following components, namely:
• Microsoft Internet Information Server (IIS), as a web server. It stores and manages the web
pages that implement the Graphical User Interface (GUI) for the Internet voters;
• The Web Voters Graphical User Interface (GUI) and the associated web pages. These pages are
implemented using Java Server Pages (JSP) technology and connect to the database system using
Java Database Connectivity (JDBC) library;
• The GSM modems: these modems connects mobile voters to the e-Voting system;
• The SMS service/process: this is an NT software process/service that monitors the GSM modems,
process the received SMS messages and interact with the database server accordingly. In
implementing this process, MS ADO.Net technology is used to connect the SMS process to the
Oracle 9i database;
• The administrative utility: this tool, as shown in Figure 4, permits the administrator of the e-
Voting system to carry out a number of activities, such as election campaign configuration and
candidates, voters and the SMS service administration. The Graphical User Interface (GUI) of the
administrative utility is implemented using Visual Basic (VB) technology. The different components
of the administrative utility are presented next.
o The campaign configurator: this tool, as presented in Figures 5, is used to create, delete
and/or edit election campaigns. The creation of a campaign is carried out using the form
presented in Figure 6, whereas, the form presented in Figure 7 adds a new candidate to an
election. Figure 8 presents a form that is used to add a voter to the system;
o The SMS administrative tool: this tool, as shown in Figure 9, is used to configure, run
and stop the SMS service and initialize the GSM modem.
Figure 4. The administrative Utility. Figure 5. The campaign Configurator
Figure 6. Creating a new Campaign
ISBN: 972-99353-6-X © 2005 IADIS
408
5. CONCLUSION
This paper details the requirements, design and implementation of a generic e-Voting System, where voters
can cast their votes anytime, anywhere and using a number of electronic devices including Web and mobile
phones.
REFERENCES
Saleh, K., 2003. Specifications of a mobile electronic voting system and a mobile agent platform. Proceedings of IADIS
e-Societ. Lisbon, Portugal.
Elmasri, R. and Navathe, S. B 2004. Fundamentals of Database Systems, Fourth Edition, Pearson/Addison Wesley
Publisher.
Morrison J. and Morrison M. 2003. Guide to Oracle9i, Thomson Course technology Publisher.
Figure 7. Add Candidates Figure 8. Add Voters
Figure 9. The SMS server administrator
IADIS International Conference on Applied Computing 2005
409