Sei sulla pagina 1di 99

GARDEN CITY UNIVERSITY COLLEGE

FACULTY OF APPLIED SCIENCE

GCUC ELECTRONIC VOTING SYSTEM (FINAL YEAR PROJECT)

PRESENTED TO THE DEPARTMENT OF COMPUTER SCIENCE, GARDEN CITY

UNIVERSITY COLLEGE

IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF

BACHELOR OF SCIENCE

IN COMPUTER SCIENCE

BY

SAHID ALI (02110813)

JUNE, 2017

Page |1
DECLARATION

I hereby declare that the entire thesis work entitled, “GCUC ELECTRONIC VOTING SYSTEM”
submitted to the department of Computer Science, Garden City University College, in fulfilment
of the requirement for the award of the degree of BSc Computer Science, is a bonafide record of
my own work carried out under the supervision of Mr. Nixon Adu-Boahen
I further declare that the thesis either in part or full, has not been submitted earlier by me or others
for the award of any degree in any University.

SAHID ALI ……………………... ……....……………

(Student name) (Signature) (Date)

SUPERVISOR’S DECLARATION
I hereby declare that the preparation and presentation of this work was supervised in accordance
with the guidelines on supervision of Project laid down by the Garden city University College.

MR. NIXON ADU-BOAHEN ………………. …………………

(Supervisor) (Signature) (Date)

Page |2
ACKNOWLEDGEMENTS

Firstly, I will like to thank the Almighty God for his guidance and protection throughout these
academic years. I would like to thank everyone who had contributed to the success of completion
of this project. I would like to express my gratitude to my research supervisor Mr. Nixon Adu-
Boahen, for his invaluable advice, guidance and his patience throughout the development of the
project. And also, a very big thank you to the entire faculty of Applied science-Gcuc staff for
helping me through my personal and professional development.

In addition, I would like to express my gratitude to my loving parents and friends who have
helped and given me encouragement for the completion of the project. Not forgetting the GCUC
SRC who has support me financially to test the system in it full capacity.

Page |3
ABSTRACT

This project deals with the design and development of a Biometric Electronic Voting System. The
suggested fingerprint voting system allows the user to scan his fingerprint, in order to check his
eligibility by comparing his current fingerprint with the one already stored in the system’s
database, by the use of Digital Persona Fingerprint Recognition Algorithm shows better result if it
compared with other algorithms that depend on Minutiae technique because it combines both local
and global features.

A friendly graphical interface developed from VB.net programming language and linked with
Microsoft Sql server database for data manipulations. Once the voters complete the identification
process, they will be allowed to cast their vote using friendly user interface developed using visual
basic programming language. The counting of the votes will be automatically and that makes the
voting process efficient, fast, and secure.

Page |4
TABLE OF CONTENTS
DECLARATION .............................................................................................................. i
ACKWONLEGEMENT ....................................................................................................ii
ABSTRACT ..................................................................................................................... iii
TABLE OF CONTENTS ................................................................................................. iv-v
LIST OF FIGURES .......................................................................................................... vi
LIST OF TABLES.......................................................................................................... viii

Chapters Page No

CHAPTER ONE

BACKGROUND
1.0 INTRODUCTION............................................................................................................1
1.1 BACKGROUD AND HISTORY.....................................................................................2
1.2 SIGNIFICANCE OF STUDY………………………………………………….……….4
1.3 STATEMENT OF THE PROBLEM……………………………………….……….…..4
1.4 JUSTIFICATION OF THE PROBLEM…………………………………….…….…….5
1.5 AIMS AND OBJECTIVES OF RESEARCH……………………………….…….……6
1.6 SCOPE AND LIMITATION OF RESEARCH WORK…………………….…….……6
1.7 PROPOSED CHAPTER OUTLINE……………………………………….…….……..7

CHAPTER TWO

LITRATURE REVIEW
2.0 INTRODUCTION.............................................................................................................9
2.1 DOMAIN RESEARCH....................................................................................................10
2.2 PROBLEM OF EXISTING SYSTEM………………………………………………….15
2.3 PROPOSED SYSTEM …………………………………………………………………16
CHAPTER THREE.

RESEARCH METHODOLOGY
3.0 INTRODUCTION……………………………….……………………………………..25

Page |5
3.1 DATA COLLECTION ……………………………….……………………………….26
3.2 SOFTWARE DEVELOPMENT METHODOLOGY …………………….……………..27
3.3 DEVELOPMENT TOOLS AND PLATFORM ………………………………………27
3.3.1 SYSTEM AND USER FLOWCHART………………………….…………….…….33
CHAPTER FOUR

SOFTWARE REQUIREMENTS AND SPECIFICATIONS


4.0 INTRODUCTION..........................................................................................................43
4.1 INPUT SPECIFICATIONS............................................................................................43
4.2 OUTPUT SPECIFICATIONS…………………………………………….………...…43
4.3 FILE SPECIFICATION………………………………………………….…………….44
4.4 DATABASE SPECIFICATION……………………………….……….……………...45
4.5 SYSTEM DATA FLOW DIAGRAM…..……………………….…….……………….49
4.6 USE CASE………………………………………………………….………………….52

CHAPTER FIVE

SYSTEM DESIGN AND IMPLEMENTATION


5.0 INTRODUCTION………………………………………………………………….....54
5.1 SYSTEM ARCHITECTURE DESIGN………………………...…………………….54
5.2 SOFTWARE REQUIREMENT………………………………………………………57
5.3 HARDWARE REQUIREMENT……………………………………………………..57
5.4 LANGUAGE JUSTIFICATION……………………………………………………..58
5.5 REVIEW OF PROGRAM LANGUAGE IN USE…………………………………...58
5.6 TESTING………………………………………………………….………………….59
5.7 USER INTERFACE…………………………………………….……………………62

CHAPTER SIX

SUMMARY
6.0 INTRODUCTION……………………………………………………………………74
6.1 LIMITATIONS………………………………………………………………………74

Page |6
6.2 RECOMMENDATION………………………………………………………………75
6.3 CONCLUSION………………………………………………………………………76

REFERENCES ................................................................................................................77-78

APPENDICES .................................................................................................................79-91

LIST OF FIGURES
Figure Page
Figure 1.1: "The first vote" A.R. Waud, Wood engraving 1867. …………………............2
Figure 2.1: An old Abacus voting machine …………..........……………………………8

LIST OF TABLES
Table Page

Table 3.1: Electronic voting system tools 30


Table 4.1: candidate table 45
Table 4.2: association table 45
Table 4.3: Election table 46
Table 4.4: Departments table 46
Table 4.5: Departments and Association link table 46
Table 4.6: Faculty Table 46
Table 4.7: polls Table 46
Table 4.8: voter Table 47
Table 4.0: Users Table 47
Table 5.1: Test case 2 60
Table 5.2: Test case 2 61
Table 5.3: Test case 3 61

Page |7
Page |8
CHAPTER ONE
BACKGROUND

1.0 INTRODUCTION
It has been the norm of the day that selecting leaders to lead countries, organizations, students in
educational institutions and smaller groups in communities in the modern era is always associated
with voting procedures. No matter how small or large a group may be, when it comes to its
elections, all the stakeholders of such bodies may ascribe great interest. Not long, in the year 2016
to be precise, the country Ghana conducted its periodic election and the entire country became
silent a while when the election results were pending to be announced by the Electoral Commission
(EC) of the nation. At that moment, almost all Ghanaians with television set, radio set and other
means of communications were completely glued to such means of communication when they
were waiting to hear from the EC’s declaration of the election results. This scenario suggests that,
people put in all their emotions when it comes to elections and therefore suggests that all voting
procedures must be authentic, free and fair and reliable.

Over the years, most educational institutions including Garden City University College (GCUC)
have seen manual ways of conducting elections for their student bodies that mostly poses many
problems such as over-voting, invalid vote casts and perceived unfairness. These problems and
many others have been thorn in the flesh for most EC officials who conduct such voting events for
their institutions. To help the EC officials in GCUC in this dimension, the researcher embarked on
application of technology in solving the afore mentioned problems by designing and implementing
an electronic voting system with biometric verification that provides reliable results and secured
voting procedures. If this application is accepted and implemented, it will not only keep records
and generate voting results but will also provide very secured environment to enable free and fair
election. Moreover, the application has implement better data structures and algorithms that make
it running fast.

Though the project’s product was meant for GCUC, it had been designed with the intention of
replicating it for other student bodies or associations in any other institution that may require the
services of such application in their voting proceedings.

Page |9
1.1 BACKGROUND AND HISTORY
Garden City University College (GCUC) is a university college situated at, Kenyasi-Kumasi in the
Ashanti region of Ghana, West Africa. It is a pioneering institution that seeks to produce
innovative, well-grounded and well-rounded business executives, entrepreneurs, analysts and
researchers who can meet the challenges of our time, in the increasingly sophisticated global
village. GCUC has the mission and vision focused on innovation and believes that great
achievements could only be attained through diligence and commitment to work. GCUC is
affiliated to a number of international and national institutions to achieve its goal. Although it
young (little over a decade), it has produced numerous social giants in the country.

In the traditional elections, a voter used to cast his vote by using ballot paper. This is a long time-
consuming process; it’s really takes long time and the probability of error is very high. This
situation remains till the scientists discovered the different types of electronic voting machine.
The electronic voting systems are utilized much more as a device to help people to cast their
opinion and vote. To let the exercising of the right, just about all voting machine all over the globe
consist of voter identity and authorization, the voting and saving of the votes cast, counting the
votes and finally give the election final results.

Figure 1.1: "The first vote" A.R. Waud, Wood engraving 1867.

P a g e | 10
The using of fingerprint as an ID is an excellent strategy considering that just about every person
in the globe is born with unique fingerprint even twins born with totally different fingerprints.
The fingerprint is naturally unchangeable throughout life. The representation scheme of the
fingerprints either based on global or local information such as ridges ends and ridges branches
(minutiae). In this project matching algorithm combine extracting of local and global information
going to be design. This matching algorithm is necessary in two stages of the electoral where the
first for people registration to identify the right to elect and later on, at voting time, to allow voters
to cast their vote by confirming if the man or woman meets all the requirements required to vote
and that known as authentication.

GCUC has various departments under three main faculties (Applied Science, Health Science and
Business Studies) as at 2017, with a general student body called the SRC and other students’
departmental associations such as the GABS, GUFASSA, GACUNSA, PASAG and MELTSA.
The university runs election annually to select students’ leaders into various associations above.
The SRC and the other association have positions such as following:
 President
 General Secretary
 Financial Secretary
 Welfare Secretary
 Treasurer
 Women’s Commissioner
 Public Relation Officer
 Sports Secretary
 Organiser
 Entertainment Secretary
 Local NUGS, USAG and PUSAG President

P a g e | 11
1.2 SIGNIFICANCE OF STUDY
Voting in general requires being very precise or cost cutting to produce an effective election. To
achieve this requires robust and secured software (such as this Electronic Voting System – EVS)
that can help officials of voting process to manage election proceedings effectively. Therefore,
crucial points that this (EVS) emphasizes on are listed below.
 Require less number of staff during the election.
 Easy to use
 Reinforcement of transparency and fairness.
 Less capital, less effort, and less labour intensive, as the primary cost and effort will focus
