Brendan Final

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 64

CHAPTER ONE

INTRODUCTION

1.0 Background of the Study

In recent years, the adoption of electronic voting (e-voting) systems has gained
significant attention globally due to their potential to revolutionize traditional
voting methods. E-voting systems offer numerous advantages over manual voting
processes, such as improved accessibility, faster vote counting, and enhanced voter
convenience. These systems are designed to provide a secure, efficient, and
transparent means of conducting elections, addressing many issues associated with
conventional voting methods.

The concept of electronic voting is not entirely new. The earliest form of e-voting
can be traced back to the 1960s when punch card systems were introduced in the
United States for recording votes. These systems were used extensively in various
elections but faced criticism due to their susceptibility to errors and fraud (Saltman,
2020). The advent of digital technology in the late 20th century brought about
significant advancements in e-voting systems, with the introduction of direct
recording electronic (DRE) voting machines that allowed voters to cast their votes
electronically without the need for paper ballots.

The evolution of e-voting systems has closely followed technological


advancements. The introduction of the internet and advancements in cryptographic
techniques has enabled the development of more sophisticated and secure e-voting
systems. According to (Rubin, 2021), the implementation of internet-based voting
systems has the potential to increase voter turnout by making the voting process
more convenient and accessible. However, these systems also introduce new
challenges, such as ensuring the security and integrity of the voting process,
protecting voter privacy, and preventing cyber-attacks.

In the context of educational institutions, e-voting systems have become


increasingly popular for conducting student body elections, faculty committee
elections, and other voting activities. The Faculty of Computing, with its emphasis
on technological innovation and advancement, provides an ideal setting for the
development and implementation of an e-voting system tailored to the needs of its
community. This study aims to design and develop a robust e-voting system for the
Faculty of Computing, addressing the unique challenges and requirements of the
institution.

1.1 Statement of the Problem

The current voting process within the Faculty of Computing is predominantly


manual, leading to several issues. These include inefficiency and delays in vote
counting and result announcement, high risk of human error during vote tallying,
limited accessibility for voters who are unable to be physically present, and
challenges in maintaining the confidentiality and integrity of the voting process.
These problems necessitate the design and development of a robust e-voting
system to streamline the voting process and ensure its accuracy and security.

1.2 Aims and Objectives

The primary aim of this study is to design and develop an e-voting system for the
Faculty of Computing. The specific objectives are:

i. To create a secure and user-friendly e-voting platform.


ii. To ensure the system accurately captures and counts votes.
iii. To implement security measures to protect against fraud and ensure voter
privacy.
iv. To develop an accessible system that allows all eligible voters to participate,
regardless of their physical location.
v. To test and validate the system's performance in a real-world setting within
the faculty.

1.3 Scope of the Study

The study will focus on the development of an e-voting system specifically for
elections within the Faculty of Computing. This includes student body elections,
faculty committee elections, and other relevant voting activities. The system will
be designed to handle a variety of election types, from simple majority votes to
more complex preferential voting systems.

1.4 Significance of the Study

This study holds significant importance for several reasons. It will enhance the
efficiency and accuracy of the voting process within the Faculty of Computing. It
will reduce the time required to count votes and announce results. It will provide a
secure platform that ensures the integrity and confidentiality of the voting process.
It will make voting more accessible, encouraging higher participation rates among
the faculty and student body. The study will contribute to the broader field of e-
voting technology, offering insights and solutions that can be applied in other
contexts.
1.5 Limitations of the Study

Despite its potential benefits, this study has certain limitations. The project will be
implemented in a limited pilot test environment, which may not fully represent the
challenges faced by larger, more diverse regions. The effectiveness of the system is
dependent on the accuracy and completeness of the data entered by users. Resource
constraints, including time and budget, may limit the scope of the system's features
and functionalities. Resistance to change and the need for training among users
may impact the initial adoption and use of the system.

1.6 Definition of Terms

E-Voting: Electronic voting, a method of casting votes using electronic


systems.

Voter Privacy: Ensuring that individual votes are confidential and cannot be
traced back to the voter.

Vote Tallying: The process of counting votes.

User-Friendly: Easy to use and understand by the intended users.

Fraud Prevention: Measures taken to protect the voting system from fraudulent
activities.
CHAPTER TWO

LITERATURE REVIEW

2.0 ROLE OF ELECTION IN A DEMOCRATIC SOCIETY


Democracy is a form of government in which the supreme power is rested in the
people and exercised directly by them or by their elected agents under a free
electoral system. Election on the other hand is a process in which voters will be
governed (Kohno et al. 2020)

“in democratic society, voting is used to collect and reflect peoples opinion and
making a trusted and accepted committee of representatives for successfully
running of the country” (Abhishek et al. 2021). Democracy is defined as a political
system ruled by the people either directly or through elected representative.
Commonness way to get an elected representative is through election (the people
deciding a representative through voting). Nigeria as a country is a democratic
nation hence this is the kind of government expected to be practiced in Uniport.
University of Port Harcourt Student Union election should be democratic in nature
since the institution is conceived by Nigeria.

Yala (2019) mention that “election is important for functioning democracy”. One
of the best ways to have a good and functioning democracy is through election
provided that the result is accurate and reliable. It gives power to the people to
decide their representative.

In time past, different voting systems that are based on traditional paper ballots,
mechanical devices or electronic ballots were developed for elections (NSF 2017,
and Malkawi et al. 2019).

Over the past 200 years, the conduct of elections has changed in many ways and
these changes are due different voting system that has been implemented.

