E Voting System

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 68

A STUDENT e-VOTING SYSTEM

A case study of College of Computing and Information Science (CoCIS)

By

BIT 19-16
DEPARTMENT OF INFORMATION TECHNOLOGY
SCHOOL OF COMPUTING AND INFORMATICS TECHNOLOGY

A Project proposal submitted to the School of Computing and Informatics Technology


For the Study Leading to a Project in Partial Fulfillment of the
Requirements for the Award of the Degree of Bachelor of
Information technology Of Makerere University

Supervisor

Mr. Lwomwa Joseph


Department of Information Technology
School of Computing and Informatics Technology, Makerere University
Email Address: Lwomwajoseph@gmail.com
Telephone: +256774036703

June, 2019

i
ii
iii
DEDICATION
We would like to dedicate this project report to our parents.

iv
ACKNOWLEDGEMENT
We give thanks, glory and honor to God for blessing us throughout the entire project and
granting us strength, health, courage and life. We also acknowledge our research supervisor, Mr.
Lwomwa Joseph for his support, correction and guidance throughout this project period. May
God reward his endeavors.

v
TABLE OF CONTENTS
DECLARATION ........................................................................................ Error! Bookmark not defined.

APPROVAL ............................................................................................... Error! Bookmark not defined.

DEDICATION ............................................................................................................................................. iv

ACKNOWLEDGEMENT ............................................................................................................................ v

TABLE OF CONTENTS ............................................................................................................................. vi

LIST OF TABLES ........................................................................................................................................ x

LIST OF FIGURES ..................................................................................................................................... xi

LIST OF ABBREVIATIONS ..................................................................................................................... xii

ABSTRACT ............................................................................................................................................... xiii

CHAPTER ONE ........................................................................................................................................... 1

1.0 Introduction ......................................................................................................................................... 1

1.1 Background to the Problem................................................................................................................. 1

1.1 Problem Statement .............................................................................................................................. 2

1.2 Objectives ........................................................................................................................................... 2

1.2.1 Main Objective............................................................................................................................. 2

1.2.2 Specific Objectives ...................................................................................................................... 2

1.3 Scope of Study .................................................................................................................................... 3

1.3.1 Content Scope .............................................................................................................................. 3

1.3.2 Geographical Scope ..................................................................................................................... 3

1.3.3 Time scope ................................................................................................................................... 3

1.4 Significance......................................................................................................................................... 3

CHAPTER TWO .......................................................................................................................................... 4

LITERATURE REVIEW ............................................................................................................................. 4

2.0 Introduction ......................................................................................................................................... 4

2.1 Voting Equipment ............................................................................................................................... 4

vi
2.1.1 Paper-based voting ....................................................................................................................... 4

2.1.2 Lever voting machine................................................................................................................... 4

2.1.3 Punch card .................................................................................................................................... 4

2.1.4 Optical voting machine ................................................................................................................ 4

2.2 Categories of Voting Systems ............................................................................................................. 5

2.2.1 Paper-based Voting Systems........................................................................................................ 5

2.2.2 Internet Voting Systems ............................................................................................................... 5

2.1 Related Systems .................................................................................................................................. 7

2.6 Comparative Evaluation...................................................................................................................... 9

2.7 Conclusion .......................................................................................................................................... 9

CHAPTER THREE .................................................................................................................................... 11

METHODOLOGY ..................................................................................................................................... 11

3.0 Introduction ....................................................................................................................................... 11

3.1Research design ................................................................................................................................. 11

3.2 Study Population ............................................................................................................................... 11

3.2.1 Sample Size ................................................................................................................................ 12

3.2.2 Sampling Techniques ................................................................................................................. 12

3.3 Sources of Data ................................................................................................................................. 13

3.4 Data collection Techniques ............................................................................................................... 13

3.4.1 Interview Method ....................................................................................................................... 13

3.4.2 Questionnaire Survey Method ................................................................................................... 13

3.4.3 Documentary Review Method ................................................................................................... 14

3.5 Data Analysis .................................................................................................................................... 14

3.6 System Analysis and Design ............................................................................................................. 15

3.7 System Design Approach .................................................................................................................. 15

3.8 System Implementation .................................................................................................................... 15

3.9 System Testing and Validation ......................................................................................................... 16

vii
3.10 Ethical Consideration ...................................................................................................................... 16

3.11 Limitations of the study .................................................................................................................. 16

3.12 Conclusion ...................................................................................................................................... 17

CHAPTER FOUR ....................................................................................................................................... 18

SYSTEM ANALYSIS AND DESIGN ....................................................................................................... 18

4.1 System study ..................................................................................................................................... 18

4.2 Requirements specification ............................................................................................................... 19

4.2.1 Data Analysis Results ................................................................................................................ 19

4.2.2 Requirements Specification ........................................................................................................... 23

4.3 System Design .................................................................................................................................. 25

4.3.1 System Architecture ................................................................................................................... 25

4.3.2 Process modeling ....................................................................................................................... 26

4.3.3 Data Modeling ........................................................................................................................... 30

CHAPTER FIVE ........................................................................................................................................ 37

SYSTEM IMPLEMENTATION, TESTING AND VALIDATION .......................................................... 37

5.0 Chapter Introduction ......................................................................................................................... 37

5.1 System Implementation and Review................................................................................................. 37

5.1.1 The Three-tier Architecture ....................................................................................................... 37

5.1.2 Voting process using the student e-Voting System.................................................................... 38

5.3 System Testing .................................................................................................................................. 44

5.4 System Validation ............................................................................................................................. 45

CHAPTER SIX ........................................................................................................................................... 47

DISCUSSION, LIMITATIONS, CONCLUSIONS AND RECOMMENDATIONS ................................ 47

6.0 Introduction ....................................................................................................................................... 47

6.1 Discussion ......................................................................................................................................... 47

6.2 Limitations ........................................................................................................................................ 48

6.3 Conclusions ....................................................................................................................................... 48

viii
6.4 Recommendation .............................................................................................................................. 49

REFERENCES ........................................................................................................................................... 50

APPENDICES ............................................................................................................................................ 52

APPENDIX A: QUESTIONNAIRE ........................................................................................................... 52

MAKERERE UNIVERSITY...................................................................................................................... 52

APPENDIX B: QUESTIONNAIRE FOR SYSTEM VALIDATION ........................................................ 54

APPENDIX C: INTRODUCTION LETTER ............................................................................................. 55

ix
LIST OF TABLES

Table 2.1: Table showing the examples of related voting systems................................................. 7

Table 2.2: Comparative evaluation ................................................................................................. 9

Table 3.1: sample size ................................................................................................................... 12

Table 4.1: The respondents’ gender .............................................................................................. 19

Table 4.2. Distribution of respondents according to their age ...................................................... 20

Table 4.3. Length of service with e-Voting .................................................................................. 20

Table 4.4: Opinion whether student voting processes are easy and fast ....................................... 21

Table 4.5. How election results are shared with and disseminated among stakeholders.............. 22

Table 4.6: Suggestion for the e-Voting system development ....................................................... 23

Table 4.7: Data dictionary for Processes in the level 1 DFD........................................................ 28

Table 4.8: Data dictionary for External Entities in the level 1 DFD ............................................ 29

Table 4.9: Data dictionary for Data stores in the level 1 DFD ..................................................... 29

Table 4.10: User relation............................................................................................................... 34

Table 4.11: Candidate relation ...................................................................................................... 34

Table 4.12: Voter relation ............................................................................................................. 35

Table 4.13: Post relation ............................................................................................................... 35

Table 4.14: Vote relation .............................................................................................................. 36

Table 5.1: Results of system validation ........................................................................................ 45

x
LIST OF FIGURES

Figure 4.1: System Architecture ................................................................................................... 25

Figure 4.2: Symbols used in process modeling ............................................................................ 26

Figure 4.3: Context Diagram for the student e-Voting system ..................................................... 27

Figure 4.4: Level 1 Data Flow Diagram for the student e-Voting system .................................... 28

Figure 4.5: Relationships between Entities ................................................................................... 32

Figure 4.6: Enhanced Entity Relationship Diagram ..................................................................... 32

Figure 5.1. Candidate Registration Page....................................................................................... 38

Figure 5.2. Voter Registration Page .............................................................................................. 39

Figure 5.3. List of Voters Page ..................................................................................................... 40

Figure 5.4. Voter Login Page........................................................................................................ 41

Figure 5.5. List of candidates of given positions for a voter to choose from ............................... 41

