Online Voting System
Online Voting System
Online Voting System
All rights reserved. No parts of this work may be reproduced or stored in any retrieval system, or transmitted in any form by any means electronic, mechanical, photocopying, recording or otherwise without the prior permission by the researcher or in writing from the Tumaini University, Iringa College (TUICO) on my behalf.
DECLARATION
This is to certify that work, which is being presented in the project entitled IUCO ONLINE VOTING SYSTEM submitted by undersigned students of final year BSCIT in partial fulfillment for award of degree of Bachelor of Science in Information Technology is a record of my own work carried out by me under guidance and supervision of Mr. Josephat Oling, Lecturer, Department of Computer Information Technology.
This work has not submitted elsewhere for award of any other degree.
SIGNATURE .......................
SIGNATURE ....................................
ii
ACKNOWLEDGEMENT
The satisfaction that accompanies the successful completion of any task would be incomplete without the mention of people whose ceaseless cooperation made it possible, whose constant guidance and encouragement crown all efforts with success. I am grateful to my project supervisor Mr. Josephat Oroma Oling for the guidance, inspiration and constructive suggestions that helpful me in the preparation of this project. My sincere thanks go to my pretty wife to be (Neema Mality) who was there to support me in both ways (socially, economically and academically) during the development of my project. I also thank our colleagues who have helped in successful completion of the project.
iii
iv
Contents
COPYRIGHT ................................................................................................................................... i DECLARATION ............................................................................................................................ ii ACKNOWLEDGEMENT ............................................................................................................. iii LIST OF ABBREVIATIONS AND ACRONYMS ...................................................................... iv CHAPTER ONE: INTRODUCTION ............................................................................................. 1 1.1. IUCO online voting system ................................................................................................. 1 1.2. Scope .................................................................................................................................... 1 1.3. Technologies to be used ....................................................................................................... 1 1.4. Overview .............................................................................................................................. 2 1.5. Project Objectives ................................................................................................................ 2 1.6. Purpose of the project .......................................................................................................... 3 CHAPTER TWO: FEASIBILITY STUDY................................................................................... 4 2.1. Technical feasibility ............................................................................................................. 4 2.2. Operational Feasibility ......................................................................................................... 6 2.3. Schedule feasibility .............................................................................................................. 6 CHAPTER THREE: TECHNICAL DESIGN ................................................................................ 7 3.1. Requirement collection ........................................................................................................ 7 3.1.1. Functional requirement of the system ........................................................................... 7 3.1.2. Non functional requirement .......................................................................................... 8 3.1.3. Communication interface: ............................................................................................. 9 3.1.4. Data Flow Diagram ..................................................................................................... 10 CHAPTER FOUR SYSTEM DESIGNING AND TESTING ...................................................... 12 4.1. System Architecture ........................................................................................................... 12 4.2. Detail Database Designing ................................................................................................. 13 4.2.1. Entity Relationship Diagram....................................................................................... 13 4.2.2. Class diagram-: ........................................................................................................... 14 4.3. Interface Design ................................................................................................................. 15 4.4. Security .............................................................................................................................. 15 4.4.1. Validation of user ........................................................................................................ 15 4.2.2. Database Security........................................................................................................ 15 4.5. Testing................................................................................................................................ 15 4.5.1. Module and system Testing ........................................................................................ 16 4.5.2. System Testing ............................................................................................................ 16 v
4.6. Training .............................................................................................................................. 16 CHAPTER FIVE: PROBLEMS, RECOMMENDATIONS AND CONCLUSION .................... 17 5.1. Problems faced ................................................................................................................... 17 5.1.1 Time ............................................................................................................................. 17 5.1.2 Shortage of electricity .................................................................................................. 17 5.2. Recommendations .............................................................................................................. 17 5.3. Conclusion ......................................................................................................................... 17 APPENDIX A: USER MANUAL ................................................................................................ 19 A.1. Requirement of Tools: ...................................................................................................... 19 A.2. How to use the application: ............................................................................................... 19 APPENDIX B: SYSTEM INTERFACES .................................................................................... 20 B.1 The home page ................................................................................................................... 20 B.2 The login page .................................................................................................................... 21 B.3 The voting page .................................................................................................................. 22 B.4 Official Ballot page ............................................................................................................ 23 B.5 Thanks for voting page ....................................................................................................... 23 B.6 voting once page................................................................................................................. 24 APENDIX C: REFERENCES ...................................................................................................... 25
vi
1.2. Scope
There is a DATABASE which is maintained by the Student Organization Commission for election in which all the names of the voters with complete information is stored. So, the system will be conducted in Tumaini Universitys intranet or to the link given in the universitys website.
1.4. Overview
The project maintains two levels of users: Administrator Level Voter Level Maintaining voters Identification. Providing online voting management. Providing Updating of voters information. Provide voter information to Student Organization Commission for election. Student Organization Commission for election maintains the complete information of voter. Voters can give their vote to any candidate they wish to vote for.
This is concerned with specifying equipment and software that will successfully satisfy the user requirement. The technical needs of the system may include:
Front-end and back-end selection An important issue for the development of a project is the selection of suitable front-end and backend. When we decided to develop the project we went through an extensive study to determine the most suitable platform that suits the needs of the organization as well as helps in development of the project. The aspects of our study included the following factors. Front-end selection: 1. It must have a GUI that assists employees that are not from IT background. 2. Scalability and extensibility. 3. Flexibility. 4. Robustness. 5. According to the organization requirement and the culture. 6. Must provide excellent reporting features with good printing support. 7. Platform independent. 8. Easy to debug and maintain. 9. Event driven programming facility. 10. Front end must support some popular back end like Ms Access. According to the above stated features I selected PHP as the front-end for developing my project. Back-end Selection: 1. Multiple user support. 2. Efficient data handling. 3. Provide inherent features for security. 4. Efficient data retrieval and maintenance. 5. Stored procedures. 6. Popularity. 7. Operating System compatible. 5
8. Easy to install. 9. Various drivers must be available. 10. Easy to implant with the Front-end. According to above stated features I selected MY SQL as the back-end. The technical feasibility is frequently the most difficult area encountered at this stage. It is essential that the process of analysis and definition be conducted in parallel with an assessment to technical feasibility. It centers on the existing computer system and to what extent it can support the proposed system.
Voters information in database. Voters Names with ID. Voters vote in a database. Calculation of total number of votes.
Recording information of the Voter in Voter database. Checking of information filled by voter. Discard the false information.
3.1.1. Functional requirement of the system 3.1.1.1 Input to the system The system provides interfaces with the following; a. The system enables students to login themselves to the system before starting choosing a candidate whom they wish to vote for. b. The system provides a home interface where users (i.e. even not registered) can view updates going on different positions of candidates in the election. c. The system provides a voting interface where users can see the candidate for president, vice-presidents and Faculty representatives according to their faculties. d. The system needs the students to confirm the selected candidate before making a vote on a wrong candidate. e. The system rejects students from cheating by not allowing them to vote twice.
3.1.1.2 Output from the system a. The system has the ability to give out updates on what is going on election and also to provide total votes in terms of numbers and percentage bar. 7
3.1.1.3 Requirements processed by the system The system responds with message windows including dialogue for various operations that the user must be dealing with it.
3.1.2. Non functional requirement a. Secure access of confidential data (users details). SSL can be used.
b. 24 X 7 availability. c. Better component design to get better performance at peak time. d. Flexible service based architecture will be highly desirable for future extension.
e. The system is able to operate in Windows NT operating system and later version. (Operating environment). f. The system provides a consistent user interface, menus and commands across all parts of the application to assist new users in getting up to speed. This is particularly important where public authorities have areas of high-staff turnover (Usability). g. The system provides means to secure data/information whenever any disaster happens (Back up/Recovery).
HTML Client
Client side
Application server
Database server
The above diagram shows the connectivity between the client side, application server and database server. The client or customer can access the HTML server or client software. These are connected to the Xampp Server (XAMPP) by a TCP/IP which is a communication protocol used to connect the teachers or parents to the internet. This XAMPP Server now directly communicates with the database made in MYSQL. All the queries or data will be retrieved from the database.
User Or Administrator
System
Output
The above diagram is a 0-level DFD that only shows the flow of data between the various and 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 those details.
10
Login Process
Voting Process
Final Report
The above shown diagram is a 1-level Data Flow Diagram for the online voting system. According to this DFD various process are done after login process. The Administrator can register voter. The Administrator can register the voters and voter can use their voting rights to vote for any candidate they wish to vote for. The voter can view the final report after giving vote.
11
The three tier model involves three layers which are: Presentation layer This layer, which communicates with the application layer through a client API, performs data layout and formatting actions. The Classification Module includes C, COM, and Java client APIs. In addition, applications can interact with the system by using the SOAP protocol. For example, the Classification Module might be included as a Web reference in any .NET application. In most cases, you develop your own presentation layer that fits in with the rest of your application suite.
Application layer This layer, which is the core of the system, provides various services, such as language analysis, instance pooling of knowledge bases, and management of the distribution of
12
tasks across computers. It is accessed through client APIs that are provided for writing client code that communicates with the system.
Data layer This layer is responsible for storing configuration information. The system stores its data in a dedicated data server, which is installed with the Classification Module core components.
Admin.
Registration
Fail
VOTER
id Login
VOTING
Pass
Voting Report
Report View 13
Fig - E-R Diagram The entity relationship diagram shows the relationship between the various users and their attributes. There is a relationship between the election commission and voter.
The VOTER has different attributes to store their data to data base are follows: Name-Name contain first name, middle name, last name. Registration number that act as username Faculty Year of study Password
4.2.2. Class diagram-: The following entities have been realized with the system. The database called onlinevoting with the following entities and fields;
14
4.4. Security
IUCO online voting makes use of various security means such as validation and authentication as can be described here below. 4.4.1. Validation of user System users in this case students and administrator(s) are given usernames and passwords on which they can use to get access of the system according to their authorizations. This is made possible as each user input is checked first before allowing the user to get access. Also only authorized users can be directed to the appropriate pages on which they have access to.
4.2.2. Database Security Apart from the pages security, the database itself provides system authorization which is flexible allowing some or all database privileges (for example, the privilege to create a data or delete data insert data to the database, modify data) to specific users or groups of users and passwords are encrypted.
4.5. Testing
This is the last stage of the system development. With this step, though the system was not tested online if working, but tactically the off work test was performed to identify errors as well as 15
make corrections in case of any errors before it reach to the users. The test phase is done via two means or sub stages as can be described below. 4.5.1. Module and system Testing With this, each module was tested individually making sure each module is working properly. And this in fact was always performed soon after the completion of the module.
4.5.2. System Testing After developing a number of modules, the modules were integrated and then tested to identify if there is any malfunctioning of the integrated units as well as any errors that could have been generated. This is the point where if the system have no errors to launch ready to be used as intended i.e. deploying.
4.6. Training
Upon deployment, no need of training to administrators or other system users as the system is simple and self demonstrating for everyone to make application of it. However, to use the system it requires basic computer knowledge.
16
5.2. Recommendations
The time used to develop and conduct the project is too small compare to the actual time required to accomplish the all project depending on the user needs and resource needed.It is recommended that course of IT security should be shifted to fifth semester and leave the sixth semester for accomplishing the project only. As a recommendation, a number of projects have been performed by various scholars and are not yet finished. It is recommended that they should be given to other students who wish to perform project on similar aspects and therefore develop the project from where it ends so we can at most come and have real products as the work of students as compared to the present situation.
5.3. Conclusion
This Online Voting system will manage the Voters information by which voter can login and use his voting rights. The system will incorporate all features of voting system. It provide the tools for maintaining voters vote to every faculty and it count total no. of votes of every faculty. There is a DATABASE which is maintained by the ELECTION COMMISION OF TUMAINI in which all the names of voter with complete information is stored. 17
In this users should be the registered student whos their informations are on the database and when they want to vote they has to login by their registration number and password and can vote to any candidate only single time. Voting detail store in database and the result is displayed by calculation. By online voting system percentage of voting is increases. It decreases the cost and time of voting process. It is very easy to use and it is vary less time consuming. It is very easy to debug.
18
19
20
21
22
23
24
APENDIX C: REFERENCES
Luke Welling and Laura Thomson. 2001. PHP and MySQL Web Development. Hevner, March, Park & Ram (2004): Design Science in Information Systems Research. MIS Quarterly, 28(1), 75-105. Pearson Custom Publishing & West Chester University, Custom Program for Computer Information Systems (CSC 110), (Pearson Custom Publishing, 2009) Glossary p. 694
John Duckett. 2004. Wiley Publishing. Beginning Web Programming with HTML, XHTML, and CSS. Rainer, R. Kelly and Cegielski, Casey G. 2009. Introduction to Information Systems 3rd Edition. Kroenke, David. 2008. Using Management Information System 2nd Edition.
Cristian Darie, Brinzarea Bogdan, Filip Chereche-Toa, Mihai Bucica. 2006. AJAX and PHP. Building Responsive Web Applications. Ewald, Laura A. 2006. Two information literacy standards address manageable comprehensive research at the master's level in organizational communication. Kentucky Library Assocation.
25