CHAPTER ONE 1.0.
INTRODUCTION
Elec Electr tron onic ic voti voting ng syst system em (EVS (EVS)) also also know known n as e-vo e-voti ting ng is a term 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 specialied voting kiosks (including self contained direct-recording electronic voting systems or !"E). #t can also involve trans transmis missi sion on of ballo ballots ts and and vote votess via via tele teleph phon ones es,, priva private te comp compute uter r networks, or the internet. $enerally, the ma%or approaches towards achieving an effective on line electronic. VOTING SYSTEM (EVS) •
Scope of E-voting system
•
Specifies the system re&uirements
•
Specifies the participating parties of the system and describes their roles,
'
•
Spec Specif ifies ies the the arch archite itect ctur uree of the E-vo E-votin ting g syst system em,, the the gene genera rall description of the functionally, protocols and algorithms,
•
nalyses and describes possible security of haards e*amines the compliance of the system to security re&uirements.
'.'
BACKGROUND OF STUDY
+he eder ederal al "epubl "epublic ic of igeria igeria.. igeri igeriaa is a edera ederall consti constituti tutiona onall republic comprise thirty-si* thi rty-si* states and its ederal capital capit al +erritory, +erritory, bu%a. +he country is located in est frica and shares land borders with the "epublic of /enin in the est, 0had and 0ameroon in the South lies on the $ulf of $uinea on the tlantic 1cean. +he three largest and most influential ethnic groups igeria are the 2ausas, #gbo and 3oruba in terms of religion igeria is roughly split half and half between 4uslims and and 0hris 0hristia tians ns with with a very very small small 4ino 4inorit rity y who who prac practic ticee tradit tradition ional al religions. igeria elects on ederal level, a head of state the 5resident and a legislature (+he ational ssembly). +he 5resident is elected by the people. +he national ssembly has two chambers. +he 2ouse of "epresentative has 678 member elected for a four year term in single-seat single- seat constituencies. +he senate has '89 member elected for a four years term :
•
Spec Specif ifies ies the the arch archite itect ctur uree of the E-vo E-votin ting g syst system em,, the the gene genera rall description of the functionally, protocols and algorithms,
•
nalyses and describes possible security of haards e*amines the compliance of the system to security re&uirements.
'.'
BACKGROUND OF STUDY
+he eder ederal al "epubl "epublic ic of igeria igeria.. igeri igeriaa is a edera ederall consti constituti tutiona onall republic comprise thirty-si* thi rty-si* states and its ederal capital capit al +erritory, +erritory, bu%a. +he country is located in est frica and shares land borders with the "epublic of /enin in the est, 0had and 0ameroon in the South lies on the $ulf of $uinea on the tlantic 1cean. +he three largest and most influential ethnic groups igeria are the 2ausas, #gbo and 3oruba in terms of religion igeria is roughly split half and half between 4uslims and and 0hris 0hristia tians ns with with a very very small small 4ino 4inorit rity y who who prac practic ticee tradit tradition ional al religions. igeria elects on ederal level, a head of state the 5resident and a legislature (+he ational ssembly). +he 5resident is elected by the people. +he national ssembly has two chambers. +he 2ouse of "epresentative has 678 member elected for a four year term in single-seat single- seat constituencies. +he senate has '89 member elected for a four years term :
each each of the the
67 state statess are divi divided ded into into 6 senat senatori orial al distri districts cts,, each each of
whic which h is repr repres esen ente ted d by one one sena senator tor,, the ede edera rall capit capital al +errito rritory ry represented by only one senator. igeria made up of thirty-si* (67) states with ;;< local governments. #n the =ocal $overnments they have the chairman and the 0ounselor, the stat statee gove govern rned ed by the the $ove $overn rnor orss and and the the =oca =ocall $ove $overn rnme ment nt by the chairman and counselors and there are all elected by the people of the state. +hat is to say that there are about :8>< elective positions in igeria. '
5resident
678 678
2ous 2ousee of of "e "epres presen enta tati tive vess
'89
Senators
67.
States $o $overnors
;;< ;;<
=oc =ocal $ov $over ernm nmen entt 0hai 0hairm rmaan
;;< ;;<
=oca =ocall $ove $overn rnme ment nt 0oun 0ounse selo lors rs
1.2
SIGNIFICANCE OF STUDY
'.
n ele elect ctrronic onic vot votin ing g syst system em (E (EVS) VS) will will re re&uir &uiree bein being g ver very precise or cost cutting to produce an effective election management system. 6
:.
+herefore crucial points that this (EVS) emphasies on are listed below.
6.
"e&uire les number of staff during the election.
<.
+his system is a lot easier to independently moderate the elections and subse&uently reinforce its transparency and fairness.
>.
=ess 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.
7. #ncreased 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
+he ob%ective is to produce a computer-based tutor that will guide voting in igeria 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 e*perienced in setting up polling booths dealing with ballot bo*es, and any counting deficiencies, and a host of others issues. 2aving proper fire-walls installed it is aimed <
at eliminating the abnormalities and error in the e*isting system. #t also aims at reducing the crime and fraudulence activities encountered with the old voting e*isting system in igeria. '.<.
SCOPE OF STUDY.
#t is focused on studying the e*isting system of voting in igeria and to make sure that the peoples vote is counts, for fairness in the elective positions. +his is also will produce. •
=ess effort and less labour intensive, as the primary cost and focus primary on creating, managing, and running a secure web voting portal.
•
#n 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
+ime factor, which is the greatest barrier to the successful completion of this e*ercise, # had financial constraints to traveling. +he school is also a barrier to permission for e*it to get my materials for this pro%ect.
>
'.7.
DEFINITION OF TERM
EVS @ 1n line electronic voting system E-voting - Electronic Voting #E0 - #ndependent ational Electoral 0ommission EV" - Electronic Voter "egister 5A- 5olling Anit #0+- #nformation and communication +echnology E0#=- ederal Election 0ommission ES S - Election systems software VV5+- vote verifiable paper audit trails 5E/- 5ersonal Electronic /allot 5#- 5ersonal #dentity umber 4//- 4obile /allot /o* B/0- %udges /ooth 0ontroller
7
CHAPTER TO
2.0 LITERATURE REVIE
!avid 0haum addressed the concepts of untraceable electronic mail and digital pseudonyms, which can apply for electronic voting for anonymity. #n 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. #n this section, # aim to review literature # consider relevant to Evoting.
2.1 EVALUATION OF VOTING E!UIPMENT
#n the recent years, voting e&uipments which were widely adopted may be divided into five types
(') P"#$%&'"$ *+,-/C +he voter gets a blank ballot and use a pen or a marker to indicate he want to vote for which candidate. 2andcounted 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.
(:) L$*$% *+,-/ "-$C =ever machine is peculiar e&uipment, and each lever is assigned for a corresponding candidate. +he voter pulls the lever to poll for his favorite candidate. +his kind of voting machine can count up the ballots automatically. /ecause its interface is not user-friendly enough, giving some training to voters is necessary.
(6) D-%$, %$+%-/ $$,%+- *+,-/ "-$C +his type, which is abbreviated to !"E, 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 &uickly. /ut the other !"E without keep voting records are doubted about its accuracy.
(<) P4 "%C +he voter uses metallic hole-punch to punch a hole on the blank ballot. #t can count votes automatically, but if the voterDs perforation is incomplete, the result is probably determined wrongfully.
(>) O#,-" *+,-/ "-$C fter 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. +his kind of machine counts up ballots rapidly. 2owever, if the voter fills over the circle, it will lead to the error result of optical-scan.
2.2 E$,-*$$ + E&*+,-/ A+/ D-$%$, C+4,%-$
"ecent years, a considerable number of countries has adopted E-voting for their official elections. #n this section, four empirical e*amples are enumerated as following.
(') A$%-"C $overnment of the Anited States hold election collaterally in several ways, in other words, each state can choose the suitable way to hold elections independently. /ecause there are some debates about E-voting, such as some vote casts were not counted, or election system crashed during the Election !ay. Secretary of State Fevin Shelley established an Gd 2oc +ouch Screen +ask orceH to research the debates on !"E in ebruary 9
:886. Shelly advanced that !"E should include voter verifiable paper audit trails (VV5+) to solve electoral debates.
(:) J"#"6 Bapan adopted E-voting for local election in :88:, such as mayor and councilor election of iimi city in 1kayama prefecture in Bune :6, :88:? mayor election of 2iroshima city in ebruary 8:, :886? and mayor election of Fyoto city in ebruary 8, :88<. +ake mayor and councilor election of iimi city for e*ample, electoral center surveyed the votersD reliability when the election finished. +here are 6I of voters considered that E-voting system is trusted. >7I of them considered that the results of E-voting and paper-based voting are the same therefore E-voting is sufficient for reliable. +he reasons why voters canDt 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.
(6) B$/-46 Election for the ederal 5arliament is held in 4ay ', :886. #n order to assist voters in being familiar with E-voting system, electoral center held short-term training. 0ounting efficiency in the election with E-voting system was faster then '8
convention. /elgiumDs compulsory voting system and E-voting complement each other, votersD satisfaction and attending willingness of %oin voting are improved obviously.
(<) B%"7-6 /rail used E-voting in '99. hen 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. /railDs 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
/esides many vendors to develop and sell commercial electronic election machines, there are various open source E-voting systems. # cite some e*amples as following
(') A4V+,$&TS6 ccuVote-+SDs vendor is !iebold Election Systems. +his system includes touch screen, card reader, keyboard, headphone, and paper tape printer. +he voter selects his favorite candidate on touch screen, and the vote will be printed on the ''
paper tape. #ts design balances the policy, electoral procedure and technology. /ut all the electoral information (including identity authentication, audit, or counting of votes) are stored in 4icrosoft ccess database without setting password so there are high risks of attack.
(:) -V+,%+-6 +he vendor of iVotronic is Election Systems and Software (ESS). iVotronic provides multi-language, and uses flash memory to save voting records. Electoral workers use 5E/ (5ersonal Electronic /allot, a device which is similar to disk) to start polling machine up. hen the election is finished, the workers use 5E/ to access voting records in the polling machine, then delivers 5E/ to electoral center or transmits data from network. /ecause the 5E/Ds password is only three characters, the risk of password breaking e*ists. +his 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 voterDs selection, and so forth.
':
(6) $S",$ 30006 2art #nter0ivic invented eSlate 6888. +he voter gets a personal identity number (5#) as four digits from electoral workers, then goes to the booth to input the 5# into polling machine to login. 2e can rotate selector wheel to select the candidate whom he want to poll for. Each terminal connects to the server which is named B/0 (Budges /ooth 0ontroller). 0ounting of votes will send to B/0 from every terminal by network, then save it in 4// (4obile /allot /o*). +his system doesnDt encrypt voting data, so there are some risks of data security. urthermore, the electoral functions are not protected with password, anyone, even the voter, can finish the election. ree!1S. +his system operates from disk, so hard disk is not necessary and the discarded computer is enough. +his system is not connected to any networks and most of keys on the keyboard are disabled, attackers canDt find the way to invade. SV#10Ds advantages are its simple disposition and low cost, but on the other hand, there are short of $A# and ease of use on SV#10.
'6
2.8 C+,", $ IC "%
e can distinguish #0 card into contact card and contact less card. 0ontact card has to contact with card reader for transmitting data, but contact less card can transmit data from remote retrieval by coil. +here are '7 sectors in the contact less #0 card, and there are < blocks in every sector. Each sector is individual. e can find the application of contact less card in daily life, such as Easy 0ard, entrance guard card, and so forth. /ecause of 4ifare cardDs low cost and applicability, our research choose 4ifare card for storage.
2.5 THE SECURITY ISSUES OF E&VOTING
oreign e*perience revealed that they are often confronted by security issues while the electronic voting system is running. +he 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 %ust because the inheritance of some ob%ects in the source code are unsuitable. +hese errors caused the voting system crashed.
'<
+he proposed solutions were correspondingly outlined to hold back these attacks. or e*ample, to avoid hacker making incursion into the voting system via network, we can design our system to transmit data without network. nother e*ample is to limit voter to input particular data, so that preventing the command in%ection from running
'>
CHAPTER THREE 3.0 RESEARCH METHODOLOGY
#n this chapter, the source of data methods of collection, the evaluation of the e*isting system and the organiation structure of the system problem are presented. 3.1.
", - S9,$ A"9-:
system is a collection of activities and elements organied to accomplish a goal. #n system analysis, data is collected about the present system. +he data is then analyed and new re&uirements are determined. System analysis is on determining the re&uirement for a new system. +hree tasks of this phone are gathering data, nalying the data, and documenting the analyses. •
$athering
data
is
done
by
observation,
interviews,
and
&uestionnaire and looking at documents, one of which is the organiation chart which shows an organiers foundations and levels of management. •
nalying dataC- there are several tools for the analying of data which includes checklist, decision tables and system flows charts
'7
•
!ocumenting system analysis. +o document and to communicate the finding of phase :, a system analysis report is prepared for higher management.
3.2.
SYSTEM DESIGN.
#n system design, new or alternative information is designed. +his phase consist of three tasks? 3.2.1 DESIGNING ALTERNATIVE SYSTEM
n alternative information system is designed and each alternative is evaluating forC ().
Economic feasibility @ 0osts and benefits, time for the system to pay for (itself)
(/).
+echnical feasibilityC- land ware and software reliability, available training
(0).
1perational feasibilityC- the ability the system to work within the organiation
3.3 SELECTING THE BEST SYSTEM.
Juestion is considered when selecting the best systemC'.
ill the system fit into an overall information systemK
';
:.
ill the system be fle*ible enough to be modified ad needed in the featureK
6.
ill it be secure against unauthoried useK
<.
ill the systems benefit e*ceed its costsK
>.
riting the system design reportC- this is to document and it communicate the finding of phase 6, a system design report is prepared for longer management.
6.< SOURCE OF DATA +he original document which provide a reference for the new system. #t also provides a proper picture of what if happening in the voting system (igeria). 6.> METHODS OF DATA COLLECTION ()
Studying of 5rocedures 4anuals
ritten documents on voting System (igeria) was read to obtain information on how the system works. +his form of date collection was use full in the sense that it sealed light into the present voting system an also enable the system.
'
(/)
Evaluation of forms.
+hese provide information that is re&uired within a section of the system and what is contained in. +he printed output form shade more knowledge on which department representatives receive each document and where it is sent to after is has being uses.
(0)
#nterviewing
of
departmental
representatives
fter obtaining thorough understanding of preset system through evaluation of present system through evaluation of forms and manuals .# wert further to interview the representatives involve in the actual operation of the system .+hese people e*plained more or the system and the basic reliable because the system put into consideration the basic flows. 3.; ANALYSIS OF THE E
+he
#ndependent
ational
Electoral
0ommission
(#E0)
is
a
nonpartisans igerian government agency charged with the conduct and supervision of elections. #n the late '998s, the agency began moderniing its information technology infrastructure by migrating from an outdated legacy voting system heavily dependent on inaccurate paper records and '9
polling cards to the newer Electronic voting system (EVS), at the heart of EVS is the electronic voter register (EV"), which by capturing the names of all eligible voters, eliminates duplication and there by minimies discrepancies in the electrode process. s such, EV" is viewed as a means of ensuring free and fair elections in igeria. s part of the moderniation process. #E0 needed to inventory and spatially locate the agencyDs ':8,888 polling locations scattered around the country, these locations and threat attributes needed to be linked to EV". $#S technology was identified as a potential solution to the problem, and ++i limited (formerly dorbel ltd.) a consultant responsible for the field data collection and pro%ect management for #E0. Subcontracted Esri /usiness part to design and implement a polling unit (5A) $#S. $eoimaging proposed integrating $#S, digital photography, and !/4S technologies to create a data collection tool capable of capturing the L, 3 locations and images of e*isting polling units. Since the clients budget constraints precluded the purchase of $#S software, the use of an industry standard development environment to create an application with $#SMmapping capabilities was also proposed. +he application would then be linked to EV". :8
3.= PROBLEM OF THE E
'. registration of candidates :. preparation of polling list 6. counting of votes <. operation threat >. $od-fatherism 7. selection not election ;. attitude to voting . too many party system 9. appointment of incredible individuals as #E0 chairman '8.war and guns before and on the election day ''.bed management ':.buying of votes '6.less of life '<.security threats '>.cost '7.time ';.location of polling bo*es
:'
3.>
SOLUTIONS OF THE E
().
sable solution to all these problem is the use of computeried
system (E-voting system) for high processing speed, minimum number of staff (/).
0hange of attitude by all- election anomalies that we all e*perience
now are rooted in attitude of all stakeholders in the electoral system. Voters should change their attitude of believing in money polities. (0).
0redible election can be conducted by reforming the igeria
police force. (!).
doption of a tow party system.
(E).
ppointment not credible individuals in to #E0
3.? FLOCHART AND SYSTEM FLOCHART
lowchart symbols are graphic tools in which symbols and shapes are used to document the flow of control within a program or system. +his also involves use in the logical processing of the system. #t shows the step-by-step se&uence of computer operations necessary in solving problems. +he tow ma%or types of flowchart include '. the program flowchart ::
:. the system flowchart +he re may be some variations on theses symbols are linked with directed lines (lines with arrows) showing the flow of data through the system. +ransactions are input, validated and sorted and then used to update a master filer. 1+EC - the arrows show the flow of data through the system. +he dotted line shows that the updated master file is then used as input for the ne*t update process. +his is a pictorial representation of how the hardware components work with the programs of the system. #t 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 analyes the overall flow activities in producing a product or services.
:6
3.?.1 S9,$ F+@"%, S9'+ " T$-% F4,-+
F-/4%$ 3.16 9,$ +@"%, 9'+
:<
3.?.2 SYSTEM FLOCHART OF THE PROJECT
:>
Start
elcome screen
#nput password
#s 5assword 1k K
Error in 5assword
Stop
4ain 4enu orm :7 0hoose rom
5erform 1peration
igure 6. :C 5rogram flowchart CHAPTER FOUR 8.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 re&uirements. 1ne could see it as the application of system theory to product, and development. S9,$ $-/ is therefore the process of defining and developing a
system to satisfy specified re&uirements of the market or customer. Antil the '998s system design had a crucial and respected role in the data processing industry. #n the '998s standardiation
of hardware and
software resulted in the ability to build modular system. 1b%ect @ oriented analysis and design methods are becoming the most widely used methods for computer system design. +he A4= has become the standard language used in 1b%ect- oriented analysis and design. #t is widely used for modeling software systems and is increasing used for designing non-software systems and organiations.
:;
fter analysis, and discovering the problem of the e*isting system, there is need to produces a new produce a new system, which will eliminate these problems design. +o carry out the design effectively, the following steps are involvedC 8.2 INPUT SPECIFICATION
#n 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. e also made use of the keyboard to supply te*t, or number through the application and supply te*t program when working with a high- level program. ll other input data for the system e*ecution are present at menu options and is selected by sticking easily identifiable keys, e*ample the arrows keys, e*ample the arrow keys the alphabetic character keys, enter and escape keys. 8.3 OUTPUT SPECIFICATION
#n this system, all outputs are retrieved from disk storage where information resulting from both input and processing operations has been previously stored.
:
#n designing a system, one should bear in mind to minimie comple*ity and platform. +he output, specifications are identified below
8.8 FILE SPECIFICATION
file is a collection of related records. record is a collection of information about someone or something of interest. "ecord is made up of fields. field provides a specific item or data about the sub%ect of a record. +he system made use of two files i. ii.
+he input file +he output file
8.5 INPUT FILE
+hese are files previously, defined or created during processing of the system. 3ou te*t area on the e*isting screen. 2owever, before doing this it is important to note the following . 3ou enter the te*t simply by typing it on the keyboard, while the insertion point (cursor) moves to the right as the character are typed. hen a wrong character is typed, you can delete this by using the backspace key or using !el key when cursor is at the point of the te*t 8.; OUTPUT FILES :9
+hese are files that contain information resulted from processing. e have the previewing of a document file, and retrieving a file (i.e. opening a saved document), previewing a document before printing. 3ou can use the print preview command to show how a document will look when you print it. hile you canDt edit te*t in print preview, you can move headers and footers. +o preview icon present there on the menu or the file menu observationC you will notice that the page where you can do one of the following? 0hoose 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. 8.;.1 TO PRINT PART OF A DOCUMENT.
ollow the above steps, while in the page range bo*, select the current page option button then click ok button. 8.;.2 RETRIEVING A FILE
ow 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? 68
Select the open command from the toolbar or 0hoose open the file menu or 5ress (=+, , 1) on the keyboard. 1bservation? one will observe that content of the selected file is displayed on the screen for editing. 8.= DATABASE SPECIFICATION
+here is need to provide an efficient data storage procedure for holding and securing critical information. +his data storage module is known as the data base. database is an inde* computer data storage and retrieval. +he database management system (!/4S) creates and packages the database. +here are numerous !/4S technology available today such as? 1"0=E, 4S 00ESS, SJ= SEVE", and so no. for this pro%ect, the !/4S used is the 4S 00ESS. 4S 00ESS is the database editor of the popular 4s office toolsMpplication, 4S ccess stores data or information in tables which are structured into fields. +he ms access database file for the pro%ect is user #E0.mbd. #t holds information on the administrator userDs password.
6'
T$ ","'"$ +,"- +4% ,"'$
i.
FED CANDIDATES6 & +his table holds the information for
registered candidates in the presidential category. FIELD NAME #! 4E #4E S++E SEL 5"+3 V1+ES
DATA TYPE A+1A4/E" +EL+ +EL+ +EL+ +EL+ +EL+ A4/E"
F-/4%$ 8.36 $ "-",$ ,"'$ +% ,$ #%$-$,-" ",$/+%9
ii.
STATE CANDIDATES6& +his table holds the information for
registered candidates in the $overnorship category. FIELD NAME
#! 4E #4E S++E SEL 5"+3 V1+ES
DATA TYPE A+1A4/E" +EL+ +EL+ +EL+ +EL+ +EL+ A4/E"
F-/4%$8. 86 ,",$ "-",$ ,"'$ +% ,$ /+*$%+%-# ",$/+%9
6:
iii.
LOCAL CANDIDATESC - +able holds the information for
registered candidates in the chairman and counselors category. FIELD NAME #! 4E #4E S++E SEL 5"+3 V1+ES
DATA TYPE A+1A4/E" +EL+ +EL+ +EL+ +EL+ +EL+ A4/E"
F-/4%$8. 56 +" "-",$ ,"'$ +% ,$ +" ",$/+%9
iv.
V+,$%6& +his table holds information of registered voters FIELD NAME V1+E"S #! 5# 4E #4E !!"ESS S++E SEL V1+E!
DATA TYPE +EL+ A4/E" +EL+ +EL+ +EL+ +EL+ +EL A4/E"
F-/4%$ 8.;6 *+,$% %$/-,$%-/ ,"'$
8.? SYSTEM FLOCHART
+his is a pictorial representation of how the hardware components work with the programs of the system. #t 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 66
that illustrate and analyes the overall flow activities in producing a product or services.
V+,$% R$/-,%",-+ F+@"%, Start
Enter Voters #! Enter ames Enter 5arty Enter State of origin
H" M", N+ B$$ R$/-,$%$:
YES
Error 4essage C"+, R$/-,$% T@-$
NO
D","'"$
5rocess "egistration
$enerate Voters #!
$enerate 5# code
!isplay 5# code 6<
F-/4%$8. =6 V+,$% R$/-,%",-+ F+@"%,
V+,-/ P%+$ F+@"%, Start
Enter Voters #! nd 5#
I L+/- C+%%$, :
Verify if the Voter has Voted /efore
Y$
Error 4essage C"+, V+,$ T@-$
N+
llow to Vote
6> Stop
F-/4%$8. >6 *+,$% #%+$ +@"%,
C"-",$ R$/-,%",-+ F+% Start
Enter ames Enter 5olitical party Enter State of 1rigin
5rocess "egistration
Stop
F-/4%$8.?6 C"-",$ R$/-,%",-+ F+%
67
V-$@ R$4, P%+$ Start
Enter Asername and 5assword
I L+/- C+%%$,:
N+
Y$
!isplay "esults F-/4%$ 8.106 *-$@ %$4, #%+$
6;
CHAPTER FIVE 5.0 SYSTEM RE!UIREMENT AND IMPLEMENT OF SYSTEM SPECIFICATION
+he purpose of this section is to highlight on the implementation environment of the system. +his covers the hardware and software environments for the implementation phase of the system design and development. top-down design approach was used in structuring the program. +he system consists of modules and sub-modules which are linked up to facilitate easy flow of data and control. 5.1 SOFTARE RE!UIREMENT
Software is a collection of programs or instructions written in any computer language, which enables fle*ibility to do whatever the user wants. +his package can only be run and developed with the following minimum software re&uirements?6
a. indows L5, Vista or indow ; b. Visual /asic 0ompiler 7 c. 4icrosoft ccess :886 version
5.2 SYSTEM SOFTARE.
+hese 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. E*ample is !1S. System software manages and controls computer hardware so that application software can perform a test. 1perating systems, such as 4icrosoft 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 te*t onto a display device. Specific kinds of system software include loading programs, operating systems device drivers, 69
programming tool compilers, assemblers, linkers, and utility software. #f system software is stored on non- volatile memory such as integrated circuits, it is usually termed firmware. hich refers to the operating system and all utility programs that manage computer resources at a low level. 5.3 APPLICATION SOFTARE
pplication software can be seen as end user software designed to accomplish variety of task such as 4S words. +hey are usually programs or programming system available from a supplier that comes complete ready to perform some defined tasks. pplication 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.8 HARDARE RE!UIREMENT
+he system functions well with a good computer compatible with a hard disk drive of :8$/. +his is needed to save the program so that it can be made available any time. #t re&uires a visual display unit (V!A) of high resolution and graphic ability for good display of all outputs. 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. n <8
uninterrupted power supply (A5S) is needed to sustain power failure for sometimes whenever 5202 puts of power supply. 5.5 T- +,@"%$ %$4-%$ ,$ ++@-/ --4 "%@"%$ +% -, $*$+#$, " %4-/ •
5entium :772N @ >772N
•
>':4/ "4
•
'
•
:8$/ of hard disk
•
mouse or mouse sensitive used on laptops
•
indow L5, vista or window ;
•
Aninterrupted power supply (A5S), lasting for at least :< hours.
5.; LANGUAGE JUSTIFICATION
+he visual basic 7 language is the language used in designing the program for the system V./.7.8 language offers the best in terms of its availability, easy to understand good graphic ability, fle*ibility and machine independence. +he program can run in other versions i.e. :886 and :88> 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. #f this is done, control is passed to the main program after a subro9utine is completed depending on the task that needs to be'accomplished by the user choosing the e*it do terminate a subroutine, this returns control to the calling program and to terminate the system is by closing e*it application from the main menu. 5.= SUBSYSTEM SELECTION
"etrievingM open a saved document. ith the file menu you can retrieve document into memory by clicking the file menuDs open command you can also click on the icon on the toolbar. hen you click the open command, notepad displays the open dialog bo* with a list of all the names of document to be retrieved. otice that the open dialog bo* has a te*t where you have the mouse pointer already positioned. 3ou can type the name of the document to be retrieved other until you get to your desired filename. +o retrieve, click the open button. +his is %ust one of the several ways to open documents. 5.> THE PRINT PREVIE OPTION <:
/efore printing your document (voting result) you may wish to have an idea of how it will look when you finally print it. +he print preview feature is used to achieve this. #n the print preview window, you can see the overall appearance of one page, or all the pages. 5reviewing the document can save you time and paper, because it reduces the number of times you print the document before it looks e*actly the way you want. +o preview a document either click on the print preview button on the standard toolbar or choose print preview from the file menu. 5.? THE PRINT OPTION
3ou 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 REVIE OF PROGRAM LANGUAGE IN USE
+here are several 5rogram language currently is used in school and they include J- /S#0, 5S0=, 02, 0 Visual /asic and Bava etc. 2owever, this pro%ect was done to suit interacting processing rather than batch processing, also immediately response e*pected from the computer as output or feedback to the input in an online processing simplifies and makes the work faster. #t is a high-level language that can be translated <6
into a machine language and can be understood by most computers easily.
5.11 SYSTEM CONVERSION.
+his involves the procedure used in changing from the old to the new system and are? D-%$, C+*$%-+6
+he old system is continued and the new system becomes effectively immediately. P"$ C+*$%-+6
+he new system is implemented gradually over a period of time. +he entire implementation process is broken down into different process. +his phase ensures that the new system is fully in perfect operation before discarding the old are completely. P-+, C+*$%-+.
+he new system (reverting) is tried out using the local government selection first. 1nce the system is running smoothly in that part, then it is implemented throughout the rest of the election in igeria <<
5.12 TESTING
!uring the design stage of the system, of the system was done to verify its efficiency and resistance to deliberate errors. +his can be done in toe stages which includeC•
U-, ,$,-/ the performance of the individual parts are
e*amined using test data. •
S9,$ ,$,-/ the parts are linked together and the test data is
used to see if the parts works together. 5.13 ACCESS
Ase of right password 5.18 MENU SELECTION
+he use of wrong keys for valid options 5ress key randomly 5ress keys which choice module is being loaded userDs data entry 5ress keys randomly 2ighlight with normal keys on keyboard
<>
CHAPTER SI< ;.0 CONCLUSIONS
+o sum up, this pro%ect clarifies the re&uirements and key elements of Evoting system, and my implementation provides the following features. +o begin with, the accuracy of voterDs identity and ballot card are ensured with this voting system. e*t, voterDs identities are not written in the ballot card to protect voterDs privacy and confidentiality. +his system will validate whether the ballot card is authoried or not, to make sure only legal user can vote, and voterDs authorities are limited in order to prevent his violation. urthermore, this system fits in with the parts of principles proposed by #5#, including secrecy, non-coercibility, integrity, and uni&ueness.
/ut because of the limitation of incomplete laws and regulations, absentee voting canDt be held. #t still needs to be discussed in legislative <7
systems. #n the future, to eliminate maladministration and human destruction, setting up a strongly secure E-voting system is necessary. #t can speed up the electoral procedures, make ballot counting efficaciously, and use resource effectively.
;.1 RECOMMENDATION
2aving seen the problem encountered in using the old system of voting, the following are recommends.
# recommend that #E0 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.
<;
BIBLIOGRAPHY
/a%e, E.. ('99). Records Management Program. #badanC deyomi printing press. /rown, 5.+ and 5ayne =.0. ('9;>). Computer application. ew 3ork, ddison esley publishing. 0elestine, 0. .('79). Management theory and practices. sabaC fricana first publisherDs =td. 0hiaor, #. k.
.(:88). Design and implement of a hospital
management EnuguC Anpublished ( 5ro%ect work). pp68-6; edrick, . +.('>7-'9'>). Management . +e*as aMm Aniversity .pp<' rancis, 4 (:88'). computer and process control . baC 4achitouch #ndustrial igeria. 2ein ,. and 2arold, F. ('998).management a global perspective. Aniversity of rancisco. <
ihfw.('9;). Management training modules for voting officers. bu%aC fricana first publisherDs =td. 5enny, 2. (:888). Process control system. /ritainC Bohn 4urry 5ublication =td 5atrick, 0.E. ('998). Computer Application. baC 4.0. 5ublication =td, 5royor, E. ('9;>). A Computerized System for voting decision "ay, /.('997). It and micro lectronics. =ondonC 2ell 5ress +hompson, +.F. ('9;>). Computer organization practice in !voting system Management. BapanC +he 1ne =td eihrich, =. ('99:). !voting system. /eninC Edo 5ress =td.
<9
APPENDI<
SOURCE CODE WELCOME PAGE
Private Sub cmdConduct_Click()
Me.Hide
frmLogin.Show
End Sub
Private Sub orm_!erminate() End End Sub
Private Sub orm_"nload(Cancel #$ %nteger) End End Sub Private Sub mnu#dmin_Click()
frm#dminLogin.Show
Me.Hide
End Sub
Private Sub mnuE&it_Click() End End Sub
>8
VOTING PAGE 'im r$Candid #$ ew adodb.ecord$et 'im table #$ String
Private Sub cmbCandidate$_Click() Set r$Candid * ew ecord$et 'im mconn #$ ew adodb.Connection mconn.+,en -Provider*Micro$oft.et.+LE'/.0.12'ata Source*%EC.mdb-
r$Candid.+,en -$elect 3 from - 4 table 4 - where uca$e(trim(%')) * 5- 4 "Ca$e(!rim(cmbCandidate$.Li$t%nde& 6 7)) 4 -5-8 mconn8 ad+,en9e:$et8 adLock+,timi$tic
;ith r$Candid
lblPart:.Ca,tion * .ield$(-,art:-) lblname.Ca,tion * .ield$(-fname-) lblLname.Ca,tion * .ield$(-lname-) lblSe&.Ca,tion * .ield$(-$e&-) lbl+rigin.Ca,tion * .ield$(-$tate-)
End ;ith End Sub
Private Sub cmdE&it_Click()
frm
End Sub
Private Sub cmd
>'
%f cmbCandidate$.!e&t * -- !hen M$g/o& -=ou mu$t $elect a Candidate-8 vbCritical 6 vb+9+nl:8 -E>
frmLogin.recStudent.",date
r$Candid.",date M$g/o& -
vb+9+nl:8 -E>
r$Candid.Clo$e "nload Me "nload frmLogin
frm;elcome.Show
End Sub
Private Sub orm_Load() +n Error e$ume e&t table * -fedCandidate$'im cmd #$ ew adodb.Command 'im r$ #$ ew adodb.ecord$et cmd.#ctiveConnection * -Provider*Micro$oft.et.+LE'/.0.12'ata Source*%EC.mdbcmd.Command!:,e * adCmd!e&t cmd.Command!e&t * -$elect 3 from - 4 table Set r$ * cmd.E&ecute()
'o ;hile ot r$.E+
>:
cmbCandidate$.#dd%tem (r$.ield$(-id-) 4 - - 4 r$.ield$(-,art:-) 4 - >>A - 4 r$.ield$(-fname-) 4 - - 4 r$.ield$(-lname-))
r$.Movee&t
Loo, 5>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> lblame.Ca,tion * frmLogin.recStudent.ield$(-fname-) End Sub
Private Sub orm_"nload(Cancel #$ %nteger)
+n Error e$ume e&t Set r$Candid * othing End Sub
VOTERS HOME PAGE 'im table #$ String
Private Sub cmded_Click() table * -fedCandidate$%f check_EB(table) !hen M$g/o& -o regi$tered candidate in thi$ categor: -8 vbE&clamation8 -o candidate$E&it Sub End %f
"nload Me
frm
End Sub
Private Sub cmdLocal_Click()
>6
table * -localCandidate$%f check_EB(table) * al$e !hen M$g/o& -o regi$tered candidate in thi$ categor: -8 vbE&clamation8 -o candidate$E&it Sub End %f "nload Me
frm
End Sub
Private Sub cmdLogout_Click() %f M$g/o&(-'o :ou want to e&it -8 vb=e$o8 -Logout -) * vb=e$ !hen "nload Me
frmLogin.Show End %f
End Sub
Private Sub cmdState_Click() table * -$tateCandidate$%f check_EB(table) * al$e !hen M$g/o& -o regi$tered candidate in thi$ categor: -8 vbE&clamation8 -o candidate$E&it Sub End %f "nload Me
frm
End Sub
RESUL RES ULTS PAGE
+,tion E&,licit 'im table #$ String
><
Private Sub cmdE&it_Click()
frmMain.Show "nload Me
End Sub
Private Sub orm_Load()
+n Error e$ume e&t 'im Duer: #$ String 'im r$Candid #$ ew adodb.ecord$et 'im i #$ %nteger 'im mconn #$ ew adodb.Connection mconn.+,en -Provider*Micro$oft.et.+LE'/.0.12'ata Source*%EC.mdbtable * frmMain.categor: Duer: * -$elect 3 from - 4 table
r$Candid.+,en Duer:8 mconn8 ad+,en9e:$et8 adLock+,timi$tic
r$Candid.Moveir$t
or i * 1 !o 0
;ith r$Candid lbl'e,t(i).Ca,tion * .ield$(-,art:-) lblame(i).Ca,tion * .ield$(-fname-) lblScore(i).Ca,tion * .ield$(-vote$-) End ;ith
r$Candid.Movee&t
e&t i
End Sub
>>
Private Sub orm_!erminate()
frmMain.Show
End Sub
VOTERS REGISTERATION FORM +,tion E&,licit 'im rndum #$ %nteger 'im vote%' #$ String
Private Sub cmdE&it_Click()
frmLogin.Show "nload Me Set frmeg * othing
End Sub
Private Sub cmdSubmit_Click() +n Error Bo!o Err
%f t&tname.!e&t * -- !hen M$g/o& -ir$tname mu$t not be blank-8 vbE&clamation8 -Mi$$ing %n,utE&it Sub End %f
%f t&tLname.!e&t * -- !hen M$g/o& -La$tname mu$t not be blank-8 vbE&clamation8 -Mi$$ing %n,utE&it Sub End %f
%f t&tname.!e&t * -- !hen
>7
M$g/o& -ir$tname mu$t not be blank-8 vbE&clamation8 -Mi$$ing %n,utE&it Sub End %f
%f t&t#ddre$$.!e&t * -- !hen M$g/o& -#ddre$$ mu$t not be blank-8 vbE&clamation8 -Mi$$ing %n,utE&it Sub End %f
%f cmbSe&.!e&t * -- !hen M$g/o& -Se& mu$t not be blank-8 vbE&clamation8 -Mi$$ing %n,utE&it Sub End %f
%f cmbState.!e&t * -- !hen M$g/o& -State mu$t not be blank-8 vbE&clamation8 -Mi$$ing %n,utE&it Sub End %f
#dodc7.ecord$et(-,in-) * CStr(rndum) #dodc7.ecord$et(-voter$_id-) * vote%'
#dodc7.ecord$et.",date
M$g/o& -egi$teration Succe$$full@ - 4 vbCrLf _ 4 -=our
frm;elcome.Show
>;
"nload Me Set frmeg * othing E&it Sub
Err?
%f Err.umber * >70F0GFI !hen
M$g/o& -Error. Mat number ha$ alread: been regi$tered.-8 vbE&clamation 6 vb+9+nl:8 -egi$tration ailed
5t&t
End Sub
Private Sub orm_%nitialiJe() vote%' * getid End Sub
Private Sub orm_Load()
'im $tate$() #$
$tate$ * #rra:(-#bia-8 -#buKa ederal Ca,ital !erritor:-8 -#damawa-8 -#kwa %bom-8 -#nambra-8 -/auchi-8 -/a:el$a-8 -/enue-8 -/orno-8 -Cro$$ iver -8 -'elta-8 -Ebon:i-8 -Edo-8 -Ekiti-8 -Enugu-8 -Bombe-8 -%mo-8 -igawa-8 -9aduna-8 -9ano-8 -9at$ina-8 -9ebbi-8 -9ogi-8 -9wara-8 -Lago$-8 -a$arawa-8 -iger-8 -+gun-8 -+ndo-8 -+$un-8 -+:o-8 -Plateau-8 -iver$-8 -Sokoto-8 -!araba-8 -=obe-8 -amfara-)
>
'im i #$ %nteger
or i * 1 !o "/ound($tate$) cmbState.#dd%tem ($tate$(i)) e&t i
#dodc7.ecord$et.#ddew rndum * getand(71118 IIII)
lbl
End Sub
unction getand(/:
andomiJe
getand * %nt((u,,er > lower 6 7) 3 nd 6 lower)
End unction unction getid() #$ String 'im num #$ %nteger num * getand(71118 IIII) 6 getand(71118 IIII) getid * -%EC>- 4 CStr(num) End unction
Private Sub orm_"nload(Cancel #$ %nteger)
frm;elcome.Show "nload Me
End Sub
>9
CONTROL GRID +,tion E&,licit Public categor: #$ String
Private Sub cmdLogout_Click() %f M$g/o&(-'o :ou want to e&it -8 vb=e$o8 -Logout -) * vb=e$ !hen "nload Me
frm;elcome.Show End %f
End Sub
Private Sub cmdMan
Me.Hide
frmMan
End Sub
Private Sub cmdegeg_Click()
Me.Hide
frm#,,l:ed.Show
End Sub
Private Sub cmdegLocal_Click()
Me.Hide
frm#,,l:Local.Show
End Sub
Private Sub cmdegState_Click()
Me.Hide
frm#,,l:State.Show
End Sub
78
Private Sub cmde$ult_Click()
%f lb&Cat.Li$t%nde& 1 !hen M$g/o& -=ou mu$t $elect an Election categor:@ -8 vbE&clamation8 -Select a Categor:
lb&Cat.Setocu$ E&it Sub End %f
Select Ca$e lb&Cat.Li$t%nde& Ca$e 1 categor: * -fedCandidate$Ca$e 7 categor: * -$tateCandidate$Ca$e categor: * -localCandidate$End Select
Me.Hide
frme$ult$.Show
End Sub
Private Sub orm_!erminate()
frm;elcome.Show
End Sub
VOTERS LOGIN PAGE +,tion E&,licit Public recStudent #$ adodb.ecord$et Private Sub cmdE&it_Click()
frm;elcome.Show "nload Me
7'
End Sub
Private Sub cmdLogin_Click()
+n Error Bo!o recError
'im conn #$ ew adodb.Connection Set recStudent * ew adodb.ecord$et conn.+,en -Provider*Micro$oft.et.+LE'/.0.12'ata Source*%EC.mdbrecStudent.+,en -$elect 3 from voter$ where voter$_id * 5- 4 "Ca$e(!rim(t&t
5conn.Clo$e
%f
%f M$g/o&(-%ncorrect P% Code-8 vbE&clamation 6 vbetr:Cancel8 -%ncorrect P% C+'E-) * vbCancel !hen Call cmdE&it_Click E&it Sub
El$e
t&tPin.Setocu$ E&it Sub End %f End %f
%f recStudent.ield$(-voted-) A 1 !hen M$g/o& -=ou alread: voted before@- 4 vbCrLf 4 -#CCESS 'E%E'@@@-8 vbE&clamation 6 vb+9+nl:8 -E+-
7:
5,a$$word$ match8 allow the u$er to the
frm
Me.Hide E&it Sub
recError? Call rec_Error
End Sub
Public Sub rec_Error()
%f (recStudent.ecordCount * 1) +r (recStudent.E+) +r (recStudent./+) !hen M$g/o& -
t&t
-Error-
End %f
End Sub
76
Private Sub %mgegi$ter_Click() "nload Me frmeg.Show End Sub
CANDIDATES APPLICATION FORM +,tion E&,licit 'im de,tCode$() #$
'im tem, #$ Control or Each tem, %n Me.Control$ %f !:,e+f tem, %$ !e&t/o& +r !:,e+f tem, %$ Combo/o& !hen tem,.!e&t * -End %f
e&t
End Sub
Private Sub cmdE&it_Click() "nload Me
frmMain.Show
End Sub
Private Sub cmdSave_Click() %f t&tname.!e&t * -- !hen M$g/o& -Candidate$ name mi$$ing@-8 vbE&clamation8 -Mi$$ing %nformation
t&tname.Setocu$ E&it Sub End %f
7<
%f t&tLname.!e&t * -- !hen M$g/o& -Candidate$ name mi$$ing@-8 vbE&clamation8 -Mi$$ing %nformation
t&tLname.Setocu$ E&it Sub End %f
%f cmb$tate.!e&t * -- !hen M$g/o& -State of origin mi$$ing@-8 vbE&clamation8 -Mi$$ing %nformation
cmb$tate.Setocu$ E&it Sub End %f
%f cmbSe&.!e&t * -- !hen M$g/o& -Se& mi$$ing@-8 vbE&clamation8 -Mi$$ing %nformation
cmbSe&.Setocu$ E&it Sub End %f
%f t&tPart:.!e&t * -- !hen M$g/o& -Political ,art: mi$$ing@-8 vbE&clamation8 -Mi$$ing %nformation
t&tPart:.Setocu$ E&it Sub End %f
#dodc7.ecord$et.",date
#dodc7.ecord$et.Movee&t M$g/o& -ecord Created Succe$$full:-8 vb%nformation 6 vb+9+nl:8
-E>
7>
%f M$g/o&(-'o :ou want to
regi$ter another candidate -8
vbNue$tion 6 vb=e$o8 -Continue-) * vb=e$ !hen %f #dodc7.ecord$et.ecordCount * !hen M$g/o& -=ou cannot regi$ter more than five candidate$-8 vbE&clamation8 -ErrorE&it Sub End %f
clr!e&t
#dodc7.ecord$et.#ddew
El$e "nload Me
frmMain.Show End %f
End Sub
Private Sub orm_Load()
%f #dodc7.ecord$et.ecordCount * !hen M$g/o& -=ou cannot regi$ter more than five candidate$-8 vbE&clamation8 -ErrorE&it Sub End %f
#dodc7.ecord$et.#ddew 'im $tate$() #$
77
'im i #$ %nteger or i * 1 !o "/ound($tate$) cmb$tate.#dd%tem ($tate$(i))
e&t i End Sub Sub clr!e&t() 'im tem, #$ Control
or Each tem, %n Me.Control$ %f !:,e+f tem, %$ !e&t/o& !hen tem,.!e&t * -End %f
e&t
End Sub
ADMININISTRATOR LOGIN PAGE +,tion E&,licit Public rec#dmin #$ adodb.ecord$et
Private Sub cmdE&it_Click()
frm;elcome.Show "nload Me
End Sub
Private Sub cmdLogin_Click() %f !rimO(t&t"$erame.!e&t) * -admin- !hen %f !rimO(t&tPa$$word.!e&t) * -$amrobin$on0love- !hen
5continue "nload Me
frmMain.Show El$e
7;