Figure 5.6. Voting closure alert page ............................................................................................ 42

Figure 5.7. Graphical report of Election results ............................................................................ 43

Figure 5.8.Sample Data input validation page .............................................................................. 44

xi
LIST OF ABBREVIATIONS

CoCIS : College of Computing and Information Science

CSS : Cascading Style Sheets

DFDs : Data Flow Diagrams

ERDs : Entity Relationship Diagrams

e-Voting : Electronic Voting

HTML : Hyper Text Markup Language

IT Information Technology

ICT : Information communication Technology

MySQL : My Structured query language

PHP : Hypertext Pre-Processor

SDLC : System Development Life Cycle

xii
ABSTRACT

Much as students in the College of Computing and Information Science (CoCIS), Makerere
University can physically vote for their leaders, the current voting process involves a lot of
lengthy paper work procedures and requires students to move to the polling station in order to
cast their vote. In this lengthy process, the students have to provide their credentials to the
administrators/officials at the polling stations and then they verify the information provided and
the students are given ballot papers in order to complete the voting process. This process is
tiresome and time consuming, which increases the rate of students’ absenteeism from voting.
These students’ voting problems were bridged through the implementation of the student e-
Voting system that provides an easier way of voting that does not require ones’ physical
presence in order to cast their vote.

The project scope was limited to CoCIS, Makerere University. The objectives of the project
were fulfilled using a number of tools and techniques. In objective one, the researchers carried
out a study using data collection tools like questionnaires and interview guides. In objective two,
the project was designed using data flow diagrams and entity relationship diagrams. In objective
three, the system was developed using HTML, PHP, CSS, JavaScript, jQuery, MySQL, and
Bootstrap. In objective four, the developed system was tested using techniques such as black-box
and white-box testing of different units as well as the whole integrated system. The system was
validated by taking it to the users to confirm whether it meets the user requirements. A validation
questionnaire was provided to the users and results were analyzed using excel spreadsheet. From
the results of validation, it was realized that the users of the developed system confirmed that it
was; scalable (90%), authenticates users (95%), efficient (95%), effective (90%), user friendly
(85%) and flexible (95%).

Therefore based on the findings of the study, the researchers recommended that the developed
student e-Voting system should be adopted and deployed for efficient and effective e-Voting of
student leaders remotely using all types of devices not limited to laptops, tablets and smart
phones connected to the internet.

xiii
CHAPTER ONE
INTRODUCTION

1.0 Introduction
Universities around the world are increasingly considering the replacement of traditional paper-
based voting schemes with electronic voting systems (Willem, Spencer & Saurav & 2016). A
particular form of such e-voting systems are those which allow voters to cast their votes over the
internet, so-called remote mobile voting systems also known as m-voting systems. In this project,
the general term e-voting will be used in reference to remote e-voting over the internet, and with
voting the researchers refer to polls, elections, referenda, and other forms of collective decision
making. Thus, Willem, Spencer and Saurav (2016) define an m-Voting System as a web-based
system that facilitates the running of elections and surveys online.

Mobile voting is an electronic way of choosing leaders via a web driven application. The
advantage of mobile voting over the common queue method is that the voters have the choice of
voting at their own free time and there is reduced congestion. It also minimizes on errors of vote
counting. The individual votes are submitted to a database which can be queried to find out who
of the aspirants for a given post has the highest number of votes.

Willem, Spencer and Saurav (2016) asserted that for an m-voting system to be ideal, four
attributes must be satisfied: anonymity, scalability, speed, and accuracy. Therefore, the student
m-Voting system has been developed to simplify the process of organizing student elections in
the College of Computing and Information Science (CoCIS), Makerere University and make it
convenient for voters to vote remotely from their personal smart mobile phones, laptops,
computers in the computer laboratories or home computers while taking into consideration
security, anonymity and providing auditing capabilities.

1.1 Background to the Problem


In Uganda’s Makerere University, every college such as CoCIS elects leaders each year to
represent interests of the students in the guild and college administrative meetings (Xoddo,
2019). Student leadership posts at CoCIS include; a college president (or school president),
general secretary, treasurer, speaker, academic minister among others.

1
The voting process at CoCIS usually has inconsistencies and inconveniences which have made
the whole process inefficient hence leading to dissatisfaction of various involved parties (Xoddo,
2019). These inconsistencies and inconveniences include corruption, long queues to cast votes,
records not being well kept, long time taken during vote counting, just to mention but a few. All
these mentioned above leads to false results produced. In this project, the student m-Voting
system enhances an electronic way of choosing leaders remotely via internet enabled devices
such as a smart mobile phone or laptop. It minimizes on errors of vote counting. The individual
votes are submitted to a database which can be queried to find out who of the aspirants for a
given post has the highest number of votes.

The system is also geared towards increasing the voting percentage in the college since it has
been noted that with the old voting method (the Queue System), the voter turnup has been a
wanting case.

1.1 Problem Statement


The current voting system at CoCIS involves a lot of lengthy paper work procedures and requires
students to move to the polling stations in order to cast their vote. This lengthy process is
tiresome and time consuming, which increases the rate of students’ absenteeism from voting.
The student e-Voting system therefore provides an easier way of voting that does not require
ones’ physical presence in order to cast their vote.

1.2 Objectives
1.2.1 Main Objective
The main objective is to develop a student e-Voting system that enables the students of CoCIS to
easily and conveniently vote for their leaders remotely.

1.2.2 Specific Objectives


The specific objectives of the project include the following:

i. To review literature and carry out a study about the current voting system used at CoCIS,
analyse and identify the requirements for the student e-Voting system for CoCIS.
ii. To design the student e-Voting system that enables the students of CoCIS to vote for their
leaders remotely.

2
iii. To implement the student e-Voting system that enables the students of CoCIS to vote for
their leaders remotely.
iv. To test and validate the student e-Voting system.

1.3 Scope of Study


1.3.1 Content Scope
The study concentrated on the implementation of the student e-Voting system, which enabled the
students of CoCIS to vote for their leaders remotely. It provides the online registration form for
the users before voting and makes the users to cast their votes online. The system is user friendly
and has high security features.

1.3.2 Geographical Scope


The study was conducted at CoCIS Makerere University, Uganda. The google map coordinates
of Makerere University are 0° 20' 6.00"North, 32° 34' 12.00"East. Makerere University is located
between Bombo and sir Apollo roads and it is about 5 kilometers from Kampala city Centre.

1.3.3 Time scope


The study involved the use of data related to the topic under investigation from February 2019 to
June 2019. This time range was suitable for arriving at correct conclusions.

1.4 Significance
Internet voting allows the casting of electronic ballots from virtually any location around the
world, helping to reduce students’ absenteeism rate. Thus, the student e-Voting system enables
students to easily, remotely and conveniently vote for their chosen leaders.

The university and the college incur minimal costs when the student e-Voting system is used
compared to the much costs that were incurred on printing papers such as ballot papers. Thus,
other colleges with in the university can also adopt the new technology, the student e-Voting
system.

The findings of the study contributed to existing stock of knowledge as far as e-Voting systems
are concerned. Future researchers on related studies will use this study for domain knowledge
enhancement.

3
CHAPTER TWO
LITERATURE REVIEW
2.0 Introduction
This chapter focuses on the existing literature that is related to m-Voting systems. The literature
was sourced from; internet sources, text books, and journals.

2.1 Voting Equipment


Today, voting equipment which are widely adopted in many countries may be divided into five
different types:

2.1.1 Paper-based voting


The voter gets a blank ballot and use a pen or a marker to indicate the candidate he wants to vote.
Hand-counted ballots are time consuming as well as needs a lot of labor, but it is easy to
manufacture paper bal1lots which can be retained for verification, this type is still the most
common way of voting (McCallum, 2015).

2.1.2 Lever voting machine


Lever machine is peculiar equipment, and each lever is assigned a corresponding candidate. The
voter pulls the lever to vote for his favorite candidate. This kind of voting machine can count up
the ballots automatically. Because its interface is not user-friendly enough, giving some training
to voters is necessary (Schneier, 2015).

2.1.3 Punch card


The voter uses metallic hole-punch to punch a hole on the blank ballot. It can count votes
automatically, but if the voter’s perforation is incomplete, the result is probably determined
wrongly (Germann & Serdült, 2017).

2.1.4Optical voting machine


In this type, each voter fills a circle corresponding to their favorite candidate on the blank ballot,
this machine selects the darkest mark on each ballot for the vote then computes the total result.
This kind of machine counts up ballots rapidly. However, if the voter overfills over the circle, it
will lead to an error (Schneier, 2015).

