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

1

Declaration
I hereby declare that this research project on the electronic voting system at the Catholic
University of East Africa in Kenya is my original work. I affirm that I have adhered to the ethical
principles and guidelines for research in my data collection, analysis, and reporting.

I further declare that all sources of information and materials used in this research have been
appropriately acknowledged and referenced. I affirm that no part of this research has been
plagiarized, and that all statements and findings presented in this report are true and accurate to
the best of my research.

I acknowledge that the Catholic University of East Africa has granted us access to their network
infrastructure and resources, and I have used these resources solely for the purpose of this
research project. I affirm that I have adhered to the university's policies and regulations regarding
the use of these resources.

I also declare that any opinions, recommendations, or conclusions presented in this research
report is solely my own, and do not necessarily reflect the views of the Catholic University of
East Africa, the research team members, or any other organization or individual associated with
this study.

Finally, I acknowledge that this research project has been conducted in accordance with the
guidelines and standards of academic research, and that it has contributed to the body of
knowledge on electronic voting systems in higher education institutions in Kenya. I affirm that I
am committed to the continued improvement and advancement of research in this field, and to
promoting the use of electronic voting systems as a viable and effective means of conducting
elections in various institutions.

2
Acknowledgments:

I would like to express our sincere gratitude to everyone who contributed to the success of this
research project on the electronic voting system at the Catholic University of East Africa in
Kenya.

First and foremost, we would like to thank the university administration, particularly the
management of the IT department, for their support throughout the research process. I Am
grateful for their cooperation in providing us with the necessary resources, including access to
the university's network infrastructure, to facilitate the implementation of the electronic voting
system.

I would also like to extend our heartfelt appreciation to the students, staff, and election officials
who participated in this study. Their valuable insights, feedback, and cooperation were
instrumental in the successful research of the electronic voting system. We are thankful for their
willingness to share their experiences and perspectives with us, which greatly contributed to the
quality of this research.

We are also grateful to the research team members for their hard work, dedication, and
commitment to the project. Their contributions, including their expertise in research methods,
data analysis, and technical skills, were invaluable in the development and implementation of
the electronic voting system.

Finally, we would like to acknowledge the support and encouragement of our families and
friends. Their unwavering support and encouragement throughout the research process were
invaluable in keeping us motivated and focused on achieving our objectives.

We extend our sincere appreciation to all those who contributed to this research project, directly
or indirectly. Your support was essential to the success of this study, and we are grateful for
your contributions.

3
Abstract:
Electronic voting systems have gained significant attention as an efficient and effective way of
conducting elections in Catholic University of East Africa. This research project aims to design
and implement an electronic voting system for the Catholic University of East Africa in Kenya.
The study will use a mixed-methods research approach to gather data on the current election
process, assess the feasibility of implementing an electronic voting system, and evaluate its
effectiveness.

The research will begin with a literature review to explore the benefits and challenges of
electronic voting systems. Data will be collected through surveys and interviews with students,
staff, and election officials to understand the current voting process, identify potential
challenges and opportunities for improvement, and determine the requirements for the electronic
voting system.

Based on the findings, the electronic voting system will be designed and implemented using
appropriate technologies, such as secure servers, authentication protocols, and encryption
algorithms. The effectiveness of the system will be evaluated by comparing the results of the
electronic voting system with those of the traditional paper-based system. The study will also
assess the user experience of the electronic voting system and the perceptions of the stakeholders
involved.

The research project is expected to contribute to the body of knowledge on electronic voting
systems in higher education institutions in Kenya, and provide solution into the challenges and
opportunities for implementing such systems. The project will also offer practical
recommendations for improving the election process at the Catholic University of East Africa,
and provide a blueprint for other institutions interested in implementing electronic voting
systems.

4
Table of Contents
Declaration.................................................................................................................................................2
Acknowledgments:....................................................................................................................................3
Abstract:.....................................................................................................................................................4
CHAPTER 1:.............................................................................................................................................6
1.1 INTRODUCTION...........................................................................................................................6
1.2Motivation & background................................................................................................................6
Background of Research:......................................................................................................................7
Problem statement.................................................................................................................................8
Aim of research......................................................................................................................................9
Research Objective:...............................................................................................................................9
Justification of research........................................................................................................................9
Scope of Research:...............................................................................................................................10
Research organization.........................................................................................................................11
Chapter 2: Methodology.........................................................................................................................14
2.1 Overview.........................................................................................................................................14
2.2 Methodology for literature review................................................................................................14
2.3 Methodology for requirement specification, data collection and analysis techniques..............15
2.4. Technical Research.......................................................................................................................16
2.4.1. Fingerprint Recognition............................................................................................................17
2.4.2. Fingerprint Classification....................................................................................................17
2.5. Project Process Chart:..................................................................................................................19
2.6. Software Development Methodology.............................................................................................20
2.6.1. Software Model:...............................................................................................................20
2.6.2. RAD Model:.....................................................................................................................20
2.6.3. RAD Phases:...........................................................................................................................21
2.7. System Components:...............................................................................................................22
2.7.1. Hardware:..............................................................................................................................22
2.7.2. Software:................................................................................................................................23
2.8. Components Specification:......................................................................................................25
2.9. System Design:.........................................................................................................................25

