Você está na página 1de 68

CHAPTER ONE

1.0.

INTRODUCTION

Electronic voting system (EVS) also known as e-voting is a term


encompassing several different types of voting embracing both electronic
means of counting votes.
Electronic voting technology can include punched cards, optical scan
voting systems and specialized voting kiosks (including self contained
direct-recording electronic voting systems or DRE). It can also involve
transmission of ballots and votes via telephones, private computer
networks, or the internet.
Generally, the major approaches towards achieving an effective on line
electronic.
VOTING SYSTEM (EVS)
Scope of E-voting system
Specifies the system requirements
Specifies the participating parties of the system and describes their
roles,

Specifies the architecture of the E-voting system, the general


description of the functionally, protocols and algorithms,
Analyses and describes possible security of hazards & examines
the compliance of the system to security requirements.
1.1

BACKGROUND OF STUDY

The Federal Republic of Nigeria. Nigeria is a Federal constitutional


republic comprise thirty-six states and its Federal capital Territory, Abuja.
The country is located in West Africa and shares land borders with the
Republic of Benin in the West, Chad and Cameroon in the South lies on
the Gulf of Guinea on the Atlantic Ocean. The three largest and most
influential ethnic groups Nigeria are the Hausas, Igbo and Yoruba in
terms of religion Nigeria is roughly split half and half between Muslims
and Christians with a very small Minority who practice traditional
religions.
Nigeria elects on Federal level, a head of state the President and a
legislature (The National Assembly). The President is elected by the
people. The national Assembly has two chambers. The House of
Representative has 360 member elected for a four year term in single-seat
constituencies. The senate has 109 member elected for a four years term
2

each of the

36 states are divided into 3 senatorial districts, each of

which is represented by one senator, the Federal capital Territory


represented by only one senator.
Nigeria made up of thirty-six (36) states with 774 local governments.
In the Local Governments they have the chairman and the Counselor, the
state governed by the Governors and the Local Government by the
chairman and counselors and there are all elected by the people of the
state.
That is to say that there are about 2054 elective positions in Nigeria.
1

President

360

House of Representatives

109

Senators

36.

States Governors

774

Local Government Chairman

774

Local Government Counselors

1.2

SIGNIFICANCE OF STUDY
1.

An electronic voting system (EVS) will require being very


precise or cost cutting to produce an effective election
management system.
3

2.

Therefore crucial points that this (EVS) emphasizes on are


listed below.

3.

Require les number of staff during the election.

4.

This system is a lot easier to independently moderate the


elections and subsequently reinforce its transparency and
fairness.

5.

Less capital, les effort, and less labour intensive, as the


primary cost and effort will focus primarily on creating,
managing, and running a secure online was looting portal.

6. Increased number of voters as individual will find it easier and


more convenient to vote, especially in western societies where
life is a lot more regimented and programmed.
1.3

OBJECTIVE OF THE STUDY

The objective is to produce a computer-based tutor that will guide voting


in Nigeria which can speed the counting of ballots and can provide
improved accessibility for disable voters, it will also provide
transparency; mitigate all challenge that may be experienced in setting up
polling booths dealing with ballot boxes, and any counting deficiencies,
and a host of others issues. Having proper fire-walls installed it is aimed
4

at eliminating the abnormalities and error in the existing system. It also


aims at reducing the crime and fraudulence activities encountered with
the old voting existing system in Nigeria.
1.4.

SCOPE OF STUDY.

It is focused on studying the existing system of voting in Nigeria and to


make sure that the peoples vote is counts, for fairness in the elective
positions. This is also will produce.
Less effort and less labour intensive, as the primary cost and
focus primary on creating, managing, and running a secure web
voting portal.
In creasing number of voters as individuals will find it easier and
more convenient to vote, especially in western society were life is
a lot more regimented and programmed.
1.5.

LIMITATION OF STUDY

Time factor, which is the greatest barrier to the successful completion of


this exercise, I had financial constraints to traveling. The school is also a
barrier to permission for exit to get my materials for this project.

1.6.

DEFINITION OF TERM

EVS On line electronic voting system


E-voting - Electronic Voting
INEC - Independent National Electoral Commission
EVR - Electronic Voter Register
PU- Polling Unit
ICT- Information and communication Technology
ECIL- Federal Election Commission
ES & S - Election systems & software
VVPAT- vote verifiable paper audit trails
PEB- Personal Electronic Ballot
PIN- Personal Identity Number
MBB- Mobile Ballot Box
JBC- judges Booth Controller

CHAPTER TWO
2.0 LITERATURE REVIEW
David Chaum addressed the concepts of untraceable electronic mail and
digital pseudonyms, which can apply for electronic voting for anonymity.
In order to reduce the cost of human and material, moreover, to enhance
the convenience in the task of polling, E-voting has taken the place of
traditional voting in a considerable number of countries over the past few
years. In this section, I aim to review literature I consider relevant to Evoting.
2.1 EVALUATION OF VOTING EQUIPMENT
In the recent years, voting equipments which were widely adopted may
be divided into five types
(1) Paper-based voting: The voter gets a blank ballot and use a pen
or a marker to indicate he want to vote for which candidate. Handcounted ballots is a time and labor consuming process, but it is

easy to manufacture paper ballots and the ballots can be retained


