Design and Development of Android Opinion Poll System
Design and Development of Android Opinion Poll System
SETSOAFIA, Suzzy
JUNE, 2018
i
DECLARATION
We hereby declare that this submission is our own work towards the award of Higher
National Diploma in Computer Science and that, to the best of our knowledge, it contains
no material previously published by another person nor material which has been accepted
for the award of any other certificate of the University. The literature and citations from
other people’s work have been duly referenced and acknowledged in the text, footnotes
and bibliography.
ii
DEDICATION
iii
ACKNOWLEDGEMENT
All praise is due to God, the most gracious, and the most merciful for seeing us through
our project. The efforts that have gone into the preparation for and completion of this
project would not have been successful without the help of our noble supervisor, Noble
Arden Kuadey. We greatly appreciate the support of all family and friends for their
encouragement in finishing this project, not forgetting our able lecturers in the Department,
iv
ABSTRACT
backgrounds. It is important that all these individuals exercise their franchise. Over the
years various Unions and Associations in the Institution have held meetings to deliberate
on issues, however turnout in such meetings has not been encouraging and issues are not
given the needed attention. The emergence of technology has helped in developing
various voting systems. Furthermore, the advancement in mobile technologies has given
rise to the development of mobile application. Android Opinion Polls using Internet is
one of such applications that has emerged. This system will help employees in different
locations to vote concerning issues in the organization. The system will help in
conducting opinion polls on issues. This can help in getting general opinion on issues by
v
Table of Contents
DECLARATION ........................................................................................................................... ii
DEDICATION .............................................................................................................................. iii
ABSTRACT .................................................................................................................................... v
LIST OF FIGURES .................................................................................................................... viii
CHAPTER ONE ............................................................................................................................ 1
INTRODUCTION.......................................................................................................................... 1
1.1Background of the Project ...................................................................................................... 1
1.2 Statement of the Problem ....................................................................................................... 2
1.3 Aim ........................................................................................................................................ 2
1.3.1 Objectives ....................................................................................................................... 2
1.4 Significance of the Project ..................................................................................................... 3
1.5 Scope of the Project ............................................................................................................... 3
1.6 Limitation of the Project ........................................................................................................ 4
1.7 Organization of the Project .................................................................................................... 4
CHAPTER TWO ........................................................................................................................... 5
LITERATURE REVIEW ............................................................................................................. 5
2.0 Introduction ............................................................................................................................ 5
2.1 REVIEW OF RELATED WORKS .................................................................................... 5
2.1.0 Canvas Polls .................................................................................................................... 5
2.1.0 OpinionApp..................................................................................................................... 7
2.2 Existing System ..................................................................................................................... 9
2.2.1 Components of Existing System ..................................................................................... 9
2.2.2 Process of the System ................................................................................................... 10
2.2.3 Problems of the Existing System .................................................................................. 10
CHAPTER THREE ..................................................................................................................... 11
DESIGN AND METHODOLOGY ............................................................................................ 11
3.1 The Proposed System........................................................................................................... 11
3.2 System Specification............................................................................................................ 11
3.3 Selection of Technologies and Tools ................................................................................... 12
3.4 Architecture of the System................................................................................................... 13
3.5 Design of the System ........................................................................................................... 14
3.5.1 Use Case Diagram......................................................................................................... 15
vi
3.5.2 Flow chart diagram ....................................................................................................... 18
3.5.3 Database Design............................................................................................................ 21
CHAPTER FOUR........................................................................................................................ 22
SYSTEM DEVELOPMENT AND TESTING .......................................................................... 22
4.1 Implementing the Design ..................................................................................................... 22
4.1.2 Programming / Coding .................................................................................................. 22
4.1.3 Main User Interfaces ..................................................................................................... 29
4.2 Testing of the New System .................................................................................................. 32
4.3 Documentation ..................................................................................................................... 32
CHAPTER FIVE ......................................................................................................................... 33
CONCLUSION AND RECOMMENDATIONS ....................................................................... 33
5.1 Conclusion ........................................................................................................................... 33
5.2 Recommendations ................................................................................................................ 33
Bibliography .................................................................................................................................. 34
vii
LIST OF FIGURES
viii
CHAPTER ONE
INTRODUCTION
Individuals from diverse backgrounds may have different perception on issues relating to
something or somebody. Voting helps in getting general opinion on issues which may lead
backgrounds. It is important that all these individuals exercise their franchise. Over the
years various Unions and Associations in the Institution have held meetings to deliberate
on issues, however turnout in such meetings has not been encouraging and issues are not
given the needed attention. The emergence of technology has helped in developing various
voting systems. Furthermore, the advancement in mobile technologies has given rise to the
development of mobile applications. Android Opinion Polls using Internet is one of such
applications that has emerged. This system will help employees in different locations to
vote concerning issues in the organization. The system will help in conducting opinion
polls on issues. This can help in getting general opinion on issues by individuals within the
Institution.
1|Page
1.2 Statement of the Problem
Lectures has to end, some has to be re-scheduled giving burden to the student and then the
lecturer, when the need arise for opinions to be sort and then decisions has to be taken. The
one’s at the management level does not affect lectures but they equally affect other things
as well. If the Accountant at the account section is in a meeting there will be no one to
administer the receipt. The same way if the ICT Director is in a meeting and there is a
registration problem there will be no one to address that problem hence making things
complicated. Aside management and lecturers meeting, the lecturers also have meetings
on their own thus the unions, not to talk of associations on campus all these contributes to
lectures and activities coming to a stop. The problem of the existing system transcends to
vacation. When a staff has to rest on vacations or probably travel to see other part of the
world, it becomes difficult because he might be sort after, he might have a meeting to attend
on a certain date. Hence there is a great desire to reduce official procedure in the current
1.3 Aim
The purpose of this project is to design and develop a voting application for the Android
platform that will help Ho Technical University to vote on policies or issues concerning
1.3.1 Objectives
2|Page
To create a user activity where the user can logout and also view his or her details
The project will enable management of Ho Technical University to reduce cost incurred in
organizing opinion polls. Furthermore it will enable majority of staff to participate in any
opinion polls that will be organized by the Institution. In addition, it will assist management
and to make sure that the workers opinion count for fairness in the polling process. It
provides a better way of voting on policies and then making an employee’s view be
considered in an organization. It will also encourage more workers to vote since they can
do that remotely. The following are some of the modules under Android Opinion Polls.
User Module: In this module, the user who is going to give his or her vote have to register
his or her account in order to get access to the new system and also be able to view whatever
Allow Multiple Votes Module: The new system would allow more than one decision to be
taken at a time.
3|Page
View Polls Results Module: After employees have been able to give their opinion through
the new system, the (employees) should be able to see the results of the polls immediately
The project work will be limited to android based mobile devices. Furthermore, it will be
This project report has been organized under five major chapters.
Chapter 1: This chapter consists of the Background of the Project, Statement of the
Problem, Aim and Objectives of the Project, Significance of the Project, Scope of the
Chapter 3: This chapter describes the design and research methodology used in the
project.
Chapter 4: This chapter describes the implementation and testing of the system. The
process or procedure adopted for implementation is discussed and how the testing was
Chapter 5: This chapter presents the conclusion and recommendations for further studies
4|Page
CHAPTER TWO
LITERATURE REVIEW
2.0 Introduction
Public opinion poll offers the electorates with information about the preferences of a voter
in an upcoming elections (Großer & Schram, 2010). Opinion polls are used by the media,
government and other institutions to determine public attitudes to a wide range of issues,
helping to shape policy proposals and inform decision making (Sparrow, 2006).
Electronic devices have been used in the academic environment to gauge students level of
understanding of the topic been presented. It has been proven that the use of electronic
responsible for some level of improvement in the performance of students. (Sun J. , 2014)
Further research by (Sun, Chen, Yeh, Cheng, & Lin, 2016) revealed that the use of instant
Canvas Polls is a mobile based polling application that enables an instructor to conduct
polling in class and instantly assess student comprehension with live, in-class polling.
(Harris, 2017) You can create opinion polls with no set answer or create a poll question
that requires a correct response. You can also stop the poll at any time and show and hide
poll results with students. Students can also view and take polls available to them. Polls
are organized as current or closed; current polls are sorted as to whether or not they have
5|Page
been answered, if an instructor allows, students can also view results for a closed poll
2.1.1 Features
Account Analytics: Account admins can see the analytics for the entire account to track
and analyze what students, teachers, observers and/or designers are doing within the
account. Analytics work in conjunction with account Statistics. The account analytics is
used to make sure the students, observers and/or designers are participating in the polls. It
is also used to view how users are interacting with the polls and view the total number of
entire class. Students may be able to reply to an announcements. Announcements are used
to communicate with students about logistics of opinions. As soon as you have created an
Profile and User Settings: This let you control your personal information in Canvas. You
can view and edit your user settings, such as display name, language preference and time
zone. Change your default email address or add an additional email address for
notifications. You can also add a text (sms) contact method for notifications. You can view
6|Page
Groups: The app allows for groups to be created. Since it’s an opinion app created for
students an instructor can group students to answer a particular poll. Instructors can view
activities going on in the groups being created. A group and a subgroup can be created and
students can be assigned automatically or manually. Group leaders can be assigned to each
group and the application allows students to sign up for their own groups. Groups can be
expanded and collapsed and also students can be moved from one group to the other.
2.1.2 Benefits
Canvas is easy to navigate, it enables instructors build polls easily and consistently. It also
It has a calendar which reminds students of when a poll is due and then when the next poll
begins. It has intuitive interface making it easier for both instructors and students to use.
2.1.0 OpinionApp
OpinionApp is an application that connects millions of people to one of the biggest survey
platforms in the world, allowing users to answer surveys anytime, anywhere and even earn
money while doing it. It offers a branded experience filled with survey opportunities that
enables panelist to engage with the panels they are part of, getting them closer to the panel’s
brand and keeping it among the community. The app is built with both the panelist and the
panel owner in mind so that all parties can benefit from it. (Carlsson, 2017).
7|Page
2.1.1 Features
Tracking: Access + tracking is smart, adaptive software for online fieldwork that can
recognize and understand how response rates of targeted demographic groups vary over
time. It uses this information to adjust frequency and sample size to achieve perfectly
filled quotas. Access + tracking is compatible with all major data collection software. Just
program your survey, upload links and let +tracking do the work.
APIs: There are several application programming interface options to accommodate both
your buying and selling needs. Connect seamlessly to our platform from your proprietary
solutions.
Feasibility calculator: The feasibility calculator takes care of the targeted group you have
selected instead of the panel in which the panelist resides no matter how narrow or
specific you make your target group. It accurately calculate and predict the individual
2.1.2 Benefits
The app was built with both the panelist and panel owner in mind so that all parties can
benefit from it. Panelists will enjoy a better user experience as they will have an overview
of all of their survey panels from one single access point, making access to surveys easier
and more engaging. Panelists will be able to improve their profiling points, resulting in
more and better matched surveys, which means more incentives for them and increased
revenue for their panel owners. For Cint panel partners, the app will be available with
zero fees and no technical skills required for the implementation. Panel owners will
benefit from a stronger presence as “Survey cards” are branded with their panel logo. The
8|Page
convenience of the app will also increase user engagement, extending panelist lifetime
and in turn produce more revenue for the panel owners. (Carlsson, 2017)
Ho Technical University does not have an Opinion Poll system that can enable her to
determine staff and students attitudes on a broad range of issues affecting the Institution.
(Sparrow, 2006) The Institution adopts a manual system where meetings are held to shape
Staff and Students: They are the people within the University community whose opinions
Business Procedures: Set of logically related tasks and behaviours that Ho Technical
9|Page
2.2.2 Process of the System
Fig 2.1
The current system of conducting opinion polls affect productivity which results in time
loss. Furthermore the current system is prone to error, accuracy of data when verified and
is duplication of data and data inconsistency. The manual system lacks security.
10 | P a g e
CHAPTER THREE
The proposed system is an Opinion Poll System. It is an android based mobile application.
The system helps in seeking opinions from users. The major component that makes up the
User Module: In this module, the user who is going to give his or her vote have to register
his or her account in order to get access to the new system and also be able to view whatever
Allow Multiple Votes Module: The new system would allow more than one decision to be
taken at a time.
View Polls Results Module: After employees have been able to give their opinion through
the new system, the (employees) should be able to see the results of the polls immediately
System specification describes what the system should do, the services that it provides and
the system should provide, how the system should react to particular inputs and how the
11 | P a g e
system should behave in particular situations. The functional requirements for the Android
The system shall support instant display of voting results to the user.
The system shall allow the administrator (voting officer) to manage users and the
system.
It is describes the metrics used in measuring the operation of a system. The non-functional
The system should support response time for addressing severe issues in less
The system shall provide friendly graphical user interface to ensure ease of use.
The system shall have an encrypted backend to prevent attackers from gaining
unauthorized access.
The following are the technologies and tools that will be used in developing the system.
PHP: Web programming language that will be used for the database.
12 | P a g e
BlueStacks: An emulator that will be used in simulating the system.
Mozilla Firefox: Browser that will be used in previewing the web version of the
system.
Xampp Software: It is a local server with database embedded and also takes care of
the PHP side of the project thus fetching from and inserting into the database.
Architecture is the structure and design of a system. The architecture for Android Opinion
Polls is three - tier because the app has the features of a three – tier architecture thus the
Presentation layer: This layer presents the end-user with the client application which will
be on a mobile device. The client application will provide the end-user an interface which
Business logic layer: This layer contains the services that the client application will be
accessing. It typically contains the application logic and the business rules for managing
business processes.
13 | P a g e
Data layer: This layer contains the data that is stored and accessed by the services in the
business logic layer. This layer includes relational databases and other data sources. It
stores information which could be pictures, data, and geographical information and so on.
allowing user feedback and evolving it through several versions until a final version of the
system has been developed. Use case diagram, activity diagram, and database design were
14 | P a g e
Figure 3.2 Incremental Model (Sommerville I. , 2011).
Use cases are “a description of set of sequences of actions, including variants, that a system
performs that yield an observable result of value to an actor”. They are used in order to:
design system from user’s perspective, communicate system behavior in user’s term and
15 | P a g e
Fig 3.3 Use Case Diagram – User
16 | P a g e
Fig 3.4 Use Case Diagram – Administrator
17 | P a g e
3.5.2 Flow chart diagram
Flow chart diagram is a relevant diagram used to describe the dynamic aspects of the
system. A flow chart represents the flow from one activity to another activity. The
activity can be described as an operation of the system. Flow chart diagrams deal with all
type of flow control by using different elements such as fork, join etc. It is used for
visualizing the dynamic nature of a system and also constructing the executable system
18 | P a g e
Fig 3.5 Flow Chart Diagram – Cast Polls.
19 | P a g e
Fig 3.6 Flow Chart Diagram – View Result.
20 | P a g e
3.5.3 Database Design
21 | P a g e
CHAPTER FOUR
The system was implemented using PHP and Java as the programming languages. MySQL
DBMS, Xampp and Blue stacks software also helped in implementing the design. The
The Login Module: This developed module enables authentication of a user. The system
The Registration Module: This developed module enables a new user of the system to be
registered.
The User Profile Module: This developed module enables a user of the system to view
Login Module
<html>
<head>
media="all" charset="utf-8">
22 | P a g e
<link rel="stylesheet" href="../Css/main.css">
<title>Login</title>
</head>
<body>
<div class="loginBox">
<div class="Rh">
</div>
</form>
23 | P a g e
Registration Module
<!DOCTYPE html>
<html>
<head>
media="all" charset="utf-8">
</head>
<body style="background-color:#3498db;">
<div class="registerbox">
<p>First Name</p>
<p>Last Name</p>
24 | P a g e
<input type="text" name="u_Lname" placeholder="Surname" required="required">
<div class="rad">
<label>Male</label>
<label>Female</label>
</div>
<p>Phone</p>
required="required">
<p>Email </p>
<p>Password</p>
<?php
session_start();
require_once 'connection.php';
if(!isset( $_SESSION['E_mail'])){
else{
?>
<!DOCTYPE html>
<html>
<head>
media="all" charset="utf-8">
<?php
$user = $_SESSION['E_mail'];
$run_user = mysqli_query($connect,$get_user);
$row=mysqli_fetch_array($run_user);
$user_fname = $row['Fname'];
?>
</head>
26 | P a g e
<body>
<div id="user_details">
<?php
$user = $_SESSION['E_mail'];
$run_user = mysqli_query($connect,$get_user);
$row=mysqli_fetch_array($run_user);
$user_id = $row['id'];
$user_image = $row['User_image'];
$user_fname = $row['Fname'];
$user_lname = $row['Lname'];
$user_gender = $row['G_ender'];
$user_phone = $row['P_hone'];
global $u_image;
echo "
width='220' height='220'/>
27 | P a g e
<div id='instPic'>
28 | P a g e
4.1.3 Main User Interfaces
The main user interfaces for the system are login, registration and user profile.
Login Interface
29 | P a g e
Registration Interface
30 | P a g e
User Profile Interface
31 | P a g e
4.2 Testing of the New System
Testing is intended to show that a program does what it is intended to do and to discover
program defects before it is put into use (Sommerville I. , 2016). Furthermore it will ensure
that the developed software is largely without defects. Three different testing was
conducted on the Android Opinion Polls Systems. They are; Graphical User Interface
Graphical User Interface Testing: This is the process of testing the system’s Graphical User
Interface. It involves interacting with the GUI objects such as menus and buttons. The user
Negative Testing: It is a test aimed at validating the system against invalid inputs. .
Furthermore, it aids error handling with unexpected input. It ensures that the system
effectively handles invalid or unexpected user behavior. If the user enters invalid input in
the email field, the system will prompt the user to enter a valid email address.
Unit Testing: It involves testing individual components of the system. The aim is to validate
that each of the component designed is working. The individual components of the system
were tested.
4.3 Documentation
The system was designed to be user friendly. A user manual that will guide an end user in
using the system has been developed. (Refer to the Appendices). The program was also
32 | P a g e
CHAPTER FIVE
5.1 Conclusion
conducting polls on policies or issues concerning the Institution. Furthermore, the system
will enable majority of staff and students to participate in opinion polls whiles saving loss
5.2 Recommendations
This project is open for inclusion, anybody who has the desire to add more features or
change the whole concept to a full fledge mobile voting app is allowed. The following can
Creating a more sophisticated voting process stage which will then include pictures
Adding a profile about the aspirant to give the voter a fair idea of whom to vote for.
Give the user the ability to edit whatever information they provided during the
registration phase.
33 | P a g e
Bibliography
Canvas Doc Team. (2017, November 9). Resource Center. Retrieved from What are the
advantages to using Canvas for an LMS?:
https://resourcecenter.odee.osu.edu/canvas-adoption
Canvas Doc Team. (2017, November 9). What is the Polls for Canvas app. Retrieved
from What is the Polls for Canvas app: https://community.canvaslms.com
Carlsson, O. (2017, November 5). Cint launches worlds first multi panel app and global
mobile panel. Retrieved from Cint: https://www.cint.com/press-release/cint-
launches-worlds-first-multi-panel-app-global-mobile-panel/
Cint. (2017, November 5). Platform features. Retrieved from Cint:
https://www.cint.com/platform-features/
Gitonga, M. G. (2016). Mobile Voting Application For Higher Learning Institutions.
Großer, J., & Schram, A. (2010). Public opinion polls, voter turnout, and welfare: An
experimental study. American Journal of Political Science.
Harris, S. (2017, December 7). Canvas: New “Polls” app. Retrieved from Learning
Design and Technology: https://blogs.maryville.edu/learn/2014/08/canvas-new-
polls-app/
Sommerville, I. (2011). Software Engineering. Boston: Pearson Education Inc.
Sommerville, I. (2016). Software Engineering. Pearson Education Limited.
Sparrow, N. (2006). Developing reliable online polls. International Journal of Market
Research.
Sun, J. (2014). Influence of polling technologies on student engagement: An analysis of
student motivation, academic performance, and brainwave data. Computers &
Education.
Sun, J., Chen, A., Yeh, K., Cheng, Y., & Lin, Y. (2016). Is Group Polling Better? An
Investigation of the Effect of Individual and Group Polling Strategies on Students'
Academic Performance, Anxiety, and Attention. Educatonal Technology &
Society, 12-24.
34 | P a g e