primarily on creating, managing, and running a secure online looting portal.
 Adapting to increasing number of voters as individual voters join in, especially in student
societies where lectures might be in session during election.

1.3 STATEMENT OF THE PROBLEM


Voting has been parts and parcel of student bodies in various educational institutions Ghana.
GCUC as a university college has various student associations that embark on election each year
for the selection of new leaders that will oversee the smooth running of such associations. Over
the years, student and candidates of such elections have been complaining of slowness,
unreliability and non-free and fair elections. It would be better if GCUC acquires software that
provides authentic procedures for voting and maintains election records for future references.

1.4 JUSTIFICATION OF THE PROBLEM


Currently the GCUC student bodies have no software of their own to embark on election
procedures and maintain their election records. In attempt to resolve the perceive problems
associated with the election procedures of the associations, the SRC decided to apply technology
by hiring software for such voting activities for the past two years of their annual elections.
Although it was good decision, the hired application came with its own problems such as discard
of election records after results are announced and improper verification procedures. Moreover,
the hired software comes with overhead cost that can drastically be reduced if the associations
maintains their own application.

P a g e | 12
Fingerprint electronic voting system has provided a range of advantages to the voting process. It
assists perform voting in much more successful and efficient way, such as minimizing the cost of
the ballot's printing and employing more staff. Fingerprint Election system also can make voting
tallies faster as well as much more effectively than tired polling staff; they minimize human being
mistakes in voting final result as well as minimize the expenses of the election. The significant
advantages of electronic election might be reviewing in the following points: much more
participation, fast process, lower costs, and precision placing and better access and versatility for
the disable.

Essential reason fingerprint readers are widely used is, they offer a fast, simple, powerful, and
secure access by means of a person with the good access rights can authenticate. The advocate of
electronic voting provides that the comfort, flexibility, speed, cost effectiveness, and versatility
and these are the main advantages of the electronic voting machine. Considering that this system
has every one of these properties, it can be used almost everywhere, by the government
authorities, organizations, courts, shopping malls even in all the colleges and universities.

1.5 AIMS AND OBJECTIVES OF RESEARCH


The aim of this research is to help produce a software platform that will make elections of the
associations free and fair, and authentic. To achieve this, the researcher will

 Embark on reviewing existing systems that perform similar tasks


 Design and implement database for record keeping on elections
 Design and implement an application that handles the voting procedures
 Implement Secured network platform that provides authentic voting process
 Provide Electoral Commission (EC) of the university the platform to generate and announce
results
 Provide platform for viewing current and previous election reports

P a g e | 13
1.6 SCOPE AND LIMITATION OF THE RESEARCH WORK
Although there may be many user requirements, this research seeks to focus on the major issues
that had to be resolved in the voting procedures and hence has the scope as spelt out in the proposal
to accomplish. This scope includes the following:
 Voter Register Module: The product shall include module for registering students who will
take part of the voting. The registration procedure shall encompass taking the student details
including biometric enrolment.

 Official and Voter Security Module: To ensure the authenticity of the voting processes, the
system shall include security module that would ensure that both EC official and voters provide
credentials before using the system. EC officials shall use their user account credentials at all
times before using the system. Voters shall be verified by biometric device before casting their
votes. In case of device failure, the system shall provide alternative security code for voter to
cast vote.

 Result Generation Module: The system shall provide module for EC officials to generate result
right after the completion of voting proceedings. The voting results shall be presented
statistically and graphically for easy interpretations.

 Reporting Module: This application shall include module for all voting reporting for previous
and current voting proceedings.

 Administrative Module: The system shall include modules that would be used by the system
administrators to manage and maintain the software by providing the necessary settings to tune
up the system.

Aside the above modules, the system will ensure the continual running over a local area network
or VPN.

P a g e | 14
1.7 PROPOSED CHAPTER OUTLINE
CHAPTER 1 -Introduction
This chapter gives the overview of the research which includes, background and history, statement
of the problem, aim and objectives of the research and the scope of the project as well.

CHAPTER 2 -Literature Review


This chapter also gives the literature review that helps relate the proposed study to the larger
ongoing discourse in the literature about a phenomenon, filling in gaps in the literature and
extending earlier studies. The literature review is neither a chronological summary of related works
nor a mere catalogue of previous studies published in the field.

CHAPTER 3 - Research Methodology


The methods or methodology section is undeniably the heart of the research proposal. In software
and web development research projects, this section explains three main areas: data collection
procedures, software development methodology and development tools and platform.

CHAPTER 4 -Software Requirements Specifications


In this chapter, the requirements specification for a software system, and a complete description
of the behaviour of a system to be developed and which include a set of use cases that describe
interactions the users will have with the software. In addition, it also contains non-functional
requirements.

CHAPTER 5 - System Design and Implementation


This chapter shows the overview of the system architecture, system data structures and how these
are to be represented in a database. Description of the characteristics of each interface between the product
and its users is also outlined as well.

CHAPTER 6 Summary
This section explains all conclusions that can be drawn from evidence that all the previous sections.
In addition, it presents all contributions and make reference to how they are validated in the thesis.
More so, recommendations and future works are presented in this section.

P a g e | 15
CHAPTER TWO
LITRATURE REVIEW
2.0 INTRODUCTION
Voting process is known as a process for a group by means of a meeting or democratic vote in
orders to take a free decision. This manner considers as the best normally found in republic and
democratic governments (IDEA international, 2012)

Election systems have already existed in the past hundred years. All those earlier election systems,
however had been considered being acceptable in past days, they started to reveal its
disadvantages, day after day. These disadvantages, lead to a huge development in the design and
style of electronic voting machine. Previously back to 1960, the election systems used were all
run manually. This involves, the election system that use paper, were the voters' votes casted and
counted by hands. During 1961, the design of voting systems developed from manual base to
electronic base where the first electronic voting system was the electronic punch card system
(Giovanni, 2008).

Figure 2.1 : An old Abacus voting machine

P a g e | 16
Currently information and communication technologies (ICT) have grown and became an
important in every aspect of human been lives. The Information and communication technologies
have wide range of applications starting from the entertainment, to applications in the areas of
business, transportation, communications and etc. Even in medicine or nuclear manufactures'
controlling, are now converted to automated systems. The supporters of the technology may
believe that computer systems are effective, trusted and much more accurate, than humans, while
the others believe that getting the humans guidance out of the scenario will increase the possibility
big errors may occur unnoticed. It is very important to stand over what the previous researchers
have already done before to be able to defeat the flaws of their e-voting machines and minimizing
the problems may perhaps occur during the election process (Cetinnkaya, 2007)

Electronic voting machines consist of three actors: people who will make the votes, registration
authorities and tallying authorities. All the Voters have the right for voting; have to be register
before the Election Day in order to be eligible voters. These authorities make sure of only
authorized people give their vote and they must vote only one time during the election and then
all the votes will be casted and show the final results of the voting (Anthony L, 2007).

2.1 DOMAIN RESEARCH


Domain research is a normal research on similar previous project that can be helpful. Domain
research include comparison between the already exist project base on the projects’ features in
order to achieve the best design for the fingerprint voting system.
The research will analysis the previous projects and discusses the researchers’ recommendations
in order to preventing the pervious project mistakes and in that way the proposed design will
minimize or prevent the problems. Fingerprint voting system consist of hardware and software, a
deep research will be made including the hardware as well as the software.

2.1.1 FINDINGS BY OTHERS AND SIMILAR PROJECTS


In an article belonging to (Simao, 2006) he said that the term electronic voting system is referring
to the use of any computerized voting equipment to cast ballots in an election for example the use
of computers or mobile. This term usually used specially to refer to voting that happen over the
Internet, GSM using touch screen or fingerprint technique. All types of electronic voting systems

P a g e | 17
are used to register voters at the beginning after that tally ballots and finally record votes and
show the final result of the election.

Figure 2.2: Availability of Voting Systems in 2013

Jones (2009) stipulates that every optical scanning device must include special computer software
as well as hardware. The hardware part perform task of capturing a picture for the ballot card
while software handle the conversion of the picture to data that the computer can understand
(binary data). A ballot card will be given to each voter, these ballot cards contain the names of
candidates printed on it. There is a symbol printed next to each candidate, such as a stars, triangle
or uncompleted arrows. The voter can choose his preferable candidate by filling in the appropriate
star or triangle or by completing the arrow. Directly after complete that action the voter should
put the card inside the vote tabulating system. The computer tabulating device have the ability to
recognizes the marks have been made by voters which is exist on the ballot cards and according
to that the computer will record the vote. All the votes will be recorded and inserted in the
computer’s database and finally give the final total results.

P a g e | 18
Figure 2.3: Optical voting system with ballot paper

Ayo & Ekong, (2007) presents the electronic voting system using internet technology after they
made a research about many types of optical voting system and they realized the weakness and
peculiar problems of each adopted optical electronic voting system to avoid these problems in
their project. The internet considered as one of the most adopted means of communication the
countries have been developed and the developing countries. Therefore, it could be considered a
good candidate for voting system around the world. Their paper investigates internet voting
system with a view to improved participation, and benefit of voters in Africa as a case study.
They developed in their research a prototype electronic voting machine using PHP programming
language and MYSQL Server as the database and the electronic voting system has been tested
using the mobile explorer emulator.

An extensive survey of electronic voting system has been provided in security enhancement of
electronic voting system's study by (Shahram M, 2009), this study presents a research of latest
educational and industrial projects in the electronic voting system field, furthermore to the area’s

P a g e | 19
recommendations regarding the problems. It recognizes risks, possible sources of attack and what
method use for attack in similar voting machine. In addition, it determines protection objectives
as well as requirements of the e-voting machine.

Schwiderski, et al. (2009) proposed an electronic voting system that combine two technologies
the GSM and the internet in order to make advance electronic mobile voting system where the
internet was handle the server and the database of electronic voting system, while the GSM
authorization system is utilized to give voter authentication and enhance person who want to
vote mobility. The researcher also attempted to improve the security and give much more
flexibility and comfort to voters. They make the privacy of the voter secured by using a blind
signature; they provided the basic structure of the proposed GSM voting machine. In future
work, they said they want to implement biometric technology in their system such as
fingerprint.

For more related researcher for wider vision (Meng, 2008) has been developed a fingerprint
electronic voting system which brings the application of fingerprint towards voting from the
mobile device towards voting where people can vote to any party of their choice from anywhere
and also registration can be done over the internet from mobile device itself except for registering
the fingerprint where you have to visit the electoral office. Also for future development, an
additional biometric feature could be added to strengthen security such as eye. In addition, the
security features at database level should be strengthened too towards accessibility of government
database.

P a g e | 20
Figure 2.4: mobile phone/ internet voting system

(Sherif Yacoub, 2011) conducted experiments over a two years period they used record simulator
in order to evaluate the performance of electronic voting systems. By using a decision tree the
simulator expands all possible decisions. The simulator have been used in order to examine the
performance of different electronic voting methods in terms of the accuracy of the electronic
voting system, the possibility of getting an assent, faith in the unanimity, sureness in the output,
and sureness in the accuracy of the output.
They found that most if not all the electronic voting systems that already exist have problems and
weaknesses. They also recommend the other researcher to expand their experiments on the
fingerprint voting system since the results of their analysis on different types of voting system