for verifying, this type is still the most common way to vote.
(2) Lever voting machine: Lever machine is peculiar equipment, and
each lever is assigned for a corresponding candidate. The voter
pulls the lever to poll for his favorite candidate. This kind of
voting machine can count up the ballots automatically. Because its
interface is not user-friendly enough, giving some training to
voters is necessary.
(3) Direct recording electronic voting machine: This type, which is
abbreviated to DRE, integrates with keyboard, touch screen, or
buttons for the voter press to poll. Some of them lay in voting
records and counting the votes is very quickly. But the other DRE
without keep voting records are doubted about its accuracy.
(4) Punch card: The voter uses metallic hole-punch to punch a hole
on the blank ballot. It can count votes automatically, but if the
voters perforation is incomplete, the result is probably determined
wrongfully.
8

(5) Optical voting machine: After each voter fills a circle correspond
to their favorite candidate on the blank ballot, this machine selects
the darkest mark on each ballot for the vote then computes the
total result. This kind of machine counts up ballots rapidly.
However, if the voter fills over the circle, it will lead to the error
result of optical-scan.
2.2 Effectiveness of E-voting Among Different Countries
Recent years, a considerable number of countries has adopted E-voting
for their official elections. In this section, four empirical examples are
enumerated as following.
(1) America: Government of the United States hold election
collaterally in several ways, in other words, each state can choose
the suitable way to hold elections independently. Because there are
some debates about E-voting, such as some vote casts were not
counted, or election system crashed during the Election Day.
Secretary of State Kevin Shelley established an Ad Hoc Touch
Screen Task Force to research the debates on DRE in February
9

2003. Shelly advanced that DRE should include voter verifiable


paper audit trails (VVPAT) to solve electoral debates.
(2) Japan: Japan adopted E-voting for local election in 2002, such as
mayor and councilor election of Niimi city in Okayama prefecture
in June 23, 2002; mayor election of Hiroshima city in February 02,
2003; and mayor election of Kyoto city in February 08, 2004. Take
mayor and councilor election of Niimi city for example, electoral
center surveyed the voters reliability when the election finished.
There are 83% of voters considered that E-voting system is
trusted. 56% of them considered that the results of E-voting and
paper-based voting are the same therefore E-voting is sufficient for
reliable. The reasons why voters cant trust the E-voting system
are voters worried about the abuses in E-voting system, and they
can not make sure their ballot are recorded correctly.
(3) Belgium: Election for the Federal Parliament is held in May 18,
2003. In order to assist voters in being familiar with E-voting
system, electoral center held short-term training. Counting
efficiency in the election with E-voting system was faster then
10

convention. Belgiums compulsory voting system and E-voting


complement each other, voters satisfaction and attending
willingness of join voting are improved obviously.
(4) Brazil: Brazil used E-voting in 1998. When the voter reaches the
polling place, he shows his identity card for authenticating; if he is
an eligible voter, he can get the ballot for E-voting. Brazils Evoting system transmits votes to electoral center immediately, so
that the count of votes can announce rapidly while the voting
finished
2.3 COMPARISON OF E-VOTING SYSTEM
Besides many vendors to develop and sell commercial electronic election
machines, there are various open source E-voting systems. I cite some
examples as following
(1) AccuVote-TS: AccuVote-TSs vendor is Diebold Election
Systems. This system includes touch screen, card reader, keyboard,
headphone, and paper tape printer. The voter selects his favorite
candidate on touch screen, and the vote will be printed on the
11

paper tape. Its design balances the policy, electoral procedure and
technology. But all the electoral information (including identity
authentication, audit, or counting of votes) are stored in Microsoft
Access database without setting password so there are high risks of
attack.
(2) iVotronic: The vendor of iVotronic is Election Systems and
Software (ES&S). iVotronic provides multi-language, and uses flash
memory to save voting records. Electoral workers use PEB (Personal
Electronic Ballot, a device which is similar to disk) to start polling
machine up. When the election is finished, the workers use PEB to
access voting records in the polling machine, then delivers PEB to
electoral center or transmits data from network. Because the PEBs
password is only three characters, the risk of password breaking
exists. This system have made mistake in the past elections, such as
the number of voters is not corresponding between master server and
backup server, the candidate selected on the ballot is not the voters
selection, and so forth.

12

(3) eSlate 3000: Hart InterCivic invented eSlate 3000. The voter gets
a personal identity number (PIN) as four digits from electoral
workers, then goes to the booth to input the PIN into polling
machine to login. He can rotate selector wheel to select the
candidate whom he want to poll for. Each terminal connects to the
server which is named JBC (Judges Booth Controller). Counting
of votes will send to JBC from every terminal by network, then
save it in MBB (Mobile Ballot Box). This system doesnt encrypt
voting data, so there are some risks of data security. Furthermore,
the electoral functions are not protected with password, anyone,
even the voter, can finish the election. FreeDOS. This system
operates from disk, so hard disk is not necessary and the discarded
computer is enough. This system is not connected to any networks
and most of keys on the keyboard are disabled, attackers cant find
the way to invade. SAVIOCs advantages are its simple disposition
and low cost, but on the other hand, there are short of GUI and
ease of use on SAVIOC.

13

2.4 Contact less IC card


We can distinguish IC card into contact card and contact less card.
Contact card has to contact with card reader for transmitting data, but
contact less card can transmit data from remote retrieval by coil. There
are 16 sectors in the contact less IC card, and there are 4 blocks in every
sector. Each sector is individual. We can find the application of contact
less card in daily life, such as Easy Card, entrance guard card, and so
forth. Because of Mifare cards low cost and applicability, our research
choose Mifare card for storage.