5
2.9.1. System Architecture:.............................................................................................................26
2.9.2. System Development:............................................................................................................31
2.10. System Functionality:.........................................................................................................32
2.10.1. Overview:.............................................................................................................................32

6
CHAPTER 1:
1.1 INTRODUCTION
1.2Motivation & background
The conduct of free, fair and transparent elections is essential to the democratic process in any
society. In higher education institutions, such as the Catholic University of East Africa in Kenya,
elections play a crucial role in the governance and decision-making processes. However, the
traditional paper-based voting system used in most institutions is often characterized by
challenges such as low voter turnout, long queues, ballot stuffing, and other forms of electoral
malpractices.

In recent years, electronic voting systems have emerged as a viable alternative to traditional
paper-based systems. These systems offer numerous benefits, including increased accuracy,
speed, transparency, and security. Electronic voting systems have been implemented in several
countries, including the United States, Brazil, India, and Ghana, and have been found to be
effective in improving the election process.

In Kenya, electronic voting systems have been piloted in various national elections, and have
been found to be effective in reducing electoral malpractices and increasing voter turnout.
However, there has been limited research on the use of electronic voting systems in higher
education institutions in Kenya.

This research project aims to address this gap by designing and implementing an electronic
voting system for the Catholic University of East Africa. The project will use a mixed-methods
research approach to gather data on the current election process, assess the feasibility of
implementing an electronic voting system, and evaluate its effectiveness.

The project's findings are expected to contribute to the body of knowledge on electronic voting
systems in higher education institutions in Kenya, and provide insights into the challenges and
opportunities for implementing such systems. The project will also offer practical
recommendations for improving the election process at the Catholic University of East Africa,
and provide a blueprint for other institutions interested in implementing electronic voting
systems.

7
Overall, this research project is motivated by the need to improve the election process in higher
education institutions in Kenya, and to promote the use of electronic voting systems as an
efficient and effective means of conducting elections.

Background of Research:
The Catholic University of East Africa (CUEA) is a private university located in Nairobi, Kenya.
The university has a student population of over 6,000 undergraduates, 2000 post graduates and
its governance structure involves the election of various officials, including student
representatives, to lead the student body. The current paper-based voting system used by the
university has been criticized for its inefficiency, lack of transparency, and susceptibility to
electoral malpractice.

In recent years, electronic voting systems have been developed as a potential solution to these
challenges. Electronic voting systems use electronic devices to capture, store, and count votes.
These systems offer several advantages over paper-based voting systems, including increased
accuracy, faster vote counting, reduced costs, and improved transparency.

However, the implementation of electronic voting systems has also faced several challenges,
including technical difficulties, security concerns, and legal and regulatory issues. Therefore, it is
essential to assess the feasibility of implementing an electronic voting system at CUEA and
determine the potential benefits and challenges associated with such a system.

Several studies have examined the use of electronic voting systems in various contexts, including
academic institutions. A study by Ahmed and Tawfik (2020) investigated the implementation of
an electronic voting system in a university in Egypt and found that the system was more
efficient, accurate, and cost-effective than the traditional paper-based voting system.

Another study by Wang et al. (2020) examined the implementation of an electronic voting
system in a Chinese university and found that the system improved the transparency and integrity
of the electoral process, reduced the time required for vote counting, and increased voter
participation.

However, other studies have highlighted the potential challenges associated with electronic
voting systems. A study by Moyo and Van der Merwe (2021) examined the implementation of
electronic voting systems in African countries and found that technical difficulties, security

8
concerns, and legal and regulatory issues were significant challenges that needed to be addressed
to ensure the successful implementation of such systems.

Given the challenges associated with the current paper-based voting system at CUEA, the
implementation of an electronic voting system could offer several benefits, including increased
efficiency, accuracy, transparency, and reduced costs. However, it is crucial to assess the
feasibility of implementing such a system and identify potential challenges that may arise. The
findings of this research project will provide valuable insights into the potential benefits and
challenges associated with electronic voting systems and provide recommendations on how to
implement such a system effectively.