4
2.2 Categories of Voting Systems
There are mainly two categories of voting systems, that is, paper-based voting systems and
internet voting systems.

2.2.1 Paper-based Voting Systems


Ballot voting is a democratic process whereby a group of individuals express their opinion and
choice by way of casting a ballot (McCallum, 2015). The ballot process involves presenting a
voter with a list of choices to mark against their favorite choice. In the paper-based system,
voting is performed by using ballot paper and then the counting is executed manually. This is a
time-consuming process and involves manual effort (McCallum, 2015). It might also lead to the
possibility of invalid votes. All the above tedious tasks are eliminated in the above process. In
internet voting systems, the counting of votes is done by using a computer (Kobie, 2015). This
saves time and also avoids the errors that might occur during the election process at CoCIS
(Nzoka et al., 2013).

2.2.2 Internet Voting Systems


With the emerging technology and computers, computerized processes have been invented
worldwide to improve efficiency and credibility of voting processes (Gurchetan et la., 2013).
Two distinct approaches in computerized voting processes are electronic voting and online
voting (Kremer, Mark & Ben, 2010). While online voting aims to provide a web-based interface
were voters can cast their votes and get results of the election process, electronic voting has to do
with the registration process being carried out electronically e.g. use of biometrics and coded
voter cards that can be scanned by an electronic device to authenticate the voter. Thus, an
electronic voting system may end up having human clerks tallying the votes upon termination of
the election process (Osho, 2015).

Internet voting allows the casting of electronic ballots from virtually any location around the
world (Mellon, Peixoto & Sjoberg, 2017). Elections may be organized in many different ways.
Paper-based elections make use of paper ballots, while automated elections make use of some
kind of voting machines that automate the voting and/or tabulation procedures. When the voting
machines are actually implemented by computers, it is electronic voting. Online voting systems

5
are much more formal than online polling systems, because they seek (or should seek) to
accurately reflect the voters' preferences (Bochsler, 2010).

Mobile voting is an electronic way of choosing leaders via a web driven application (Germann &
Serdült, 2017). The advantage of mobile voting over the common queue method is that the
voters have the choice of voting at their own free time and there is reduced congestion. It also
minimizes on errors of vote counting (Kremer, Mark & Ben, 2010). The individual votes are
submitted to a database which can be queried to find out who of the aspirants for a given post has
the highest number of votes.

Internet voting systems are appealing for several reasons which include; People are getting more
used to work with computers to do all sorts of things, namely sensitive operations such as
shopping and home banking which allow people to vote far from where they usually live, helping
to reduce absenteeism rate (Schneier, 2015).

Nzoka, et al (2013) suggested online voting as a solution to curb the challenge of cheating in
elections and provide a baseline for online voting system, such a system should provide a high
level of security and establish five core requirements of an electronic voting system to address
issues of privacy, authentication, anonymity, uniqueness and coercion.

According to Zissis (2011), online voting system shows that web technologies can be harnessed
to facilitate voting processes and one no longer needs to be physically at the Campus setting to
exercise their democratic rights as students. The system exposes a web interface through which
students login and cast their votes during the election period. In Kenya, universities and colleges
have to rely on the human clerk electoral processes (Feldman, 2015).

6
2.1 Related Systems
Table 2.1: Table showing the examples of related voting systems
System Description Strengths Weaknesses
Paper- The voter gets a blank i. Paper Ballots iv. Expensive and Time
based ballot and uses a pen or a Are Easily consuming
ballots marker to tick the Understood v. Too much paper work
system candidate he desires to by Voters vi. Errors during data
vote for. Hand-counted ii. Paper Ballot entry
ballots are a time and Systems vii. Loss of registration
labour consuming process, Easily forms
although it is easy to Accommoda viii. Cases of some voters
manufacture paper ballots te Additional being locked out of the
and the ballots can be Voters at voting premises.
retained for verification. Low Cost
iii. Voters Can
Continue to
Vote in the
Event of
Equipment
Failure
Lever Lever machine is peculiar i. It auto- ii. They were very fragile
voting equipment, and each lever counts the machines, once they
machine is assigned to a votes, the fall over, they would
system corresponding candidate. counter get spoilt.
The voter pulls the lever inside the
to vote for his favourite machine
candidate. This kind of keeps track
voting machine can count of the votes,
up the ballots therefore
automatically. Because its there are few
interface is not user- chances of

7
friendly enough, giving vote
some training to voters is miscounting.
necessary.

Punch card The voter uses metallic i. Voters iii. While the ballot is in
system hole-punch to punch a cannot easily the automatic machine,
hole on the blank ballot. It verify that the voter can punch
can count votes their ballots holes in it but is unable
automatically, but if the are properly to see the ballot itself.
voter’s perforation is punched Once removed from
incomplete, the result is the machine, the voter
ii. If there is a
probably determined can see the holes, but
hand count
wrongly. without the ballot
of punched-
labels printed on the
card ballots,
machine, the voter is
the counters
unable to tell what
cannot easily
those holes mean.
interpret
improperly
made
punches.

8
2.6 Comparative Evaluation
This section focuses on the comparison of the related existing systems, according to their
features as shown in table 2.2, with the student e-Voting system.

Table 2.2: Comparative evaluation

Features of the related Paper-based Lever voting Punch card Student e-


existing systems ballots machine system Voting system
system system

The voter gets a blank ballot Yes No No No


and uses a pen or a marker to
tick the candidate he desires to
vote for.

Count up the ballots No Yes No Yes


automatically

Remote voting while using No No No Yes


various devices such as a smart
phones, tablets and laptops
connected to the internet

Real time dynamic reporting of No No No Yes


the election results

2.7 Conclusion
Table 2.2 shows that the existing systems, for instance the Paper-based ballot system, lever
voting machine system, DRE, punch card system have some common and different features. The
student e-Voting system has not only got the same features as the mentioned systems but it also
has other unique features, for instance, the capability to enable voters to vote remotely using
various devices such as a smart phones, tablets and laptops connected to the internet, making it
unique from the other existing systems as evaluated. They can also keep track of the election

9
results as the voting process is going on. That is; a graphical report showing the status of the
election results as voting is going on.

10
CHAPTER THREE
METHODOLOGY

3.0 Introduction
This chapter presents the research design, study population, sample size and selection, data
collection methods, data collection instruments, validity and reliability, procedure of data
collection, data management and analysis and measurement of variables, data structures that
were employed in research study to determine the requirements, system analysis and design as
well as system development, testing and evaluation.

3.1Research design
The study used a qualitative survey research design to provide a more comprehensive picture of
each aspect of the study. A research design is a detailed outline of how an investigation took
place (Creswell, 2012). The study also used a survey research method, which was a non-
experimental, descriptive research method. Surveys were useful when the researchers wanted to
collect data on phenomena that could not be directly observed. Other advantages of the survey
were; it was economical, and allowed a collection of a reasonable amount of data from the study
population, and also facilitated standardization of the data collected (Bhattacherjee, 2011) and a
disadvantage of the survey method was its artificiality.

3.2 Study Population


The target population contained members of a group that the researchers were interested in
studying (Shahrokh & Dougherty, 2014) and the results of the study were generalized to this
population, because they all had significant traits in common. To identify the target population,
the researchers specified the criteria that determined which individuals were to be included and
which individuals were not to be included. They considered a portion of the population to which
they had reasonable access; a subset of the target population. For example, respondents (both
students and EC staff) were from CoCIS, Makerere University where the researchers’ studied
from. Therefore, the researchers identified 270 individuals from whom the sample size was got
as shown in table 3.1.

11
3.2.1 Sample Size
A sample is the actual group from which data is collected (Shahrokh & Dougherty, 2014) and it
is a subset of the population and should be a typical representation of the larger group. At least
30% of the total population is representative (Shahrokh & Dougherty, 2014). Thus, the study was
conducted on a convenience sample of eighty (81) respondents, who included both 75 students
and 6 staff (that is, EC officials at CoCIS) formed the sample of the study. The target population
was selected because it was central and pivotal to the topic under study and because of that, the
researchers were in position to obtain the relevant information to the study. The sample size was
adequate enough to generate unbiased results.

Table 3.1: sample size


Respondents Population Percentage (%) Sample Size Sampling technique
Staff (EC Officials) 20 30/100*20 06 Purposive
Students 250 30/100*250 75 Simple random
Total population 270 81
Source: Primary data (2019)