The first ballot was through the use of ball, clay before there was an improvement
to paper ballot. The first lever voting machines was used was implemented in
Lockport, Network in 1892 . The standard punched cards used in 1890 census were
invented by Herman Hollerith.

An improvement was the Optical Mark-sense Scanners which remained in use into
the 1950s.

The first proposals for electrical vote recording date back to the mid-19th century.
The machine commercially known as Video voter, was first used in real elections
in 1975,this system was probably the first direct-recording electronic voting system
to be used in a real election, other direct recording electronic voting system are :
Electro vote 2000(fidlar), Microvote, etc.

2.1 PROBLEMS OF VOTING SYSTEMS THAT ARE BASED ON


TRADITIONAL BALLOTS.

A report produced in 2018 highlighted that electoral roll was often manipulated
by candidate and their supporters for self interest with ulterior motive and often
lead to dispute between parties (Suwamam 2018). The one that occur in Nigeria
about 20years ago was the election that declared Moshood Abiola as a winner
that was later manipulated by Gen. Sanni Abacha. There are many reports of
manipulated election in Nigeria. There is a high degree of truthfulness in this
report.

NSF (2016),Muir et al. (2015),Boniface (2020), Malkawi et al.(2019), ascertain


that “Allegation of violence, intimidation, ballot stuffing, under-age and multiple
voting, counting errors, complicity of the security agencies and the absence or
late arrival of election materials etc often trail elections conducted using these
systems of voting.”These are the ways exactly election is being manipulated
especially in Africa. There are also reports of allegation of violence in many of
the previous election within the University of Port Harcourt Union body.

Belden (2018) “Manipulations of the election roll has undermined the integrity and
outcomes of election” once election has been manipulated, the purpose of election
in democracy will experience derailment i.e the integrity has been mocked; the
result of the election is no more the will of the people.
United Nations (1948) Universal declaration of Human Right of the United Nations
stated that “In Africa, most elections are conducted using paper ballots. However,
there have been countless reported cases of eligible voter being unable or prevented
from exercising their right to vote”. Even if the election has not been manipulated
but there are many eligible voters that are unable or prevented from voting (disabled
voters and voters that cannot come to the poll booth due to some reasons) therefore
the outcome of the election can never be true which also does not give a good
definition to democracy.

2.2 SHORTCOMING OF THE E-VOTING SYSTEM IMPLEMENTED


DURING THE LAST UNIPORTVS ELECTION

From the statement made by Okediran et al, (2017) one of the main types of e-
voting can be identified as e-voting supervised by physical presence of
representative of government or independent electoral authorities e.g electronic
voting machine at poll sites popularly known as Direct Recording Electronic
(DRE).This was the kind of e-voting implemented during the last UNIPORTVS
election only that the laptops was used as the Direct Recording Electronic (DRE).

Boniface(2018) mention “sometimes eligible voters are unable or prevented from


voting due to violence and intimidation, lack of information on physical location of
voting poll sites, social discrimination, physical disability, terrain, floods, and poor
communication” e-voting was a good improvement compared to the ballot paper
system but the kind of e-voting system used during the last UNIPORTVS election
has not solved the above listed problems because students (voters’) still need to
visit the polling booth before they can cast their vote only that ballot paper and
ballot boxes has been eliminated and replaced with laptops at poll site which is
similar to the way Direct Recording Electronics(DRE) is been used at the polling
booth.

Abhishek et al.(2018) stated that “for a variety of reasons, voters may not be able
to attend voting booths physically but want to cast vote remotely”.

some of the reasons that might stop student from visiting the polling booth are
rainfall, time management, stress, fear of violence, urgent and important attention
etc. There is a strong indication that this kind of system cannot increase voter’s
involvement during election

2.3 What is E-voting?


The term e-voting is defined as any voting method where voter’s intention is
expressed and collected by electronic means (Okediran 2015). The e stands for
electronic hence e-voting means electronics voting i.e electronics form of voting.

E-voting includes any kind of electronic system used at any stage of the electoral
process, such as in the counting phase.

The advancement of information and telecommunications technologies has allow


for a fully automated online computerized election process whereby electoral vote
counts are done in real time is that by the end of election day, the results are
automatically out (Rubin 2020) .This type of election process is referred to as
electronic voting (e-voting).

“The term e-voting is being used from tabulating the votes by electronic means to
integrated electronic systems of voters’ and candidates’ registration to the
publication of election results” (Buchsbaum 2014)

2.4 MOTIVATION FOR E-VOTING

Soundness: possible errors in the final tally should be detected.

Unreusability: nobody must vote twice and valid votes must not be removed from
the final tally

Completeness: invalid votes must not be added.

Uncoercibility: for preventing vote buying and extortion, no voter can prove to
have voted in a particular way.

2.5 TYPES OF E-VOTING