P a g e | 21
shows that the fingerprint base voting system defeat the internet base and GSM base voting
systems as well as the defeat the other electronic voting system but it also has its own problems
and weaknesses.

2.1.2 GAPS AND LIMITATIONS OF PREVIOUS RESEARCHES


Pervious researchers and developers have phased some shortages, challenges, troubles and
limitation which assist in creating system that vast the vision of the current problems to overcome
these troubles. Despite the specific benefits to electronic voting machine, experts of e-voting
argue about the protection issue and the unequal access chances to world wide web are the main
disadvantages to the system especially Internet service is a not free technology (chargeable).
Inventory problems of electronic voting machine in the four points which is Inequality problem,
difficult to be secure, it may suffer from service attack and different kind of viruses.
it is obvious that the people with low salary may not be able to pay for the devices or tools used
for electronic voting especially the mobile phone or the smart tags. As well as there are some
people who are not able to use the computer may possibly lose their right of vote and give their
opinion.

Although, kinds of viruses have the ability to do huge harm to the electronic voting system, using
specific operation system, the server can easily be secured against the viruses. But the PCs, cell
phones may don’t provide enough security and are easily attacked with virus. These viruses may
attack the computer, the cell phone, the internet, the operation system, the control unit of the
system. as well as it may infringe the ballot which is supposed to be secret and privet, change the
vote result or the final result of the election without the voter’s acknowledgement, and minimize
the justice of the voting process. If a huge number of voter's systems (computers or cell phones)
are attacked by trojan, then the election should be cancelled and make the remake the election
from the beginning.

Denial of service attack a denial of service is recognized by that an attacker prevents eligible
users from using their resources in order to perform their votes. An attacker perhaps attempts to
“flood” a network and thus reduce a legit user’s bandwidth, as well as preventing access to a
service, or interrupt service to a specific system or a user.

P a g e | 22
When the scientific applying new technology in order to solve one issue they may create other
troubles such as, electronic voting machine have been made in order to remove ballot paper and
a lot of other problems, but without having the ballot paper, the voters can’t check out their votes
if they are correctly recorded or not and they cannot separately validate votes’ totals (Meng, 2008)

As the above points which been presented and dissections, variety of technologies in a different
application have been used to make and design electronic voting systems. These electronic
systems can be used in, organizations, universities as well as democratic countries many
researches have been done to improve these systems and reduce the errors may occur during the
election process. Fingerprint is a new technology many researchers now days do projects related
to fingerprint. The researchers came up with different algorithms for the fingerprint identification
and matching process. The goal of the researcher these days is to increase the efficient of the
fingerprint algorithm.

2.2 PROBLEM OF THE EXISTING SYSTEM.

Different electronic voting machines have already been introduced previously to enhance the
election process. Since the beginning, they were questionable because the technologists as well
as the community noticed that they are losing their control through an essential part of the election
process.

A quote linked to Stalin (2010), states that: "People who cast the votes decide nothing at all while
the people who count the voters’ votes decide everything." It is actually obvious that a great voting
machine signify a crucial component of a good democracy. Even though the repercussions of a not
efficient electronic voting machine are not as easily obvious as those for train traffic control system
or atomic energy plant control systems, they may be in the same way important, simply because
the wellbeing of a community relies upon on them.
Despite the fact that most critical systems are regularly examined and analysed for security and
correctness electronic voting machine aren't exposed to the same level of analysis. A variety of
latest researches have indicated that most or all of the electronic voting machine getting used
these days are fatally defective, and that their quality didn’t fit the importance of the task they

P a g e | 23
should to conduct. From this point of view the most important task in creating and developing
this project is to develop, enhance and improve the protection and the security of the voting
system. This can be achieved by improving the safety measures by consider variety of security
actions and avoid the mistakes existing in previous machines.
The following are the problems detected from the previous systems used by Organisation for that
matter GCUC.
1. No registration of candidates into a permanent database
2. preparation of polling list
3. counting of proxy votes
4. operation threat
5. no system user authentication
6. attitude to voting
7. buying of votes
8. security threats
9. cost
10.time

2.3 PROPOSED SYSTEM


In an attempt to solve the realised issues relating the research, An Electronic voting system with
fingerprint verification (EVS) was designed and implemented. There are many types of biometric
that can be used for the electronic voting system such as eye recognition, voice recognition and
fingerprint recognition. Many researches exist relating to these types of biometric recognition but
for this voting system, fingerprint was used due to security, credibility and technology present.

2.3.1 SOLUTIONS OF THE EXISTING PROBLEM

A sable solution to all these problem is the use of computerized system (E-voting system) for high
processing speed, minimum number of staff. Generally, the system will ensure the points below
are achieved.

 Voter register

P a g e | 24
 Secured User verification system
 Avoid the school from unnecessary incurring cost every academic year.
 Voter verification -finger print
 Authentication of voters
 Avoiding of election of malpractices such as: over voting.
 Fast, easy and reliability.
 Accessible over the local secured network.

The Electronic Voting System is divided into the following modules:


i) The server side.
ii) The client side.

ADMINISTRATOR-SERVER SIDE

REGISTER EDIT, DELETE ADD DEPTS &


VOTERS &
GENERATE
AND UPDATE RESULTS ASSOCIATIONS
CANDIDATES

Figure 2.5: The system Admin:

VOTER-CLIENT SIDE

VERIFY CAST VOTE


IDENTITY

Figure 2.6: The voter

P a g e | 25
2.3.2 FINGERPRINT RECOGNITION
Biometrics nowadays is considered as a very vital component used as personal identification,
considering that the biometric identifiers impossible to be shared between people or lost and the
individual’s identity can be represented by them. Biometric identification indicates to the use of
eye, fingerprint, faces of the human been as well as speech characteristics. One of the most
important parts of biometric process is the use of fingerprint. It is a very complicated issue,
because of variations in unique impressions even in the same finger. There is one problem with
the finger print which is different fingerprint impression seems to be similar, while the fingerprint
impression belongs to same person look different. That why the fingerprint matching is a big deal.
Fingerprint recognition is a term called for the electronic method of identifying or verifying
fingerprint images belong to humans. As mentioned earlier fingerprints are considered most
important forms of biometrics that have been used in order to check the individuals’ identity. An
article belongs to (Aook Kumar, 2010) shows the different types of fingerprint recognitions.

Fingerprint Identification Terminology are extremely complex. Defining characteristics are used,
many of which have been established by law enforcement agencies, to “read” and classify
fingerprints. Even though biometrics companies like DigitalPersona do not save images of
fingerprints and do not use the same manual process to analyse them, many of the same
methodologies established over the years in law enforcement are used for our digital algorithms.
Biometric systems authenticate users by comparing the ridges and patterns on the finger. To break
it down further, the software looks for distinctions within these areas:
Ridges The skin on the inside surfaces of our hands, fingers, feet, and toes is “ridged” or covered
with concentric raised patterns. These ridges are called friction ridges and they provide friction
making it easier for us to grasp and hold onto objects and surfaces without slippage. It is the many
differences in the way friction ridges are patterned, broken, and forked which make ridged skin
areas, including fingerprints, distinctive.

Global Versus Local Features


Two types of fingerprint characteristics are used in identification of individuals: Global features
and local features. Global features are those characteristics that one can see with the naked eye and
include:

P a g e | 26
• Pattern Area
• Core Area
• Type Lines
• Delta
• Ridge Count Basic
• Ridge Patterns
The local features are known as minutia points. They are the tiny characteristics of fingerprint
ridges. Their two-dimensional arrangement is distinctive and is used for recognition. It is possible
for two or more individuals to have similar global features but still have different and distinctive
fingerprints because the local features, that is, the two-dimensional arrangement of minutia points,
is different.

Global Features
Pattern Area – The pattern area is the part of the fingerprint that contains the global features.
Fingerprints are read and classified based on the information in the pattern area. Certain minutia
points that are used for final recognition might be outside the pattern area.

figure 2.7: finger print pattern

Core Point -- The core point, located at the approximate center of the finger impression, is used
as a starting reference point for reading and classifying the print.

Type Lines
Type lines are the two innermost ridges that start parallel, diverge, and surround or tend to surround
the pattern area. When there is a definite break in a type line, the ridge immediately outside that
line is considered to be its continuation.

P a g e | 27
Delta – The delta is the point on the first bifurcation (where the ridge forks into two different
directions), abrupt ending ridge, meeting of two ridges, dot, fragmentary ridge, or any point upon
a ridge at or nearest the center of divergence of two type lines. The delta is located directly in
front of the line’s point of divergence. It is a definite fixed point used to facilitate ridge counting
and tracing.

figure 2.8: counting and tracing of ridge pattern

Ridge Count – The ridge count is most commonly the number of ridges between the delta and the
core. To establish the ridge count, an imaginary line is drawn from the delta to the core; each ridge
that touches this line is counted.

Basic Ridge Patterns


To make fingerprints easier to search against large fingerprint databases, experts categorize
fingerprints into groups based on patterns in the ridges. These groupings or basic ridge patterns
are not sufficient for identification in themselves, but they help narrow down the search and
speed up the processing time. Once a fingerprint is identified as a particular group like a whorl,
the search only continues to compare the print to all other whorl types in the database and
ignores the other groupings.

There are a number of basic ridge pattern groupings which have been defined. Three of the
most common are loop, arch, and whorl.

P a g e | 28
1. LOOP PATTERN
The loop is the most common type of fingerprint
pattern and accounts for about 65% of all
fingerprints.

Figure 2.9: pattern loops

2. ARCH
The arch pattern is a more open curve than the loop. There are two types of arch patterns – the
plain arch and the tented arch.

Figure 2.10: pattern arch


3. WHORL
Whorl patterns occur in about 30% of all fingerprints and are defined by at least one ridge that
makes a complete circle.

Figure 2.11: pattern whorl

P a g e | 29
Certain biometric products base identification on correlation of global ridge patterns, or matching
one fingerprint pattern image to another. DigitalPersona believes that high quality fingerprint
recognition algorithms must go one step further making the algorithm based on minutia points in
addition to global features.

Minutia Points
Fingerprint ridges are not continuous, straight ridges. Instead, they are broken, forked, interrupted
or changed directionally. The points at which ridges end, fork, and change are called minutia points
which provide distinctive, identifying information.

There are five characteristics of minutia points in fingerprints:

1. Type
There are several types of minutia points. The most common are ridge endings and ridge
bifurcations.

Ridge Ending – occurs when a ridge ends abruptly.

Ridge Bifurcation – the point at which a ridge divides into branches.

Figure 2.12: A Bifurcation

Dot or Island – a ridge that is so short it appears as a dot.

Enclosure – a ridge that divides into two and then reunites to create an enclosed area of ridge-less
skin.

P a g e | 30
Short Ridge – an extremely short ridge, but not so short that it appears as a Dot or an Island.

2. Orientation
The point on the ridge on which a minutia resides is called the orientation of the minutia point.

3. Spatial Frequency
Spatial frequency refers to how far apart the ridges are in relation to the minutia point.