3.2.2 Sampling Techniques


Sampling was concerned with the selection of a subset of individuals from within a statistical
population to estimate characteristics of the whole population (Shahrokh & Dougherty, 2014).
For this study, purposive sampling technique was used so as to gather the necessary information
from the staff. This enabled the researchers to select the respondents basing on their ability to
provide relevant and dependable information. This sampling design was used because it enabled
the researchers to obtain real facts on the study under investigation since only respondents who
with information on the topic under investigation were purposely sampled.

Simple random sampling technique was also used to collect information from students (Sekaran
& Bougie, 2013). This technique had high generalizability of findings; hence it was suitable for a
large study population. The researchers allocated a number to every student respondent of the
accessible population, place the numbers in a container then picked numbers at random. The
subjects corresponding to the numbers picked were included in the sample.

12
3.3 Sources of Data
The researchers used both primary and secondary data. Primary data about the existing paper-
based voting system was obtained from the university documents, interviews with members of
staff and questionnaires with students. Secondary data was used from online journals, text books,
articles and other literature available about e-voting systems.

3.4 Data collection Techniques


To collect data from CoCIS, the researchers relied on primary and secondary data collection
methods (Sekaran, 2003). The methods that were employed included documentary review,
interviews and questionnaire surveys.

3.4.1 Interview Method


The common way of collecting qualitative data was by conducting interviews because it enabled
the researchers to acquire loads of insightful primary data in a very short time. It was also
possible in this technique to ask follow-up questions if the answers from the respondents would
not be enough (Bryman, 2002). The interview method refers to the method of data collection
through verbal interaction, face-to-face and by telephone (Sekaran, 2000; Amin, 2005).

Primary data was collected using the interview guide (appendix B) to guide the researchers in
conducting face-to-face interviews. This guide consisted of a list of questions which the
researchers used in collecting data (Jacobsen et al, 2002). These questions helped the study to
stay focused and thus enabled the researchers to collect necessary information.

3.4.2 Questionnaire Survey Method


The researchers also used a questionnaire survey method to collect primary data from the
respondents. It was used because respondents could easily read and write the answers. The
questionnaire was a written set of questions that was used to obtain information about the study
resources from the selected respondents. A questionnaire (appendix A) was used because it
helped to investigate motives and feelings in Likert scaling (Creswell, 2014). The questionnaire
had closed-ended questions divided into sections that represent the different variables of the
study. The open-ended questions provided a chance for the respondents to provide detailed
information regarding the study.

13
The study issued out 75 questionnaires, which were successfully completed by the respondents
(students), hence the response rate generated was 100%. Five (05) other respondents (EC
officials) were interviewed.

3.4.3 Documentary Review Method


Documentary review method refers to the analysis of documents that contain information about
the phenomenon under study. Payne and Payne (2004) described the documentary review
method as the technique used to categorize, investigate, interpret and identify the limitations of
other methods like findings in previous studies. Data collection involved review of documents to
gather secondary data that was used in the study. Documents that were reviewed included
textbooks, journals and articles.

The documentary review checklist was used to collect secondary data. It constituted the list of
items of information that were obtained from documents, records and other materials. In order to
secure measurable data, the items that were included in the schedule were limited to those that
could be uniformly secured from a large number of case histories or other records.

3.5 Data Analysis


The data was analyzed and interpreted using excel spreadsheet, which was easier to use. The
patterns of the results were used to highlight the key features of the designed framework. Excel
was easy to use and could enable the researchers to generate results of analysis inform of bar
graphs and statistical tables.

To analyse qualitative data, the researchers organized statements and responses to generate
useful conclusions and interpretations based on the research objectives (Sekranan, 2003).
Qualitative data analyses for the study objectives involved analysis of themes of interview data.
Interview response were reviewed, sorted and classified into related themes. Once the themes
were established, data was evaluated and analyzed to determine consistency, credibility and
usefulness of the information to support the qualitative data requirements for the study.

To analyse quantitative data, values were entered in excel corresponding to different variables on
the questionnaire. Results of analysis were presented inform of bar graphs and statistical tables.

14
3.6 System Analysis and Design
The student e-Voting system was designed based on the functional and non-functional
requirements which described the parameters and the data that were incorporated into the system.
The researchers used DFDs (context diagram and level one data flow diagram) and entity
relationship diagram (ERD) to model the conceptual design of the system. According to Dillman
(2012), DFDs and ERDs were used because they are easier to understand by technical and non-
technical audiences; provided a high-level system overview, complete with boundaries and
connections to other systems and provided a detailed representation of the system components.

3.7 System Design Approach


The researchers used an agile software development model and followed the systems
development life cycle (SDLC), which was composed of a number of clearly defined and distinct
work phases, to plan for, design, build, test, and deliver the student e-Voting system. Jacobson et
al. (2008) assert that agile development model is a type of Incremental model. Therefore, unlike
other software development models, such as the waterfall model, the researchers used agile
model because very limited planning was required to get started with the project. Agile assumes
that the end user needs are ever changing in a dynamic business and IT world (Jacobson et al,
2008).

3.8 System Implementation


The student e-Voting system was implemented using the following technologies;
i. Hyper Text Markup Language (HTML) for front end. JavaScript was used to develop the
modules of the student e-Voting system since it is an object-oriented programming
language. Its ability to display information in the browsers also enabled users to use the
system.
ii. Cascading Style Sheet (CSS) was used in formatting the user interfaces of the student e-
Voting system.
iii. PHP Hyper-Text Pre-Processor (PHP) that is a server-side scripting language used in
connecting the front end to the back end of the student e-Voting system.
iv. Bootstrap was used for responsiveness of the student e-Voting system.
v. AngularJs was used to validate the student e-Voting system using regular expressions.
vi. My Structured Query Language (MySQL) for the backend [Database].

15
3.9 System Testing and Validation
The student e-Voting system was tested by the researchers, using sample data, on the basis of
error rates to verify that it met design requirements. Thereafter, the student e-Voting system was
taken to the users for validation to ensure that it operates to their satisfaction.

Testing was done before and after the student e-Voting system was put to use. It was done in
phases.

i) Unit Testing: Unit testing was carried out on individual modules of the student e-Voting
system to ensure that they were fully functional as separate units.
ii) Integration Testing: The researchers carried out integration testing after the different
modules were integrated to make a complete system. Integration testing was carried out to ensure
that the modules are compatible and that they could be integrated to form a complete working
student e-Voting system.
iii) User Acceptance Testing [UAT]: The researchers further carried out user acceptance tests
to check for any errors that could arise.

3.10 Ethical Consideration


The researchers sought authorization from CoCIS before collecting data. The researchers
presented an introduction letter from the University (appendix C) indicating that the study was
purely for academic purposes and the researchers also respected the respondents and assure them
that information given would have no effect on them and their businesses. In addition, the
researchers promised the respondents that information given would be treated as provided with
maximum confidentiality.

3.11 Limitations of the study


The first limitation was locating respondents who were willing to participate in the study.
Distrust by respondents and time to carry out the study posed as a challenge. Another challenge
was language barrier and hence respondents could not interpret the wording on the
questionnaires properly.

The researchers had to seek assistance from research assistants to help them with the location
and distribution of questionnaires to the respondents. These problems were solved by sparing

16
time by the researchers with the respondents to explain the purpose of the research and the
interpretation of the items on the questionnaires.

3.12 Conclusion
In conclusion, the researchers used the qualitative and quantitative research methods, applying
both secondary and primary data collection approaches in order to interact as much as the
researchers could with the empirical and theoretical levels. Whenever the first hand data or
secondary data was collected, the researchers kept the criteria of validity and reliability in their
minds. Therefore, to meet these demands, all respondents in CoCIS were informed about the
content of the analysis before the actual interviews.

17
CHAPTER FOUR
SYSTEM ANALYSIS AND DESIGN

This chapter highlights the results of evaluation made about the performance of the current
voting system and the identified requirements. It also focuses on the analysis and design of the
student e-Voting system at CoCIS.

4.1 System study


The researchers carried out a study from CoCIS and collected first hand data using an interview
guide and questionnaires. They confirmed that the voting process at CoCIS usually has
inconsistencies and inconveniences which have made the whole process inefficient hence leading
to dissatisfaction of various involved parties. The respondents highlighted some of the
inconsistencies and inconveniences such as corruption, long queues to cast votes, records not
being well kept, and longtime taken during vote counting, which often lead to false results
produced.