Problem statement
The current paper-based voting system used in Catholic University of East Africa (CUEA),
Kenya, has several limitations that undermine the integrity of the election process. These
limitations include ballot box stuffing, vote buying, and long wait times to count votes.
Additionally, the manual vote counting process is prone to errors and may discourage some
students and staff from participating in the voting process. Therefore, there is a need to
investigate the feasibility and effectiveness of implementing an electronic voting system in
CUEA to address these issues and improve the transparency, accuracy, and efficiency of the
election process. The research project aims to assess the current system of voting in CUEA,
review the literature on electronic voting systems in academic institutions, identify the
requirements for implementing an electronic voting system in CUEA, develop a prototype of the
electronic voting system, test it in a simulated environment, evaluate its effectiveness, and
identify any challenges or limitations associated with its implementation.

Aim of research
The aim of this research project is to investigate the feasibility and effectiveness of implementing
an electronic voting system in Catholic University of East Africa (CUEA), Kenya. The study will
assess the current system of voting in CUEA, review the literature on electronic voting systems
in academic institutions, identify the requirements for implementing an electronic voting system
in CUEA, develop a prototype of the electronic voting system, test it in a simulated environment,
evaluate its effectiveness in terms of transparency, accuracy, and speed of vote counting, and

9
identify any challenges or limitations associated with its implementation. The overall goal is to
provide recommendations for the successful implementation of an electronic voting system in
CUEA that will improve the integrity of the election process and enhance the participation of
students and staff in the voting process.

Research Objective:
The expectations, objectives and aims to achieve through the E-voting system are:

 The aim is to develop an efficient and easy prototype of android based E-voting system
that provide secure election process and build trust in people regarding this technology
and improve voter confidence or experience.
 Prevention of rigging in polling station during the calculation of results by reducing
human interference.
 Reduced the whole budget of election process, such as the amount consumed in
production and distribution of election accessories e.g. ballot papers, ballot boxes, voter
cards etc.
 Another goal is to help the election management regarding calculation and verification
such as fast counting of votes and verification of voters.

Justification of research
Electronic voting systems have gained popularity in recent years due to their ability to provide a
more efficient and transparent voting process. Catholic University of East Africa in Kenya has
been using the online-based voting system for years, which has several limitations. Therefore,
the implementation of an electronic voting system can significantly improve the election process.

The purpose of this research project is to evaluate the feasibility and effectiveness of
implementing an electronic voting system in Catholic University of East Africa in Kenya. This
study will provide insights into the advantages and disadvantages of an electronic voting system
and its potential impact on the election process.

There are several reasons why this research project is necessary. Firstly, the online-based voting
system has several limitations, including the possibility of fraud, time-consuming process, and
high cost. Secondly, an electronic voting system has the potential to improve the accuracy and

10
transparency of the voting process, as it can prevent fraudulent activities and provide immediate
results.

Thirdly, the implementation of an electronic voting system can improve the participation rate
among the student population. With the growing use of technology among the youth, the
introduction of an electronic voting system may encourage students to participate in the election
process. Fourthly, the implementation of an electronic voting system can significantly reduce the
workload of the election officials, as it eliminates the need for manual counting of votes.

Overall, the implementation of a electronic voting system in Catholic University of East Africa
in Kenya can bring several benefits, including improved efficiency, transparency, and
participation. Therefore, this research project is necessary to evaluate the feasibility and
effectiveness of implementing an electronic voting system in Catholic University of East Africa
in Kenya.

Scope of Research:
The scope of this research project on an electronic voting system in Catholic University of East
Africa in Kenya is to evaluate the feasibility and effectiveness of implementing an electronic
voting system. The study will focus on the following aspects:

Analysis of the existing voting system. The research will analyze the current voting system used
in Catholic University of East Africa in Kenya to identify its limitations and potential areas of
improvement.

Evaluation of the electronic voting systems. The research will evaluate various electronic voting
systems and their applicability to Catholic University of East Africa in Kenya. The evaluation
will be based on factors such as cost, efficiency, security, and ease of use.

Identification of requirements. The research will identify the requirements for implementing an
electronic voting system in Catholic University of East Africa in Kenya. This includes hardware
and software requirements, security measures, training requirements, and support requirements.

Development of a prototype. The research will involve the development of a prototype electronic
voting system based on the identified requirements. The prototype will be tested to evaluate its
functionality and usability.

11
Evaluation of the effectiveness of the electronic voting system. The research will evaluate the
effectiveness of the electronic voting system by comparing it with the existing paper-based
system. The evaluation will be based on factors such as accuracy, transparency, and efficiency.

Assessment of the impact of the electronic voting system. The research will assess the impact of
the electronic voting system on the election process, including the participation rate, workload of
the election officials, and cost.

The scope of this research project is limited to Catholic University of East Africa in Kenya. The
findings of this study may not be generalizable to other institutions or settings. The research
project will use a mixed-methods approach, including surveys, interviews, and prototype testing,
to collect data. The data analysis will be conducted using appropriate statistical and qualitative
methods.