4. Curvature
The curvature refers to the rate of change of ridge orientation.

5. Position
The position of the minutia point refers to its location, either in an absolute sense or relative to
fixed points like the delta and core points.

The algorithm incorporates traditional fingerprint identification methodologies by making use of


the extraction of minutiae features before matching require a multiple of processes, this comprise
orientation calculation, segmentation, enhancement for the images, extraction for the ridge as well
as filtering the image, etc. All the above processes come before the matching performing the
matching. creating each user’s unique identifying information for recognition. With over ten years
of study, extensive research, and testing, Digital Persona’s recognition engine is one of the most
robust fingerprint recognition algorithms available today. The performance of fingerprint
algorithms is measured primarily as a trade-off between two attributes:

False Acceptance Rate (FAR) which is the probability that an intruder will be accepted by the
system.

False Rejection Rate (FRR) which is the probability that a legitimate registered fingerprint user
will be incorrectly rejected by the system

P a g e | 31
Orientation Ridge Binarization
Field estimate

Minutiae Minutiae Thinning


Matching Filtering

4 Flowchart of the minutiae method


Figure 2.13:

Input image Binarization image

Figure 2.14: Image enhancement using Binarization for minutiae algorithm

2.3.3 TECHNICAL RESEARCH CONCLUSIONS


The technical research provides the technical issue related to the project starting by the project
component, software, program languages and finally the algorithm that use for the fingerprint
matching. The technical literature provides a compression between the DigitalPersona and
VB.NET programming language. The compression shows that the Digital Persona’s recognition
engine is better since it’s much simpler. Many algorithms technologies have been discussed in
this chapter. All these algorithms have weaknesses.
For that reason, developing algorithms for this project is an important issue.

P a g e | 32
CHAPTER THREE
RESEARCH METHODOLOGY

3.0 INTRODUCTION
In order to make any business decision, collecting data and information is very important and this
process known as research methodology. The research methodology may include many research
techniques such as interviews, publication research and surveys, it doesn’t depend on the present
information but it may depend on the historical information as well (Marzuki, 2008).

The aim and the objective are clearer due to the data and information that has been gathered from
the previous literatures. The design model is the result of the hardware and software integration.
The design model shows the prototypes, elements, architecture and components of the system.
However, in order to make this project successful the hardware and the software must be well
integrated and organized. Finding the answers to some possible questions that may come up in
the primary research is the aim of the secondary research. In order to achieve successful project,
solution form the researcher is necessary. In order to develop fingerprint voting system, enormous
research must be done to find the suitable software that is capable to meet the project
requirements. Furthermore, some technical element has to be taken into account during
developing the hardware and implementing the software into the hardware. This research has to
go through lot of steps in order to accomplish the desire fingerprint voting system. The research
will be divided to 4 stages, which shown in the figure below:

P a g e | 33
Research
Development

Relevance of Reseacrch Problem


Research
Approach Identification
Undertaken

Critical
Analysis

Figure 3.1: Research approach stages

3.1 DATA COLLECTION


This research adopted a field survey approach to data collection in which questionnaires and
Interview were used to elicit information from the respondents‟ as a research instrument with the
believe that the respondents‟ opinions would generate data for the analysis of the research. The
questionnaires form part of primary sources of data used in this research. However, secondary
sources of data were also used which were obtained from interview and internet search.
The Questionnaires were designed and self-administered. That is, respondents filled out the
questionnaires in their privacy and without the presence of the researcher. Questionnaires were
sets of 10 questions and scale designed to generate enough raw data for accomplishing the
information requirements between the actual sampled results and the estimated true population
results See Appendix D. Finally, closed-ended types of questions were administered to the
responses in collecting the raw data for analysis.

P a g e | 34
3.2 SOFTWARE DEVELOPMENT METHODOLOGY
An iterative with systematic flow methodology has been used in the development of this
system. Considering the classic life circle that enable error fixing during and after
development, the Water Fall Methodology was used to as to the system is going to use a water
fall Methodology, to ensure sequential flow of the system stages.

This methodology has been chosen for it classic life cycle, systematic and sequential.
Figure 3.2: Waterfall methodology

3.3 DEVELOPMENT TOOLS AND PLATFORM


The project has been introduced to realize and eliminate the problems that occur in many
electronic voting systems; The reason behind this project is to create fully secure, efficient,
accurate and reliable electronic voting system using fingerprint technology, the system must be

P a g e | 35
able to read human fingerprint in any condition with an accuracy of more than 97% using
fingerprint detection algorithm.
1. Data acquisition (candidate. Users and voters data)
2. Image pre-processing
3. Fingerprint image enhancement
4. Feature extraction
5. Matching
6. Database

The design of the fingerprint voting system will contain hardware which is the personal
computer that going to operate the fingerprint voting program and software which will handle
the identification process and the voting process. All the components of the system will be
integrated together and the PC will operate the system.VB.NET programming language will
be used in order to build the system. The figure below shows the system design process:

System specification

This part will describe the Electronic voting system specification. In order to make the report
more professional the desire system specification will be described as well as the recommended
hardware component in addition to the software will be used. All the components will be
described in the next paragraphs.

Hardware

All the hardware components going to be used in this project will selected to be more efficient in
order to get best result. The only device going to be used in this project is computer. This computer
must have high specifications in order to handle the system’s operation especially when the
VB.NET program need big RAM and high processor. Also, the algorithm’s speed depends on the
performance of the computer. laptop with Dual core processor and 4GB ram going to be used in
this project.

P a g e | 36
Software

The fingerprint voting system’s hardware is useless without implementing software in it; two
types of software are going to operate the fingerprint voting system. VB.NET programming to
design the graphical user interface also to program the identification algorithm and to program
the voting process. SQL SERVER DATABASE is going to be used in order to build the database
of the Electronic voting system.

VB.net
VB.net described as a strong 4th generation programming language. It is an environment for
numerical computing. It is use for plotting any function or data, it is very strong tool for matrix
manipulation and it is the best program language for algorithm implementation.VB.NET provides
a number of toolbox such as image acquisition and database toolboxes.

Sql Server Database


SQL SERVER DATABASE is a database workbench made by Microsoft Company to help the
programmer to build different type of databases using and link it to different application using
different types of programming languages. It can be linked to PHP programming language,
Visual basic, C#, and MATLAB®. In this project, The Sql Server Database going to be linked to
VB.NET.

System structure (materials and component selection)


The table below shows the system development and system component. These components have
been used to make the desire fingerprint voting system. The component divided into two type’s
hardware and software components.

Project tools

1. Programming Language: VB.NET


2. Framework: VISUAL STUDIO
3. GUI: VB.NET
4. Database: SQL Server

P a g e | 37
5. Fingerprint scanning algorithm and matching Application
6. Network: INTRANET
7. Documentation: MS Word
8. Platform: Microsoft Windows 8

Table 3.1: Electronic voting system tools

Tasks Components System Tools

Program VB.NET, SQL SERVER DATABASE


Languages
Software Visual Studio, Sql Server Management Studio, Crystal Report,
Digital Persona Third Party Software, Ms Word.

Hardware Laptop, Processor Dual Core, 4gb Ram, Network Switch /


Router, Finger Print Scanner and Webcam.

System development tools are combination of tools and instruments used with the hardware and
software modules in order to make the desirable machine. The explanation of these tools will be
explained below.

1. Personal computer
The computer is considering one of the main devises in Electronic voting system. The personal
commuter will work as an interface between the user and the system. The personal computer will
operate the program in order to allow the voter to insert his information in to the system and to
make the voting process.

Fingerprint database
The biometrics research depends heavily on the availability of the data collected. The growth
experienced by the field in the last two decades has led to the emergence of a growing number of
biometrics' databases. There are two types of databases; the first one is one biometric trait sensed

P a g e | 38
and the other one is multimode (two or more biometric features detected). In research projects it
is much better to use the fingerprint database instead of live fingerprint scanning because of the
variety of databases available on the Internet, these databases was taken different types of
scanners, some of biometric databases more accessible to the public or single mode or multimode,
which includes the function of fingerprint sensors acquired live-scan. All the databases were used
in this project to provide better testing and evaluate the system's response with great variety and
different databases. The performance of the fingerprint voting system using these databases will
be discussed in chapter 4 and 5.

P a g e | 39
Research and study

Planning

Programming Assembly hardware


Troubleshooting

No
Testing

Ok

Finalize and complete

Figure 3.3: Design Development Flow Chart

System’s interface design


The design of the Electronic voting system is divided into GUI design and identification algorithm
design. The geographical user interface will provide friendly front-end in order to make the voting
process easier for the users also to attract the users and increase their participation. The

P a g e | 40
identification algorithm design is very important since this algorithm will decide the individuals’
authority.

Fingerprint Algorithm design


The algorithm is written using Digital persona’s program. This algorithm includes pre-processing
such as image enhancement in order to make the fingerprint template clear and to reduce the noise
of the fingerprint image because the noise will affect the performance of the matching algorithm.
After the image enhancement Gabor filter will handle the identification process after converting
the image to finger code(text). The figure below shows the algorithm design flowchart.

Find Core Point Crop Image Sectorization

Feature Vector Gabor Filter Normalization

Figure 3.4: Fingerprint algorithm flowchart

P a g e | 41
3.3.1 SYSTEM FLOWCHART

Flowchart symbols are graphic tools in which symbols and shapes are used to document the flow
of control within a program or system. This also involves use in the logical processing of the
system. It shows the step-by-step sequence of computer operations necessary in solving problems.
The two major types of flowchart include
1. the program flowchart
2. the system flowchart
There may be some variations on these symbols are linked with directed lines (lines with arrows)
showing the flow of data through the system.
Transactions are input, validated and sorted and then used to update a master filer.
NOTE: - the arrows show the flow of data through the system. The dotted line shows that the
updated master file is then used as input for the next update process. This is a pictorial
representation of how the hardware components work with the programs of the system. It uses
conventional system to represent its action and flow of control between the hardware the hardware
components as show below, yet flowchart involves creating a flow model that illustrate and
analyses the overall flow activities in producing a product or services.

P a g e | 42
SYSTEM FLOWCHART OF THE SERVER SIDE

Start

Welcome screen

Input username & password

NO
Is Error in username
username & & password
password Ok?
?

YES

Main Admin Form

Choose from
Menu List

Perform Operation

Stop

Figure 3.5: Program Flowchart-Admin

P a g e | 43
Voter’s Registration Flowchart

Start

Enter Voter IndexNo


Enter Names
Enter Department
Enter level
Capture pic & finger

YES
Error Message
Has
“Voter Already
Been
Registered Exist”
?

NO

Database Process
Registration

Generate Voters ID

Save in database

Display success mgs

Stop

Figure 3.6 : Voter’s Registration Flowchart

P a g e | 44
Voting Process Flowchart

Start

Enter Voting code


/ scan finger

Is Login No Error Message


Correct “invalid VC /
? Finger”

Yes

Yes
Verify if Error Message
the Voter “You
has Already
Voted voted”
Before

No

Allow to
Vote

Stop

Figure 3.7: voter’s process flowchart

P a g e | 45
Candidates Registration Form
Start