Thus the researchers also realized from the interviews with some EC officials and the survey
questionnaire filled by the students that the current voting system at CoCIS involves a lot of
lengthy paper work procedures and requires students to move to the polling station in order to
cast their vote. In this lengthy process, the students have to provide their credentials to the voting
officials at the polling stations and then the voting officials verify the information provided and
the students are given ballot papers in order to complete the voting process. This process is
tiresome and time consuming, which increases the rate of students’ absenteeism from voting.

The respondents thus recommended that the student e-Voting system should be implemented so
that it provides an easier way of voting that does not require ones’ physical presence in order to
cast their vote. Therefore, the student e-Voting system enhances an electronic way of choosing
leaders remotely via internet enabled devices such as a smart mobile phones or laptops. It
minimizes on errors of vote counting. The individual votes are submitted to a database which can
be queried to find out who of the aspirants for a given post has the highest number of votes.

The system is also geared towards increasing the voting percentage in the college since it has
been noted that with the old voting method (the Queue System), the voter turnout has been a
wanting case.
18
4.2 Requirements specification
4.2.1 Data Analysis Results
a) Response rate
The total sample size of the study was 81 respondents (75 students and 6 EC officials in CoCIS).
The study issued out 75 questionnaires, which were successfully completed by the respondents
(students), hence the response rate generated was 100%. Six (06) other respondents (EC
officials) were interviewed.

The background characteristics of the respondents included gender, age, and year of study. The
results of the findings were presented and analyzed in the sections below.

b) Respondents’ gender
The sex distribution of the respondents is as shown in the table below.
Table 4.1: The respondents’ gender
Gender Frequency Percent (%)

M 44 58.7

F 31 41.3

Total 75 100.0

Source: primary data (2019)


Table 4.1 above shows that 44 (58.7%) of the respondents were male, while 31 (41.3 %) were
female. The majority of the respondents were male which may also imply that most students
admitted at CoCIS are male compared to female students. The results also implies that the
researchers were gender sensitive in their research practices and obtained data from both sexes.

19
c) Age bracket of the respondents
Respondents were required to indicate their age bracket and their responses were as shown in the
table below.
Table 4.2. Distribution of respondents according to their age
Age Frequency Percent (%)

18-30 Years 48 64.0

30-40 Years 16 21.3

40-50 Years 6 8.0

Above 50 Years 5 6.7

Total 75 100.0

Source: Primary data (2019)


From table 4.2, 48 (64.0%) of the 75 respondents were aged between 18-30years, 16 (21.3%)
were between 30-40 years, 6 (8.0%) were between 40-50 years, 5 (6.7%) were above 50 years.
As can be seen in the Table 4.2 above, the majority (64.0%) of respondents were aged between
18-30 years, which implies that most students at CoCIS are youthful people who are still
energetic to participate in leadership or politics.

d) Year of study
Respondents were required to indicate their year of study at CoCIS and their responses were as
shown in the table below.
Table 4.3. Length of service with e-Voting
Length of services Frequency Percent (%)

Year 1 4 5.3

Year 2 38 50.7

Year 3 26 34.7

20
Year 4 7 9.3

Total 75 100.0

Source: Primary data (2019)

From table 4.3, 4 (5.3%) of the respondents were in year 1, 38 (50.7%) year 2, 26 (34.7%) year
3, and 7 (9.3%) year 4. Hence the percentage of respondents was significantly higher among
respondents who were in year 2 at CoCIS. This implies that majority of contesting leaders are
often in year 2 of study at CoCIS.

e) Opinion whether student voting processes are easy and fast


Respondents were required to indicate whether the voting processes, such as generating voting
reports are easy and fast at CoCIS.

Table 4.4: Opinion whether student voting processes are easy and fast
Opinion Frequency

Yes 31 (41.3%)

No 44 (58.7%)

Source: Primary data (2019)


According to table 4.4, the study revealed that the majority of the respondents 44 (58.7%)
revealed that the voting process, such as generating election results or reports are easy and fast
while the least 31 (41.3%) opposed the opinion. Therefore, the researchers realized that the
majority of the respondents preferred to have the student e-Voting system developed and
installed for use.

f) Issues encountered in having access to student election results


Respondents were asked about the issues encountered in having access to student election results
at CoCIS and most of them revealed that; it takes a lot of time to processe and search for specific

21
reports from paper files, sometimes data can get lost when the paper files are misplaced or burnt
accidentally, data can easily be modified and thus loses integrity and accuracy.

g) How election results are shared with and disseminated among stakeholders
Respondents were asked about how election results are shared with and disseminated among
election officials, the college administration, students and the results are shown in the table
below.

Table 4.5. How election results are shared with and disseminated among stakeholders
Statement Frequency

Word of mouth through announcements 75 (100%)

On web pages as tables 0 (0%)

Data files (downloadable) 60 (80%)

Using SMS or WhatsApp 67 (89.3%)

Total 75 (100%)

Source: Primary data (2019)


From table 4.5, all the respondents 75 (100%) said that election results are often shared with and
disseminated among other CoCIS stakeholders with word of mouth through announcements, 60
(80%) share using data files (downloadable), and 67 (89.3%) share using SMS or WhatsApp.
None of the respondents shares election results via web pages as tables. Thus, the majority share
election results with word of mouth through announcements, which implies that the development
of the student e-Voting system was necessary.

h) Recommendation for new system development


All the respondents were finally asked to confirm whether they would use and adopt the student
e-Voting system if it was implemented. Their responses are as shown in the table below.

22
Table 4.6: Suggestion for the e-Voting system development
Implementation of the new Frequency
system

Yes 53 (70.7%)

No 22 (29.3%)

Source: Primary data (2019)


Table 4.6 shows that 53 (70.7%) of the respondents recommended that the student e-Voting
system should be implemented while only 22 (29.3%) said that they were contented with the
current system that involves a lot of lengthy paper work procedures, physical observations,
phone calls and SMSs. Therefore, it was realized that the majority of the respondents suggested
for the development of the student e-Voting system.

4.2.2 Requirements Specification


In order for the developers to actually know what the users needed; requirement analysis was
conducted with the aim of gathering the specified features for the student e-Voting system.

a) User Requirements
The researchers interviewed the intended users of the system and collected first-hand information
about what the expected features of the student e-Voting system and the following were the
findings:

i. The system should be easy to learn and use


ii. The system should be accessible on all devices, especially smart phones, tablets and
laptops
iii. The system should be fast and secure
iv. A system that stores data and produces reports timely and accurately
v. A system that is fast, flexible and convenient.
vi. A system that restricts access to information to only authorized users
vii. A system that provides attractive interfaces with easy navigation throughout it.
viii. A system that has an element of error validation.

23
The user requirements also include; Functional and non-functional requirements for the student
e-Voting system, which are highlighted in the following sub-sections.

b) Functional requirements
These are statements of services the system should provide, how the system should react to
particular inputs and how the system should behave in particular situations. May state what the
system should not do.
The student e-Voting system should provide the following functions:
i. It should compile the voter register by EC official before voting day
ii. It should keep records of EC officials that would use the system in compiling the voter
register, generation of PIN codes for voters and the officials with the authority to view
and declare election results.
iii. It should enable registration of candidates, voters and EC officials
iv. It should enable a voter to vote a candidate
v. It should not accept any vote cast after the voting process is closed
vi. It should enable users to generate voting reports of election results including details of
election results for each position, elected candidates and losers of the elections can be
generated and printed.

c) Non-Functional Requirements
Non-functional requirements are requirements which specify the criteria that can be used to
judge the operation of a system. Thus the student e-Voting system should do the following:

i. Ease of use: The general and administrative view/interface should be easy to use and
intuitive.
ii. Security: The system should prevent unauthorized access to the system with user
authentication.
iii. Reliability: It should have no downtime and it should be able to handle multiple
concurrent users.
iv. Performance: It should have a quick response time.
v. Scalability: It should have a database that can handle large amounts of data and also be
able to expand in future

24
4.3 System Design
This section includes the system architecture, process and data modeling of the student e-Voting
system.

4.3.1 System Architecture


The system architecture describes the fundamental organization of the system embodied in its
components, their relationship with each other and to the environment.

Voters and Election results Voting details


request Internet
Election results
Election results

Http Request Http Response

User (student)
Server for the student
User (EC official) eVoting system

Voting information Election results

MySQL relational database


for the student eVoting
system

Figure 4.1: System Architecture