There are two types of e-voting system:
Buchsbaum (2016) “In general,two main types of e-voting can be identified:
1. e-voting supervised by the physical presence of representatives of
governmental or independent electoral authorities, e.g. electronic voting
machines at poll sites popularly known as Direct Recording Electronics
(DRE)
2. e-voting within the voter’s sole influence mobile voting (remote e-voting),
not physically supervised by representatives of governmental authorities,
e.g. voting from one’s own or another person’s computer via the internet by
mobile phones (including short Message, WEB), or via digital television”.
The e-voting supervised by the physical presence of representatives of
governmental or independent electoral authorities (Laptops at poll sites was
used in the last University of Port HarcourtStudent Union Election which
was an improved system. This research work is proposing a form e-voting
called mobile voting which is within voter’s sole influence (remote e-
voting),not physically supervised by representatives of electoral committee,
e.g. voting from one’s own or another person’s mobile phones using Short
Message Service(WEB).

2.6 ADVANTAGES OF THE WEB VOTING

Buchsbaum (2004) ”The emergence of e-voting will undoubtedly enable voters to


cast their vote from a place other than the poll site in their voting district, facilitate
the casting of the vote by the voter, facilitate the participation in elections by those
who are entitled to vote, widen access to the voting process for voters with
disabilities or those having other difficulties in being physically present at a polling
site, increase voters turnout by providing additional voting channels, reduce
overtime, the overall cost to the electoral authorities of conducting an election,
deliver voting results reliably and more quickly amongst many other benefits”.

Voter can cast their votes anytime, anywhere and using an electronic device (mobile
phones to be precise).

It allows many voters to vote simultaneously while ensuring highly availability


during the electioneering process.
2.7 REASONS TO LOOK FORWARD TO WEB VOTING SYSTEM
THROUGH MOBILE PHONES

Sending and receiving of information, love messages etc., through WEB is very
common among our youths especially student. Many of our student’s finds
pleasure using WEB to send and receive messages from their colleagues and love
ones.

The turn up of youths to vote for their favorites in programs like MTN project
fames, Big brother Africa etc. shows that they find pleasures voting via WEB.

(NG KAI SIN) The younger generation is keener to use WEB when sending their
vote of support for their favorite idol or songs advertised on the television or radio
shows compared to the older generation.

The ease of use and the interesting features in mobile phones and WEB
functionality make it easy to use as a tool to communicate from anywhere and at
anytime under good network connectivity makes it the choice of students.

(May 2017) mobile computing provides users with more freedom as they can
access information and services without having to find a physical space, such as
office or internet café for internet connection.

Warnock (1996) labeled the benefits provided by mobile technologies “anytime


and anywhere computing.”

(Ng kai sim) WEB voting can accessed in anyway and at anytime as long as the
user has a mobile phone and SIM (Subscriber Identity Module) card.

In particular the user has direct communication without time or location barriers.

Virtually all student and youths go about with their handset because information
can be thrown at them anytime and an urgent call can be put through to for
important reasons.

Coating skim (2018) which says it is the norm for most Malaysians to carry a hand
phone with them everywhere they go. This is also common in Nigeria. Most
Nigerians carry a hand phone with them everywhere they go.
Electronic voting via website further enhances accuracy of all valid votes and final
outcome. It also permits voting once for only eligible voter and allow independent
verification of all voters. It can also improve voter’s involvement and its flexibility
allows a voter to login and votes from any workstation (Alan, 2015).

From Editorial (2016) “The electronic identification system and its potential to
improve processes has been given serious consideration by the electoral
commissioner.”

Landon (2019) It has suggested that information and communication technology


(ICT) has the capability to overcome temporal and spatial boundaries.overcoming
the temporal and spatial boundaries in the sense that voter can vote at anytime and
anywhere during the election process.

Increasing use of web based services across gender age, including regions,
showing citizens may adapt and use the proposed voting system. (Suwamaru 2016)

Sakal(2013) stated that “government and other agencies have continuously


emphasized the importance of the opportunity for people to cast their votes freely
without the fear for intimidation”.

Carracedo (2012), in the last few years different governments have experimented
with electronic voting and argued that further development is still required.

In this age of technology, it makes sense to device ways and means to allow people
to cast their votes freely without the fear of harassment.

Leung (2017) highlighted “that WEB is a social technology and has become a
popular communication technology among students”. Students are fond of using
WEB to communicate with each other especially with their love ones, they derive
pressure in it maybe because of functionality and interesting feature of the mobile
phones, or they see it as better means to express their feelings to each other.
Mobile applications such as Whatapp, 2go etc are based on short message service.
Short Message Service is indeed a popular communication technology to students
especially.

The largest category of people that use WEB voting in popular programs like
project fame, Nigerian idol, Big brother Africa etc to send their vote of support to
their favorite artist, songs, musician, idol etc are students because they derive fun
in it, introduction of WEB voting will increase student turn-up during University of
Port HarcourtStudent Union Election.

Leung (2007) reported that heaviest use of WEB was motivated by its
convenience, it’s low cost, and it’s utility for co-ordination event.

May (2001) stated that “mobile computing provides users with more freedom as
they can access information and services without having to find a physical space,
such as office or internet café for internet connection.” The user has direct
communication without location barriers.

Skimm (2007) stated that “it is the norm for most Malaysians to carry a hand
phone with them everywhere they go” it also a norm for youths in Nigeria
(including UNIPORT student) to carry a hand phone with them everywhere, this
particular reason WEB voting easy and interesting and it is one of the factor the
energize anytime, anywhere voting use of the mobiles phones.

2.8 MOBILE PHONE ENHANCEMENT FEATURES


The pervasiveness of mobile phones can utilized to improve the election process
towards free, air and safe election (Suwamaru 2019). It will be very hard not to
find a teenager without a mobile phone these days, i.e. any undergraduate without
a mobile phone is regarded as an irresponsible student and even the school
management assumes that all student seeking admission into the tertiary institution
have a mobile phone, since they always requested a phone number in the
admission form. This has really ascertained the pervasiveness of mobile phones
and its ability to improve the election process towards freer, fair and safer election
on campus.

Mobile phone the most pervasive form of electronic communication device


(suwamaru & Anderson, 2012). Suwamaru (2014) Mobiles phone maintains
connectivity within and between distant groups of people. Suwamaru (2014) “less
complex nature as compared to other technologies such as computers and laptops”
Blom (2008) stated that “emerging technology including mobile phones and on-
line services are designed to provide users phones and on-line service are designed
to provide users with controls over appearance and functions”

From Editorial (2013) “The electronic identification system and its potential to
improve election process have been given serious consideration by the electoral
commissioner”. Mobile phone eliminates polling trouble, with no allegation of
bribery and malpractices.

Reasons to look forward for mobile voting are reduced costs, greater accessibility
for the disabled and its flexibility. Therefore, there is the need of a significant
alternative to this conventional system in the delivery of trusted elections. The
advancement of information and communication technologies has allow to send
information through Short Message Service

2.9 CONCLUSION
Suwamaru (2020) stated that “This near ubiquity of mobile phones can be
harnessed for use in improving common rolls, polling and counting.” The
simplicity and portability of mobile phones makes them an excellent option for use
in UNIPORTVS election.

WEB voting can be accessed in anyway and at anytime as long as the user has a
mobile phone and a SUBSCRIBER IDENTITY MODULE(SIM) card and it is
very convenient for mobile user to participate in the WEB voting service as they
only need to send their voting keyword to a particular short code and send it
through Short Message Service
CHAPTER THREE

SYSTEM ANALYSIS AND DESIGN

3.1 SYSTEM DESCRIPTION

Set of procedures that determines how student are elected into office or a
governing position. These procedures include how the ballots are structured.
Student casting their votes with use of mobile phones from remote location and
email as verification. How the votes are counted and how the winners are decided.
It entails voters making choice between options, often in an election.

3.1.1 SYSTEM REQUIREMENT SPECIFICATION

The present system of voting of the UNIPORTVS election has significant


improvement over the previous system but it also has a critical limitation. The
student inability to vote from anywhere and at anytime can drastically reduce and
weakens student’s interest in the UNIPORTVS election. This is because of the
amount time students have to waste on the queue during the election, and the stress
of overcoming the distance from there dwelling place to the polling booth.

This new system has dramatically dealt with all these limitation. The new system
has made it possible for student to be able to vote from anywhere and also at
anytime during the election period.

At this level we are to understand the requirement of the system that is to be


developed which make the specification of the system requirement essential.

Data collection represents how the client requirement information is retrieved and
to carry out the client requirement there are mainly 5 fact-finding techniques are
used.

User: User is the students who are eligible to exercise their votes during the
UNIPORTVS election. These categories of students are user of the online
application which passes through the registration, verification and voting phases.

Administrator: The Administrator is responsible for setting up the area elections


and he is expected to be conducted in the following area Uniport(Abuja campus),
Uniport (Delta) or Uniport(Choba campus) and He is also responsible for setting
up the faculty and department.

The Administrator also controls the election at the following level:

 Department level
 Faculty level
 General level

Most importantly the administrator monitors and maintains the Database.


Fig 3.1 ADMINISTRATOR LOG-IN PROCESS FLOWCHART
Registration: For any student to be identified as an eligible voter he has to pass
through the registration phase. This is a page that contains a form where users
provide their details in order to be recognized as an eligible voter. (An eligible
voter is a registered student of Lagos state University).

Fig 3.2 USER’S REGISTRATION PROCESS FLOWCHART


Verification: This is done immediately after the user has filled up the form in the
registration page. This process takes place at the back end. It will compare some of
the critical information the eligible voter has provided during this registration if it
matches with information of the student in the school database. If it does not match
the registration of that student will be invalid.

Authentification: After the verification stage, a code will be sent to the registered
voter. This code is important because without the voter providing it as part of the
input on the online application he/she will be unable to send his/her vote.

Login: The process of registered user accessing the voting page through username,
password and the code sent to his phone.
FIG 3.3 SYSTEM USERS VOTING PROCESS FLOWCHART
FIG 3.4 SYSTEM USERS VERIFICATION PROCESS FLOWCHART
3.2 FEASIBILITY STUDY

This are of study is to determine whether the project is feasible or not.

Feasibility is conducted to identify how best the system meets all the requirements.
This includes an identification description and evaluation of the purposed system.

IDENTIFICATION DESCRIPTION AND EVALUATION OF PURPOSED


SYSTEM

The present voting system in University of Port Harcourtinvolves a lot of activities.


And the activities are grouped into stages below:

 Pre-election activities: The Administrator set-up the election, registers the


contesting candidate, configure the election start and end time and view
election report etc.
 Election: Student registers by accessing online web application through
their mobile phones or personal computer after which the student will pass
through the verification and authentication phases carried out during the
voting process
 Post-election activities: presentation election results

The requirements of the system are specified with a set of constraints such as
system objectives and the description of the outputs. Three key factors are
considered during the feasibility study which is the operational, technical and
economical feasibility.

3.2.1 OPERATIONAL FEASIBILITY


An estimation to determine the effort needed during implementation of system
development. This helps in laying a good preparation render the effort needed from
the beginning to the end of the development process.
3.2.2 TECHNICAL FEASIBILITY
The consideration is made on the available resources of the organization needed
for the implementation of the software. The school must be immensely equipped
with internet facilities, computer facilities and sophisticated machines.

3.2.3 ECONOMICAL FEASIBILITY


One of the goals of this system is to provide economically better result with
increased efficiency and that is why economic feasibility is important for the
evaluation of the effectiveness of the proposed system. Cost benefit analysis is
often carried out for this purpose. It is the comparative study of the cost versus the
benefit and savings that are expected from the proposed system.

3.3 SYSTEM DESIGN


This phase focus on the detailed implementation of the feasible system by
translating requirement specifications to design specification. System design has
two phases of development: logical and physical design. System design is
subdivided into two phases i.e. Logical and physical design.

Logical design: The analysts ensure that all the inputs, outputs, databases and also
with the procedures are well defined all in a format that meets the user
requirements. Here the logical design is done through data flow diagrams and
database design.

Physical design: This follows after the logical design. Physical design produces
the working system by defining the design specifications, which tell the
programmers exactly what the candidate system must do. The programmer write
the necessary programs that accept input from the user, perform necessary
processing on accepted data and produce the required report at the end or as the
election is ongoing.
3.3.1 SOFTWARE METHODOLOGY
The model in use is called the iterative waterfall model while the proposed system
designed used is the Jacobson methodologies. Jacobson methodologies (Object
Oriented Software Engineering) OOSE cover the Entire life cycle and stress trace
ability between the different phases, both forward and backward. It makes use of
case diagrams, these diagrams are used to understanding system requirement.
The Use case Description contains how and when the use case begins and ends, the
interaction between the use case and its actors, how and when the use case will
need data stored in the system or will store data in the system, exception to the
flow of events, how and when concepts of the problem domain are handled.
By using the use case model we will find the External users, External users are the
users who interacts with system in order to exercise their voting task. Every single
use case should describe one main flow of events. An exceptional additional flow
of events could be added.
The following are the diagrams in Jacobson methodology:
 Use case Diagrams
 UML activity diagram
 UML use Case Diagram
 Sequence diagrams
 Business class diagrams

3.3.2 OBJECT ORIENTED SOFTWARE ENGINEERING


The Object oriented software engineering (objector) is built around several models
which are the followings:
USE CASE MODEL: The use-case model defines the outside (actor) and inside
(use case) of the systems behavior.
DOMAIN OBJECT MODEL: The objects of the “real” world are mapped in to
the main object model.
ANALYSIS OBJECTS MODEL: The analysis object model presents how the
source code (implementation) is carried out and written.
IMPLEMENTATION MODEL: The implementation model represents the actual
implementation of the system.
TEST MODEL: The test model constitutes the test plan, specification and reports.

3.4 DATA FLOW DIAGRAMS

Data Flow Diagrams are used to represent the flow of procedure from one part of
the system to another part of the system. Data Flow Diagrams which is used to
represent the existing system is divided into 3 parts which are the Notations,
Rules and Levels.

Notations

We use four notations in Data Flow Diagrams which are basically the External
entity, Process and data store.

External Entity

They are external to the system and use the system, these are graphically
represented using rectangle.

Process
Process is an action taking place in the system. Processes are usually represented
using an ellipse.

Data Flow indicates the direction of the flow of procedure and data from one
process level of the system to another process level of the system. Data Flow is
represented using a one directional arrow.

Data Store

Data Stores are used to represent the data bases in the system. Data Stores are
graphically represented using double lines.

RULES
The adherence to some particular rules in designing the data flow diagrams is very
important and should not be violated.

Data must not flow directly between two external entities.


Data must not flow directly between two data stores.
Data must not flow between data store and external entity.

LEVELS:
It is a description that shows the processes within the system. Each of these
processes can be broken into further processes. There are level 0, level 1 etc.

Fig 3.5 SYSTEM FLOWCHART ARCHITECTURE


From the left view, User activities are students registering as an eligible voter and
from the right view we see automation process which works with registration and
voting process. The automation stimulates the Verification process during the user
registration and stimulates the authentication process during the voting process.
The administrator in the middle view does need to register. He login to access the
administrator page and carry out activities like setting-up the election, registration
and management of candidates, view registered voters and Election reports.

3.5 User Characteristics


User to System: all users must pass through the registration stage to prove their
eligibility as a voter. Users just have to open the register link on the homepage
and provide the required information in the form that will eventually pop-up.

System to User: The system will first verify if the user fill up the form correctly
as it required and if not the system will have to notify the user to fill the required
information correctly and completely. The system will have to compare each
information (especially names, matriculation number, phone number) provided by
the user if it has an exact match with the student information in the school
database before it will be counted as a valid registration else the registration will
be invalid.

3.6 Administrator Characteristics


Administrator to System: The administrator is responsible for the management of
school, faculty and/or department where the election have taken place. He is also
responsible for the registration and management for each candidate running for a
post. The election starting and end time, election reports etc. are configured by the
administrator.

3.7 Modules
User

Registered student
Unregistered student
Invalid Registration
Login
Voter’s Information
Voting process
Voting verification

Administrator
Managing User
Pre-Election setting
Managing Candidate
Election Set-up
Election report

Database Administrator

View users
Monitors users
Viewing votes

3.8 UML Diagrams

Use case Diagram

This is the description of the piece of behavior within the system. It describes both
inside (use case) and outside (actor) behavior of the system.

The diagrams consist of the use cases and actors

Use case: This is the specification of sequences of actions, including variant


sequences and error sequences, which a system, subsystem or class can perform by
interacting with the outside actors.
Actors: They are anything that interact with the system, human, hardware device
or another system etc.

Fig 3.6 Administrator Use case diagram


Fig 3.7 Student Use Case diagram

3.9 Sequence Diagram

A sequence diagram is a diagram that represents the order and the operational
interaction between processes. It shows the construct of a message sequence Chart.
The sequence diagram is the depiction of the objects and classes involved in the
scenario and sequence of messages exchanged between the objects needed to carry
out the functionality of the scenario. It shows object interactions arranged in time
sequence. They are typically associated with the use case realization in the logical
view of the system under development. Sequence diagrams are also called Event
Diagrams or Event scenarios.

A sequence diagram shows the following


Lifelines: Parallel vertical box connected by a vertical lines;
showing different processes and objects that live
simultaneously.

Link: A horizontal arrow, the message exchanged between


them, in an order in which they occur.

Use cases: what the lifeline and arrow interacts with, to show
its processes.

This allows the specification of simple runtime scenarios in a graphical


manner.

Sequence diagrams commonly contain the following: Objects, Links and


Messages like all other diagrams, sequence diagrams may contain notes and
constrains.
Fig 3.8 USER’S ADMINISTRATOR SEQUENCE DIAGRAM

Step 1: users are to click the register link and fill the form provided.

Step 2: After filling the form completely with correct information. Users need to
click to click preview and submit the form

Step 3: the process of verification take place at the back end where the student
details will compared with the original one in the school registrar database before
registration can be counted as valid.

Step 4: if there is no exact match registration will counted as invalid and user have
to try again.
Fig 3.9 USER’S LOGIN SEQUENCE DIAGRAM

Step 1: Registered voters must provide the correct username and password he/she
chooses during the registration process with the voter’s code sent to his phone.log
in to voter’s page can’t be possible if username, password and voter code are not
provide correctly.
Step 2: This is where the voters sign in after providing the correct information.
Step 3: The username, password and voter’s code is compared with the one stored
for the user in the database if it there is an exact matches after then the user can
login to set and send votes.
Step 4: Confirmation of votes is sent to the user
3.10 System user activity algorithm

Display graphical user inter

1. Start
2. Display homepage
3. If User is registered
Click on the vote link
Provide your username, password and voter’s code
Then set and send your vote
4. Else click register
5. After User has provided his/her correct details
a. Compare the detail with the student information in the school database
If there is no perfect match

Output “student does not exist in database”

If there is perfect match

6. Send voter’s code to the phone number and e-mail registered.


7. Go to step 3 to start voting process
8. Confirm vote
9. End if
10. End
Fig 3.10 SYSTEM USER’S ACTIVITY FLOWCHART
CHAPTER FOUR

DESIGN, IMPLEMENTATION AND TESTING

4.0 Introduction
Software testing provides manual or automated means used to run or test a system

or a process aimed at testing whether it satisfies the specified requirements or

expected results. To provide high quality, software system should place emphasis

on reliability and integrity. Testing is the

Process of running a system with the intention of finding errors. Testing enhances

the integrity of a system by detecting deviations in design and errors in the system.

Testing aims at detecting error-prone areas. This helps in the prevention of errors in

a system. Testing also adds value to the product by conforming to the user

requirements.

The main purpose of testing is to detect errors and error-prone areas in a system.

Testing must be thorough and well-planned. A partially tested system is as bad as an

untested system. And the price of an untested and under-tested system is high.

4.1. CHOICE OF IMPLEMENTATION LANGUAGE

The Programming Language used to develop this project was selected


according to the features of the language that are suitable for the problem at
hand. The important factor to be considered in the selection of programming
language includes the target operating system and the maintainability of the
developed system.

The front-end part of the site is developing using HTML, CSS and java script
while the back end was developed using PHP
4.1.1. PHP: PRE-HYPERTEXT PROTOCOL

PHP: Hypertext Pre-processor (or simply PHP) is a general-purpose


programming language originally designed for web development. The
features of PHP include

Simple

It is very simple and easy to use, compare to other scripting language it is very
simple and easy, this is widely used all over the world.

Interpreted

It is an interpreted language, i.e. there is no need for compilation.

Faster

It is faster than other scripting language e.g. asp and jsp.

Open Source

Open source means you no need to pay for use php, you can free download
and use.

Platform Independent

PHP code will be run on every platform, Linux, Unix, Mac OS X, Windows.

Case Sensitive
PHP is case sensitive scripting language at time of variable declaration. In
PHP, all keywords (e.g. if, else, while, echo, etc.), classes, functions, and user-
defined functions are NOT case-sensitive.

Error Reporting

PHP have some predefined error reporting constants to generate a warning


or error notice.

Real-Time Access Monitoring

PHP provides access logging by creating the summary of recent accesses for
the user.

Loosely Typed Language

PHP supports variable usage without declaring its data type. It will be taken at
the time of the execution based on the type of data it has on its value.

4.1.2 HTML

Hypertext Markup Language (HTML) is the standard markup language for


documents designed to be displayed in a web browser. It can be assisted by
technologies such as Cascading Style Sheets (CSS) and scripting languages
such as JavaScript.

Web browsers receive HTML documents from a web server or from local
storage and render the documents into multimedia web pages. HTML
describes the structure of a web page semantically and originally included
cues for the appearance of the document.
The features of HTML include

Error Handling:

Error handling refers to the response and recovery procedures from error
conditions present in a software application. In other words, it is the process
comprised of anticipation, detection and resolution of application errors,
programming errors or communication errors. Error handling helps in
maintaining the normal flow of program execution. In fact, many applications
face numerous design challenges when considering error-handling
techniques.

nav

The nav element is used for the part of a website that links to other pages on
the site. The links can be organized a number of ways. Below, the links are
displayed within paragraph elements. An unordered list could also be used.

header

The header element can be used to group together introductory elements on


a website, such as a company logo, navigation items, and sometimes, a
search form.

4.1.3 CASCADING STYLE SHEET (CSS)

Cascading Style Sheets (CSS) is a style sheet language used for describing the
presentation of a document written in a markup language like HTML. CSS is a
cornerstone technology of the World Wide Web, alongside HTML and
JavaScript.

CSS is designed to enable the separation of presentation and content,


including layout, colors, and fonts. This separation can improve content
accessibility, provide more flexibility and control in the specification of
presentation characteristics, enable multiple web pages to share formatting
by specifying the relevant CSS in a separate .CSS file, and reduce complexity
and repetition in the structural content. The features of CSS include

Accessibility: CSS allows precise control over spacing, alignment and


positioning. Authors can thereby avoid "tag misuse" CSS also provides more
precise control over the display of alternative content than HTML alone.

Easily maintainable: If you are intended to make any global change, simply
change the styling and you can see all other elements in all other webpages
getting automatically updated.

CSS is time-saving: You can just write the script once and reuse the same
sheet as much time as you want.

Superior styles to native front end: CSS have comparatively a much wider
array of attributes and list if compared to HTML. Therefore the HTML page
can have a brighter look and feel if compared to the normal HTML attributes.

Ease with Search Engines: CSS is considered as a very convenient and an easy
to read styling sheet. This means, that the search engines don’t have to put in
a lot of efforts in trying to read the text.
Efficient cache storing: CSS can be used to store the web applications locally
with the help of offline cache mechanism which can be used to view the offline
websites.

4.1.4 JAVASCRIPT

JavaScript often abbreviated as JS, is a high-level, interpreted scripting


language that conforms to the ECMAScript specification. JavaScript has curly-
bracket syntax, dynamic typing, prototype-based object-orientation, and first-
class functions.

Alongside HTML and CSS, JavaScript is one of the core technologies of the
World Wide Web. JavaScript enables interactive web pages and is an essential
part of web applications. The vast majority of websites use it, and major web
browsers have a dedicated JavaScript engine to execute it. The Features of
Java Script

 JavaScript is a object-based scripting language.


 Giving the user more control over the browser.
 It Handling dates and time.
 It Detecting the user's browser and OS,
 It is light weighted.
 JavaScript is a scripting language and it is not java.
 JavaScript is interpreter-based scripting language.
 JavaScript is case sensitive.
 JavaScript is object-based language as it provides predefined objects.
 Every statement in JavaScript must be terminated with semicolon (;).
 Most of the JavaScript control statements syntax is same as syntax of
control statements in C language.
 An important part of JavaScript is the ability to create new functions within
scripts. Declare a function in JavaScript using function keyword.

The system is logically divided into two (2). They are

a) The web store/ e-shop with web application (Art world solution Limited
customers interface)