Research organization
The Catholic University of East Africa (CUEA) is a leading private university in Kenya. As a
modern institution of higher learning, it is imperative that the university adopts an electronic
voting system to improve the efficiency, transparency, and security of its voting process. This
research project aims to study the feasibility, effectiveness, and security of an electronic voting
system for the CUEA.

Chapter 1: Introduction

Background of the Study

Problem Statement

Research Objectives

Significance of the Study

Scope and Limitations

Chapter 2: Literature Review

Overview of Electronic Voting Systems

12
Benefits and Challenges of Electronic Voting

Case Studies of Electronic Voting Implementations

Security Considerations in Electronic Voting Systems

User Acceptance and Adoption of Electronic Voting Systems

Chapter 3: Theoretical Framework

Theoretical Concepts and Models Relevant to Electronic Voting Systems

Application of the Technology Acceptance Model (TAM)

Other Theoretical Perspectives on Technology Adoption

Chapter 4: Research Methodology

Research Design and Approach

Data Collection Methods (e.g., surveys, interviews, observation)

Sampling Techniques

Data Analysis Techniques

Ethical Considerations

Chapter 5: System Requirements and Design

Functional and Non-functional Requirements of the Electronic Voting System

System Architecture and Components

Security Measures and Protocols

User Interface Design

Chapter 6: Implementation and Integration

System Development Approach (e.g., Agile, Waterfall)

Implementation Plan and Timeline

Testing and Quality Assurance

13
Integration with Existing University Systems (if applicable)

Chapter 7: Evaluation and Validation

Evaluation Metrics and Criteria

User Acceptance Testing

Assessment of System Performance and Security

Comparison with Traditional Voting Methods

Chapter 8: Results and Analysis

Presentation and Analysis of Collected Data

Findings and Insights from Data Analysis

Discussion of Results in Relation to Research Objectives

Chapter 9: Discussion and Interpretation

Interpretation of Findings

Comparison with Previous Studies and Literature

Discussion of Limitations and Challenges Encountered

Implications for Practice and Future Research

Chapter 10: Conclusion and Recommendations

Summary of Key Findings

Conclusions Drawn from the Study

Recommendations for the Implementation of the Electronic Voting System

Contribution to Knowledge

Areas for Future Research

14
Chapter 2: Methodology
2.1 Overview
This chapter describes the detail work on the project that what methodologies are used to achieve
the progress of E-voting system. This section describes the framework, functionalities,
challenges, requirements and specifications that are required to implement on this system. This
chapter also demonstrates the overall tools, design, planning, implementation and the whole
process and its work flow. Generally, this chapter describes the core development of the whole
E-voting application.

2.2 Methodology for literature review


The methodology for a literature review on electronic voting systems at the Catholic University
of East Africa in Kenya can be broken down into the following steps:

Identify the research question. The first step will be conducting a literature review to clearly
define the research question. In this case, the research question could be: "What are the
advantages and disadvantages of electronic voting systems and how have they been implemented
in Kenya?"

Develop a search strategy. Once the research question has been defined, the next step will be to
develop a search strategy. This includes identifying relevant keywords and phrases related to
electronic voting systems and catholic university of Kenya. Relevant databases and search
engines, such as Google Scholar, can also be identified.

15
Conduct a systematic search. Using the search strategy developed, conduct a systematic search
of relevant literature. This includes academic articles, books, reports, and other relevant sources.
It is important to document the search process to ensure transparency and replicability.

Evaluate the literature. Once the literature has been identified, it needs to be evaluated to
determine its relevance and quality. This includes assessing the credibility of the source, the
methodology used in the research, and the findings.

Analyze the literature. After evaluating the literature, the next step is to analyze the findings.
This includes identifying common themes, trends, and patterns in the literature.

Synthesize the literature. The final step in conducting a literature review is to synthesize the
findings. This involves summarizing the key points and themes from the literature and
identifying any gaps or inconsistencies.

Overall, a literature review on electronic voting systems at the Catholic University of East Africa
in Kenya should follow a systematic and transparent process to ensure that the findings are
credible and relevant to the research question.

2.3 Methodology for requirement specification, data collection and analysis


techniques
The methodology for requirement specification, data collection, and analysis techniques for a
research study on the electronic voting system at the Catholic University of East Africa in Kenya
can be structured as follows:

Requirement Specification. The first step in the study is to determine the requirements and
objectives of the research. This includes identifying the purpose of the research, the specific
questions to be answered, the scope of the research, and the target audience. The requirements
will be clearly defined and documented to guide the data collection and analysis process.

The next step is to collect relevant data from various sources. This will be done through a
combination of primary and secondary data collection methods. Primary data will be collected
through surveys, interviews, and observations of the voting system in use. Secondary data will be
gathered through literature reviews, reports, and documentation related to electronic voting
systems.