Enter index no
Enter name
Enter association
Enter position
Enter election name
Capture picture

Process
Registration

Stop

Figure 3.8: Candidates Registration Form

P a g e | 46
View Results Process

Start

Select election name


Select association
Selection position

Generate results

Display Results

Stop

Figure 3.9: view result process

P a g e | 47
3.3.2 SYSTEM DEVELOPMENT

In this part, a block diagram will be created in order to show the main parts of the Electronic
fingerprint voting system and give a closer look to the component that will be used to create the
system. The block diagrams below shows the main parts of the fingerprint voting system.

a. Polls and control units’ block diagram

The system consists of ballot and control units. The control unit will be designed using the
VB.NET programming language and run by personal computer and it will be used to insert
information to the system. The Polls unit consists of GUI page allows he voters to cast their vote
and choose their preferable candidate by pressing one buttons of the GUI. Each button in the GUI
refers to one candidate.

User
registration

False
Power Personal Control User
Error
supply computer program identification message

True

Voting
page Database

Figure 3.10:: System Polls and control units block diagram

P a g e | 48
b. Software development
Different software has been used in this project in order to build the finger print voting system.
The Digital Persona Third Party Software will be used to assemble the fingerprint recognition
and matching and to build the user interface to let them insert their information in to the system.
The figure below shows the software operation.

c. software user interface block diagram


The Database for the fingerprint voting system has been developed using SQL SERVER
DATABASE languages the flow chart’s process have been done as shown below.

Data Encoding Data Loading Data input

Data Sending Data base

Figure 3.11: User interface software


Block Diagram

d. Software fingerprint diagram


The fingerprint algorithm for the voting system has been develop using VB.net program as
mentioned earlier.

Image Fingerprint Image Feature


Data Acquisition Matching
Preprocessing Enhancement Extraction

Figure 3.12: Software Fingerprint Block Diagram

P a g e | 49
3.3.3 SUMMARY

This research methodology is considered one of the most important parts of every project.
A lot of research method has and technologies have been discussed in this chapter. All
the information and knowledge observed from this chapter will be helpful when the time
of implementation come. All the important part will be used in this project has been
clearly defined and the cost of the component and the software has been calculated.

P a g e | 50
CHAPTER FOUR
SOFTWARE REQUIREMENTS AND SPECIFICATIONS

4.0 INTRODUCTION

The software requirements specification encompasses the minimum hardware and software
requirements that will be required by the application to ensure smooth running and performance.
Object – oriented analysis and design methods are becoming the most widely used methods for
computer system design. The UML has become the standard language used in Object- oriented
analysis and design. It is widely used for modelling software systems and is increasing used for
designing non-software systems and organizations. After analysis, and discovering the problem of
the existing system, there is need to produces a new produce a new system, which will eliminate
these problems design. To carry out the design effectively, the following steps are involved:

4.1 INPUT SPECIFICATION


In the input specification, we made use of the keyboard to enter the password, and user name which
allows early if right and refuses when wrong. We also made use of the keyboard to supply text, or
number through the application and supply text program when working with a high- level program.
All other input data for the system execution are present at menu options and is selected by sticking
easily identifiable keys, example the arrows keys, example the arrow keys the alphabetic character
keys, enter and escape keys. Finger print reader is also used to input/capture voters finger print
into the system. And Again, the web camera is also use to capture live images of the candidates
and voters.

4.2 OUTPUT SPECIFICATION


In this system, all outputs are retrieved from disk storage (database) where information resulting
from both input and processing operations has been previously stored. In designing a system, one
should bear in mind to minimize complexity and platform. The output, specifications are identified
below

P a g e | 51
4.3 FILE SPECIFICATION
A file is a collection of related records. A record is a collection of information about someone or
something of interest. Record is made up of fields. A field provides a specific item or data about
the subject of a record. The system made use of two files
i. The input data
ii. The output data

4.3.1 INPUT DATA


These are files previously, defined or created during processing of the system. You text area
on the existing screen. However, before doing this it is important to note the following. You
enter the text simply by typing it on the keyboard, while the insertion point (cursor) moves to
the right as the character are typed. When a wrong character is typed, you can delete this by
using the backspace key or using Del key when cursor is at the point of the text. Images are
captures and finger prints are also scanned

4.3.2 OUTPUT DATA


These are data that contain information resulted from processing. We have the previewing of
a document(results) file, and retrieving a file, previewing a document before printing. You can
use the print preview command to show how a document (results) will look when you print it.
While you can’t edit text in print preview, you can move headers and footers. To preview icon
present there on the menu or the file menu observation: you will notice that the page where
you can do one of the following;
Choose the print button in the print preview bar to print the document or choose the button to
return to the previous view of the document.

4.3.3 TO PRINT PART OF A DOCUMENT(RESULTS).


Follow the above steps, while in the page range box, select the current page option button then
click ok button.

P a g e | 52
4.4 DATABASE SPECIFICATION
There is need to provide an efficient data storage procedure for holding and securing critical
information. This data storage module is known as the data base. A database is an index
computer data storage and retrieval. The database management system (DBMS) creates and
packages the database. There are numerous DBMS technology available today such as;
ORACLE, MS ACCESS, SQL SEVER, and so no. for this project, the DBMS used is the SQL
SEVER. SQL SEVER is the database editor of the popular MS SQL SERVER
MANAGEMENT STUDIO, SQL SEVER stores data or information in tables which are
structured into fields. The SQL SEVER database file for the project is GOMANS2.mdf.

The SQL SEVER database file for the project is [GCUC_EVS2].mdf. It holds information on
below:
The database contains nine (9) tables
i. [TBL_CANDIDATE]: - This table holds the information for registered candidates in
all elections.
FIELD NAME DATA TYPE DATA SIZE
[CANDIDATEINDEXNO] NVARCHAR 10
[CANDIDATENAME] NVARCHAR 50
[ELECTIONPARTICIPATING] NVARCHAR 30
[ASSOCID] NVARCHAR 20
[CANDIDATEPOSITION] NVARCHAR 50
[CANDIDATEPICTURE] IMAGE
Table 4.1: candidate table

ii. [TBL_ASSOCIATION]: - This table holds the information for registered


Associations in the University.
FIELD NAME DATA TYPE DATA SIZE
[ASSOCID] INT 20
[ASSOCIATIONNAME] NVARCHAR 50
[FORALLDEPT] BIT
Table 4.2: association table

P a g e | 53
iii. [TBL_CREATEELECTION] - Table holds the information for registered elections.

FIELD NAME DATA TYPE DATA SIZE


[ELECTIONNAME] NVARCHAR 30
[ELECTIONSTARTDATE] NVARCHAR 50
[ELECTIONENDDATE] NVARCHAR 50
[ISCURRENT] BIT
Table 4.3: Election table

iv. [TBL_DEPARTMENT]:- This table holds information of registered Department in

the University.

FIELD NAME DATA TYPE DATA SIZE


[DEPTID] INT
[DEPARTMENTNAME] NVARCHAR
[FACID] INT
Table4.4: Department stable

v. [TBL_DEPT_ASSOC]:- This table holds information of Primary keys linking both

Department and Association tables

FIELD NAME DATA TYPE DATA SIZE


[DEPTID] INT
[ASSOCID] INT
Table 4.5: Departments and Association link table

vi. [TBL_FACULTY]:- This table holds information of Faculties

FIELD NAME DATA TYPE DATA SIZE


[FACID] INT
[FACULTYNAME] NVARCHAR 50
Table 4.6: Faculty Table

vii. [TBL_POLLS]:- This table holds information of votes cast at polls.

FIELD NAME DATA TYPE DATA SIZE


[VOTER_INDEX] NVARCHAR 10

P a g e | 54
[ELECTION_NAME] NVARCHAR 10
[CANDINDEXNO] NVARCHAR 10
[VOTETIME] DATE/TIME
[POLLMACHINE] NVARCHAR 50
[VOTEDFOR] BIT
[ISREF] BIT
Table 4.7: polls Table

viii. [TBL_VOTERREGISTER] : This table holds information of registered voters

FIELD NAME DATA TYPE DATA SIZE


[INDEXNO] NVARCHAR 10
[FULLNAME] NVARCHAR 50
[GENDER] NVARCHAR 6
[DEPTID] NVARCHAR 30
[VLEVEL] NVARCHAR 10
[VOTERPICTURE] IMAGE
[VOTERFP1] TEXT
[VOTERFP2] TEXT
[VOTERFP3] TEXT
[VOTERFP4] TEXT
[VOTERFP5] TEXT
[VOTERFP6] TEXT
[VOTERFP7] TEXT
[VOTERFP8] TEXT
[VOTERFP9] TEXT
[VOTERFP10] TEXT
[VCINCREASE] INT
[VOTINGCODE] INT
Table 4.8: voter Table

ix. [USERINFO_TBL]: This table holds information of System Users.

FIELD NAME DATA TYPE DATA SIZE


[FULL_NAME] NVARCHAR 50
[EMAIL] NVARCHAR 30
[USER_NAME] NVARCHAR 30
[PASS_WORD] NVARCHAR 30
[MOBILE_NO] NVARCHAR 50
Table 4.9: Users Table

P a g e | 55
Figure 4.1: Sample Schemas

P a g e | 56
4.5 SYSTEM DATA FLOW DIAGRAM

Data flow diagram basically is a diagram that demonstrates how the data manipulated by
a system flows through the different processes. It does not provide any information about
the ordering of operations or timing, or about whether processes going to be operate in
parallel or in sequence. Thus, it is quite different from a flowchart, which show the flow
of controlling process done by an algorithm, allowing a reader to determine what
operation going to be performed, in what exact order, and in what conditions, but it
doesn’t show what kind of data going to be input to the system and what data going to be
output from the system.

The fingerprint voting system will be shown at two levels of data flow diagram, level
0’s block diagram is considered as low-level diagram. Level 0 involves just the core
process which contains all the outside objects, and their dataflow. It doesn’t have
additional details. Then it will be followed by the next level of data flow diagram which
is level one, high level diagram (HLD) where the data stores going to be shown and the
core process of the low-level diagram going to brock down to main processes that done
by the fingerprint voting system and the dataflow between these processes. Main
processes will be break down into children processes in other word smaller processes in
order to make the work easer

System with proposed fingerprint voting system:


The figures below show the levels of the proposed system data flow that will be operating on
fingerprint voting system.

P a g e | 57
1- Context diagram (level 0):

Voting
Yes
Fingerprint Voting Result
Voter
System

No Warning

Figure 4.2: Fingerprint voting system context diagram (Level 0)

The diagram above shows that the voter who wants to cast his vote will scan his
fingerprint using the Electronic voting system. The Electronic voting system voting
system will perform many processes to the voter fingerprint image in order to check the
authority of the voter. The output of the system either true or false, if the output is true
that means the voter can cast his vote if it was false then the system will activate a warning.

P a g e | 58
2- High level diagram (level 1)
Fingerprint scan/Fingerprint Database

Operations

Identification User
Registration

Not allow to False


Matching
vote/Warning Database

True Allow user to vote

Button Candidate

Button Candidate 2

Button Candidate 3

Voting Result

