Professional Documents
Culture Documents
By
CSC11-54
Net-Centric Computing
DEPARTMENT OF COMPUTER SCIENCE
SCHOOL OF COMPUTING AND INFORMATICS TECHNOLOGY
Supervisor
MR. JOAB AGABA
Department of Networks
School of Computing and Informatics Technology, Makerere University
jagaba@cit.mak.ac.ug, +256-41-540628, Fax: +256-41-540620
June, 2011.
Declaration
We Group CSC11-54 do hereby declare that this Project Report is original and has not been
published and/or submitted for any other degree award to any other University before.
GROUP MEMBERS:
Names
Registration Number
08/U/1429
KAWAIDA DAVID
08/U/1418
OCHOLA JACOB
08/U/1426
LUTAAYA JOSEPH
08/U/16799/PS
Signature
Approval
This Project Report has been submitted for Examination with the approval of the following
supervisor.
Signed:
_______________________
Date:
_______________________
ii
Dedication
This project is dedicated to our loved ones, families, comrades and all those who have
contributed to our studies and to our Lord Jesus Christ for His grace we worked together as a
team to accomplish this project.
iii
Acknowledgment
First of all, we glorify the Lord Jesus Christ who enabled us to merge ideas throughout this
period so as to achieve and present a solution to the task we were handling.
We would also like to appreciate our supervisor Mr. Joab Agaba for the inestimable support,
guidance and encouragement offered to us during this projects undertaking.
We also extend our gratitude to our family members and friends whose support, tireless efforts
and prayers gave us the faith to accomplish this project.
May God richly bless you all!
iv
Table of Contents
Declaration ................................................................................................................................... i
Approval ..................................................................................................................................... ii
Dedication .................................................................................................................................. iii
Acknowledgment ....................................................................................................................... iv
Table of Contents ........................................................................................................................ v
List of Tables ............................................................................................................................. ix
List of Figures ............................................................................................................................. x
List of Abbreviations and Acronyms ......................................................................................... xi
Abstract ..................................................................................................................................... xii
Chapter 1 ....................................................................................................................................... 1
Introduction ................................................................................................................................... 1
1.1 Background ........................................................................................................................... 1
1.2 Problem Statement ................................................................................................................ 1
1.3 Main Objective...................................................................................................................... 1
1.3.1 Specific Objectives ........................................................................................................ 2
1.4 Scope ..................................................................................................................................... 2
1.5 Significance ........................................................................................................................... 2
Chapter 2 ....................................................................................................................................... 4
Literature Review ......................................................................................................................... 4
2.1 Introduction ........................................................................................................................... 4
2.2 Mobile Voting Systems......................................................................................................... 4
2.2.1 Risks............................................................................................................................... 5
2.2.2 Challenges ...................................................................................................................... 5
2.3 Usage of Mobile Voting Systems ......................................................................................... 7
2.3.1 The Current Voting Process ........................................................................................... 8
2.4 Examples of Existing Voting Systems .................................................................................. 9
v
viii
List of Tables
Table 1: Comparison between the existing systems and the proposed MVS ................................ 11
Table 2: Description of Processes ................................................................................................ 22
Table 3: Description of Data Stores ............................................................................................. 22
Table 4: Description of Data Reports........................................................................................... 22
Table 5: Description of External Entities ..................................................................................... 23
Table 6: Identification of Entities and Associated Attributes ....................................................... 26
Table 7: The Candidate table ....................................................................................................... 29
Table 8: The Voter table ............................................................................................................... 29
Table 9: The Course table ............................................................................................................ 29
Table 10: The Position table ......................................................................................................... 30
Table 11: The Hall table ............................................................................................................... 30
Table 12: The Vote table ............................................................................................................... 30
Table 13: Hardware Requirements............................................................................................... 33
Table 14: Software Requirements ................................................................................................. 34
ix
List of Figures
Figure 4.1: Flowchart for the manual voting process .................................................................. 16
Figure 4.2: Context Diagram for the Mobile Voting System ........................................................ 19
Figure 4.3: Level1 DFD for the Mobile Voting System ................................................................ 21
Figure 4.4: Architectural Design for the System .......................................................................... 24
Figure 4.5: Relationship between Voter and Course ................................................................... 27
Figure 4.6: Relationship between Voter and Hall ........................................................................ 27
Figure 4.7: Relationship between Candidate and Position .......................................................... 27
Figure 4.8: Relationship between Voter and Vote. ....................................................................... 27
Figure 4.9: Relationship between Candidate and Vote ................................................................ 27
Figure 4.10: Relationship between Vote and Position ................................................................. 28
Figure 4.11: The ERD for Mobile Voting System ......................................................................... 28
Figure 5.1: System Map showing functions provided by the system to each user ........................ 32
Figure 5.2: The Mobile Voting Systems login page and Homepage. .......................................... 35
Figure 5.3: The Edit Voter Register Page. ................................................................................... 36
Figure 5.4: The Election Results Page. ........................................................................................ 36
Figures 5.5 5.8: The Mobile Voters Login & Authentication Interfaces.................................. 37
Figures 5.9 5.12: The Mobile Voters Electronic Ballot Interfaces. ......................................... 37
Third Generation
Ack
AJAX
CLDC
DFD
Dataflow Diagram
DISD
DRE
ERD
EU
European Union
FSB
GSM
HTML
ICT
JTWI
MIDP
MVS
MySQL
PHP
Hypertext Preprocessor
RO
Returning Officer
SCIT
XML
xi
Abstract
This report presents a mobile voting system project tailored for Makerere University. The project
was an important area for development because the efficiency, reliability and security of the
procedures used to conduct preceding elections were jeopardized by numerous irregularities. The
aim of this project was to develop an interactive voting system with which users can participate
using their mobile phone and retrieve real-time results on a web-based platform. It involved three
phases: the development of a front-end to the voting system; the development of a method of
interaction with mobile phones, and the development of a web-based administration tool.
Information for system study was gathered using tools such as interviews and study of relevant
literature. DFDs and ERDs were used in the analysis and design of the system. The technologies
used in the implementation of the objectives of this study included, Java, AJAX, PHP and the
Database Management System employed was MySQL. The outcome of the project was an
integrated system capable of online registration, receiving votes from mobile phones, tallying the
received votes and real-time display of results over the web. Upon successful testing and system
validation, we believe that the system can administer election processes fairly, effectively and
efficiently.
xii
Chapter 1
Introduction
1.1 Background
Voting is a formal indication of a choice between two or more candidates or courses of action,
expressed typically through hand-counted paper ballots or by show of hands [1]. In democratic
societies, voting is an important tool to collect and reflect peoples opinions. Traditionally, voting is
conducted in centralized locations called polling stations. Voters go to these polling stations and cast
their votes under the supervision of authorized parties. The votes are then counted manually once the
voting process has ended and later the results are declared. Like all other aspects of democracy,
voting requires transparency, participation and accountability. To increase the efficiency and
accuracy of voting procedures, computerized voting systems have been developed to help in
collecting and counting the votes. These include Lever Voting Machines, Punched Cards for Voting,
Optical Mark-Sense Scanners and Direct Recording Electronic (DRE) voting systems [2].
However, the voting systems in most institutional bodies in the past have been marred with
irregularities which have jeopardized this democratic process. Hence the need for improvement in the
voting system through mobile technologies as a means of attaining the democracy most people
advocate for is paramount.
1.4 Scope
The system will be limited to elections held at the school level in Makerere University which include;
the School President, Vice President, Finance Minister and other members of the cabinet. Emphasis
will be on the School of Computing and Informatics Technology (SCIT) but it can also serve as a tool
in conducting elections in other schools and colleges.
1.5 Significance
Business around the world has widely, of recent, been conducted using electronic means.
Governments have come to realize the benefits of automating several processes due to efficiency and
relatively low cost as compared to traditional means. As the digital age continues to grow, only time
will tell until almost every human-handled process becomes computerized. Furthermore,
governments are getting more involved in developing the ICT sector due to the pressure imposed by
other governments and regulatory bodies for fear of lagging behind.
Mobile communication of recent has taken the world by storm and its getting bigger and better. Due
to the numerous advantages they offer, a number of government and private business processes are
being carried out under this platform. A case in point is the Mobile Money service provided by
Mobile Telecommunications Companies in Uganda that enable users to pay water bills, electricity
bills, tax, send and receive money, et al.
Augmenting the current voting systems with mobile voting will enhance the voting process by
increasing voter participation. Below are other advantages that mobile voting systems offer;
1. Reduced costs in the materials required for printing and distributing ballots.
2. It permits access to more information regarding voting options and processes also.
2
3. Efficiency and accuracy in placing and tallying votes and displaying the results to the voters.
4. Minimal chances of invalid votes due to the use of option buttons to represent candidates.
5. Flexibility as mobile voting can support multiple languages, and the flexible design allows upto-the minute ballot modifications.
6. The same development concept can be used and applied in other fields of research to support
researchers in collecting and analyzing peoples opinions and views.
Chapter 2
Literature Review
2.1 Introduction
This chapter includes a critical look at the existing research and case studies that have significance
with this research project. It has been done by consulting other peoples work in order to understand
and investigate the problem of the research project. In conducting literature review, scholarly articles,
books and other sources relevant to a particular issue, area of research or theory has been surveyed.
After reviewing all materials, a description, summary, and critical evaluation of each work is granted.
The automation of business and governmental processes has long been a success story in many
countries. As the use of mobile phones for voice and data communication increase, users continue to
demand for more services to be offered by mobile phones due to the comfort they present. Recently a
number of governments have employed e-voting systems in some of their elections and referendums
using mostly computer terminals and a few with mobile voting systems.
There is need to review the literature because it is important to know exactly what has been going on,
the system in use and identification of gaps and inefficiencies so as to come up with the appropriate
solution that will lead to the enhancement of the electoral process in Makerere University. Therefore
using different sources we have managed to analyze and compare the existing voting systems and we
have concluded that there is need for improvement.
will also ease the vote-counting process which will be done instantly as the voting progresses and a
graphical display will be available on a site (attached to the system) for all stakeholders to view
progress, hence ensuring transparency.
Mobile voting falls under a category of voting called e-voting, which is short for electronic voting,
and refers to the option of using electronic means to vote in referendums and elections. There are
systems such as DRE voting machines that record the vote without that vote being transmitted over
the Internet or another network. The interface of a DRE machine can be a touch screen or a scanner
that scans the ballot paper where the voter marked the vote.
The vote is then registered and stored in the voting machine. Then there is voting over the Internet
that uses a PC with an Internet-connection to cast the vote and send it to be stored in another remote
computer. Personal Digital Assistants (PDAs), telephones or mobile phones can also be used to cast
a vote electronically [3].
Besides its hype and advantages over traditional voting systems, MVS reliability, security and
transparency are still issues that limit its deployment in many countries. Bradly et al [3], points out
the risks and challenges faced by electronic voting systems as follows;
2.2.1 Risks
1. Third parties: Unauthorized intervention of third parties in the voting process. Given the
current state of information technology, there is no guarantee, that a programme would not be
manipulated to allow the storage and printing of a form or document different from the one
appearing on the screen.
2. Errors and technical malfunctions: More difficult to detect and identify the source of errors
and technical malfunctions than with conventional procedures.
3. Unreliability: Possibility that fully digitized system would fail to produce results and lack
physical back-up records, making a public recount difficult or impossible.
2.2.2 Challenges
1. Security: In the context of remote e-voting, special attention should be given to the process
guaranteeing a free and secret vote. Only entitled voters are allowed to cast a vote and this
requires that every voter be authenticated (e.g. by using a PIN -Personal Identification
Number or TAN -Transaction Number or by the use of digital signature) and their right to
5
vote verified. In order to prevent multiple votes being cast or other misuse, a record must be
made and checked in order to establish whether the voter has already cast a vote. There must
be an electronic separation between the vote and the identification of the voter.
2. Reliability: Mobile Voting Systems have to interact with some database server, or some other
server, over a network. There might be instances when this network goes down during the
voting process which may cause a potential voter to miss out on casting his/her vote,
especially when he/she planned to use the system with no aim of going to the poll-site.
Keeping the network stable and available during the voting process is a challenge that MVS
application developers need to consider.
3. Skepticism: Networks have been widely used all around the world in a number of sectors due
to their benefits. The internet is the worlds largest network, with billions of dollars in
transactions being carried out over it per fiscal year. Nevertheless, a large number of people,
especially in developing countries where internet technologies are beginning to gain ground,
still doubt the power that it brings into speeding up communication and information sharing.
As governments begin to adopt e-voting, Mobile Voting for that matter, people doubt the
security and transparency of such schemes just as they do for the internet.
Besides these challenges and risks, Mobile Voting Systems can still be trusted as a platform to
conduct free and fair elections in a secure and transparent manner given that they are well
implemented. Mutual authentication, integrity, voter anonymity and system accountability are some
of the critical functional requirements that Mobile Voting Systems should have. If all these and some
other requirements are well catered for in the system, then it can be a success which is a high
possibility [4].
Mobile Voting Systems are composed of several interacting agents, the Vote Collector, the Vote
Manager, the Vote Authority, the Candidate, and the Voters. The Vote Authority (VA) is responsible
for registering candidates for elections and commissioning Vote Managers. The Vote Collector (VC)
is a mobile agent mandated by a stationary Vote Manager (VM) agent to collect votes from stationary
voting agents (VOs). The arrangement of the system in such components can ensure a stable system
suitable for voting [5].
Mobile Voting Systems offer multiple advantages over traditional paper-based voting systemsadvantages that increase citizen access to democratic processes and encourage participation.
Manish et al [6] explains these advantages as below;
1. Reduced costs: E-voting systems reduce the materials required for printing and distributing
ballots. Internet based voting, in particular, offers superior economies of scale in regard to the
size of the electoral roll.
2. Increased participation and voting options: E-voting offers increased convenience to the
voter, encourages more voters to cast their votes remotely, and increases the likelihood of
participation for mobile voters. Additionally, it permits access to more information regarding
voting options.
3. Greater speed and accuracy placing and tallying votes: E-voting's step-by-step processes
help minimize the number of miscast votes. The electronic gathering and counting of ballots
reduces the amount of time spent tallying votes and delivering results.
4. Greater accessibility for the disabled and the sick: Because they support a variety of
interfaces and accessibility features, e-voting systems allow citizens with disabilities-especially
the visually impaired-to vote independently and privately.
5. Flexibility: E-voting can support multiple languages, and the flexible design allows up-to-theminute ballot modifications.
According to Lumu [7], an article on the aftermath of 18th February 2011 presidential elections in
Uganda, invalid votes accounted for 4% of the votes. This makes the issue of invalid votes in manual
voting systems a big problem. However, with a mobile voting system, there will be little or no invalid
votes due to the use of option buttons on the electronic ballots to represent candidates.
In 2008, Estonia became the first country to allow voting in nationwide general elections to be done
online. The online turnout wasnt very great only about 3.5% of registered voters but it signaled
again that the country holds its own when it comes to technology.
Now, Estonia has again landed itself in the global technology spotlight. Its parliament voted to allow
voting via mobile phones Mobile Voting. Though it wont actually implement the process until the
2011 general elections, it is the first country to pass such a law.
Estonias mobile penetration rate was rated at more than 120% in 2008. The first question that comes
to mind is regarding the security of such endeavor. Following 2009 elections, officials said there were
no instances of hacking, fraud, or other malicious activity with the online voting process [12].
10
Other countries that have employed mobile voting systems in some of their referenda and elections
include; Australia, Austria, Belgium, Brazil, Canada, France, Germany, India, Ireland, Norway,
Portugal, Spain, Switzerland, The Netherlands, UK and USA [3].
2.5 Comparison between the Existing Voting Systems and the Proposed
Mobile Voting System
The table below illustrates the comparison between the existing voting systems in use and the
proposed mobile voting system.
Table 1: Comparison between the existing systems and the proposed MVS
Identifying attributes
MVS
MUK e-Voting
Web support
Yes
Yes
No
Area applied
University level
School/Hall level
Country-wide
Languages used
Java,
HTML, HTML, PHP and PKI, Python, C, HTML
PHP, AJAX and MySQL
and PHP
MySQL
Technology Used
Web application
Web based
Customizable
Yes
No
No
Hardware dependent
No
No
Yes
Security
More secure
Secure
Most secure
2.6 Conclusion
A socioeconomic and technological look into the future predicts that most business transactions,
client support services will be mobile-aided. The imminent response from mobile users through the
use of mobile phones will provide the inexpensive voting option as this technology will promote mass
participation and it will ensure secure voting. Therefore the need to ensure democracy and to support
voting process through the relevant mobile technologies is paramount now than ever before.
11
Chapter 3
Methodology
3.1 Data Collection Techniques
3.1.1 Interviews
Interviews are a forum for talking to people and they may be structured, unstructured or semistructured. We conducted interviews with the stakeholders; the School cabinet ministers to identify
and specify functional and non-functional requirements to determine requirement specification. Our
interviews were both semi-guided and unguided and also contained both closed and open ended
questions as we obtained the data mainly about the operation of the existing system; its problems,
strength, information flow and processing of the current system.
13
3.3.1.3 MySQL
MySQL is an open source Relational Database Management System (RDBMS) that uses Structured
Query Language (SQL), the most popular language for adding, accessing, and processing data in a
database. Because it is open source, anyone can download MySQL and tailor it to their needs in
accordance with general public license. MySQL is noted mainly for its speed, reliability, and
flexibility.
We used MySQL because it is designed as a multi-tasking/ multi-user database, which is one of the
main requirements for a database.
3.3.1.4 HTML
HTML, referring to Hypertext Markup Language, is the predominant markup language for web
pages. It provides a means to describe the structure of text-based information in a document by
denoting certain text as links, headings, paragraphs, lists, among others and to supplement that text
with interactive forms, embedded images, and other objects. HTML is written in the form of tags,
surrounded by angle brackets. HTML can also describe, to some degree, the appearance and
semantics of a document, and include embedded scripting language code which can affect the
behavior of Web browsers and other HTML processor.
We used Notepad++ environment to construct both HTML and PHP pages that served on the content
management system.
3.3.1.5 Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995.
It is the underlying technology that powers state-of-the-art programs including utilities, games, and
business applications. The use of technology to support business processes and policies in place
attracts the innovations of embedded systems. We wrote java applications (MIDlets) that were to be
embedded in mobile phones or simulated to support the voting processes of mobile voting system.
3.3.1.6 AJAX
Asynchronous JavaScript and XML (AJAX) is of late the most dynamic approach to real-time
running of web applications. This tool enabled us to display in real-time the votes each candidate
scored during the election process along with the respective chart to graphically represent the voting
results.
14
Testing the system performance, efficiency, disk space and its throughput to ensure proper
functioning of the system.
ii.
Checking the compatibility of the system with different operating systems for example
Windows XP, Linux and Windows 7.
iii.
Testing for security issues like resistance to remote attacks and authentication procedures.
3.4.2 Validation
The validation process for the Mobile Voting System provided a high degree of assurance that
specific processes consistently provide products which met predetermined specifications and quality
attributes. It involved identifying compliance to quality management procedures, life cycle definition,
specifications, for example; user requirements specification and functional specification,
documentation controls and various items of documentation for example user manuals and
administrator documentation and testing procedures.
15
Chapter 4
System Study, Analysis and Design
4.1 System Study
From the data gathered about the existing systems through interviews and review of existing
documents (documentation review), we found that manual voting systems are widely used in
Makerere University elections.
Further analysis of the manual voting system yielded a flow chart that shows the manual voting
process right from registration of candidates and voters to declaration of the winning candidate.
Figure 4.1 below shows manual voting process
17
6. Users shall be able to access the system at any time during the voting period, that is, the system
shall provide high reliability during the voting period.
processing takes place. In system design the following tools and techniques were used; process
modeling and data modeling.
Login
details
details
Returning
Login feedback
Voter
and ballot
Login Ack/Feedback
Mobile
Voting System
Cast vote
Vote count/tally
and Results
Ack of vote
Login
details
Registrar
Login feedback
Voter + candidate
registration
Figure 4.2: Context Diagram for the Mobile Voting System
19
Officer
Key Symbols
Symbol
Name
Process
Data flow
Data Report
Data Store
External Entity
20
21
Description
Validates authentic users to access the system, and blocks
unauthorized access
Candidate Registration
Voter Registration
Registration of voters
Voting
Vote Tallying
Description
User data
Candidate data
Voter data
Votes
Description
Voters Register
Tally Report
22
Description
Voter
Registrar
Returning Officer
23
24
1. Candidate
Data to be stored by the candidate (aspirant for one of the positions being elected for) entity
include; voter ID (student number), candidate Name, position ID, election ID, Number of Votes
and photo.
2. Voter
Students and candidates are both voters. Information about voters include; voter ID, First Name,
Last Name, Course ID, Gender, Hall ID, Password and Status.
3. Position
Each candidate aspires to be elected for one position. The Position entity stores the Position ID
and Position Name.
4. Course
A voter at Makerere University can pursue only one course. Information to be obtained from the
course entity is Course ID and Course Name.
5. Hall
Besides the courses, students also are attached or reside in halls. The Hall entity stores the Hall
ID and Hall Name.
6. Vote
A voter casts vote to candidate, which is later tallied. The Vote entity stores the voter ID,
candidates voter ID and position ID.
25
Attributes
Voter
voterID
firstName
lastName
courseID
hallID
gender
password
status
Candidate
voterID
candidateName
positionID
noOfVotes
photo
Position
positionID
positionName
Course
courseID
courseName
Hall
hallID
hallName
Vote
voteID
voterID
positionID
candidateID
26
Data Type
Constraint
candidateID
int(10)
candidateName
varchar(50)
Not null
positionID
int(10)
noOf Votes
int(10)
Null
photo
text
Null
4.4.6.2 Voter
Table 8: The Voter table
Field Name
Data Type
Constraint
voterID
int(10)
first Name
varchar(20)
Not null
last Name
varchar(20)
Not null
hallID
varchar(5)
course ID
varchar(5)
gender
char(1)
Null
password
varchar(40)
Not null
status
int(1)
Null
4.4.6.3 Course
Table 9: The Course table
Field Name
Data Type
Constraint
courseID
varchar(5)
courseName
varchar(30)
Not null
29
4.4.6.4 Position
Table 10: The Position table
Field Name
Data Type
Constraint
positionID
int(10)
Primary Key
positionName
varchar(50)
Not null
4.4.6.5 Hall
Table 11: The Hall table
Field Name
Data Type
Constraint
hallID
varchar(8)
hallName
varchar(20)
Not null
4.4.6.6 Vote
Table 12: The Vote table
Field Name
Data Type
Constraint
voteID
int(10)
voterID
int(10)
Not null
positionID
int(10)
Not null
candidateID
int(10)
Not null
30
Chapter 5
System Implementation
5.1 Introduction
This section describes the implementation of the design models in of the system and also shows the
different results generated by the system. Therefore screenshots of the system will be displayed to
show how the system displays results given a command.
The system also provides the returning officer with a report depicting the final outcome of the voting
process.
Mobile User
Login
Registrar
Returning
Officer
Figure 5.1: System Map showing functions provided by the system to each user
32
Minimum requirements
Reason
CPU Speed
1GHz
Moderate
RAM
512MB
Moderate
Disk Space
20GB
Enough
FSB
32bit
Moderate
Bandwidth
100Mbps
Enough
Phone Memory
320kB
Moderate
Essential
33
MySQL will be required to interpret SQL queries/commands that were used in the implementation of
the database and data retrieval form the database. WampServer will be used on windows Operating
Systems to process all requests and display results on web pages.
A number of web browsers can be used for this system which include; Mozilla Firefox, Netscape
Navigator, Internet Explorer, Opera Browser and Google Chrome.
The Phone should be java-enabled and should implement at least CLDC 1.0 and MIDP 2.0.
These can be summarized in the table below;
Table 14: Software Requirements
Software
Minimum requirements
Reason
Web server
WampServer
Freeware
MySQL
Freeware
Web browser
Operating System
MIDP 2.0
Required
Required
34
Figure 5.2: The Mobile Voting Systems login page and Homepage.
Figure 5.2 shows the homepage that allows all election officials to login into the system in order to
access their pages and perform their tasks. For the samples below, we will use the registrars options
when he/she logs in. The Login page also has some interesting components like enabling one to
recover their passwords in case they have forgotten. Alert messages are displayed in case of wrong
username or password supplied during login. The homepage is also provides a link for the voter to
check the voter register to verify their details and also a link to view the election results when
elections are in progress.
35
Figure 5.4 shows the results page. This page dynamically displays results as the voting progresses.
The user navigates through the various positions to see the result per position by clicking the links of
each position on the left-side panel.
Figures 5.5 5.8: The Mobile Voters Login & Authentication Interfaces.
Figure 5.5 illustrates the mobile interface for which a voter is prompted to login with his/her correct
voter ID and password.
Figure 5.6 shows an error message a voter gets when he/she tries to login without supplying either
detail of his/her voter ID or password.
Figure 5.7 shows an error message prompted to an unregistered user when he/she tries to login as a
voter.
Figure 5.8 shows a confirmation interface for correct voter login upon the voter supplying the correct
voter ID and password.
Figure 5.10 shows a confirmation message to a voter to confirm his/her choice of voting a candidate.
The voter can change his/her mind to vote for another candidate by selecting cancel or proceed by
selecting yes to accept the selected choice of candidate.
Figure 5.11 shows an acknowledgment to voter upon successfully voting for all candidates of his/her
choice. Upon which the voter will click finish to end the voting process and automatically logout.
Figure 5.12 shows an alert message denying a voter who has voted from re-logging into the system
to vote again.
38
39
Chapter 6
Summary, Recommendations and Conclusion
6.1 Summary
This project was aimed at improving on the speed, ease and transparency of the electoral process.
There was need to guarantee improved quality of service, reduced election malpractices, increased
efficiency in tallying, increased voter participation, decreased invalid votes and voting errors;
prevent a digital divide, and allow for better voter registration management.
We looked at other systems alike and compared them with our system and realized some services
were not offered by those systems. So this system is generally a mobile based with a web-based
application that allows for voting over a mobile device and tallying of results displayed over the web.
Many people both the voters and election officials will benefit from further development in this area
since there is need to influence the progress of electronic voting, mass voter participation and ensure
the transparency, freedom and fairness of the whole election process.
6.2 Recommendations
We recommend that this system should be used by the electoral bodies such as Makerere University
Guild Election Commission, the Electoral Commission of Uganda because we believe that the system
can administer the election processes fairly, effectively and efficiently.
6.3 Conclusion
This project was rewarding as it enabled us have a better insight of real world problems and how to
go about with solving them. We are also happy that the goals we set at the beginning have been met
as the system is fully functional as proposed.
40
References
[1]
Oxford
Online
Dictionary.
Retrieved
on
25th
February
2011,
from
http://oxforddictionaries.com/definition/vote#m_en_gb0933550.005
[2]
M. Burmester and E. Magkos (2003). Towards secure and practical e-elections in the new era.
In D. Gritzalis, editor, Secure Electronic Voting, pages 6372. Kluwer Academic Publishers.
[3]
B. Nadja, M. H. Alves, J. Bradly, L. Kristina, K.Anna and K. Robert (2009). Focus on EVoting. Retrieved on 10th February 2011, from http://aceproject.org/ace-en/focus/evoting/onePage.html.
[4]
[5]
[6]
K. Manish, T.V. Suresh Kumar, M. Hanumanthappa and D. E. Geetha. (2006). Secure Mobile
Based Voting System. Dept. of Master of Computer Applications, M. S. Ramaiah Institute of
Technology, Bangalore-560 054, India. Retrieved on 10th February 2011, from http://csisigegov.org/emerging_pdf/35_324-330.pdf
[7]
D.T. Lumu. (2011) Election Rigging. The Observer. Retrieved on 25th February 2011, from
http://www.observer.ug/index.php?option=com_content&task=view&id=12352&Itemid=59.
[8]
The Electoral Commission Board. (2006). Ugandas Electoral Process. The Third Conference of
Ugandas Ambassadors and High Commissioners.
[9]
Mugisha B. (2008). A Secure Internet-Based Voting System for Low ICT Resourced Countries.
Retrieved on 5th February 2011, from http://aceproject.org/ace-en/focus/e-voting/onePage.html
41
[10]
The Republic of Uganda. (1995). The Constitution of the Republic of Uganda. The Parliament
of Uganda. Articles 67 (1)(2)(3)(4) and 68(1)(2)(3)(4)(5). Page: 57 and 58. Retrieved on 3rd
February 2011, from http://www.ugandaembassy.com/Constitution_of _Uganda.pdf
[11]
[12]
T. Rich (2009), Mobile Voting in Estonia. Retrieved on 14th February 2011, from
http://blog.tmcnet.com/convergence-corner/2008/12/mobile-voting-in-estonia.html.
42
1.
Appendices
Appendix I:
Interview Guide
Questions asked during the interview:
Voter Registration
Who is in charge of registering voters?
How do you keep voter records?
Where do you keep the voter register?
What are the requirements a voter should meet in order to be registered?
What criteria do you use to annul an ineligible registered voter?
Voting Process
Who are officials involved the voting process?
What are the procedures followed in the voting process?
What are the possible irregularities that may emerge during the voting process?
How are these irregularities handled?
43
Appendix II:
Pseudo code
Pseudo code for Registrars login
Initialize Parameters to access data (username and password)
If Parameters are equal to null
Alert box, please enter a username and password
Else
Go to registrars page
44
Appendix III:
Other Screenshots
45
47