16
After collecting the data, the next step is to analyze it using appropriate data analysis techniques.
This will involve organizing and interpreting the data to identify patterns, trends, and insights.
Techniques such as statistical analysis, content analysis, and thematic analysis will be used to
analyze the data.

It is important to ensure the quality and validity of the data collected and analyzed. This will be
done through methods such as cross-checking the data with other sources, validating the findings
with experts, and ensuring the reliability and consistency of the analysis.

The final step is to report and disseminate the findings of the research. This includes preparing a
comprehensive report outlining the research objectives, methodology, findings, and
recommendations. The report will be presented in a clear and concise manner and will be
accessible to the target audience.

Overall, the methodology for requirement specification, data collection, and analysis techniques
for a research study on the electronic voting system at the Catholic University of East Africa in
Kenya will be well-planned, systematic, and transparent to ensure the validity and reliability of
the findings

4.2 Data Flow Diagram


DFD: Level 0
DFD Level-0
The above diagram is a 0-level
DFD that only shows the flow
of data between the various and
17
the system. In online voting
system the Administrator is the
controller of the system and all
the
decisions are made by him. The
Administrator can handle the
entire voter and their details,
voting details etc. and view
details of them and he can
update that detail also.
2.4. Technical Research
The technical research is a core process related to E-voting system components such as the
programming language, user interface, fingerprint algorithms and fingerprint classifications etc.
Fingerprint is an emerging technology many researchers and developers came up with different
algorithms for the fingerprint matching and identification process. There are some important
factors to consider for achieve the implementation and desire goal of the fingerprint based E-
voting application. So here are some technical research and classification are as follows:

2.4.1. Fingerprint Recognition


Biometrics consider as a vital component used as a personal authentication and identification.
Biometric identification can be done by the fingerprint recognition, eye recognition and face

18
recognition and also by speech characteristics. One of the most major biometric processes is the
usage of fingerprint. Fingerprint recognition known as the electronic method of verifying or
identifying fingerprint images. It is a very complex issue, because of difference in unique
impressions in the same finger. Therefore, the fingerprint matching is a big problem. There are
two approaches used in fingerprint recognition systems are: verification mode and identification
mode. There are some techniques used to make the identification and verification process faster.
These techniques called fingerprint indexing and classification technique.

2.4.2. Fingerprint Classification


The fingerprints are categorized into three classes upon their visual patterns are: arches, loops
and whorls. Each class is split into smaller classes. The first type is known as loop fingerprint, it
also has two types, ulnar loop and radial Loop. Arch is the second type of fingerprint, it is
subdivided into two types tented arch and plain arch. The third type of fingerprint name as whorl
this type divided into central pocket whorl and plain whorl. These figures below show the
different types of fingerprints:

4.2 Data Flow Diagram


DFD: Level 0
DFD Level-0
The above diagram is a 0-level
DFD that only shows the flow
of data between the various and

19
the system. In online voting
system the Administrator is the
controller of the system and all
the
decisions are made by him. The
Administrator can handle the
entire voter and their details,
voting details etc. and view
details of them and he can
update that detail also.

Plain Arch Tented Arches


Ridges enter on one side and Similar to the plain arch, but
exit on other side. has a spike in the center.

Delta

20
Ulnar Loop (right thumb) Radial Loop (right thumb)
Loop opens toward right or Loop opens toward left or the
the ulna bone. radial bone.

Plain whorl Central Pocket


whorl

FIGURE: 2.1 Types of Fingerprints

The lines on a finger are known as ridges. The characteristic of ridges which belongs to a
fingerprint are recognized as minutiae, the minutiae are basically bifurcation, dot and ridge
ending. Bifurcation can identify when a ridge split into two different ridges. The ridge break
point called as the ridge ending. While the small ridge is known as dot (or island). In
identification process these three types of features are very essential because the algorithms
which are making comparisons are based on these features. These figures below show the
different types of fingerprint features or minutiae.

Ridge Ending Bifurcation Dot (or Island)


FIGURE: 2.2 Identification Character
Generally, the process by which the fingerprint is determined is known as minutiae matching
technique. The extraction of minutiae features requires a multiple process which are shown
below:

Orientation Ridge Binarization


Field Estimate
21

Minutiae Minutiae Thinning


FIGURE: 2.3. Block Diagram of Minutiae Method
Here are the images below shows the fingerprint at initial process and after computation process.

Input Image Binarization Image


FIGURE: 2.4. Image Enhancement through Computation

2.5. Project Process Chart:


The flow chart has been used to simplify the understanding. The flowchart basically a diagram
consists of symbols to show the flow of the whole project process. All the steps should be
executed in order to attain the final result of the project. The below chart shows the project
process:

Start

Software System Hardware


Research Designin Research
g

Software Assemble
Development Hardware

System
Testing

22
Testin
NO Troubleshooting
g
YES

Verification &
Validation

End

FIGURE: 2.5Project Process Flowchart