Figure 4.1 shows the architecture or mechanism through which the user can use the system to
request for information about the elections during and after the voting process. Good enough, the
system can provide them with the reports about the elections (election results). Therefore, the
users can use the network, such as the internet, to vote and make a request and access election

25
results. The web browser sends a HTTP request to the web server, and the web server retrieves
the requested information from the database. The reports (election results) are then sent back to
the web browser by the web server as a HTTP response which is finally received by the user.

4.3.2 Process modeling


Data flow diagrams (DFDs) were used to illustrate the flow of information in the student e-
Voting system.

a) Context /level 0 Data Flow Diagram


A Context Diagram is a diagram that represented the actors outside the student e-Voting system
that could interact with it.

Symbols used in process modelling

A rectangle represents an external data

Process

A line with an arrow indicates the direction of the flow of data

Data store

Figure 4.2: Symbols used in process modeling

26
Context Diagram for the student e-Voting system

Administrator

Login
feedback
Post
User User Post
information
information details Login
details
details

Voting information Voting reports


Login Student e-Voting System Candidate
details Voting details Voting information request
Login feedback
Voter
Login Login
feedback details
Voting Voting Login
reports information details
request
Login
feedback
Electoral_Commission

Figure 4.3: Context Diagram for the student e-Voting system

27
b) Level 1 Data Flow Diagram for the student e-Voting system

Login details Login details


2
Login feedback Authenticate
user Login feedback
Login details Voter
User information
User information Login details
Administrator 1
D1 User records
User details Register user Vote details
User Candidate 4
information information
Cast vote Vote information
3
Post details Post information
Add post Vote
Post information information
5
Vote
Post information information
Generate voting
reports D4 Vote records
D2 Post records
Voting reports
Post information
Voting information request

Voting information request Voting information request


Candidate Electoral_Commission
Voting reports Voting reports

Figure 4.4: Level 1 Data Flow Diagram for the student e-Voting system

c) Data dictionary of the level 1 Data Flow Diagram


i. Data dictionary showing the description of Processes in the level 1 Data Flow
Diagram
Table 4.7: Data dictionary for Processes in the level 1 DFD
Process Name Description

1.0 Register user Enables the administrator to register all the users in the e-
Voting system.

2.0 Authenticate user Enables the system to check if the login credentials of the
users are valid/correct.

3.0 Add post Enables the administrator to add a post into the system.

28
4.0 Cast vote Enables the voter to cast a vote for a candidate

5.0 Generate voting Enables users to generate voting reports


reports

ii. Data dictionary showing the description of External Entities in the level 1 Data Flow
Diagram

Table 4.8: Data dictionary for External Entities in the level 1 DFD
Entity Description

Administrator An administrator is a person that registers all users into the


system

Candidate A person that contests for a post of leadership

Voter The person that casts a vote in favor of his/her liked candidate

Electoral_commission The person that generates the voting reports and announces the
winner of the election

iii. Data dictionary showing the description of Data stores in the level 1 Data Flow
Diagram
Table 4.9: Data dictionary for Data stores in the level 1 DFD
Data store Name Description

D1 User records Stores all information about user accounts such as


usernames and passwords.

D2 Post records Stores all information about the posts

D3 Vote records Stores all information about the votes

29
4.3.3 Data Modeling
A data model is a formal way of representing the data that are used and created by a system.

a) Data requirements for the student e-Voting system system


i. A user is a superclass which has subgroupings; voter, candidate and administrator. A User
can be defined by userId, fName, lName, nickName, dob, gender, address, profilePic,
password and email. The userId is unique for each user.

ii. An Administrator is the person that registers users in the system. The Administrator entity
set is a child class of a user entity set and can be defined by the adminId. The adminId is
unique for each Administrator.

iii. A candidate is a person who contests for a post of leadership. A candidate can be identified
by the candidateId, authorization_code, and current_votes. The candidateId is unique for
every candidate.

iv. A voter is a registered user that casts a vote for a particular candidate for the post of
leadership. A voter can be identified by the voterId and current_votes. The voterId is
unique for every voter.

v. A post is a specific field of leadership with defined roles. A post can be identified by the
postId, post, and role. The postId is unique for every post.

vi. A vote is used to choose or elect the leaders by the majority. A vote can be identified by
voteId and cast_date. A voteId is unique for every vote.

b) Relationships between the Entities

i. Administrator – User relationship

Registers
Administrator User
1..1 1..*
PK adminId PK userId

An administrator can register one or many users while a user can be registered by an
administrator. Hence the cardinality is 1:M

30
ii. Candidate – Vote relationship

Owns
Candidate Vote
1..1 1..*
PK candidateId PK voteId

A candidate can own one or many votes while a vote can be owned by a candidate. Hence the
cardinality is 1:M

iii. Post – Vote relationship

Has
Post Vote
1..1 1..*
PK postId PK voteId

A post can have one or many votes while a vote can be for a post. Hence the cardinality is 1:M

iv. Voter – Vote relationship

Casts
Voter Vote
1..1 1..1
PK voterId PK voteId

A voter can cast a vote while a vote can be cast by a voter. Hence the cardinality is 1:1

v. Administrator - Post – Vote relationship

Adds
Administrator Post
1..1 1..*
PK adminId PK postId

An administrator can add one or many posts while a post can be added by an administrator.
Hence the cardinality is 1:M

31
vi. User- administrator, voter, EC_Staff or candidate relationship

user
PK userId

{Mandatory, Or}

Administrator EC_Staff Voter Candidate


PK adminId PK ecIdId PK voterId PK candidateId

A User can either be an administrator, voter, EC_Staff or candidate but not both. Hence a
{Mandatory, Or} relationship
Figure 4.5: Relationships between Entities

c) Enhanced Entity Relationship Diagram (EERD)


user
PK userId
firstname
lastname
gender
dob
role
Registers 1..* dept
username
password

{Mandatory, Or}
1..1

administrator
EC_Staff voter candidate
PK adminId
authorization_code PK ecId PK voterId PK candidateId
userId (FK) userId (FK) current_votes authorization_code
userId (FK) current_votes
1..1 userId (FK)
1..1
adds casts 1..1
1..1
Vote
1..* PK voteId owns
post cast_date
voterId (FK)
PK postId candidateId (FK) 1..*
post postId (FK)
role
adminId (FK) 1..*
1..1 has

Figure 4.6: Enhanced Entity Relationship Diagram

32
d) Logical Design
User {userId (PK), firstname, lastname, gender, dob, role, dept, username, password}
Primary key: userId
Foreign key: None

Candidate {candidateId (PK), authorization_code, current_votes, userId (FK)}


Primary key: candidateId
Foreign key: userId

Voter {voterId (PK), current_votes, userId (FK)}


Primary key: voterId
Foreign key: userId

Administrator {adminId (PK), authorization_code, userId (FK)}


Primary key: adminId
Foreign key: userId

Post {postId (PK), post, role admin (FK)}

Primary key: postId


Foreign key: adminId

Vote {voteId (PK), cast_date, voterId (FK), postId (FK), candidateId (FK)}

Primary key: voteId


Foreign key: voterId, postId, candidateId

33
a) Data Dictionary of the Entity Relationship Diagram
This section presents the structure of the relations to be constructed in the database during
implementation.
i. Structure of User relation
Table 4.10: User relation

Field Name Data type Constraint

userId Varchar (6) Not null. Primary key

fName Varchar (15) Not null

lName Varchar (15) Not null

Nickname Varchar (15) Not null

dob Date Not null

Gender Varchar (6) Not null

address Varchar (50) Not null

profilePhoto Varchar (100) Not null

Email Varchar (15) Not null

Password Varchar (15) Not null

ii. Structure of candidate relation


Table 4.11: Candidate relation

Field Name Data type Constraint

candidateId (PK) Varchar (5) Not null. Primary key

authorization_code Varchar (5) Not null.

34
current_votes, Varchar (5) Not null.

userId(FK) Varchar (5) Not null. Foreign key references User (userId)

iii. Structure of voter relation


Table 4.12: Voter relation

Field Name Data type Constraint

voterId (PK) Varchar (5) Not null. Primary key

Current_votes Int (4) Not null.

userId(FK) Varchar (5) Not null. Foreign key references User (userId)

iv. Structure of Post relation


Table 4.13: Post relation

Field Name Data type Constraint

postId (PK) Varchar (5) Not null. Primary key

Post Varchar (15) Not null.

Role Varchar (15) Not null.

adminId(FK) Varchar (5) Not null. Foreign key references Administrator


(adminId)