b) The Database

4.2.1 Home

It is the welcome page of the website, having all the feature options of the website. Figure

Figure 1 Homepage
4.2.2 Registration

This is the registration website, where voters, candidates, and self-registrants can do so. To

the best of their knowledge, everyone must enter some fundamental information.All data

entered on the website is saved in the relevant database without regard to the voters'

proximity to one another. For instance, service members who are stationed overseas can

vote online.

Figure 2. Voter Registration Page

4.2.3 Login

Logging in as an Admin saves this information to the database and sends it to the electoral

commission after you register on the website. The user's unique USERNAME and
PASSWORD generated upon registration are used to log in to the website. In the event that

a user forgets their password, they can choose the FORGOT PASSWORD option.

Candidate

Login: After registration candidate can see his/her profile and can edit his/her profile. The

candidate has facilitated with all the latest news update regarding election.

Figure 3. admin Login Page Image here


4.3 Form input and Reports Design
The UNIPORTVS is a system developed to offer an interactive mechanism between

the user at the interface and the database using the web-browser. This tool enables a

user through a web browser to interact with the MYSQL database to enter, edit, view

and retrieve such data as per the privileges granted. These forms were also kept as

short and simple as possible for easy public awareness on the use of the tool; some

of the forms and report interfaces created include the following:


User/Voter Registration Form
This form can be accessed by registration officer only and the student data that will

be accepted must have a valid student admissions number. The system administrator

can also be able to access the form.

Figure16.User/Voter Registration Form

User Login Form


This is where a new user/voter starts; the individual is required to provide a voter ID

which was generated automatically by the system and password which he/she filled

in when registering as a voter. When this is provided the system validates the user If

the entered information tallies with what is in the database. He/she is then logged in

otherwise the voter/user isn’t logged in.


Figure17.User Login Form

Testing
The UNIPORTVS was tested on the Google Chrome web browser by the developer.

The developer ensured all the system requirements were available and then the

testing commenced. The system was hosted locally in the computer on the Xampp

web server.

The key capabilities of the system were put into testing. In this case they included;

 The ability to login into the system as the admin or the user.

 The ability to register as a user.

 The ability to view the current polls and vote as a user.

 The ability to manage the profile as the user.

 The ability to manage administrators as the admin.

 The ability to add and remove positions as the admin.

 The ability to add or remove candidates as the admin.

 The ability to view the poll results as the admin.


All the above functions were put to testing by the developer.

User logged in page


This is the first page that the user/students encounter once he/she is logged into the

UNIPORTVS. It is also the homepage of the user panel.

Figure18.User logged in page