2.6. Software Development Methodology


In software engineering, a software development process is a division of work into phases that
containing activities, with better management and planning. The phases include the pre-define
activities that are completed by a team to developed or maintain the application. Common
software models include are: waterfall model, iterative and incremental model, prototyping
model, spiral model, V-model, rapid application development model, extreme programming
model and different types of agile methodology.

2.6.1. Software Model:

The software model, which is used in the development of an android based E-voting application,
is a RAD model (Rapid Application Development). This model is used because of rapid
prototyping. The detail about the RAD model and its phases are defined below:

2.6.2. RAD Model:


Rapid Application Development is a technique that speeds up the development process and
produces the functional system. RAD model is a complete methodology consists of four phases
which uses a CASE tool for prototyping and combine high-level development tools and
techniques in development. The RAD process allows to analyzing the model early as possible
and recommending changes to meet the requirements of the system. RAD is mostly used to

23
reduce the development time and cost and also used to increase the productivity of an application
or software.

2.6.3. RAD Phases:


The RAD model based on four phases which are:

Requirement
Planning

User Construction
Design

Cutover

FIGURE: 2.6. RAD Model Diagram

2.6.3.1. Requirement Planning:


This phase combines the elements of system analysis, system planning and system requirements.
This phase known as concept definition stage and determines the system scope. This phase also
briefly defines the system components which is used in the development of an application or
software.

2.6.3.2. User Design:


This Phase interacts with the prototypes and models that represent the entire systems
environment and processes. This phase uses CASE tools and JAD techniques to translate needs
into model. This phase is a continuous interactive operation and recognized as a functional
design stage. Generally, this phase is used to build a design and working model of critical system
components.

24
2.6.3.3. Construction:
Construction phase starts when the process of developing the system model and designing the
interface is completed. This phase focuses on application development tasks and also known as
the development stage. This phase also allows to suggest improvements or changes that are
developed. This phase generally based on coding unit, system testing and integration testing.

2.6.3.4. Cutover:
This phase resembles as implementation phase or deployment stage consists on over all testing,
data flow conversions, user training and also the implementation of an application system.
Compare with other methods and models the whole process is compressed and as a result: the
system is developed, delivered and placed in working environment.

2.7. System Components:


There are many types of components are used in making a prototype model of different
electronic voting systems. This prototype is the result of the software and hardware integration.
The prototype also shows the architecture, elements and components of the system. In order to
design and develop an E-voting system, an extensive research must be completed to find the
suitable hardware and software that is capable to meet the system requirements and also be well
organized and integrated. There are some technical requirements which have to be considered
during developing an application and also when integrating an application with the hardware. In
order to make the report more informative and elaborated the detailed hardware and software
components are described below:

2.7.1. Hardware:
The hardware components which are going to be used in the development of the system are
select according to the requirements to get better result. These components are:
3.7.1.1. Fingerprint Scan Device (SecuGen Hamster Plus):

SecuGen Hamster Plus device can be used for identification, authentication and verification
functions that certify the fingerprints to act as a digital password. SecuGen is a versatile
fingerprint reader, with Smart Capture and Auto-On features. It also includes the encryption of
fingerprint template. Hamster scanner is built with the advanced optical sensor using Surface
Enhanced Irregular Reflection (SEIR) fingerprint technology. Auto-On feature is an Automatic

25
Finger Placement Detection technology that scans the finger as it touches the sensor. Smart
Capture feature maintain the quality of fingerprint scanning of difficult fingers. It supports
different operating systems such as windows 7 and above, Windows Server 2012, 2008 R2,
Linux, Java and android 3.1 and above.

2.7.1.2. Tablet PC:


Another core device going to be used in this project is Tablet PC. This tablet PC must have high
specifications in order to handle the application functionality and operations efficiently. To work
combine with the fingerprint scanner tablet must have an android version 3.1 known as
Honeycomb and above and also have the feature of USB hosting for connect the USB cable
devices like fingerprint scanner directly to the tablet. The Samsung Galaxy Tab 4with 10.1-inch
screen (1280 x 800 resolution) display, running at 1.2GHz processor and 2 GB of RAM and
based on Android version 4.4 KitKat going to be used in this project.
2.7.2. Software:
An Android Application based, E-voting system’s hardware is useless without integration and
implementation of software in it, So Different types of software are used to operate or develop
the E-voting application are:

2.7.2.1. Android Studio:


Android Studio is an official I.D.E (Integrated Development Environment) for Android apps
development which is based on Jet Brains’ IntelliJ IDEA software. It was introduced on May
2013 at the Google I/O conference. Availability of android studio is free under the Apache
License 2.0. Android studio offers more features like developer tools, powerful code editor,
testing tools and frameworks etc. which enhance the productivity in the development of an
Android application. It is available for Mac OS X, Windows and Linux and also replaced Eclipse
Android Development Tool (ADT) which is used in early stages for android apps development.
The official supportive programming language for android studio is JAVA. The current android
studio version 2.2.2 is used in this project for the development of an android application.