2.5 THE SECURITY ISSUES OF E-VOTING


Foreign experience revealed that they are often confronted by security
issues while the electronic voting system is running. The origin of the
security issues happened was due to not only outsider (such as voters and
attackers)

but

also

insider

(such

as

system

developers

and

administrators), even just because the inheritance of some objects in the


source code are unsuitable. These errors caused the voting system
crashed.

14

The proposed solutions were correspondingly outlined to hold back these


attacks. For example, to avoid hacker making incursion into the voting
system via network, we can design our system to transmit data without
network. Another example is to limit voter to input particular data, so that
preventing the command injection from running

15

CHAPTER THREE
3.0 RESEARCH METHODOLOGY
In this chapter, the source of data methods of collection, the evaluation of
the existing system and the organization structure of the system problem
are presented.
3.1.

What is System Analysis?

A system is a collection of activities and elements organized to


accomplish a goal. In system analysis, data is collected about the present
system. The data is then analyzed and new requirements are determined.
System analysis is on determining the requirement for a new system.
Three tasks of this phone are gathering data, Analyzing the data, and
documenting the analyses.
Gathering data is done by observation, interviews, and
questionnaire and looking at documents, one of which is the
organization chart which shows an organizers foundations and
levels of management.
Analyzing data:- there are several tools for the analyzing of data
which includes checklist, decision tables and system flows charts

16

Documenting system analysis. To document and to communicate


the finding of phase 2, a system analysis report is prepared for
higher management.
3.2.

SYSTEM DESIGN.

In system design, new or alternative information is designed. This phase


consist of three tasks;
3.2.1 DESIGNING ALTERNATIVE SYSTEM
An alternative information system is designed and each alternative is
evaluating for:
(A). Economic feasibility Costs and benefits, time for the system to
pay for (itself)
(B). Technical feasibility:- land ware and software reliability, available
training
(C). Operational feasibility:- the ability the system to work within the
organization
3.3 SELECTING THE BEST SYSTEM.
Question is considered when selecting the best system:1.

Will the system fit into an overall information system?

17

2.

Will the system be flexible enough to be modified ad needed in


the feature?

3.

Will it be secure against unauthorized use?

4.

Will the systems benefit exceed its costs?

5.

Writing the system design report:- this is to document and it


communicate the finding of phase 3, a system design report is
prepared for longer management.

3.4 SOURCE OF DATA


The original document which provide a reference for the new system. It
also provides a proper picture of what if happening in the voting system
(Nigeria).
3.5 METHODS OF DATA COLLECTION
(A)

Studying of Procedures Manuals

Written documents on voting System (Nigeria) was read to obtain


information on how the system works. This form of date collection was
use full in the sense that it sealed light into the present voting system an
also enable the system.

18

(B)

Evaluation of forms.

These provide information that is required within a section of the system


and what is contained in. The printed output form shade more knowledge
on which department representatives receive each document and where it
is sent to after is has being uses.

(C)

Interviewing

of

departmental

representatives

After obtaining thorough understanding of preset system through


evaluation of present system through evaluation of forms and manuals .I
wert further to interview the representatives involve in the actual
operation of the system .These people explained more or the system and
the basic reliable because the system put into consideration the basic
flows.
3.6 ANALYSIS OF THE EXISTING SYSTEM
The Independent National Electoral Commission (INEC) is a
nonpartisans Nigerian government agency charged with the conduct and
supervision of elections. In the late 1990s, the agency began modernizing
its information technology infrastructure by migrating from an outdated
legacy voting system heavily dependent on inaccurate paper records and
19

polling cards to the newer Electronic voting system (EVS), at the heart of
EVS is the electronic voter register (EVR), which by capturing the names
of all eligible voters, eliminates duplication and there by minimizes
discrepancies in the electrode process. As such, EVR is viewed as a
means of ensuring free and fair elections in Nigeria. As part of the
modernization process. INEC needed to inventory and spatially locate the
agencys 120,000 polling locations scattered around the country, these
locations and threat attributes needed to be linked to EVR.
GIS technology was identified as a potential solution to the problem, and
TTi limited (formerly Adorbel ltd.) a consultant responsible for the field
data collection and project management for INEC. Subcontracted Esri
Business part to design and implement a polling unit (PU) GIS. Geoimaging proposed integrating GIS, digital photography, and DBMS
technologies to create a data collection tool capable of capturing the X, Y
locations and images of existing polling units. Since the clients budget
constraints precluded the purchase of GIS software, the use of an
industry standard development environment to create an application with
GIS/mapping capabilities was also proposed. The application would then
be linked to EVR.
20

3.7 PROBLEM OF THE EXISTING SYSTEM


1. registration of candidates
2. preparation of polling list
3. counting of votes
4. operation threat
5. God-fatherism
6. selection not election
7. attitude to voting
8. too many party system
9. appointment of incredible individuals as INEC chairman
10.war and guns before and on the election day
11.bed management
12.buying of votes
13.less of life
14.security threats
15.cost
16.time
17.location of polling boxes

21

3.8

SOLUTIONS OF THE EXISTING PROBLEM

(A). A sable solution to all these problem is the use of computerized