Figure 4.3: Fingerprint voting system high level diagram (Level 1)

P a g e | 59
4.6 USE CASES
Use case diagrams model behaviour within a system and helps the developers understand of what

the user requires. The stick man represents what’s called an actor. Use case diagram can be useful

for getting an overall view of the system and clarifying who can do and more importantly what

they can’t do. Use case diagram consists of use cases and actors and shows the interaction between

the use case and actors. The purpose is to show the interactions between the use case and actor. To

represent the system requirements from user’s perspective. An actor could be the end-user of the

system or an external as shown in the diagram below

Figure 4.4: use case symbols and reference name.

ACTOR

USE CASE

SYSTEM

uses
<<extends
>>
<<include
RELATIONSHIPS
s>>

P a g e | 60
Figure 4.5: system use case

P a g e | 61
CHAPTER FIVE
SYSTEM DESIGN AND IMPLEMENTATION

5.0 INTRODUCTION
The purpose of this section is to highlight on the implementation environment of the system. This
covers the hardware and software environments for the implementation phase of the system design
and development. A top-down design approach was used in structuring the program. The system
consists of modules and sub-modules which are linked up to facilitate easy flow of data and control

5.1 SYSTEM ARCHITECTURAL DESIGN


The client/server architecture has been use in the development of this system, there the database
application and the database are separated into two parts: a front-end or client portion, and a back-
end or server portion. The client executes the database application that accesses database
information and interacts with a user through the keyboard, screen, and pointing device such as a
mouse. The server executes the software and handles the functions required for concurrent, shared
data access to a Sql database.

Although the client application and SQL can be executed on the same computer, it may be more
efficient and effective when the client portion(s) and server portion are executed by different
computers connected via a network. The following sections discuss possible variants in the
client/server architecture.

Note: In a distributed database, one server may need to access a database on another server. In this
case, the server requesting the information is a client

Distributed Processing

Distributed processing is the use of more than one processor to divide the processing for an
individual task. The following are examples of distributed processing in SQL database systems:

 The client and server are located on different computers; these computers are connected
via a network (see, Figure 5.1 Part A).

P a g e | 62
 A single computer has more than one processor, and different processors separate the
execution of the client application from SQL database (see Figure 5.1, Part B).

Figure 5.1 : system architecture-client/server

P a g e | 63
The system has a client side with fingerprint scanning form as a user interface which will be
replaced by voters table existing in the database in order to matches data. The system uses the
verification mode. The enrolment mode handles the registration process in order to register the
eligible users in the system; the output of the enrolment mode will be store in the database of the
system.

The second mode which is the verification mode handles the process of checking the eligibility of
the user by taking the user’s fingerprint and matches it with the database’s fingerprints; if the
system found any similar fingerprint in the database then the user is eligible to cast his vote. The
vote of the user will be count and store in the database. At the end of the voting process the user
can check the election result by clicking the result button.

The working process of the design/system

Figure 5.2 : Electronic voting system architecture -flow Chart

P a g e | 64
5.2 SOFTWARE REQUIREMENT

Software is a collection of programs or instructions written in any computer language, which


enables flexibility to do whatever the user wants. This package can only be run and developed with
the following minimum software

Client side
Minimum OS: windows 7
Minimum Ram: 1 GB
Minimum Hard disk: 10GB
Minimum Network card: 100mps
Finger print scanner drivers installed

For server side


Minimum OS: windows 7
Minimum Ram: 2 GB
Minimum Hard disk: 30GB
Minimum Network card: 100mps
Database: SQL server database
Finger print scanner drivers installed
Crystal report

5.3 HARDWARE REQUIREMENT

The system functions well with a good computer compatible with a hard disk drive of 30GB. This
is needed to save the program so that it can be made available any time. It requires a visual display
unit (VDU) of high resolution and graphic ability for good display of all outputs. A functional CD-
ROM / external drive is needed to be used as backup or disk in case the programs served on hard
disk is eventually destroyed by a virus. An uninterrupted power supply (UPS) is needed to sustain
power failure for sometimes whenever PHCH puts of power supply.

P a g e | 65
5.3.1 THIS SOFTWARE REQUIRES THE FOLLOWING MINIMUM HARDWARE FOR

ITS DEVELOPMENT AND RUNNING;

 Minimum Ram: 2 GB
 Minimum Hard disk: 30GB
 Minimum Network card: 100mps
 14’ super video graphic adapter monitor (SVGA)
 A mouse or mouse sensitive used on laptops
 Uninterrupted power supply (UPS), lasting for at least 24 hours.
 Switch / wireless router for local area network connection
5.3.2 LANGUAGE JUSTIFICATION

The visual basic language is the language used in designing the program for the system V.B. NET
language offers the best in terms of its availability, easy to understand good graphic ability,
flexibility and machine independence. The program can run in other versions i.e. 2010 and 2013
with little modification.
System selection to select a module (subsystem) when the main is displayed on the screen, the
cursor is passed to choose on optional and enter to select it. If this is done, control is passed to the
main program after a subro9utine is completed depending on the task that needs to
be1accomplished by the user choosing the exit do terminate a subroutine, this returns control to
the calling program and to terminate the system is by closing exit application from the main menu.

5.3.3 REVIEW OF PROGRAM LANGUAGE IN USE


There are several Program languages currently is used in school and they include Q- BASIC, PHP,
C#, Visual Basic and Java etc. However, this project was done to suit interacting processing rather
than batch processing, also immediately response expected from the computer as output or
feedback to the input in an online processing simplifies and makes the work faster. It is a high-
level language that can be translated into a machine language and can be understood by most
computers easily.

P a g e | 66
5.4 TESTING
During the design stage of the system, of the system was done to verify its efficiency and resistance
to deliberate errors. This can be done in toe stages which include: -
 Unit testing – the performance of the individual parts is examined using test data.
 System testing – the parts are linked together and the test data is used to see if the parts
works together.
ACCESS
Use of right Username and password
MENU SELECTION
The use of wrong keys for valid options
Press key randomly
Press keys which choice module is being loaded user’s data entry
Press keys randomly
Highlight with normal keys on keyboard

5.4.1 Database design

The figure below shows the database diagram of the system. In this illustration, two tables
from the database has been demonstrated. first for the Voter registration process, while
the other table responsible of the voting process from the table which is the candidate
table. The specifications and the properties of these tables and columns are shown in the
figure below.

P a g e | 67
TEST CASES

The tables below show test cases made on the system

Test Case Number 1.0

Test Case Name Admin login

Precondition Application lunched and login form


loaded
Test Case Input Enter username and password

Test Case Expected Output Admin form load

Test Case Steps /Descriptions Input: username and password


Output: admin form load
Table 5.1: test case 1

Test Case Number 2.0

Test Case Name Voter verification

Precondition Application lunched and verification


form loaded
Test Case Input Scan fingerprint on the scanner or enter
voting code
Test Case Expected Output Voting-booth form load with candidates

Test Case Steps /Descriptions Input: fingerprint or voting code


Output: voting-booth form load
Table 5.2: test case 2

P a g e | 68
Test Case Number 3.0

Test Case Name Results generation

Precondition Application lunched and admin form


loaded
Test Case Input Select the election name, association and
position
Test Case Expected Output Results form load and populated with
results specified
Test Case Steps /Descriptions Input: election name, association name
and position
Output: results load

Table 5.3: test case 3

P a g e | 69
5.5 User Interface Design
Login page-server side

Figure 5.3: System user login page

The figure above is the main login page for system user to rightfully access the system resources
for usage. Registered users are only allowed with the right username and password.
Hyperlink text “NEW USER” is used for registration of new users and “FORGOT PASSWORD?”
is also use to recover user login info via email address registered in the system by user during
registration.

Administrator main page-server side

P a g e | 70
Figure 5.4: Administrator main page
After a successful login, the above figure shows the main administrator/user page. Here the user
login in will be welcome in a text above. User can visit or use any of the menus show: voter register
for registering voters, voter verification for verifying voters via finger print scanner, create election
for creating election, candidate register for registering candidate of the election,
faculties/department/association/societies menu use for adding the listed respectively. And
election result use for generation of result after the polls of an election. Finally, a user can logout
of the system by using the button below.

P a g e | 71
Voter registration page-server side

Figure 5.5: voter registration page

When voter register menu under admin page is clicked, the above appear as the form for
manipulating voters’ data. The above form is used to register new voter, search existing voter,
update the voter’s data, delete a voter, scan finger prints and capture image of the voter.
Buttons and their functions
 Register = save the information captured on the form to the database.
 Search = search through the database for a voter
 Update = modify the data of a particular voter
 Clear = clear all field and data controls
 Delete = remove a voter from the system database
 Exit = close the form
 Scan fingerprint = call the Digital persona’s enrolment form to scan finger print.
 Webcam = use web camera to capture image of a voter
 Browse = pick an image from a system location or file.

P a g e | 72
Enrolling a fingerprint consists of scanning your fingerprint four times using the fingerprint reader.

To enroll a fingerprint select on a particular finger to scan.

Figure 5.6: The Fingerprint Enrolment dialog box

The above form is used to scan the finger print of the voter during the registration process.
Individual fingers are scan separately four times.

P a g e | 73
Faculty, department and association registration page-server side

Figure 5.7: Faculty, department and association registration page

The above figure represents the form for adding the respective faculties, departments, and
associations. And also enables linkage among them so as to reference as to which candidates a
voter can cast vote for.
Buttons and their functions
Add faculty = to add a faculty
Add department = to add a department
Add association = to add an association
Association /department = to view and link both associations and departments

P a g e | 74
candidate registration page-server side

Figure 5.8: candidate registration page

When candidate register menu under admin page is clicked, the above appear as the form for
candidate registration. The above form is used to register new candidate, search existing candidate,
update the candidate’s data, delete a candidate, and capture image of the candidate.
Buttons and their functions
 Register = save the information captured on the form to the database.
 Search = search through the database for a candidate
 Update = modify the data of a particular candidate
 Clear = clear all field and data controls
 Delete = remove a candidate from the system database
 Exit = close the form
 Webcam = use web camera to capture image of a voter
 Browse = pick an image from a system location or file.

P a g e | 75
Election creation page-server side

Figure 5.9: election creation page

The form in the figure above is use to creation election, set an election as current election, and also
to delete an election from the system database. Create button is use to save the election name
entered dates of election duration. Where reset button resets the data controls, and make current
button make a selected election a current.

P a g e | 76
results generation form-server side

Figure 5.10: results generation page

Election results are generated after the polls has come to an end. The above figure shows the results
form which is use to generate the results by selecting the respective election name, association and
position as well. The form allows you to choose the type of results being it graphically or
statistically.

P a g e | 77
voter instruction form-client side

Figure 5.11: voter instruction page

This figure shows the first page on the client side of the system, where first time voters can read
the instructions before commencing the voting process. After reading the instruction, the voter can
then click on Start Voting Button to verify identity and cast vote.

P a g e | 78
voter finger print verification form-client side

Figure 5.12: voter finger print verification page

Before a voter can cast a vote, he/ she should be registered in the system. The above page is used
to verify the identity of voters before their respective candidates appears for selection.
A voter simply clicks on the Scan-Finger Button to call the Digital persona’s verification and
matching form.