Current Polls Page


This page provides the user with the capability of viewing what polls are available

and also acts as the voting page where students can click on a position on the drop

down menu and view the candidates, then choose the candidate they would like to

vote for.
Figure19. Current Polls Page

User Profile Management Page


A user of the UNIPORTVS can be able to manage their profile in this page. It offers

functions such as updating the email address and also changing the password.

Figure20. User Profile Management Page


Admin Logged in page
This is the first page that the admin encounters once they login into the UNIPORTVS.

Figure21. Admin Logged in page

Manage Positions Page


This page ensures that the admin is able to add or remove positions that are to be

contested in the election.


Figure22. Manage Positions Page
Manage Candidates Page
This page enables the admin to add or remove the candidates that are contesting in the
election.
Figure23.Manage Candidates Page
Manage Administrators Page
The admin is able to add more administrators into the UNIPORTVS system in this page.

Figure 24. Manage Administrators Page


View Results Page
This page enables the admin to view the results of all the elections by selecting each

and every position to view which candidate won the position.

Figure25.View Results Page

Results
For results gathering purposes, the developer created a user and an admin account to

demonstrate how the UNIPORTVS displays the outputs in order to decide which

candidate wins the election. The accounts that were created had the following

details:-

Admin

Email – [email protected]

Password – admin