35
v. Structure of Vote relation
Table 4.14: Vote relation

Field Name Data type Constraint

voteId (PK) Varchar (6) Not null. Primary key

Time Varchar (5) Not null

cast_date Date Not null

voterId (FK) Varchar (5) Not null. Foreign key references voter (voterId)

postId (FK) Varchar (5) Not null. Foreign key references post (postId)

candidateId (FK) Varchar (5) Not null. Foreign key references candidate
(candidateId)

36
CHAPTER FIVE
SYSTEM IMPLEMENTATION, TESTING AND VALIDATION

5.0 Chapter Introduction


This chapter presents the results of implementation, testing and validation of the student e-
Voting system.

5.1 System Implementation and Review


5.1.1 The Three-tier Architecture
The student e-Voting system has a three-tier architecture which consisted of the front-end, the
middle-end and the back-end.
i. Front-end
The front end part of the system is browser content rendered and was implemented in various
scripting and programming technologies such as JavaScript, Hyper-text Mark-up Language
(HTML), Cascading Style Sheet (CSS) and Bootstrap.
1. Bootstrap; enables the system to be responsive and dynamic. Thus, a user can access the
system in all devices irrespective of their sizes such as smart phones, tablets, laptops and
personal computers, which should be connected to a network.
2. JavaScript; is a scripting language that was used to promote interactivity with the users
and makes the system more dynamic.
3. HTML; was used to implement the user interface components such as forms, tables, text,
color, among others for the system.
4. CSS; was used to create a good styled design for the system with good colors and
formats.

ii. Middle-end
PHP Hyper-text Pre-Processor is the server-side scripting language that was used to develop
the middle-end of this system.

37
iii. Back-end
My Structured Query Language (MySQL) is a relational database system, which was used to
implement the back-end layer of the system. Thus, this tier comprises of the database
management system (DBMS) software that manages and provides access to the data. Information
is stored and retrieved from the database.

5.1.2 Voting process using the student e-Voting System


A voter goes through the following steps to choose and cast vote for his/her candidates.

i. Step 1: Registration
The admin is responsible for registering the candidates for different posts, which are also
registered in the system as shown in figure 5.1 and 5.2 respectively.
a. Candidate Registration page

Figure 5.1. Candidate Registration Page

38
b. Voter Registration page

The voter (student) has to sign up to create an account so that he/she can be able to access the
system to cast a vote for his/her preferred candidate as shown in the figure below. The student
has to register with a valid student number in order to complete the registration process.
Otherwise the system cannot allow him/her to register to use the system.

Figure 5.2. Voter Registration Page

a. List of Voters page


The system can generate a list of voters that are eligible and were registered to vote for their
chosen candidates for given posts such as president, secretary, speaker, finance minister among
others as shown in the figure below.

39
Figure 5.3. List of Voters Page

ii. Step 2: Voter Login


The voter (student) can login into the student e-Voting system using a valid username and
password as shown in the figure below. Otherwise, the system cannot allow him/her access to
proceed and vote. The voter must get a verification code through an email which is used to
activate the account to login.

40
Figure 5.4. Voter Login Page

iii. Step 3: Selecting Candidates to Vote for


The candidates for all the positions in the election are displayed on a ballot web page. The voter
at this stage selects a candidate to vote for. In case of multiple candidates for a given position,
the voter can click the radio button to select the candidate. The voter can however decline to vote
for a position and move to the next position in the election. This is demonstrated in the figure
below. When it involves a single candidate for a position, the system allows the voter to select
him or not for the candidate. In this case, the voter selects either clicks the radio button or not.

Figure 5.5. List of candidates of given positions for a voter to choose from
After selecting a candidate to vote for, the next thing is to submit the vote for the candidates of
choice as shown in the figure above.

iv. An attempt to vote after the deadline


If the voter logs into the system to vote after the set deadline for voting ended, the system will
automatically deny him/her from accessing the ballot page and will alert him/her as shown in the
figure below.

41
Figure 5.6. Voting closure alert page
However, the system allows him/her to view the status of the election results by clicking on the
button “View Results”, pointing out the winning candidate.

42
Step 4: Vote Graphical Report
After confirming the vote or escaping the vote for the last position, a congratulatory message and
the list of all the candidates the voter voted for would be displayed to the voter for verification.
Figure 5.4 demonstrates a graph of candidates per position voted for by a voter.

Figure 5.7. Graphical report of Election results


After the voting process is closed, the system automatically generates election results. The
Chairman of the electoral commission or his/her representative declares the election results.
Generated reports are given to each candidate after the declaring of election results.

While voting is in progress, candidates can monitor the status of election results from the
beginning of the election till the end of the election. Figure 5.7 also shows a status report of
election results because every time a voter votes, the graph dynamically updates instantly. Thus
the voters can keep track of the winning candidates for respective posts during the whole process
of voting instead of waiting for closure time for the electoral commission to announce the
winners.

43
5.3 System Testing
The objectives of testing the system included the following: to establish that the software worked
satisfactorily as per the requirements, to prove that the program is error free, and to certify that
the software functioned correctly and could be used in production.

System testing was done at two stages namely unit testing and integration testing. In unit testing,
each of the result processing modules of the system was tested independently by the developer to
ensure that they were fully functioning. This enabled the developer to easily identify errors as
small units were tested independently. For example, the developers tested if the system could
accept invalid data and it was confirmed that it could not as shown in the figure below.

Sample Data input validation page

Figure 5.8. Sample Data input validation page

While in integration testing, the system was tested for conformity with requirements after all
modules had been put together and the system as a whole was tested to authenticate that general
system requirements has been met. Thus, the results from the integration test of this project were
satisfactory. Integration was also aimed at ensuring that modules were compatible and they could

44
be integrated to form a complete working system. In summary, the system was approved for
deployment by the testing team having satisfied the testing objectives.

5.4 System Validation


Acceptance testing enabled users to find out if the prototype system could fulfil the requirements
specifications, whether it could work as expected to provide the right output to them. The
researcher presented the prototype of the system to 20 respondents that would use the system and
with the help of an interview guide, the primary data about whether the system was meeting their
requirements was collected. The collected data was analyzed using excel spreadsheet and the
results were presented in table 5.1 below.

Table 5.1: Results of system validation


Feature User requirement Frequency Score (%)

Scalability The student e-Voting system can enable many 18 90%


and additional users to use it.

Authentication The student e-Voting system cannot allow 19 95%


unauthorized users to use it.

Efficiency The student e-Voting system can enable a user to 19 95%


easily and conveniently access election results.

Effectiveness The student e-Voting system can enable users to 18 90%


easily generate reports concerning the elections.

User friendliness The student e-Voting system is easy to use by 17 85%


any novice user.

Flexibility The student e-Voting system can enable many 19 95%


users to use it concurrently.

Average score 91.7%

45
Table 5.1 shows that the student e-Voting system has an average acceptance score of 91.7%,
which implies that it enables the users to conveniently vote from anywhere, such as their work
places, places of residence or around the university. Users can also use the system to easily
generate reports about elections. Therefore table 5.1 shows that the student e-Voting system is
scalable, efficient, effective, user friendly, flexible and authenticates users when logging in.

46
CHAPTER SIX
DISCUSSION, LIMITATIONS, CONCLUSIONS AND RECOMMENDATIONS

6.0 Introduction
This chapter highlights the summary and conclusions about the student e-Voting system as well
as the recommendations about what features can be added in the project by other developers in
future.

6.1 Discussion
This sub-section focuses on the summary about how the objectives of the study were addressed.

The objective of preliminary study was achieved by using data collection methods like;
interviews and questionnaires during the research study and it was because they are coupled with
merits that made it convenient for the researchers to acquire the necessary information. For
example;

i. The researchers posed face-to-face questions to the respondents with the help of the
interview guide.
ii. The researchers administered questionnaires to the respondents at CoCIS in order to
collect first hand data about the current ways through which student voting is done. The
collected data was analyzed using excel spreadsheet, which was easy to use.

For system analysis and design of the system, the researchers studied the requirement
specifications of the system and used structured design methodologies, which included data flow
diagrams for process modeling while the entity relationship diagram for data modeling.

The system was developed using open source and easy to use technologies like Bootstrap,
HTML, PHP, CSS, Javascript and MySQL. The system was tested by running units of the
system independently in order to identify and debug syntax errors. Different modules of the
system were also integrated and tested as a whole. For system validation, the prototype version
of the system was given to the users to use in order to prove whether it meets their user
requirements or not.