P a g e | 79
To verify a fingerprint
The Verify Your Identity dialog box appears.

1. Using the fingerprint reader, scan your fingerprint.


In the Verify Your Identify dialog box, a green check mark appears over the fingerprint, which
indicates that your fingerprint was verified.

Else In the Verify Your Identify dialog box, a red question mark appears over the fingerprint,
which indicates that your fingerprint was not verified.

Figure 5.13: Verify Your Identify dialog box

P a g e | 80
voter voting code/ proxy verification form -client side

Figure 5.14: voter voting code/ proxy verification page

Alternatively, every election has its own challenge, hence a provision of proxy / or non-finger print
voters voting interface has been created. The voter uses a voting code generated by the server side
to cast their vote. The voting code in this case is use to identify the voter’s eligibility. Voter enters
his / her voting code and clicks on verify button for verification

P a g e | 81
CHAPTER SIX
SUMMARY
6.0 INTRODUCTION

The electronic fingerprint voting system aims and objective included developing strong matching
algorithm using Digital Persona fingerprint algorithm and link it to SQL SERVER database.
Furthermore, it also has GUI designed using VB.NET to control the whole application. In relation
to the research work achieved, all of the goals and objectives of the specific area of research has
been accomplished positively. There is a say belonging to Winston Churchill state, “To improve
is to change; to be perfect is to change often”. Therefore, improvement always has to be done in
order to make a system to be perfect.

To sum up, this project clarifies the requirements and key elements of Biometric E-voting system,
and my implementation provides the following features. To begin with, the accuracy of voter’s
identity and results are ensured with this voting system. Voters cannot cast votes more than once.
This system will validate whether the User and voter are authorized or not, to make sure only legal
user can vote, and voter’s authorities are limited in order to prevent his violation. Furthermore,
this system fits in with the parts of principles proposed by SRC, including secrecy, non-
coercibility, integrity, and uniqueness. But because of the limitation of incomplete laws and
regulations, absentee voting can’t be held. It still needs to be discussed in legislative systems. In
the future, to eliminate maladministration and human destruction, setting up a strongly secure E-
voting system is necessary. It can speed up the

6.1 LIMITATIONS

The success of any project depends critically on the effort, care and skills one applies in its initial
planning. In the planning of this project, a work breakdown structure, followed by the task and
time allocation has been done so as to effectively manage the different individual tasks involved
in it. Each Electronic voting system depends on an important external factor which is the
fingerprint’s image. The resolution and the quality of the image have huge impact to the system.
This system is working perfect with low quality

P a g e | 82
image but it doesn’t work well with very low-quality image. Very low-quality image leads to
rejecting the image or to false rejection. Database Images have a large size it has resolution of
eight bits per pixel. Uploading a large number of fingerprints image and voter pictures to the
database demands a large memory space as well as large number of voters mean more fingerprint
picture must be uploaded in to the database and that makes the database response slower the leads
to slower voting process.

The recommendation section below view the improvement and suggestion can be done to the
system to enhance the performance more and more.

6.2 RECOMMENDATION/ FURTHER RESEARCH

In big elections, there are huge number of people want to cast their votes, in order to avoid the
congestion at the voting point there is need to provide online Access be connected to the main
computer/server in order to allow many people to perform voting at the same time and prevent
congestion. Therefore, this application should be built online with a server architecture. As an
improvement, multiple client machines including mobile applications should be interacting with
the server simultaneously. Clients will interact with the system through an interactive GUI, while
the server serves the clients request and does the processing in the backend.
Reducing the number of fingerprint algorithm size from 8 filters to 4 filters will be good idea in
order to speed up the algorithm taking into account maintaining the efficiency of the algorithm
during the identification process of the fingerprint.

This fingerprint electronic voting system is considered as a PC based fingerprint voting system.
For future work, it will be better to design a fingerprint voting machine works dependently without
need for PC to perform the voting in order to decrease the project cost.

P a g e | 83
6.3 CONCLUSION
Fingerprints considered as one of the most popular biometric methods used for human
recognition. Every person in the globe is born with unique fingerprint even twins born
with totally different fingerprints and fingerprint is naturally unchangeable throughout
life. For that reason, fingerprint voting system has been made and the person ID has been
replaced with his fingerprint. This fingerprint voting system is implemented and evaluated
successfully. The evaluation of the system is made using different PCs with different
specifications in order to stand on system strength and weaknesses. The final result of the
system was amazingly significant and computable with other voting system. The system’s
accuracy came from the image enhancement and speed of network between the clients
and server.

P a g e | 84
REFERENCES
Anthony L, 2007. optimization of Election Process.

Aook K, 2010. Mastering VB.NET programming language.

Azirar, F., 2011. Fingerprint Recognition, Bachelor Thesis.. Bachelor Thesis School of Electronics
and Physical Sciences, Department of Electronic Engineering, University of Surrey.

Bakshi U.A., Bakshi A.V., Bakshi K.A., 2007. Digital Image Processing,. s.l.:1st ed. Pune,
Technical Publications. .

Brimblecombe, P., 2005. Face Detection Using Gabor filter, Bachelor Thesis. School of
Electronics and Physical Sciences, Department of Electronic Engineering, University of Surrey.

Brimblecombe, P., 2005. finerprint identification Using Neural Networks, Bachelor Thesis. School
of Electronics and Physical Sciences, Department of Electronic Engineering. University of Surrey.

Brown, P.T and Payne L.C., 1975. Computer application.. New York: Addison Wesley publishing.

Cetinnkaya, 2007. election process and procedures.

Charles K. Ayo, Uyinomen O. Ekong, 2007. electronic voting system using internet.

D. Maio, D. Maltoni, A. K. Jain, and S. Prabhakar, 2003. Handbook of FingerprintRecognition.


Springer Verlag.

Fadili, J. M., Research students' early experiences of the dissertation literature review, pp. 217-
229, Routledge, Jean-Luc Starck, Fionn Murtagh.. Sparse Image and Signal Processing. 2010: In
C. Bruce.

Fan, Y., 2002. Face Recognition System based on Self-Organizing Maps and Multilayer
Perception Networks. Class Project. Engineering Faculty, Michigan State University.

Giovanni, 2008. History of Electronic voting machine.

Hassoun, M., 1995. Fundamentals of Artificial Neural Networks. The MIT Press, Cambridge,
Massachusetts, United States of America.

IDEA international, I., 2012. The democratic voting process, New York, USA: s.n.

Jain, K, Ross, A, Prabhakar, S, 2004. An Introduction to Biometric Recognition. New York, USA.

Jones, R., 2009. Optical voting system.

P a g e | 85
Kenyatta, J., 1996. https://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm.
[Online]

Available at: https://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm


[Accessed 31 may 2017].

L.L., &. D. B. D., 2011. omputer Networks, Fifth Edition: A Systems Approach (The Morgan
Kaufmann Series in Networking). Morgan Kaufmann; 5 edition.

Marzuki, 2008. Computer systems research methodology.

Mayuree Lertwatechakul & Siriporn Thammawaja, 2009. design a Secure Electronic Voting
System for hala and school Election. 94(2), 455-466.

Meng, T. Y., 2008. Electronic Voting Systems: Security Implications of the Administrative
Workflow. University of the Aegean, Samosl Greece.

Nagi, J., 2009. Design of an Efficient High-speed fingerprint Recognition System. Final Year
Project Proposal. College of Engineering, Universiti Tenaga Nasional.

Penny, H., 2000. Process control system. :. Britain: John Murry Publication Ltd.

Proyor, E., 1975. A Computerized System for voting decision. s.l.:s.n.

Ray, B., 1996. IT and micro Electronics.. London: Hellin Press ltd.

runsilius, J. e. a., 2009. A Biometric-Secure e-Voting System for ElectionProcesses. Digest of


Technical Papers.

Schwiderski, Yang Feng and Scarlet, 2009. electronic voting system using GSM and the Internet,
s.l.: s.n.

Shahram M, 2009. enchancement of electronic voting system, s.l.: s.n.

Simao, 2006. Electronic Voting Syytem.

Thompson, T.K., 1975. Computer organization practice in E-voting system Management. Japan:
The One Ltd .

Xiao Yun Jing and David Zhang, 2009. A fingerprint Recognition Approach Based on minutiae
DCT Feature Extraction. Nanjing University of Science.

Z. Pan, H. Bolouri, 2010. figerprint matching on Discrete Cosine Transform and. University of
Hertfordshire, Herts, United Kingdom.
Ziad M. Hafed and Martin D. Levine, 2009. Face Recognition using Discrete Cosine Transform.
Center for Intelligent Machines, McGill University.

P a g e | 86
APPENDIX A
Glossary
Definition of the technical terms and abbreviations used in this document
List of Technical Words Used:
A process or set of rules to be followed in calculations or other problem-
A ALGORITHM
solving operations, especially by a computer.

B Bachelor of Science
BSC
Pronounced as see sharp) is a multi-paradigm programming language
encompassing strong typing, imperative, declarative, functional, generic,
C#
object-oriented (class-based), and component-oriented programming
disciplines.
C
Is a pre-pressed optical compact disc which contains data. The name is an
CD-ROM
acronym which stands for "compact disc read-only memory
In a network) a desktop computer or workstation that is capable of
CLIENT
obtaining information and applications from a server.
A database management system (DBMS) is system software for creating

DBMS and managing databases. The DBMS provides users and programmers
D with a systematic way to create, retrieve, update and manage data.

DP Digital persona

DP SCANNER Digital persona scanner

EC Electoral commission
E E-VOTING Electronic voting

EVS Electronic voting system

FAR False acceptance rate


F
FRR False rejection rate

GABS, Garden city university association of business students

GACUNSA, Garden city university nursing and midwifery students’ association

GB Gigabyte
G
GCUC Garden city university college
(Global System for Mobile communication) is a digital mobile telephony
GSM
system that is widely used in Europe and other parts of the world. GSM

P a g e | 87
uses a variation of time division multiple access (TDMA) and is the most
widely used of the three digital wireless telephony technologies (TDMA,
GSM, and CDMA).

GUFASSA, Garden city university faculty of applied science students’ association

GUI Graphical user interface


High Level Design (HLD) is the overall system design - covering the
system architecture and database design. It describes the relation between
H HLD
various modules and functions of the system. Data flow, flow charts and
data structures are covered under HLD

ICT Information communication technology

ID Identity document, any document used to verify a person's identity


An intranet is a private network that is contained within an enterprise. It
I
may consist of many interlinked local area networks and also use leased
INTRANET
lines in the wide area network. Typically, an intranet includes connections
through one or more gateway computers to the outside Internet.
MATLAB (matrix laboratory) is a multi-paradigm numerical computing
MATLAB environment and fourth-generation programming language.

Megabits per second (Mbps) are a unit of measurement for bandwidth and
throughput on a network. ... Mbps stands for megabytes per second, with
MBPS
the bytes suffix referring to a unit of measurement for file size

MELTSA medical laboratory and technology students association


M
MS Microsoft
Mysql is an open source relational database management system
(RDBMS) based on Structured Query Language (SQL). ... LAMP
is a Web development platform that uses Linux as the operating
MYSQL
system, Apache as the Web server, mysql as the relational database
management system and PHP as the object-oriented scripting
language.
National Union of Ghana Students
N NUGS