system (E-voting system) for high processing speed, minimum number of
staff
(B). Change of attitude by all- election anomalies that we all experience
now are rooted in attitude of all stakeholders in the electoral system.
Voters should change their attitude of believing in money polities.
(C). Credible election can be conducted by reforming the Nigeria
police force.
(D). Adoption of a tow party system.
(E).

Appointment not credible individuals in to INEC

3.9 FLOWCHART AND 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 tow major types of flowchart include
1. the program flowchart
22

2. the system flowchart


The re may be some variations on theses 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 analyzes the overall
flow activities in producing a product or services.

23

3.9.1 System Flowchart Symbols and Their Functions

Figure 3.1: system flowchart symbols

24

3.9.2 SYSTEM FLOWCHART OF THE PROJECT

25

Start

Welcome screen

Input password

Is
Password
Ok ?

Error in Password

Stop

Main Menu Form


26
Choose From

Perform Operation

Figure 3. 2: Program flowchart


CHAPTER FOUR
4.1 SYSTEM DESIGN AND SPECIFICATION
System design is the process or art of defining the architecture,
components, modules, interfaces, and data for a system to satisfy
specified requirements. One could see it as the application of system
theory to product, and development.
Systems design is therefore the process of defining and developing a
system to satisfy specified requirements of the market or customer. Until
the 1990s system design had a crucial and respected role in the data
processing industry. In the 1990s standardization

of hardware and

software resulted in the ability to build modular system.


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 modeling software systems and is increasing used for
designing non-software systems and organizations.

27

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.2 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.
4.3 OUTPUT SPECIFICATION
In this system, all outputs are retrieved from disk storage where
information resulting from both input and processing operations has been
previously stored.

28

In designing a system, one should bear in mind to minimize complexity


and platform. The output, specifications are identified below

4.4 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.
ii.

The input file


The output file

4.5 INPUT FILE


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
4.6 OUTPUT FILES
29

These are files that contain information resulted from processing. We


have the previewing of a document file, and retrieving a file (i.e.
opening a saved document), previewing a document before printing.
You can use the print preview command to show how a document will
look when you print it. While you cant 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.6.1 TO PRINT PART OF A DOCUMENT.
Follow the above steps, while in the page range box, select the current
page option button then click ok button.
4.6.2 RETRIEVING A FILE
Now that one have saved the document, you simply type with
analysis.doc, one can now retrieve (i.e. re- opening a file that was
previously saved) this file for processing, the processing of such file
may include editing, viewing, formatting e.t.c we can retrieve the said
file through the following procedures;
30

Select the open command from the toolbar or


Choose open the file menu or
Press (ALT, F, O) on the keyboard.
Observation; one will observe that content of the selected file is
displayed on the screen for editing.
4.7 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 MS ACCESS. MS
ACCESS is the database editor of the popular Ms office
tools/Application, MS Access stores data or information in tables
which are structured into fields. The ms access database file for the
project is user INEC.mbd. It holds information on the administrator
users password.

31

The database contains four tables


i.

FED CANDIDATES: - This table holds the information for


registered candidates in the presidential category.
FIELD NAME
ID
FNAME
INAME
STATE
SEX
PARTY
VOTES

DATA TYPE
AUTONUMBER
TEXT
TEXT
TEXT
TEXT
TEXT
NUMBER

Figure 4.3: fed candidate table for the presidential category

ii.

STATE CANDIDATES:- This table holds the information for


registered candidates in the Governorship category.
FIELD NAME
ID
FNAME
INAME
STATE
SEX
PARTY
VOTES

DATA TYPE
AUTONUMBER
TEXT
TEXT
TEXT
TEXT
TEXT
NUMBER

Figure4. 4: state candidates table for the governorship category

32

iii.

LOCAL CANDIDATES: - Table holds the information for


registered candidates in the chairman and counselors category.
FIELD NAME
ID
FNAME
INAME
STATE
SEX
PARTY
VOTES

DATA TYPE
AUTONUMBER
TEXT
TEXT
TEXT
TEXT
TEXT
NUMBER

Figure4. 5: local candidates table for the local category

iv.

Voters:- This table holds information of registered voters


FIELD NAME
VOTERS ID
PIN
FNAME
INAME
ADDRESS
STATE
SEX
VOTED

DATA TYPE
TEXT
NUMBER
TEXT
TEXT
TEXT
TEXT
TEX
NUMBER

Figure 4.6: voters registering table

4.9 SYSTEM FLOWCHART


This is a pictorial representation of how the hardware components work
with the programs of the system. It uses conventional symbols to
represent its action and flow of control between the hardware
components as show below, yet flowchart involves creating a flow model
33

that illustrate and analyzes the overall flow activities in producing a


product or services.

Voters Registration Flowchart


Start

Enter Voters ID
Enter Names
Enter Party
Enter State of origin

Has
Mat No
Been
Registered?

YES

Error Message
Cannot
Register Twice

NO

Database

Process Registration

Generate Voters ID

Generate PIN code

Display PIN code


34
Stop

Figure4. 7: Voters Registration Flowchart

Voting Process Flowchart


Start

Enter Voters
ID
And PIN

Is Login
Correct
?

Verify if
the Voter
has
Voted
Before

Yes

Error Message
Cannot Vote
Twice

No

Allow to
Vote

35
Stop

Figure4. 8: voters process flowchart

Candidates Registration Form


Start

Enter Names
Enter Political party
Enter State of Origin

Process
Registration

Stop

Figure4.9: Candidates Registration Form

36

View Results Process


Start

Enter Username
and Password