User

Email – [email protected]

Password– user
Voting Process
Once a user/student creates an account successfully in the UNIPORTVS, he/she is

then allowed to login. Once logged in, the user should click the “current polls”

panel in order to view the current contesting candidates and then cast his/her vote on

the same page... For testing purposes, we choose the candidates contesting on the

Chairperson’s seat.

Figure26. Voting Process

The candidates available were only two so the user in this case chooses “Brendan

Odoh”. Once the vote is cast, the action cannot be re-done or re-edited.
Vote Tallying
Vote tallying is done by the administrator. The admin logs in the system with the

details above

andnavigatestothe“PollResults”page.Theadminchooseswhichpositionhe/

shewouldliketo know the results of. In this case, the developer chooses the

“Chairperson”.

Figure27. Vote Tallying

The admin can now be able to view the total votes cast and he/she cannot be able to

change the data on the poll results.


CHAPTER FIVE
CONCLUSION, RECOMMENDATIONS AND FUTURE WORK

Conclusion
In this people, we have illustrated and identified the need to have an electronic

voting system that systematically enables a student of a particular university to cast

his/her vote through internet without going to voting booth and additionally

registering himself/herself for voting in advance. As discussed, the UNIPORTVS

will be able to bridge the gap where students usually line up to vote for their

preferred candidates in university elections by enabling them to vote online. The