2.7.2.2. SDK (Software Development Kit):

Fingerprint scanner SDK is advanced feature minutiae-based fingerprint recognition kit that
allows developers to add fingerprint verification functionality into different applications. Each
scanner device has different SDK’s based on different operating system. Android SDK of
26
SecuGen hamster plus device is used in this project. SDK functionality allows reading
fingerprints from scanners and performing fingerprint verification. SDK contains fingerprint
authentication algorithm for fingerprint Matching and for Fingerprint Feature Extractor. The
main purpose of SDK is to integrate the scanning device with the tablet and with application.
Generally, the SDK is the most important software component for the project.

2.7.2.3. Adobe Photoshop:


Adobe Photoshop is a raster image maker and graphics editor developed by Adobe
Systems for Windows and Mac OS. It is currently a licensed software. It can compose and
edit raster images in multiple layers and supports alpha compositing masks tools and various
color models. Adobe Photoshop has a wide support for graphic file formats such as PSD, PSB,
JPEG and PNG etc. In addition to raster graphics, it has many abilities to render text, make 3D
graphics or videos and vector graphics etc. The Photoshop version 7.0 is used in the project for
making GUI designs such as splash screens, login boxes, background interface etc. It is also the
important component because the graphical images help to communicate easily with the
application.

2.7.2.4. SQLite Database:


SQLite is a free source database that stores data in a text file on a device. Android comes in with
built-in implementation of SQLite database. SQLite supports various relational database features.
The file format is android.database.sqlite that contains the classes to manage the database
information. It is widely deployed database engine and used by different browsers, embedded
systems (such as mobile phones, tablets etc.) and operating systems. SQLite has also bindings to
different programming languages. The several version of SQLite database depends on the
android versions. The SQLite database is used in the project to store the different data and the
main purpose to choose this database is because of compatibility and easy handling of
information.

2.7.2.5. JAVA Programming Language:

Java Programming Language is an official language for Android apps Development. Java is a
computer programming language that is class-based, concurrent and object-oriented developed
by James Gosling in 1995 at Sun Microsystems and now owned by Oracle. Java was originally
called OAK. As of 2016, Java is one of the most famous programming languages and

27
in particularly use for client-server applications. The language derives from syntax of C++ and
C. The latest version is Java 8 and it is also known as a high-level language. JAVA language is
especially used in this project because it is efficient and provides more feasibility in the
development of an application.

2.8. Components Specification:


All the components specification is describing in this section. So here is the specification chart of
hardware and software used in development of E-voting system is as follow:

Specifications

Android Version is

Tablet PC 4.4KitKat, 2GB RAM


Hardware

Fingerprint Scan Device Secugen Hamster Plus

IDE Android Studio V.2.2.2

Database SQLite
Software Android

Fingerprint scan Device SecuGenSoftware

Integration Kit Development kit (SDK)

Layout Designing Adobe Photoshop 7.0

TABLE: 2.1. Software and Hardware Components Specification


2.9. System Design:
The system designing process starts when the research has been completed about the components
that will be used in the development of an application to achieve the task. The design of the E-
voting system contain hardware which is the fingerprint scan device and tablet that going to

28
operate the voting application and software will control or manage the verification, identification
and the voting process. All the components of the system have to be integrated well together to
achieve the task. The JAVA programming language is used in order to build an entire
application. The figure below shows the process of system designing:

Research and
Study

Planning

Programming
Troubleshooting

Testing
NO

YES

Finalize and
Complete
FIGURE: 2.7. System Design Flowchart
System designing is divided into two parts which are system architecture and system
development. Architecture part shows the conceptual overview of the main parts of the system
while the development part shows the functional overview of the system. Both parts are briefly
describing below:

2.9.1. System Architecture:


In the system architecture section, block diagrams are created to show the main parts of the E-
voting system which also give a conceptual overview of the main software components that is
used in designing the application. This section also includes the flow chart to show the flow of
integrated system and also gives an overview on application interface design and layout.

2.9.1.1. Conceptual Overview of System:


The system consists of Control and ballot units. The control unit is designed using the JAVA
language and executed by the fingerprint scanner and Android tablet. The other unit called ballot
unit consists of Graphical pages that allows administrator to activate the voting process and also

29
allow voters to give the vote by choose the political symbol (candidate) by touch sensing screen
and all the information is stored in database.

Voter
Registration

Power Android Android Voter


Supply Device Application Verification False

True Warning

Voting Page
Database

FIGURE: 2.8. Conceptual Overview of E-voting System