Is Login
Correct?

No

Yes

Display Results
Figure 4.10: view result process

37

CHAPTER FIVE
5.0 SYSTEM REQUIREMENT AND IMPLEMENT OF SYSTEM
SPECIFICATION
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 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 requirements;38

a. Windows XP, Vista or Window 7


b. Visual Basic Compiler 6
c. Microsoft Access 2003 version

5.2 SYSTEM SOFTWARE.


These are of software written by system programmers that interpret
instructions contained in the application software (program) and then
provide the basic instruction to the central processor so that the various
hardware units, which make up the computer system, can function as
desired or intended. Example is DOS.
System software manages and controls computer hardware so that
application software can perform a test. Operating systems, such as
Microsoft system software. System software contrasts with application
software, which is programmed that enable the end-user to perform
specific, productive tasks, such as word processing or image
manipulation.
System software performs tests like transferring date from memory to
disk, or rendering text onto a display device. Specific kinds of system
software include loading programs, operating systems device drivers,
39

programming tool compilers, assemblers, linkers, and utility software. If


system software is stored on non- volatile memory such as integrated
circuits, it is usually termed firmware. Which refers to the operating
system and all utility programs that manage computer resources at a low
level.
5.3 APPLICATION SOFTWARE
Application software can be seen as end user software designed to
accomplish variety of task such as MS words. They are usually programs
or programming system available from a supplier that comes complete
ready to perform some defined tasks. Application software is a subclass
of computer software that employs the capabilities of a computer directly
and thoroughly to perform a task that the user wishes to perform.
5.4 HARDWARE REQUIREMENT
The system functions well with a good computer compatible with a hard
disk drive of 20GB. 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 floppy dive is needed to be used as backup or disk in case
the programs served on hard disk is eventually destroyed by a virus. An
40

uninterrupted power supply (UPS) is needed to sustain power failure for


sometimes whenever PHCH puts of power supply.
5.5 This software requires the following minimum hardware for its
development and running;
Pentium 266HZ 566HZ
512MB RAM
14 super video graphic adapter monitor (SVGA)
20GB of hard disk
A mouse or mouse sensitive used on laptops
Window XP, vista or window 7
Uninterrupted power supply (UPS), lasting for at least 24 hours.
5.6 LANGUAGE JUSTIFICATION
The visual basic 6 language is the language used in designing the
program for the system V.B.6.0 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. 2003
and 2005 with little modification.

41

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.7 SUBSYSTEM SELECTION
Retrieving/ open a saved document.
With the file menu you can retrieve document into memory by clicking
the file menus open command you can also click on the icon on the
toolbar. When you click the open command, notepad displays the open
dialog box with a list of all the names of document to be retrieved. Notice
that the open dialog box has a text where you have the mouse pointer
already positioned.
You can type the name of the document to be retrieved other until you
get to your desired filename. To retrieve, click the open button. This is
just one of the several ways to open documents.
5.8 THE PRINT PREVIEW OPTION
42

Before printing your document (voting result) you may wish to have an
idea of how it will look when you finally print it. The print preview
feature is used to achieve this. In the print preview window, you can see
the overall appearance of one page, or all the pages. Previewing the
document can save you time and paper, because it reduces the number of
times you print the document before it looks exactly the way you want.
To preview a document either click on the print preview button on the
standard toolbar or choose print preview from the file menu.
5.9 THE PRINT OPTION
You can click the print button on the standard toolbar to print the entire
document using default settings, or you can use the print command to
select different printing options.
5.10 REVIEW OF PROGRAM LANGUAGE IN USE
There are several Program language currently is used in school and they
include Q- BASIC, PASCAL, CH, 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
43

into a machine language and can be understood by most computers


easily.

5.11 SYSTEM CONVERSION.


This involves the procedure used in changing from the old to the new
system and are;
* Direct Conversion:
The old system is continued and the new system becomes effectively
immediately.
* Phased Conversion:
The new system is implemented gradually over a period of time. The
entire implementation process is broken down into different process. This
phase ensures that the new system is fully in perfect operation before
discarding the old are completely.
* Pilot Conversion.
The new system (reverting) is tried out using the local government
selection first. Once the system is running smoothly in that part, then it is
implemented throughout the rest of the election in Nigeria
44

5.12 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 are
examined using test data.
System testing the parts are linked together and the test data is
used to see if the parts works together.
5.13 ACCESS
Use of right password
5.14 MENU SELECTION
The use of wrong keys for valid options
Press key randomly
Press keys which choice module is being loaded users data entry
Press keys randomly
Highlight with normal keys on keyboard

45

CHAPTER SIX
6.0 CONCLUSIONS
To sum up, this project clarifies the requirements and key elements of Evoting system, and my implementation provides the following features.
To begin with, the accuracy of voters identity and ballot card are ensured
with this voting system. Next, voters identities are not written in the
ballot card to protect voters privacy and confidentiality. This system will
validate whether the ballot card is authorized or not, to make sure only
legal user can vote, and voters authorities are limited in order to prevent
his violation. Furthermore, this system fits in with the parts of principles
proposed by IPI, including secrecy, non-coercibility, integrity, and
uniqueness.
But because of the limitation of incomplete laws and regulations,
absentee voting cant be held. It still needs to be discussed in legislative
46

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 electoral procedures, make ballot counting efficaciously,
and use resource effectively.
6.1 RECOMMENDATION
Having seen the problem encountered in using the old system of voting,
the following are recommends.
I recommend that INEC should employ this system of E-voting and the
staffs that will be handing this software package be given training on
computer bases on how to use the new system.