organizers of the election too will not have to tally the results manually as the

UNIPORTVS has the capability of tallying the results electronically and the

organizers of the election will only access the UNIPORTVS in order to view which

candidate won the election.

The using of online voting has the capability to reduce or remove unwanted human

errors. In addition to its reliability, online voting can handle multiple modalities,

and provide better scalability for large elections in universities and also local

elections. This will ensure that students in universities are provided with an

electioneering process where they can elect their union leaders in a democratic

manner. The system presented in this project paper offers a solution to many

problems such as voter bribery, ballot stuffing, voter fraud and rigging which are

prevalent in democratic process which utilize paper-based voting.

The results gathered by this paper illustrate that the UNIPORTVS can be utilized

effectively in providing a solution for learning institutions in the country. The

human resource that is injected in conducting the elections will be reduced. The
verification of the election can easily be conducted
If a candidate is not satisfied but errors in the voting process are not likely to occur

due to the security features provided by the UNIPORTVS.

Although the system was developed with no significant emergence of errors, the

developer faced some challenges in the development of the registration form that

enables users to be registered in the UNIPORTVS. The developer was not able to

provide an external file containing the admission numbers of students which the

system is supposed to counter-check with when registering new students/users. This

challenge occurred because the UNIPORTVS was locally hosted on a computer

rather than when development of a web-based system is hosted online This

challenge though a bit significant could not affect the voting process as per the

regulations set that only students are able to cast their votes once the system is

online.

Web-based portals or systems provide a great opportunity to institutions and entities

which aspire to promote free and fair elections. The internet offers a wide range of

technologies discussed on this paper and others that are not that are utilized in

developing a web-based or a

standalonesystemofvotingthatcanbeusedinuniversitiesorevencanbeextended to

national politics level by countries in the developing world with some modification.

Recommendations and Future Work


The objectives of this project was to review the existing/current system of voting in

universities in Kenya and to also provide a solution that can enhance and promote

fairness in elections that are held in universities rather than continue using the existing

system which is regularly marred with irregularities in the voting process. This study
therefore adopts the decision that learning

institutionsinKenyaandbeyondshouldensurethattheyinstalltheUNIPORTVSintheirschool

sinorder to enhance credibility of the elections. The project illustrates that the

UNIPORTVS can be used by any university which wishes to adopt an electronic means

of voting. The UNIPORTVS therefore can be use In each union body elections that are

held in universities to avert any contention and manipulation results through acts such as

voter bribery, voter fraud and ballot staffing.

The practicable futures cope of the project includes the improvement in the
security level of the system. This will ensure that errors that are likely to occur
especially during the verification of voters are futile. Also, due to the adoption of
smart phones especially by university students, a mobile application version of
the UNIPORTVS can be developed on the main operating systems i.e. Android and
iOS as mobile apps tend to respond faster that web application as most data on
mobile applications is stored locally on the mobile devices whereas web
applications store their data on web servers. For this reason, data retrieval
happens much faster on mobile applications than on web applications. Moreover,
with the advancement in technologies, biometric measures such as face and
finger print recognition algorithms could be applied to enhance security and
improve credibility of online voting systems.

You might also like