2.9.1.2. Software Architecture:
Different software’s are used in this project in order to build the E-voting system based on
android application. The block diagrams of the main software components show the software’s
technical processes:
2.9.1.2.1. Database Block Diagram:

The database for the E-voting system is developed using SQLite. The database process is shown
below in the form of block diagram:

Data Loading Encoding Sending


Input Data Data Data

Data Storing

FIGURE: 2.9. Database Block Diagram

2.9.1.2.2. Fingerprint Algorithm Block Diagram:


The algorithm for the fingerprint scanning and verification is pre-defined in the SDK (software
development kit) of fingerprint scanner and is based on android JAVA code. The system read the
fingerprint with accuracy and performs some steps by using algorithm. These are some steps
done by the algorithm are:

Fingerprint Image Image


Scanning Processing
30 Intensify

Matching Feature
FIGURE: 2.10. Fingerprint Algorithm
2.9.1.3. Integrated System:
An Integrated system’s work flow is shown in the figure below:

User
Interface

Voter Voter
Registration Database Verification

No Match Found Duplicate Found

Database
Match
Found

Wait for user,


to vote

FIGURE: 2.11. Integrated System Workflow

31
2.9.1.4. GUI Design and Layout
The graphical user interface (GUI) provide friendly front-end environment to make the voting

process easier for the voter. The Android framework gives the flexibility for managing and

declaring application's interface. Using an Adobe Photoshop, the GUI can be designed easily by

the use of dragging and clicking different images such as splash screens, customized buttons,

login box etc. The file will be stored as (.psd) format file.

32
FIGURE: 2.12. Layout Design using Adobe Photoshop

Then the Layout is declared in XML including the screen elements with their properties and then
the code is added that modify the objects and state of the screen. Declaration of layout in XML
makes the better and easier visualization the structure of UI (User interface). The figure below
shows XML code of making a user interface

FIGURE: 2.13. Interface Design using XML

2.9.2. System Development:


System development is the collaboration of devices and tools used with the Software and
hardware modules. The elaboration of these tools from the functional point of view is explained
below:
2.9.2.1. Tablet PC:
A Tablet PC is considered as one of the main device of the system. A Tablet PC works as an
interface between the application and the user and execute the program functions to allow the
voters to cast their votes.

33
2.9.2.2. Fingerprint Scanner& SDK:
Fingerprint scanner is also one of the main devices of the system. It is used for verification or
authentication of a voter; with the help of SDK it is integrated with the application.
2.9.2.3. Algorithm Functionality:
An algorithm is very essential because it actually authenticate the voters fingerprint. This
algorithm includes image processing, enhancement and feature extraction. The matching process
starts by scanning the fingerprint of the voter then the algorithm intensifies the image and extract
the image characteristics. These characteristics then converted into fingerprint template and then
the template will be match from the same template which is stored in a database. The block
diagram below shows the detail algorithm functional process:

Registration

Fingerprint Image Image Feature


Scanning Processing Intensify Extract

Create
Template
Verification

Fingerprint Image Image Feature


Scanning Processing Intensify Extract

Matching
Database

FIGURE: 2.14. Algorithm Functionality Block Diagram


2.9.2.4. Database:
The database is one of the core parts of the system which is used to contain all the data regarding
voter such as (name, number, fingerprint template or code etc.). It is also used to verify the voter
fingerprint either the voter is eligible or not. It also contains the overall voting results.

The above system designing section describes the conceptual and functional overview of
components, now the below section describes the overall system functionality by block diagram.

34
2.10. System Functionality:
System functionality diagrams demonstrate how the data operate by an application that flows
through the different processes. It also shows the two levels of data flow block diagram of voting
system.

2.10.1. Overview:
The voting system contains a fingerprint scanner, and Tablet as a user interface. There are two
modes of authentication one is for the administrator that handles the registration panel and
activate the voting process by login through his ID and password and second mode controls the
process of verifying the eligibility of the voter by taking the fingerprint template and matches or
compares it with the database’s fingerprints template; if the system found similar template in the
database then the voter is eligible to cast the vote, if it is not found then the system will show a
message or prompt on the screen and all the votes will be stored in the database. At the end of
the voting process the election result can be checked through result panel. The below diagrams
shows the functional overview of the whole system:
2.10.1.1. Low level Diagram:

Feature
Extractor Database
User
Interface Yes Vote
Feature Feature
Extractor Matcher
No Warning

FIGURE: 3.16. System Functionality Block Diagram


2.10.1.2. High Level Diagram:

35
Android Application

Admin Voting
Panel Panel

Registration Start
Panel Panel

Thumb Create Thumb


Scanning Template Scanning

Successfully Registered Database

No Match Found Duplicate Match Found

Verified

Voting
Page Vote Casted

Candidate
Select No
Database

36
Yes
FIGURE: 2.16. System Functionality Block Diagram

37
38

You might also like