47

BIBLIOGRAPHY
Baje, E.N. (1998). Records Management Program. Ibadan: Adeyomi
printing press.
Brown, P.T and Payne L.C. (1975). Computer application. New York,
Addison Wesley publishing.
Celestine, C. N.(1689). Management theory and practices. Asaba:
Africana first publishers Ltd.
Chiazor, I. k.

N.(2008). Design and implement of a hospital

management
Enugu: Unpublished ( Project work). pp30-37
Fedrick, W. T.(1856-1915). Management. Texas a/m University .pp41
Francis, M (2001). computer and process control. Aba: Machitouch
Industrial Nigeria.
Heinz ,W. and Harold, K. (1990).management a global perspective.
University of Francisco.
48

Nihfw.(1987). Management training modules for voting officers. Abuja:


Africana first publishers Ltd.
Penny, H. (2000). Process control system. Britain: John Murry
Publication Ltd
Patrick, C.E. (1990). Computer Application. Aba: M.C. Publication Ltd,
Proyor, E. (1975). A Computerized System for voting decision
Ray, B.(1996). It and micro Electronics. London: Hell Press
Thompson, T.K. (1975). Computer organization practice in E-voting
system Management. Japan: The One Ltd
Weihrich, L. (1992). E-voting system. Benin: Edo Press Ltd.

49

APPENDIX

SOURCE CODE
WELCOME PAGE
Private Sub cmdConduct_Click()
Me.Hide
frmLogin.Show
End Sub
Private Sub Form_Terminate()
End
End Sub
Private Sub Form_Unload(Cancel As Integer)
End
End Sub
Private Sub mnuAdmin_Click()
frmAdminLogin.Show
Me.Hide
End Sub
Private Sub mnuExit_Click()
End
End Sub

50

VOTING PAGE
Dim rsCandid As New adodb.Recordset
Dim table As String
Private Sub cmbCandidates_Click()
Set rsCandid = New Recordset
Dim mconn As New adodb.Connection
mconn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=INEC.mdb"
rsCandid.Open "select * from " & table & " where ucase(trim(ID))
= '" & UCase(Trim(cmbCandidates.ListIndex + 1)) & "'", mconn,
adOpenKeyset, adLockOptimistic
With rsCandid
lblParty.Caption = .Fields("party")
lblFname.Caption = .Fields("fname")
lblLname.Caption = .Fields("lname")
lblSex.Caption = .Fields("sex")
lblOrigin.Caption = .Fields("state")
End With
End Sub
Private Sub cmdExit_Click()
frmVotersMain.Show
Unload frmLogin
Unload Me
End Sub
Private Sub cmdVote_Click()

51

If cmbCandidates.Text = "" Then


MsgBox "You must select a Candidate", vbCritical + vbOKOnly,
"E-Voting: Error"
Exit Sub
End If
frmLogin.recStudent.Fields("voted") =
Val(frmLogin.recStudent.Fields("voted")) + 1
rsCandid.Fields("votes") = Val(rsCandid.Fields("votes")) + 1
frmLogin.recStudent.Update
rsCandid.Update
MsgBox "Vote Casted Successfully!!!", vbInformation +
vbOKOnly, "E-Voting: Done"
rsCandid.Close
Unload Me
Unload frmLogin
frmWelcome.Show
End Sub
Private Sub Form_Load()
On Error Resume Next
table = "fedCandidates"
Dim cmd As New adodb.Command
Dim rs As New adodb.Recordset
cmd.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=INEC.mdb"
cmd.CommandType = adCmdText
cmd.CommandText = "select * from " & table
Set rs = cmd.Execute()
Do While Not rs.EOF

52

cmbCandidates.AddItem (rs.Fields("id") & " " &


rs.Fields("party") & " --> " & rs.Fields("fname") & " " &
rs.Fields("lname"))
rs.MoveNext
Loop
'---------------------------------------------------------------------------------------------------------lblName.Caption = frmLogin.recStudent.Fields("fname")
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
Set rsCandid = Nothing
End Sub

VOTERS HOME PAGE


Dim table As String
Private Sub cmdFed_Click()
table = "fedCandidates"
If check_REG(table) Then
MsgBox "No registered candidate in this category ",
vbExclamation, "No candidates"
Exit Sub
End If
Unload Me
frmVote.Show
End Sub
Private Sub cmdLocal_Click()

53

table = "localCandidates"
If check_REG(table) = False Then
MsgBox "No registered candidate in this category ",
vbExclamation, "No candidates"
Exit Sub
End If
Unload Me
frmVoteLocal.Show
End Sub
Private Sub cmdLogout_Click()
If MsgBox("Do you want to exit ", vbYesNo, "Logout? ") = vbYes
Then
Unload Me
frmLogin.Show
End If
End Sub
Private Sub cmdState_Click()
table = "stateCandidates"
If check_REG(table) = False Then
MsgBox "No registered candidate in this category ",
vbExclamation, "No candidates"
Exit Sub
End If
Unload Me
frmVoteState.Show
End Sub

RESULTS PAGE
Option Explicit
Dim table As String

54

Private Sub cmdExit_Click()