47
Therefore, the student e-Voting system was successfully developed, tested, and found to be
working as expected. It has some qualities such as reduction in the cost of processing, reduction
in time spent while searching for device information as well as processing election results This
makes it superior to the previous ways through which students could use to vote for their leaders,
which required lengthy paper work procedures.

6.2 Limitations
Among the limitations, there was unreliable internet connectivity, insufficient funds to sustain
the researchers throughout the project, low response rate by some of the interviewees and harsh
weather conditions during the field study. Furthermore, there was under estimation of the scope
of the project resulting into delay of the completion of the project. This meant need for more
resources in terms of time, effort and money on the side of the researcher however despite of all
these short comings, the researcher managed to accomplish the development plan successfully.

The other limitation of the study that the researchers faced was lack of ample time for efficient
and detailed investigation of the problem.

6.3 Conclusions
The objective of preliminary study was achieved by using both primary and secondary data
collection methods. The collected data was analyzed using excel spreadsheets. System analysis
and design of the system was achieved by using data flow and entity relationship diagrams. The
system was developed using technologies like HTML, PHP, CSS, bootstrap and MySQL. The
system was tested and validated and was confirmed to be working well according to the specified
user requirements.

The purpose of this system was to ensure election results verification auditing and confidence in
the student e-Voting system. After the development and implementation of the system, updates
were done based on the challenges faced during the implementation of this system until this final
system was developed. This system was very helpful in ensuring confidence of voters in e-voting
since the voters could monitor the voting status with a real time and dynamic graphical status
report. A valid voter registration (student) number during registration could be required from a
voter to register and vote aimed in preventing voter impersonation. MD5 encryption mechanism

48
used in encrypting user passwords, Voter registration or student number in the votes table in the
database was meant to ensure security and privacy of voters and users.

6.4 Recommendation
The researchers recommend the implementation of these verification methods in e-voting
systems to help build voters confidence in e-voting systems. We recommend future research into
the development and implementation of e-voting system to ensure high security while ensuring
user friendliness. Moreover, with the advancement in technologies, biometric measures such as
face and finger print recognition algorithms could be applied to enhance security and improve
credibility of online voting systems. Thus, biometric verification could also be implemented to
login a voter instead of the generation of Pin Codes.

Social Institutions which have democratic processes should embrace web technologies to
manage their voting processes as this will improve their effectiveness of rendering such
processes and save them from huge costs and time. The application of web-based approaches in
solving voting processes should be applied even in managing national elections in developing
countries, especially Uganda.

49
REFERENCES

Alex, H. (2015). The New South Wales iVote System: Security Failures and Verification Flaws in
a Live Online Election” Retrieved from http://arxiv.org/abs/1504.05646v2.
Bochsler, D. (2010). Can Internet voting increase political participation? (PDF). Centre for the
Study of Imperfection in Democracies.

Carsten, S. (2014) Review of the Vote System. DemTech Group. Retrieved from
http://vec.vic.gov.au/files/demtech.pdf.
Chris, C. (2014). a Verifiable Voting System” Retrieved from http://arxiv.org/abs/1404.6822v3.
Craig, B. (2015) The use of vote in the Victorian State Election. Retrieved from
http://arxiv.org/abs/1504.07098v1.

Feldman, H. (2015). Security Analysis of the Diebold AccuVote-TS Voting Machine. Usenix.

Germann, M; Serdült, U. (2017). Internet voting and turnout: Evidence from Switzerland.
Electoral Studies. 47: 1–12.

Gurchetan S.G, Mark D.R, Sergiu B, Peter Y.A.R. (2013). Caveat Coercitor: coercion-evidence
in electronic voting. 34th IEEE Symposium on Security and Privacy, 2013

Kobie, N. (2015). Why electronic voting isn't secure – but may be safe enough. The Guardian.
ISSN 0261-3077. Archived from the original on 2017-03-08.

Kremer, S; Mark R; Ben S. (2010). Election verifiability in electronic voting protocols.


ESORICS'10: 15th European Symposium on Research in Computer Security. 6345: 389–
404.

Maltoni D. (2005) A Tutorial on Fingerprint Recognition. Retrieved on 11/3/2018 from


https://link.springer.com/chapter/10.1007%2F11493648_3

McCallum, R. (2015). Participating in Political and Public life. AltLJ 80.

Mellon, J; Peixoto, T; Sjoberg, F. M. (2017). Does online voting change the outcome? Evidence
from a multi-mode public policy referendum. Electoral Studies. 47: 13–24.

50
Nzoka, J. M. Muthama, N. M. Mung’ithya, N. M. (2013). Taita Taveta University College E-
Voting System: A Web Based Approach to Elections Management. International Journal
of Intelligent Information Systems. Vol. 2, No. 5, 2013, pp. 70-76. doi:
10.11648/j.ijiis.20130205.11
Osho, Y. (2015). E-voting in Nigeria: A survey of voters' perception of security and other trust
factors. 2015 International Conference on Cyberspace (CYBER-Abuja): 202–211.

Roland, W. (2015) Lessons Learned for E-Voting: A Case Study of the VEC vVote Project. Tech.
rep. UNSW-CSE-TR-201509. (To appear). UNSW Computer Science and Engineering.
Retrieved from https://www.cse.unsw.edu.au/~reports/.
Schneier, B. (2015). What's Wrong With Electronic Voting Machines?. Schneier on Security.

Victorian Electoral Commission. (2014) Victorian Electoral Commission comment on DemTech


Report. Retrieved from http://vec.vic.gov.au/files/demtech.pdf.
Vishal V. (2014). Smart-Voting using Biometric International Journal of Emerging Technology
and Advanced Engineering, Volume 4, Issue 6.
Willem, W, Spencer, C and Saurav D. (2016). Proposal For Secure Electronic Voting.
University Of Maryland, College Park.

Xoddo, P. (2019). iElector: A package for online voting. The new vision, Uganda. Wednesday,
March 21st, 2019.

Zissis, D. (2011). Securing e-Government and e-Voting with an open cloud computing
architecture. Government Information Quarterly. 28 (2): 239–251.
doi:10.1016/j.giq.2010.05.010.

51
APPENDICES

APPENDIX A: QUESTIONNAIRE

MAKERERE UNIVERSITY
Dear respondent,
We are students from Makerere University pursuing a Bachelor’s degree in Information
Technology. As a partial requirement for the award of the undergraduate degree, we are
conducting an academic research on student voting system at CoCIS. All responses provided will
be treated with utmost confidentiality and will be presented in a statistical form, and used for
only academic purposes. Therefore, we kindly request you to spare some time and truly answer
this questionnaire.
SECTION A: BACKGROUND OF THE RESPONDENT

1 Please select your Age Group:

18 – 25

26 – 30

31 – 35

35 – 40

41 – 50

Above 51

1. What is your year of study?


1st 2nd 3rd 4th 5th

2. Have you ever voted at CoCIS?


Yes No
3. Which method did you use to vote?
Ballot papers voted online Show of hands lining behind candidate

52
4. How far away is your residence from CoCIS?
Less than 5km 6kms – 10kms Over 10kms
5. How long would it take you to travel from home to CoCIS for voting purpose?
Less than 30mins 30 mins – 1hr Over 1hr
6. How effective is the method mentioned in 3 above?
Slightly Effective Moderately Effective Very Effective
7. Out of 5 with 1 being the lowest and 5 the highest rating, how would you rate the current
student voting system?
1 2 3 4 5
8. What are the other challenges faced by using the mentioned method in 3?
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
………………………………………………………………………………………………

9. Do you recommend the implementation of the student e-Voting system for CoCIS?
Yes No

53
APPENDIX B: QUESTIONNAIRE FOR SYSTEM VALIDATION
Scale: Strongly Agree (1), Agree (2), Not Sure (3), Disagree (4) and Strongly Disagree (5)
Feature Question Options

Scalability The student e-Voting system enables many and 1 2 3 4 5


additional users to use it.

Authentication The student e-Voting system cannot allow 1 2 3 4 5


unauthorized users to use it.

Efficiency The student e-Voting system can enable a user to 1 2 3 4 5


access information about voting status.

Effectiveness The student e-Voting system can enable users to easily 1 2 3 4 5


generate voting status reports.

User friendliness The student e-Voting system is easy to use by any 1 2 3 4 5


novice user.

Flexibility The student e-Voting system can enable many users to 1 2 3 4 5


use it concurrently.

54
APPENDIX C: INTRODUCTION LETTER

55

You might also like