P a g e | 88
Oracle Database (commonly referred to as Oracle RDBMS or
O ORACLE simply as Oracle) is an object-relational database management
system produced and marketed by Oracle Corporation.
PASAG Physician assistantship students association of garden city university

PC Personal computer

PHP (recursive acronym for PHP: Hypertext Preprocessor) is a


P
widely-used open source general-purpose scripting language that is
PHP
especially suited for web development and can be embedded into
HTML.

PUSAG Private Universities Students Association of Ghana


Qbasic is an IDE and interpreter for a variety of the BASIC
Q Q- BASIC
programming language which is based on quickbasic
R Random access memory
RAM
In computing, a server is a computer program or a device that
SERVER provides functionality for other programs or devices, called
"clients"
Structured Query Language is a domain-specific language used in
programming and designed for managing data held in a relational
SQL
database management system (RDBMS), or for stream processing
S
in a relational data stream management system (RDSMS)
SRC Students representative council
Super Video Graphics Array or Ultra Video Graphics Array, almost
always abbreviated to Super VGA, Ultra VGA or just SVGA or
SVGA
UVGA is a broad term that covers a wide range of computer display
standards.
The Unified Modelling Language (UML) is a general-purpose,
developmental, modelling language in the field of software
U UML
engineering, that is intended to provide a standard way to visualize
the design of a system.

P a g e | 89
An uninterruptible power supply, also uninterruptible power
UPS source, UPS or battery/flywheel backup, is an electrical apparatus
that provides emergency power

USAG University Students' Association of Ghana


In software and systems engineering, a use case is a list of actions
or event steps, typically defining the interactions between a role
USE CASE (known in the Unified Modelling Language as an actor) and a
system, to achieve a goal. The actor can be a human or other
external system.
VB Visual basic

VC Voting code

VDU Visual display unit


V
A virtual private network (VPN) extends a private network across a
VPN public network, and enables users to send and receive data across
shared or public networks.

P a g e | 90
APPENDIX B
User Manual

With the system having two types of users, that is the system admin/user and the voters.
Hence the system has a default admin account. Installation is done separately on the server system
and client system and linked/connected through a local area network or VPN.

Server users (admin)


1. System Admin/User must be registered as users to access the administrative forms/pages.
2. After successful login, the election must be first created through the create election menu.
3. Associations, department and faculties must be added to the system
4. candidates should be registered next.
5. voters can now be registered
With the above five steps, the system is ready to run an election.

Client users(voters)
Voters after successful registration can cast their votes by scanning their finger print or by keying
in a voting code obtained from the server side. A welcome page with set of instructions on how to
cast vote and use the system is presented as the first interface to the voter.

P a g e | 91
APPENDIX C
Sample Code

SAMPLE SOURCE CODE: USER LOGIN

The code below has been used under the login button of the login form to enable access the admin

page of the server side of the system. Successful login will lead to the admin page else error

massage pops up to ask of correct user info or gives database connection error message.

Try
If TXTUSERNAME.Text = "" And TXTPASSWORD.Text = "" Then
MessageBox.Show(" PLEASE ENTER YOUR USER INFO TO LOGIN")
TXTUSERNAME.Focus()

ElseIf TXTPASSWORD.Text = "" Then


MessageBox.Show(" PLEASE ENTER YOUR PASSWORD")
TXTUSERNAME.Focus()

Else
Dim sqlSelect As String = " SELECT USER_NAME, PASS_WORD FROM
USERINFO_TBL WHERE USER_NAME='" & TXTUSERNAME.Text & "' And PASS_WORD='" &
TXTPASSWORD.Text & "' COLLATE SQL_Latin1_General_CP1_CS_AS"
Dim mysqlDBconnection As New SqlConnection(cstring)
Dim mysqlDBcommand As New SqlCommand(sqlSelect, mysqlDBconnection)
Dim mydatareader As SqlDataReader

mysqlDBconnection.Open()
mydatareader = mysqlDBcommand.ExecuteReader
If mydatareader.HasRows Then
ADMINPAGEFORM.Show()

Me.Close()
TXTUSERNAME.Clear()
TXTPASSWORD.Clear()
TXTFULLNAME.Clear()
TXTEMAIL.Clear()
TXTUSER_NAME.Clear()
TXTPASS_WORD.Clear()
TXTMOB_NO.Clear()

Else
MessageBox.Show("INVALID USERNAME OR PASSWORD : hint PASSWORD IS
CASE SENSITIVE")
TXTUSERNAME.Clear()
TXTPASSWORD.Clear()
TXTFULLNAME.Clear()
TXTEMAIL.Clear()

P a g e | 92
TXTUSER_NAME.Clear()
TXTPASS_WORD.Clear()
TXTMOB_NO.Clear()
TXTUSERNAME.Focus()

End If

End If
Catch ex As Exception
MessageBox.Show("connection fail: Please make sure you are connected to a
network")
End Try
End Sub

P a g e | 93
SAMPLE SOURCE CODE: VOTER REGISTER SEARCH

The code below searches for a voter within the system database when the search button is clicked

on the voter register form. If voter is found, the voter data is populated on the registration form

else a pop up message box appear to say “voter does not exist”.

Private Sub BTNSEARCH_Click(sender As Object, e As EventArgs) Handles BTNSEARCH.Click


If TXTINDEXNO.Text = "" Then
MessageBox.Show(" Please Provide Your Index No")
TXTINDEXNO.Focus()
Else

Dim sqlSelect As String = " SELECT * from TBL_VOTERREGISTER WHERE


(IndexNo=@IndexNo)"
Dim mysqlDBconnection As New SqlConnection(cstring)
Dim mysqlDBcommand As New SqlCommand(sqlSelect, mysqlDBconnection)
mysqlDBcommand.Parameters.AddWithValue("@IndexNo", TXTINDEXNO.Text)
mysqlDBconnection.Open()
Using mydatareader As SqlDataReader = mysqlDBcommand.ExecuteReader
If mydatareader.Read Then
TXTFNAME.Text = mydatareader.Item("FullName").ToString

Dim Sgender As String = mydatareader.Item("Gender")

If Sgender = "Male" Then


RBTMALE.Checked = True
Else
RBTFEMALE.Checked = True
End If

CBODEPT.SelectedValue = mydatareader.Item("Deptid").ToString

CBOLEVEL.SelectedItem = mydatareader.Item("VLevel").ToString
TXTVCODE.Text = mydatareader.Item("VotingCode").ToString
Try
Dim Picc As New
IO.MemoryStream(CType(mydatareader.Item("VoterPicture"), Byte()))
PictureBox1.Image = Image.FromStream(Picc)

Catch ex As Exception
PictureBox1.Image = Nothing
End Try
BTNUPDATE.Enabled = True
BTNDELETE.Enabled = True
TXTVCODE.Visible = True
Else
MessageBox.Show(" Voter does not Exist")
TXTINDEXNO.Clear()
TXTFNAME.Clear()
RBTFEMALE.Checked = False

P a g e | 94
RBTMALE.Checked = False
TXTVCODE.Clear()

CBODEPT.SelectedItem = Nothing

CBOLEVEL.SelectedItem = Nothing
PictureBox1.Image = Nothing
TXTINDEXNO.Focus()

End If
End Using

End If
End Sub

P a g e | 95
SAMPLE SOURCE CODE: VOTING PROCESS- SUBMISSION

The code below executes when the voter submits the selected candidates to finally cast his votes using the
submit button. Successful submission of votes cast will show a message as “You have successfully cast
your vote” else an error message of connection to the server (database) will pops up to indicate unsuccessful
operation.

Private Sub BTNSUBMIT_Click(sender As Object, e As EventArgs) Handles


BTNSUBMIT.Click
Try

If MessageBox.Show("Are You sure You want to Submit", "Submiting


Candidates...", MessageBoxButtons.YesNo) = DialogResult.Yes Then
Dim sqlInsert As String = ""
For Each cand As DataGridViewRow In dgvSelCandidates.Rows
Dim candIndex As String =
cand.Cells("selCandIndex").Value
Dim votetime As String = getServerDateF(True)
Dim pollPc As String = My.Computer.Name
Dim wasVotedFor As Boolean = cand.Cells("VotedFor").Value
Dim wasRef As Boolean = cand.Cells("IsRef").Value
sqlInsert &= "INSERT into TBL_POLLS
(voter_index,election_name,candindexno,votetime,pollmachine,votedfor,isref)
VALUES ('" & STUDINDX & "','" & curElect & "','" & candIndex & "','" &
votetime & "','" & pollPc & "','" & wasVotedFor & "','" & wasRef & "');" &
vbNewLine
Next
If executeStatement(sqlInsert) Then
MessageBox.Show("You have SUCCESSFULLY cast your vote.
Thank you!", "Voted Successfully", MessageBoxButtons.OK,
MessageBoxIcon.Exclamation)
Close()
Else
MessageBox.Show("SORRY your vote has not been saved!", "
Submission Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Close()
End If
End If

Catch ex As Exception
MessageBox.Show("Sorry, Your voting system cannot connect to the
Server")
End Try
End Sub.

P a g e | 96
APPENDIX D
Sample Questionnaire

Dear student, the Gcuc-SRC is dedicated to improving students’ welfare and satisfaction in all
endeavour. Through this brief survey, your answers will be helpful and enhancing our election
process on campus to the benefits of students and the university at large.

PLEASE INDICATE YOUR LEVEL OF SATISFACTION OR DISSATISFATION WITH


EACH QUESTION.

1. How likely is it that you would recommend the rented software to another university?

Not at all likely


Extremely likely
Not at all likely - Extremely likely -
0 1 2 3 4 5 6 7 8 9 10

2. How satisfied are you with the reliability of the rented software?

Extremely satisfied
Very satisfied
Somewhat satisfied
Not so satisfied
Not at all satisfied

3. How satisfied are you with the security of the rented software?

Extremely satisfied
Very satisfied
Somewhat satisfied
Not so satisfied
Not at all satisfied

4. Do you think the SRC should continue renting or they should buy their own customized
software?

buy their own


continue to rent

P a g e | 97
5. How satisfied are you with the rented software's ease of use?

Extremely satisfied
Very satisfied
Somewhat satisfied
Not so satisfied
Not at all satisfied

6. do u recommend a highly security feature should be added to the new software to buy?

Extremely recommend
Not recommend

7. How satisfied are you with the voting process experienced from the annual rented
software?

Extremely satisfied
Very satisfied
Somewhat satisfied
Not so satisfied
Not at all satisfied

8. How satisfied are you with the value for the money of this software?

Extremely satisfied
Very satisfied
Somewhat satisfied
Not so satisfied
Not at all satisfied

9. How satisfied are you with the ability to collaborate with other users on this software?

Extremely satisfied
Very satisfied
Somewhat satisfied

P a g e | 98
Not so satisfied
Not at all satisfied

10. Do you have any thoughts/suggestions on how to improve this software?

THANK YOU FOR YOUR TIME AND SUGGESTIONS

P a g e | 99

Potrebbero piacerti anche