frmMain.Show
Unload Me
End Sub
Private Sub Form_Load()
On Error Resume Next
Dim query As String
Dim rsCandid As New adodb.Recordset
Dim i As Integer
Dim mconn As New adodb.Connection
mconn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=INEC.mdb"
table = frmMain.category
query = "select * from " & table
rsCandid.Open query, mconn, adOpenKeyset, adLockOptimistic
rsCandid.MoveFirst
For i = 0 To 4
With rsCandid
lblDept(i).Caption = .Fields("party")
lblName(i).Caption = .Fields("fname")
lblScore(i).Caption = .Fields("votes")
End With
rsCandid.MoveNext
Next i
End Sub

55

Private Sub Form_Terminate()


frmMain.Show
End Sub

VOTERS REGISTERATION FORM


Option Explicit
Dim rndNum As Integer
Dim voteID As String
Private Sub cmdExit_Click()
frmLogin.Show
Unload Me
Set frmReg = Nothing
End Sub
Private Sub cmdSubmit_Click()
On Error GoTo Err
If txtFname.Text = "" Then
MsgBox "Firstname must not be blank", vbExclamation,
"Missing Input"
Exit Sub
End If
If txtLname.Text = "" Then
MsgBox "Lastname must not be blank", vbExclamation, "Missing
Input"
Exit Sub
End If
If txtFname.Text = "" Then

56

MsgBox "Firstname must not be blank", vbExclamation,


"Missing Input"
Exit Sub
End If
If txtAddress.Text = "" Then
MsgBox "Address must not be blank", vbExclamation, "Missing
Input"
Exit Sub
End If
If cmbSex.Text = "" Then
MsgBox "Sex must not be blank", vbExclamation, "Missing
Input"
Exit Sub
End If
If cmbState.Text = "" Then
MsgBox "State must not be blank", vbExclamation, "Missing
Input"
Exit Sub
End If
Adodc1.Recordset("pin") = CStr(rndNum)
Adodc1.Recordset("voters_id") = voteID
Adodc1.Recordset.Update
MsgBox "Registeration Successfull! " & vbCrLf _
& "Your Voters ID is " & voteID & " Your PIN CODE is " &
rndNum & vbCrLf, _
vbOKOnly + vbInformation, "E-Voting: Done!"
frmWelcome.Show

57

Unload Me
Set frmReg = Nothing
Exit Sub
Err:
If Err.Number = -2147467259 Then
MsgBox "Error. Mat number has already been registered.",
vbExclamation + vbOKOnly, "Registration Failed"
'txtVotersID.SetFocus
Exit Sub
End If
End Sub
Private Sub Form_Initialize()
voteID = getid
End Sub
Private Sub Form_Load()

Dim states() As Variant


states = Array("Abia", "Abuja Federal Capital Territory",
"Adamawa", "Akwa Ibom", "Anambra", "Bauchi", "Bayelsa", "Benue",
"Borno", "Cross River ", "Delta", "Ebonyi", "Edo", "Ekiti", "Enugu",
"Gombe", "Imo", "Jigawa", "Kaduna", "Kano", "Katsina", "Kebbi",
"Kogi", "Kwara", "Lagos", "Nasarawa", "Niger", "Ogun", "Ondo",
"Osun", "Oyo", "Plateau", "Rivers", "Sokoto", "Taraba", "Yobe",
"Zamfara")

58

Dim i As Integer
For i = 0 To UBound(states)
cmbState.AddItem (states(i))
Next i
Adodc1.Recordset.AddNew
rndNum = getRand(1000, 9999)
lblVotersID.Caption = voteID
End Sub
Function getRand(ByVal lower As Integer, ByVal upper As Integer) As
Integer
Randomize
getRand = Int((upper - lower + 1) * Rnd + lower)

End Function
Function getid() As String
Dim num As Integer
num = getRand(1000, 9999) + getRand(1000, 9999)
getid = "INEC-" & CStr(num)
End Function
Private Sub Form_Unload(Cancel As Integer)
frmWelcome.Show
Unload Me
End Sub

59

CONTROL GRID
Option Explicit
Public category As String
Private Sub cmdLogout_Click()
If MsgBox("Do you want to exit ", vbYesNo, "Logout? ") = vbYes
Then
Unload Me
frmWelcome.Show
End If
End Sub
Private Sub cmdManVoters_Click()
Me.Hide
frmManVoters.Show
End Sub
Private Sub cmdRegFeg_Click()
Me.Hide
frmApplyFed.Show
End Sub
Private Sub cmdRegLocal_Click()
Me.Hide
frmApplyLocal.Show
End Sub
Private Sub cmdRegState_Click()
Me.Hide
frmApplyState.Show
End Sub

60

Private Sub cmdResult_Click()


If lbxCat.ListIndex < 0 Then
MsgBox "You must select an Election category! ",
vbExclamation, "Select a Category"
lbxCat.SetFocus
Exit Sub
End If
Select Case lbxCat.ListIndex
Case 0
category = "fedCandidates"
Case 1
category = "stateCandidates"
Case 2
category = "localCandidates"
End Select
Me.Hide
frmResults.Show
End Sub
Private Sub Form_Terminate()
frmWelcome.Show
End Sub

VOTERS LOGIN PAGE


Option Explicit
Public recStudent As adodb.Recordset
Private Sub cmdExit_Click()
frmWelcome.Show
Unload Me

61

End Sub
Private Sub cmdLogin_Click()
On Error GoTo recError
Dim conn As New adodb.Connection
Set recStudent = New adodb.Recordset
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=INEC.mdb"
recStudent.Open "select * from voters where voters_id = '" &
UCase(Trim(txtVotersID.Text)) & "'", conn, adOpenDynamic,
adLockOptimistic
'conn.Close

If Val(recStudent.Fields("pin")) <> UCase(Trim(txtPin.Text))


Then
If MsgBox("Incorrect PIN Code", vbExclamation +
vbRetryCancel, "Incorrect PIN CODE") = vbCancel Then
Call cmdExit_Click
Exit Sub
Else
txtPin.SetFocus
Exit Sub
End If
End If
If recStudent.Fields("voted") > 0 Then
MsgBox "You already voted before!" & vbCrLf & "ACCESS
DENIED!!!", vbExclamation + vbOKOnly, "ERROR"

62

'passwords match, allow the user to the Vote Form


Exit Sub
End If
Me.MousePointer = 11
frmVotersMain.Show
Me.MousePointer = 0
Me.Hide
Exit Sub
recError:
Call rec_Error
End Sub

Public Sub rec_Error()


If (recStudent.RecordCount = 0) Or (recStudent.EOF) Or
(recStudent.BOF) Then
MsgBox "Voter ID not found", vbExclamation + vbOKOnly,
"Unknown ID"
MsgBox "Try Registering by clicking on the image to the
left!", vbInformation, "Are you a New User?"
txtVotersID.SetFocus
Else
MsgBox "An Unknown Error Occurred!", vbCritical + vbOKOnly,
"Error"
End If
End Sub

63

Private Sub ImgRegister_Click()


Unload Me
frmReg.Show
End Sub

CANDIDATES APPLICATION FORM


Option Explicit
Dim deptCodes() As Variant, DCode As String
Private Sub cmdClear_Click()
Dim temp As Control
For Each temp In Me.Controls
If TypeOf temp Is TextBox Or TypeOf temp Is ComboBox Then
temp.Text = ""
End If
Next

End Sub
Private Sub cmdExit_Click()
Unload Me
frmMain.Show
End Sub

Private Sub cmdSave_Click()


If txtFname.Text = "" Then
MsgBox "Candidates name missing!", vbExclamation, "Missing
Information"
txtFname.SetFocus
Exit Sub
End If

64

If txtLname.Text = "" Then


MsgBox "Candidates name missing!", vbExclamation, "Missing
Information"
txtLname.SetFocus
Exit Sub
End If
If cmbstate.Text = "" Then
MsgBox "State of origin missing!", vbExclamation, "Missing
Information"
cmbstate.SetFocus
Exit Sub
End If
If cmbSex.Text = "" Then
MsgBox "Sex missing!", vbExclamation, "Missing Information"
cmbSex.SetFocus
Exit Sub
End If
If txtParty.Text = "" Then
MsgBox "Political party missing!", vbExclamation, "Missing
Information"
txtParty.SetFocus
Exit Sub
End If
Adodc1.Recordset.Update
Adodc1.Recordset.MoveNext
MsgBox "Record Created Successfully", vbInformation + vbOKOnly,
"E-Voting: Done"

65

If MsgBox("Do you want to

register another candidate ?",

vbQuestion + vbYesNo, "Continue?") = vbYes Then


If Adodc1.Recordset.RecordCount = 5 Then
MsgBox "You cannot register more than five candidates",
vbExclamation, "Error"
Exit Sub
End If
clrText
Adodc1.Recordset.AddNew
Else
Unload Me
frmMain.Show
End If
End Sub
Private Sub Form_Load()
If Adodc1.Recordset.RecordCount = 5 Then
MsgBox "You cannot register more than five candidates",
vbExclamation, "Error"
Exit Sub
End If
Adodc1.Recordset.AddNew
Dim states() As Variant
states = Array("Abia", "Abuja Federal Capital Territory",
"Adamawa", "Akwa Ibom", "Anambra", "Bauchi", "Bayelsa", "Benue",
"Borno", "Cross River ", "Delta", "Ebonyi", "Edo", "Ekiti", "Enugu",
"Gombe", "Imo", "Jigawa", "Kaduna", "Kano", "Katsina", "Kebbi",
"Kogi", "Kwara", "Lagos", "Nasarawa", "Niger", "Ogun", "Ondo",
"Osun", "Oyo", "Plateau", "Rivers", "Sokoto", "Taraba", "Yobe",
"Zamfara")

66

Dim i As Integer
For i = 0 To UBound(states)
cmbstate.AddItem (states(i))
Next i
End Sub
Sub clrText()
Dim temp As Control
For Each temp In Me.Controls
If TypeOf temp Is TextBox Then
temp.Text = ""
End If
Next
End Sub

ADMININISTRATOR LOGIN PAGE


Option Explicit
Public recAdmin As adodb.Recordset
Private Sub cmdExit_Click()
frmWelcome.Show
Unload Me
End Sub
Private Sub cmdLogin_Click()
If Trim$(txtUserName.Text) = "admin" Then
If Trim$(txtPassword.Text) = "samrobinson4love" Then
'continue
Unload Me
frmMain.Show
Else

67

MsgBox "Invalid password entered", vbExclamation,


"Wrong Password"
txtPassword.SetFocus
End If
Else
MsgBox "Invalid UserName or Password!!!", vbExclamation +
vbOKOnly, "Login Failure!"
txtUserName.SetFocus
Exit Sub
End If
End Sub

68

Você também pode gostar