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

ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

DEBRETABOR UNIVERSITY

FACULITY OF TECHNOLOGY

DEPARTMENT OF COMPUTER SCIENCE

PROJECT TITLE:

ONLINE STUDENT UNION VOTING SYSTEM FOR DEBRE TABOR


UNIVERSITY

A PROJECT SUBMITTED TO THE FACULTY OF TECHNOLOGY


DEPARTMENT OF COMPUTER SCINCE OF DEBRE TABOR UNIVERSITY IN
PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF
BSC IN COMPUTER SCIENCE

Advisor: Dr.Talasila Ram Kumar


Coo advisor: Instructor Tegbaru Nibret

June, 2017
Debre Tabor, Ethiopia

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

DEBRETABOR UNIVERSITY
FACULITY OF TECHNOLOGY

DEPARTMENT OF COMPUTER SCIENCE

PROJECT TITLE: ONLINE STUDENT UNION VOTING SYSTEM FOR


DTU

A PROJECT SUBMITTED TO THE FACULTY OF TECHNOLOGY


DEPARTMENT OF COMPUTER SCINCE OF DEBRETABOR UNIVERSITY IN
PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF
BSC IN COMPUTER SCINCE
PREPARED BY:
NAME OF GROUP MEMBER ID NO
1. Amsalu Tessema…………………...…………………...2212/06
2. Bekalu Mihret…………………….……………………2226/06
3. Belete Yegezie……………………………………….…1312/05
4. Kalkidan Teshome………….……………………..…..1095/06
5. Yosef Mebrate……………….………………………....2215/06

Advisor: Dr.Talasila Ram Kumar


Coo advisor: Instructor Tegbaru Nibret
June, 2017

Debre Tabor, Ethiopia

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Declaration
The Project is our own and has not been presented for a degree in any other university
and all the sources of material used for the project/thesis have been duly acknowledged.
(Name and Signature up to the number of the project group members)
__________________________ ________________
Name Signature
___________________________ _________________
Name Signature
____________________________ _________________
Name Signature
______________________________ _________________
Name Signature
________________________________ _________________
Name Signature
Faculty of Technology
Department of Computer Science
Project Title: Online Student Union Voting System
I certify that this project satisfies all the requirements as a project for the degree of
Bachelor of Science
_______________________________ __________________
Name of coordinator Signature
This is to certify that I have read this project and that in my opinion it is fully adequate, in
scope and quality, as a thesis for the degree of Bachelor of Science.
_________________________________ _______________
Name of advisor Signature
_________________________________ ______________
Name of Co-advisor Signature

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Approvals sheet
Name Signature Date
1. Chairman _______________________ ____________ __________
2. Examiner 1 _______________________ ____________ ___________
3. Examiner 2 ______________________ ____________ ___________
It is approved that this project has been written in compliance with the formatting rules
and we certify that this project satisfies all the requirements as a project for the degree of
Bachelor of Science

Table of Contents

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Declaration..................................................................................................................................i
Approvals sheet..............................................................................................................................ii
List of figures.................................................................................................................................vi
List of table...................................................................................................................................vii
Acknowledgment.........................................................................................................................viii
Abstract..........................................................................................................................................ix
Acronyms........................................................................................................................................x
CHAPTER ONE: INTRODUCTION.............................................................................................1
1.1. Existing system study..........................................................................................................1
1.2. Statement of the problem.....................................................................................................2
1.3. Objective of the Project.......................................................................................................3
1.3.1. General objective..............................................................................................................3
1.3.2 Specific Objective..........................................................................................................3
1.4. Scope and Limitation of the Project.....................................................................................4
1.4.1. Scope of the Project......................................................................................................4
1.4.2. Limitation of the project...............................................................................................4
1.5. Significance of the Project...................................................................................................4
1.6. Methodology........................................................................................................................5
1.6.1. Data gathering technique..............................................................................................5
1.6.2. Design Methodology.....................................................................................................6
1.6.3. Implementation Methodology.......................................................................................6
1.6.4. Testing Methodology....................................................................................................7
1.7. Feasibility study...................................................................................................................7
1.7.1. Technical feasibility......................................................................................................7
1.7.2. Operational feasibility...................................................................................................8
1.7.3. Economic feasibility.....................................................................................................8
1.7.4 Schedule Feasibility.....................................................................................................9

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

CHAPTER TWO: REQUIREMENT ANALYSIS DESCRIPTION.............................................12


2.1. Overview of the existing system........................................................................................12
2.1.1 Activities of the existing system..................................................................................12
2.1.2 Problem of Existing System.........................................................................................13
2.1.3. Strength, Weakness, opportunity, and threats (SWOT)...............................................13
2.2. Overview of the proposed system......................................................................................14
2.2.1. Functional Requirements............................................................................................16
2.2.2. Non-Functional Requirement......................................................................................17
2.2.3. Systems Requirement..................................................................................................18
2.2.4. User Requirement.......................................................................................................19
2.2.5. Business Rules............................................................................................................19
CHAPTER THREE: SYSTEM MODELING...............................................................................21
3.1 Use case Model...................................................................................................................21
3.1.1. Actor Specification.....................................................................................................21
3.1.2. Use case Diagram.......................................................................................................22
3.1.3. Use case description....................................................................................................23
Table 3.8 Use case description for View result.....................................................................29
Table 3.9 Use case logout.....................................................................................................30
3.2. Sequence Diagram.............................................................................................................34
3.3. Class diagram....................................................................................................................42
3.4 Activity diagram.................................................................................................................43
CHAPTER FOUR: SYSTEM DESIGN.......................................................................................46
4.1 Design Goals.......................................................................................................................46
4.2. System Decomposition......................................................................................................47
4.3. System architecture............................................................................................................49
4.4. Deployment Diagram.........................................................................................................50
4.5. Persistence Data Management...........................................................................................51
4.6. Access Control and security...............................................................................................51

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

4.7. User Interface Design........................................................................................................52


CHAPTER FIVE: IMPLEMENTATION.....................................................................................55
5.1 Tools...................................................................................................................................55
5.2. Algorithms.........................................................................................................................55
5.3 Environments......................................................................................................................57
5.4 Sample code and sample output..........................................................................................58
5.5 User Manual.......................................................................................................................62
CHAPTER SIX: TESTING..........................................................................................................63
6.1. Unit Testing.......................................................................................................................63
6.2. Integration Testing.............................................................................................................65
6.3 Acceptance testing..............................................................................................................66
7.1 Conclusion..........................................................................................................................67
7.2 Recommendation..........................................................................................................67
CHAPTER EGHIT: REFERENCES............................................................................................68
CHAPTER NINE: APPENDICES................................................................................................69

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

List of figures
Figure3.1Use case diagram................................................................................................23
Figure3. 2 Sequences diagram of login into the system....................................................35
Figure3. 3 Sequence diagram for Approve committee......................................................36
Figure3. 4 Sequence diagram for candidate register.........................................................37
Figure3. 5 Sequence diagram for approve candidates.......................................................38
Figure3. 6 Sequence diagram for Search...........................................................................39
Figure3. 7Sequences diagram for generate report.............................................................40
Figure3. 8Sequences diagram for vote/choose..................................................................41
Figure3.9Sequences diagram for logout for all users........................................................42
Figure3.10 Class diagram..................................................................................................43
Figure3.11 Activity diagram of login to the system..........................................................44
Figure3.12 Activity diagram of vote.................................................................................45
Figure3. 13 Activity diagram for create account...............................................................46
Figure4.1 System Decomposition diagram........................................................................49
Figure4. 2 System architecture.........................................................................................50
Figure4. 3 Deployment diagram........................................................................................51
Figure4. 4 persistence data management diagram.............................................................52
Figure4. 5 Home page user interface.................................................................................54
Figure4. 5 Voter registration page....................................................................................55
Figure5.1 Home page sample output.................................................................................60
Figure5. 2 output for login.................................................................................................61
Figure5. 3 Sample output for online vote..........................................................................63
Figure5. 4 Samples of unit testing for login......................................................................66

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

List of table
Table 1.1 project schedule.................................................................................................10
Table 1.2 budget analysis..................................................................................................11
Table 3.1 actor specification..............................................................................................22
Table 3.2 Use case description for login...........................................................................24
Table 3.3 Use case description for Approve election committee......................................25
Table 3.4 Use case description for register candidate.......................................................26
Table 3.5 Use case Approve candidate..............................................................................27
Table 3.6 Use case description for vote.............................................................................28
Table 3.7 Use case Generate reports..................................................................................29
Table 3.8 Use case description for View result.................................................................30
Table 3.9 Use case logout..................................................................................................31
Table 3.10 Use case description for Create Account.........................................................32
Table 3.11 Use case documentation for Post announcement............................................33
Table 3.12 Use case description for view candidate..........................................................34
Table 4. 1 System access control.......................................................................................53
Table 5 .1The hardware and network requirements for testing activities are:...................58
Table 5.2The software requirements for testing activities are:..........................................59
Table 6. 1Authentication of user login.............................................................................64
Table 6. 2Voter registration...............................................................................................65

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Acknowledgment
First of all we want to thanks the glorious and almighty ‘GOD’ for each and everything
throughout our life for keeping our safe, staying power and energy starting from to get in
to the friendship up to the day we have prepared this project documentation successfully.
Secondly we want to take this opportunity to express deepest appreciation and heart full
thanks to the respected adviser Dr. Talasila Ram Kumar and Instructor Tegbaru Nibrete
for their great contribution and advice in our project documentation and source code what
we have to do timely and efficiently. And we would like to express more and more our
supporter Debre Tabor University’s student unions, their provide the information to
support, encouragement, comments and gives necessary information for us on during
preparation of this project. Finally we want to say special thanks to our classmates to
gave more information what our system would going well and supports us to continue at
the end of prepared this documentation.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Abstract
This documentation explains about online student’s union voting system which we would
develop for Debre Tabor University. Currently the services that are given in student
union voting system is handled manually and the number of students who is getting
service that are increasing every year. So to give the services and manage become very
difficult as student union voting system handled its every day activity manually. Having
the above problem, we are going to solve this by making online student voting System.
This voting system claims to change the manual voting system in to Online. The system
is very interactive and useful for Debre Tabor university students since it is applicable
anywhere in the same functionality. Online voting system used to register, vote, contest
online and count the votes casted by the voters. It is advantageous in reducing the
complexity of the election process. We have developed this project using PHP as front
end MY SQL as back end.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Acronyms
CPU: Central processing Unit

CSS: Cascading Style Sheet

DTU: Debre Tabor University

DTUOSUVS: Debre Tabor University online student union voting system

EC: Election committee

GUI: Graphical User Interface

HTML: Hypertext markup language

MYSQL: MY Structure Query language

OS: Operating System

PHP: Hypertext Preprocessor

UML: Unified Model Language

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

CHAPTER ONE: INTRODUCTION

Nowadays use of information and communication technology in all over the global world
is become very advantageous in each and every activity. Due to this advantage we are
interested to develop online student union voting system. Students union is the most
important and crucial thing to get proper attention to academic problems of students and
convey the same to the respective authority. Some of the problems that student union
addresses include academic problems such as, food, dormitory problem etc. To solve the
above problems effectively, we need an effective student union committee. The current
system aids us to elect an effective student union committee. Online Student voting
development is to provide all students of the Debre Tabor University with the ability to
quickly, easily and securely vote in their Student Union voting when one or more of the
various elections held each year. By circumventing the need for students to attend voting
stations in person, saving time, effort and the other barriers to voting this will help to
increase voter turnout and thereby make any decision more representative of the
electorate’s views.

1.1. Existing system study


This project focused on solving the problem of manual voting system process of DTU’s
student union voting system by using online voting system. This system provides an
interactive and attractive way of voting process using different mechanisms. The system
mainly includes registration, candidate id, voter’s information and DTU students.
The existing system of the DTU student union used manual election system and
distributed information about election process by manual system such as write a
collection of sheets paper and to post on to different place on boards and on block of
walls. The existing system is used a manual registration of candidate, election committee
and voters(student) or recording and traditional counting (i.e. the main tools of selecting,
recording the students vote by using pen, pencil, with hard paper, cards, shelf and so on).

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

1.2. Statement of the problem


The existence system has a number of problems in the working procedure for university
and students. At present Debre Tabor University does not having any computerized
system to deal with the vote system. The only thing is the employer or whoever
concerned needs to contact the office of registrar or academic record office for such
purposes can contact the registrar and then get the information or the process. This is one
of the great impacts on Debre Tabor University. Some of these problems are:
 Lack of security in the existing system: Poor security system because one can get
easily the document and change whatever they want, loss of information etc. The
manual election systems may not secure

 Time and resource consumption: DTU student union by using such manual
election system time and materials are wasted. For example to record voters
information and to give candidate cards the Student union needed organize the
committee that implement these mission, the committees who give these service
until the elections are completed they loss their time

 It is difficult to keep our interest: All candidates’ information is not placed


separately.

 Lack of information: Because of the manual information distribution system most


of the students could not have the habit of reading notice or accessing information
from board. During the election time there is crowded of voters in order to vote they
must be waiting and spent their time in order to give their voice. The other
shortcoming of using manual system file lost, then after the students’ go back and
ask information about him or her following process about how to vote.

 Difficulty of searching information about the election.

 Vulnerable to different factors and illegal modification of results:

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

1.3. Objective of the Project

1.3.1. General objective


The general objective of this project is to develop online student union voting system to
Debre Tabor University.

1.3.2 Specific Objective


To achieve the general objective, the project addressed the following specific objectives.
These specific objectives include:
 To manage accounts for the user
 To post the election date, participants list, result, image news and announcement.
 To identify and analysis the problem with current system and functional and
nonfunctional requirement of new system
 To design the system architecture of the system and back-end database to the
system that can hold all the information of the system users.
 To give feedbacks to union committee in different aspects.
 To develop more secured system to ensure voting fairness and a good interface
to make it easy to use
 To allow legally student can register to the system and participating in the
voting process.
 To implement standard security algorithms that can keep the confidentiality of
the data at rest as well as at communication lines
 To select the appropriate development tools for the system
 To maintain and keeps all the information of all the candidates and voters
 To upload, download different images/videos regarding to voting and view
reports.
 To remove Nominee/candidates from participation, if they are not legally
registered.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

1.4. Scope and Limitation of the Project

1.4.1. Scope of the Project


The scope of this project focuses on online student union voting system for Debre Tabor
University and authentication of voters and vote results only for the university. The
system contains modules that can handle voters and candidates. The system will give
only authorized user can login into the system by providing their correct User name and
password to access the system, it will register participants, events and winners of every
election, It maintains and keeps all the information of all the candidates and voters, the
voters and committees must be register in the application form and authenticated by
legally users, posts the election date, participants list, result, image news and
announcement. It also uploads and downloads different images/videous of campaigns
presented by participants and the administrator can manage accounts for the user. The
system will give feedbacks to union committee in different aspects.

1.4.2. Limitation of the project

Since our system works online, it needs internet connection. While the voting is going, if
suddenly internet is disconnected, it will difficult to proceed the voting. Even if our
system is precise, being dependent on internet makes it difficult to use it in the absence of
internet connection.

 The system will use for DTU student voting only.


 The system uses only English language.
 It allows only regular students to participate in voting system.

1.5. Significance of the Project


The significance of the project means the important role of the project to all the societies,
the users and to the concerned bodies. Some of significance of the projects are listed
below:-

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 It improves time, fraud detection and resource expenditure of the university that
exposed to election.
 It provides distributed and equal information through online for all voters
(students) and Information available at time and security for the data.
 It gives private online voting system.
 Increases accuracy and availability and quality of the voting process and number
of voters as individual will find it easier and more convenient to vote.
 Minimize corruption, manpower and working load for the election committee.
 To distinguish the candidate by their specific information
 The system able to allow the voters to get fair voting

1.6. Methodology

1.6.1. Data gathering technique


For designing and developing the online voting system for DTU student, we used the
following methods to gather information about the current system and alternate ways to
develop the new system.

 Interview: Interviewing teachers, staff members and students. To have a well-


informed understanding about the Current system. This helps to assure the
information gathered from observation, document analysis and others.
 Document analysis: Studying the document that is used in the past, in order to
ensure whether the system had been figured out before and understand about the
problems in the current system, rules and procedures for processing data.
 Observation: This is used to analyze the situation in which the current system
is acting. The reason why selecting the observation is to gather information as
it gives direct information and it makes possible to study certain teaching-
learning process.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

1.6.2. Design Methodology


To design the system the project team has choose Object Oriented Modeling techniques
and unified modeling language tools. Reason for choosing:
 It enables us to comprehensively model a system before we develop it.
 Modification of the object implementation is easy because objects are loosely
coupled.
 Understanding of the structure is easy because object oriented modeling and
tools used to represent real world entities.

In the system analysis and design phase of a project we use the web design approach that
examines requirements from the perspective of the web pages and web servers found in
the problem domain.

1.6.3. Implementation Methodology


Implementation tools: In order to implement our system we used the following
programs:
 Front end: PHP and JavaScript
 Back end: MY SQL server
 Web server: WAMP server
 Browser: Mozilla fire fox
Hardware: To implement our document we used the following hardware devices.
 Personal computer
 Connection cable
 Printer
 Intel(R) Core(R)i3 CPU N2830 @ 2.16GHz
 RAM (Random Access Memory)(2GB)
Software: Software is a program that enables a computer to perform a specific task, as
opposed to the physical components of the system (hardware). To implement our
document we used the following software.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 Apache Web server: is software that will use to run Server side application.
 PHP: hypertext preprocessor language. It will use to implement server side sub
system of the system.
 Dreamweaver: Used to write the specific code.
 Microsoft office word 2007 and above(For writing documentation)
 Microsoft PowerPoint 2007(For presentation )
 Window 7 Operating system and above
 Edraw max and Microsoft vision: For drawing UML diagrams

1.6.4. Testing Methodology

1. Unit Testing
Unit testing is essentially for the verification of the code produced during the coding phase and
the goal is test the internal logic of the module/program. In the Generic code project, the unit
testing is using when coding phase of data entry forms whether the functions are working
properly or not. In this phase all the drivers are willing to test they are rightly connect or not.
2. Integration Testing
All we want to test modules are combined into sub systems, which are then testing. The goal is to
see if the modules are properly integrated, and the emphasis being on the testing interfaces
between the modules. In the generic code integration testing is we will test

1.7. Feasibility study

1.7.1. Technical feasibility


The purpose of technical feasibility is to gain an understanding of the organization ability
to construct proposed system. In order to ensure whether the system is technically
feasible or not, the system should specify the following cases:

 The software currently possess the necessary technology: Because it achieves


the required goal, as much as possible we tried to encounter all hardware and

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

software requirements and also the technology is easily available and deployed
everywhere.
 The new system posses’ necessarily technical experts: In this project the team
uses languages such as HTML, PHP, Java script and CSS to develop the new
system. All these are the technology side and once the module is developed it
can be easily held by non-technical person, so a technically sound expert is not
required, hence this problem doesn’t arise at all.

1.7.2. Operational feasibility


To measure how much the proposed system solves the existing systems problems. This
project is surely operationally feasible because the proposed system is a good solution
maker of the problem or specific solution will work in the existing system and create a
good environment towards the user of the system . So, the proposed system is operationally
feasible because:
 We have all the resource needed for its implementation.
 The system is accepted and supported by the users and site viewers.
 We didn’t get any negative things while collecting information in the
organization.
 The system will minimize the time and man power needed to give fast and
hospitable service to the users.

1.7.3. Economic feasibility


Economic feasibility is the analysis of a project's cost and revenue in an effort to
determine whether or not it is logical and possible to complete. For instance how to start
a business and make a plan for it.

Benefit Analysis

Tangible benefits
Those benefits that are easily quantified from our system that we inquire the vote will get are:

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 Reduce the cost


 Decrease response time
 Fewer processing error

Intangible benefits
Those benefits that are believed to be difficult or impossible to quantify from our system
are:

 Improving resource utilization and control


 Availability of new, better, or more information to the students
 To increasing security of data and information accuracy.
 To give better services to community

1.7.4 Schedule Feasibility


Schedule feasibility describes the time frame given for every activity and making
measurement whether activity Completion date can be met or not. To develop the whole
system we need around total of months and eight months’ time duration.
50 days for requirement analysis
 40 days for system design
 30 days(one month) for object design
 90 days(three months) for implementation
 30 days(one month) for testing and maintenance
Generally it is presented in the table below

Table 1.1 project schedule

Key steps October December January February May


30,2016- 20,2016- 20,2017- 25,2017- 26,2017-
December January February May June

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

19,2016 19,2017 24,2017 25,2017 25,2017

Requirement
analysis

Object design
document

System design
document

Implementation

Testing
and maintenance

Budget analysis

Table 2.2 budget analysis

No Items Price(in birr) Quantity Total

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

1 Paper 120 1 A4 paper 120


2 Laptop 12,000 1 10,000
3 CD RW 30 1 30
4 USB flash disk 115 1 115
5 Pen 5 20 100
6 Cell phone 150 5 750
7 Print 2.00 80*2 320
8 Binding 10 5 50
9 SW& HW maintenance 1000 1 500
Total 11,985

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

CHAPTER TWO: REQUIREMENT ANALYSIS DESCRIPTION

2.1. Overview of the existing system


Currently the existing system of the DTU student union uses manual voting system. It
distributed information about voting process by posting manually information such as
write a bundle of sheets paper and to thump on to different place on boards and block of
walls. The existing system uses a manual registration of candidate, election committee
and voters (student) list i.e. the main tools of selecting, recording the students vote are
using by pen, pencil, and hard paper.

2.1.1 Activities of the existing system


Since DTU voting system use manually, even if this existing system has a lot of
problems, there are a number of activities that need to be preserved. Those activities in
the existing system are:
 Report Voter registration: This report is prepared in two copies, one for
student service directorate and one for Constituency.
 Report Candidates registration: It is a kind of report generated about all
registered candidate that are registered Constituency. The report prepared
in two copies. One copies for the constituency itself, and one for the
student service directorate office
 Report Canceled candidate: This report is generated by constituency and
sent to the board. The report is prepared in three copies. One copies for the
candidate, one for the constituency itself, and one for the Board.
 Report Vote result: This report is generated about the result found in
each pooling station and generated by pooling station first and transferred
above level after summing up. The report is prepared in two copies one for
office itself and one for student service directorate office. In general the
detailed existing system activities are listed as follows

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 When the voting date is arrive, voters go to the voting station to give their
ballot/voice
 Voters take a lesson about how to perform and fill the election form
 Voters get in to the secret box to give their voice
 at the end of the day counting of each voice is made at voting
centre/station
 finally the aggregate winner of among all candidates is announced as the
final winner

2.1.2 Problem of Existing System


The problems that we justify on the existing manual system of voting system are
mentioned as follows:

 Delay in preparation and distribution of materials

 File control mechanism is very tedious and complicated

 Data redundancy and duplication, when the same data is collected and
stored in different location or section.

 Requires more labor force to conduct and manage the record

 Sharing of critical information efficiently various places in the campus.

 Election vote counting is very complicated.

 High effort and cost is expended in conduction of elections.

 Inaccuracy of input of data.

2.1.3. Strength, Weakness, opportunity, and threats (SWOT)

Weakness

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 Lack of data integration and consistency.


 High budget constraint.
 Waste of time for recording, processing and accessing the data.
 Inefficient and hard to track who voted and who don’t
 Does not give an instant poll result

Strength

 The election board receives any complain and comment from the candidate
and voters
 No need of internet connection during the voting process
 The voter and candidate can physically communicate with their
administrator and election committees

Opportunities

 More number of persons are employed during the voting system, so they
will be benefited.
 Voters can know the process of traditional voting system.

Threats

 The counting may get errors, because they do manually.


 Once list prepared, then it can be changed.

2.2. Overview of the proposed system


The function of student union voting system operational and field coordination
department will be automated. The proposed system will solve the problems that are
faced on the existing system or change manual system to Online voting system in the
following way:

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Administrator - Announce students to participate for election committee by post news


through online.
 Register student that want to participate in the election committee.
 Select students that have experience and best performance form registered one
and announce for university society.
 After election tell for member’s election committee what does and how to do and
distribute works.
 Give privilege in the system.

Election committee:-This election committee has one month work time.

 Accept material form student union.


 Announce time that vote held for university society by post one website and
selected candidate for Administrator and student.
 Fill candidate information or profile in the system.
 Prepare negotiation place and time for candidate to create motivation for their
own.
 If anyone has complained and comment on election accept and give solution for
it.
 Put election date and time taken for election in the system.
 Announce for university society winner student union for next two year.
 After voting finish the system displays result for the user.
 Election committee returns material that accepts from student union.
Candidate: This actor has approved by election committee, and who has the member of
our university student are candidate for this election to represent student.
 In order to participate in the election as candidate the student must register to
system.
 Put his/her advertise information (getting promise) for election in the system.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 He/she stand for to be elect and transfer there notice in order to vote.
 There must have experience and best performance form registered one and
announce for university society.
Voters/students: These actors who have applying to vote his/her representatives in the
election system and those are:
 Who are regular student that learns in the university currently.
 The voters can login/logout to the System.
 He/ She can view his/her personal details and poll their vote.
 The voter can just view the information whereas he/she could not make changes
in the database.
 The system shall allow voters to view candidate’s information, election results,
and give only one vote/choose for their representatives

2.2.1. Functional Requirements


The functional requirements of the system describe the necessary functions for which the
system is expected to fulfill. The system describes a single and well define goal of
student union online voting system, and the steps involved to reach this goal. A function
is described as a set of inputs, the behavior and output. The requirements specified are
helpful to clearly understand the scope and the objective of the system, and consequently
this will be helpful for designing the system effectively. The proposed system meets the
following functionalities:-

 Login: The system shall allow login to the system only authorized and
authenticated system users.
 Register: The system shall allow register candidates, election committee.
 Post announcement: The system shall provide proper features to post
information like election date, registration date, end date and comments or
questions for all visitors.
 Post result: The system shall allows to post result

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 View result: during election.


 Administrator page: is a page that allows administrator can provide proper user
account management feature to authorized and authenticated system users, post
result, upload, videos regarding to voting, manage accounts and generate report
and view reports.

 View candidate info: is a page that The Admin, voter and the election committee
have their own Credentials stored and system can display candidate’s information
from database.

 Choose: the system shall allow using users’ friendly and dynamically interactive
online election system.
 View result: The system shall allow visitors to view posted information after
election is completed.
 Feedback: The system allows give feedbacks to union committee in different
aspects.
 Create Account: is a page that allows to create new account for the user
 Generates Report: At the end of the election, the system allows generate the
Reports of the election based on the candidate.
 The system shall block Nominee/candidates from participation, if they are not
legally registered
 Approve election committee: The system allows administrator to approve
election committee of the campus.
 Approve candidate: The system allows election committee can approve students
that participate in the election as a candidate
 Logout : The system shall allow administrator, election committee and voters can
logout to the system

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

2.2.2. Non-Functional Requirement


Nonfunctional requirements should provide specific measurements that the software must
meet. Here some of non-functional requirements are:

 Error handling Conditions: To reduce input fault, the system will enable the
user to confirm that details are correct before creation, deletion or modification
occurs. · Respond to error inputs by asking the user to reenter data in the correct
format.

 Security issues: Changes to the information held within the system may produce
significant changes to the users of the system as these could lead to inconsistent
data. With the system recording confidential information of candidates, it is vital
that the users of the system can only access the information that the administrator
allows them to do.

 Portability: The system can be browsed in different internet explorer versions


and Mozilla fire fox.

 Efficiency: Specifies how well the software utilizes scarce resources: CPU
cycles, disk space, memory, bandwidth, etc.

 Flexibility: If the organization intends to increase or extend the functionality of


the software after it is deployed, that should be planned from the beginning; it
influences choices made during the design, development, testing, and deployment
of the system.

 Integrity: Integrity requirements define the security attributes of the system,


restricting access to features or data to certain users and protecting the privacy of
data entered into the software.

 Reliability: Reliability specifies the capability of the software to maintain its


performance over time. Unreliable software fails frequently, and certain tasks are

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

more sensitive to failure (for example, because they cannot be restarted, or


because they must be run at a certain time).

2.2.3. Systems Requirement


Hardware and Software
Software is a program that enables a computer to perform a specific task, as opposed to
the physical components of the system (hardware).
 System software such as an operating system
 Web browser (Mozilla Firefox, Google chrome, …)
 Front –End: (PHP)
 Back-End: MYSQL

2.2.4. User Requirement


User requirement can be described as what services the system is expected to provide the
users. The system describes a single and well define goal of student union online voting
system, and the steps involved to reach this goal. The system to be designed is a program
that can be used to facilitate Debre Tabor University online voting system with the
following user requirement actions.

 Login: The Admin, voter and the election committee have their own
Credentials stored in the database.

 Generates Report: At the end of the election, administrator will generate the
Reports of the election based on the candidate.

 Display: - the system can display candidate’s information from database.

 Add and edit candidate’s information:-the system can allow adding


candidate’s information.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

2.2.5. Business Rules


A business rule is effectively an operating principle or policy the software must satisfy.
It often relevant to access control issues, business calculations, or operating policies and
principles of the organization. Therefore, our new system has the following business
rules.
 The Candidate should be member of Debre Tabor University.
 The candidate should listen and speaks the local language in his competition
area.
 The candidate should have the performance to his/her given work type.
 Authorize the system: The users have different privileges to the system and
have username and password.
 The administrator should manage the system and give accesses (views) to
those users as per their priority and privilege to the system and update the
Password.
 Correct information: The user checks the filled information and the entered
information are correct.
 Validate candidate Information: The authorized user/ constituency register
the candidate’s information and the system validates.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

CHAPTER THREE: SYSTEM MODELING


3.1 Use case Model
The use case model provides detailed information about the behaviors of the system or
application that we are developing. A use case represents a discrete unit of interaction
between a user and the system. A use case is a single unit of meaningful work. Each use
case has a description which describes the functionality that will be built in the proposed
system. Use case my include another use case functionality or extend another use case
with its own behavior use cases are typically relate to actors.

3.1.1. Actor Specification


Table 3.1 actor specification

Actor name Role

Administrator This actor who control and manage the systems, and select election
committee from student that learns from the university.

Election Election committee approves the candidate who has the member of our
committee university and do all task related to this election together with student
dean.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Candidate The actor is one who has approved by election committee and who
has the member of our university student are candidate for this
election to represent student.

Voter The actor is who is applying to vote his/her representatives in this


system and those who are regular student that learns in the
university currently

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

3.1.2. Use case Diagram

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3.1Use case diagram

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

3.1.3. Use case description


Table 4.2 Use case description for login

Use case ID UC-01


Name Login
Priority Must have
Actor Voter ,Election committee ,Administrator
Description This describes how the users log into the system
Precondition: Users of the system should have User name and password
Post The Voter, Election committee and Administrator successfully login and do
condition tasks properly.
Basic course User action System response
of action 1. Any user that has account enters his 1. The system check if the
login name and password. security password is
2.The user click on the login button correct or not. If it is
A. If the login name and password is correct return wanted
valid, a session is opened page. If not correct return
 The security is verified you are not correct user
 The specific page of every user massage.
is loaded 2. The user click on logout
button the system is
sleep.

Alternative If the login name or password is not valid, the login screen is redisplayed
course with an error message.
action  The session is terminated.
 The login screen is displayed.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 5.3 Use case description for Approve election committee

Use case ID UC-02


Name Approve Election committee
Priority High
Actor Administrator
Description To elects the election committee for elections purpose.

Precondition: Know registered student are valid for election.

Post condition Announce for student selected election committee.

Basic course of User action System response


action 1. Administrator announce for student register for
election committee.
2. Student registers for election committee.
3.Administrator selects members for
Committee by performance and experiences.
4. Administrator tells what type of work the
committee does.
5. Use case ends.
Alternative If any complain make to student by the student return to student
course of action profile that registered basic course of action no 2 and check again.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 6.4 Use case description for register candidate

Use case ID UC-03


Name Register
Priority High
Actor Candidate
Description In order to participate in the election as candidate the student must
register to system.
Precondition Student are valid that means there must have experience and best
performance form registered one and announce for university society.
Post condition Logout their account correctly

User action System response

1. Open website if you want to register 1. Check password


Basic course 2. Enter password and User name to go and User name and
of action registration form. return message and
3. Password and User name is valid fill the form page.
correctly. 2. Display correctly
4. Click on register button. registered
message.
Alternative If password and User name entered by student is not valid return to
course of basic course of action step 2 and try again.
action

Table 7.5 Use case Approve candidate

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Use case ID UC-04


Name Approve Candidate
Priority High
Actor Election committee
Description This describes how EC will approve the application form of candidate and
generate the new account to that candidate.
Precondition: The candidate should have filled his application form that specified by EC.

Post condition The EC can get accepted candidates.


Basic course of User action System response
action
1.EC see applicant form registration list 1. Check if the necessary
2. EC selects the candidate application information of candidate is
form list by their performance. inserted.
3. Post selected candidate for user of 2. EC can get result of student
the system. from registrar database.
3. Insert selected candidate to the system. 3. Successfully inserted
4. Use case ends. Message
Alternative If candidates are not full filed the criteria of the election, the EC can change
course of other candidate students from the university.
Action

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 8.6 Use case description for vote

Use case ID UC-05


Name Choose
Priority High
Actor Voter
Description This explains voting process by using the system.
Precondition: Voters must be registered student in the university.
Post condition Logout the account.
Basic course User action System response
of action 1. Open website to enter his/her username  The system checks if
and password. username and password
2. Voter gets his validation form the system. is correct or not.
3. Voters must have Username and password  Display online vote page
to login in to the system.  You select successfully
4. If the Username and password is correct message displayed.
online vote page is opened.
5. Voter see candidate and then select only
one competitor.
6. Finally click on vote button.
7. Use case ends
Alternative If the Username and password is not correct go to step 3 basic course of
course of action and login again.
action If voter not selected one candidate try again to open the page and select the
candidate.
If candidate identification not happened back and open the page again.
Table 9.7 Use case Generate reports

Use case ID UC-06

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Name Generate reports


Priority High
Actor Administrator
Description The administrator finally see total reports from the system
Precondition: The election process or time must finish.
Post condition Generate final Report Information
Basic course of User action System response
action 1. The administrator login to the Check if username and
system by their username and password are correct system
password. responded valid page.
2. If username and password are If not correct display error
correct page is opened. message.

3. Click on reports from page.

4. Fetch Report

5. Use case ends.


Alternative If required information is empty or not found try again the system.
course of action

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 10.8 Use case description for View result


Use case ID UC-07
Name View result
Priority Medium
Actor All user of the system
Description This describes the process of how the voters view the election results by
using the system.
Precondition: Time must be run over the limit.
Post condition The user knows the wanted information.
Basic course of User action System response
action 1. The user must be open  The system respond
website. requested action to the
2. The user can ask information administrator.
they want to know.  The system display searched
3. After searching necessary data or information.
information click on view button.  System display successfully
4. After getting necessary message.
information they can view.

5. Use case end.

Alternative If all users can’t see the result of the election, try again and login to the
course of action system.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 11.9 Use case logout


Use case ID UC-8
Name Logout
Priority High
Actor Voter ,Election committee ,Admin, and Student dean
Description The Voter, Election committee and Administrator of the system must
logout after you finish work properly.
Precondition: UC-1
Post condition The system logout
Basic course of User action System response
action
1. The Voter, Election committee, candidate and The system responds
Administrator went to logout from the site. the requested action.
2. The Voter, Election committee, Admin, and The system forms
Administrator click on logout button. that page to login
3. The use case exit. page.
Alternative If not successfully logout please try again it maybe connection problem
course of action go to basic course of action step two.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 12.10 Use case description for Create Account

Use case ID UC-9


Use case name Create Account

Description Used to create account for ECs.

Actor Administrator

Pre- condition: The user must be approved as Election Committee

Post- condition The user account successfully created.

Basic course of Step1.The administrator wants to create account.


action (Flow of
Step2.The system displays create account page.
event):
Step3.The administrator fills the required information and submits it.

Step4.The system validates the information.

Step5.The system registers the users into the system.

Step6.The system displays created account information.

Step7.The use case ends.

Alternative Invalid information entry.


course of action
1. The system displays error message.
(Flow of event):
2. Go to step 2 to fill again.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 13.11 Use case documentation for Post announcement

Use case ID UC-10


Use case name Post announcement

Description Administrator used to post announcement.

Actor Administrator and election committee

Pre-condition First login to the system.

Post- condition Newer Information is posted

Basic course of action Step1. Open the homepage.


(Flow of event):
Step2. Login to the system.

Step3. Click on Add news link.

Step4. Fills the new posting form.

Step5. Click submit button.

Step6. End use case.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 14.12 Use case description for view candidate

Use case ID UC-11


Name View candidate
Priority Medium
Actor All user of the system
Description This describes the process of how the candidates view the
candidates’ information by using the system.
Precondition: Time must be run over the limit.
Post condition The user knows the wanted information.
Basic course of User action System response
action 3. The user must be open website.  The system respond
4. The user can ask information requested action to
they want to know. the administrator.
3. After searching necessary  The system display
information click on candidates searched data or
view button. information.
4. After getting necessary  System display
information they can view. successfully
message.
5. Use case end.

Alternative If all users can’t see the candidates’ information, try again and
course of action login to the system.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

3.2. Sequence Diagram


Sequence diagrams are used to model the logic of usage scenarios or the description of
the potential way the system used. Sequence diagrams are a great way to validate and
flesh out the logic of use case scenarios and to document the design of the system.

Login sequence diagram

Figure3. 2 Sequences diagram of login into the system

Sequence diagram for Approve committee

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3. 3 Sequence diagram for Approve committee

Sequence diagram for candidate register

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3. 4 Sequence diagram for candidate register

Sequence diagram for approve candidates

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3. 5 Sequence diagram for approve candidates

Sequence diagram for Search

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3. 6 Sequence diagram for Search

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3. 7Sequences diagram for generate report

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Sequences diagram for vote

Figure3. 8Sequences diagram for vote/choose

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3.9Sequences diagram for logout for all users

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

3.3. Class diagram


Class diagram in the Unified Modeling Language (UML) is a type of static structure
diagram that describes the structure of a system by showing the system's classes, their
attributes, operations (or methods), and the relationships among objects. For this project
the project team develops the following class diagrams.

Figure3.10 Class diagram

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

3.4 Activity diagram

Activity diagrams are graphical representations of workflows of stepwise activities and


actions with support for choice, iteration and concurrency. In the unified modeling language
(UML), activity diagrams can be used to describe the business and operational step-by-
step workflows of components in a system. An activity diagram shows the overall flow of
control.

Activity diagram of login to the system

Figure3.11 Activity diagram of login to the system

Activity diagram of vote

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3.12 Activity diagram of vote

Activity diagram for create account

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure3. 13 Activity diagram for create account

CHAPTER FOUR: SYSTEM DESIGN

Up to now we were concentrating on the problem domain. We discussed the user’s


requirement in the requirement specification document. After this has been done, the
analysis part was completed using different UML diagrams. System design is the most

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

important step to get into the solution domain. So, in this part the design aspect of the
proposed system will be described. System design is the process and it focuses on
decomposing the system into manageable parts. During requirements analysis, we
concentrated on the purpose and the functionality of the system.

The system have client server architecture where the user access the website from the
server having WAMP server for manipulating information about registered users like
customers, employees and suppliers. Normally users are expected to browse the website
in order to view any information in each page of the website. The purpose of this part
(design) is to indicate the transformation of the analysis part into design and also show
how to convert analysis into implementation.

4.1 Design Goals


The purpose of designing is to show the direction how the system is built and to obtain
clear and enough information needed to drive the actual implementation of the system.
The design goal is derived from the nonfunctional requirements of the system, which
were stated in chapter two of this document. They describes on what the system should
focus on. This includes:
 User interface: The user interface of the system should be easy to use by each
user of the system with little training. Our interfaces contains different buttons
which guides the users on what they need to click and fill form to enter to their
pages in order to do what they want. So the system’s interface is easy to go
through. We also used different icons, buttons, frames and colors to make the
interface more attractive. The interface also can show where users are going to
click.
 Security: Normal users are not allowed to edit any information that is displayed
in each page and also information that is stored in the web database. So only users
that are allowed by the administrator can use the system, so no one can create an
account by itself and access the system. But only legally person who has an

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

account can login to the system using his/her username and password. So, we can
ensure that our system is definitely secured.
 Fault tolerance: The system should be able to give response (error message)
when the user enters incorrect input. If the user enter incorrect data like username,
password and other invalid inputs, then the system displays error message that
inform the user to enter the correct data, to do so, we apply validation to our
system using java script.
 Assumptions and dependencies: Since we are going to develop a new
application, it is highly dependent on the existence of web server application
software, and on persistent database management (DBMS). End-users need to
have only basic knowledge on how to use computer application, and they need to
know English language since our system is to be developed using it.
 End user Criteria: Usability is the extent to which a product can be used by
specified users to achieve specified goals with effectiveness, efficiency and
satisfaction in a specified context of use. From the end users’ perspective the
system should be designed in such a way that it is easy to learn and use
efficiently.

4.2. System Decomposition


System decompositions or breaking down a system into its components (subsystems)
help to reduce the complexity of the system. The subsystems can be considered as
packages holding related classes/objects. Here we will focus on the system components
and their relationships with each other.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure4.14 System Decomposition diagram

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE Page


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

4.3. System architecture


The architectural Design is a top level design which shows there entities, their
relationships. The objectives of designing are to model a system with high quality. The
ability of the programmers to implement a high-quality, error-free system depends very
much on the nature of the design created by the designer. System architecture is the
conceptual model that defines the structure, behavior, and more views of a student union
voting system. The system architecture diagram shows the connection between different
machines and the path they are connected to each other. The newly developed system
uses client/server architecture. In this type of architecture the server is responsible to
receive request from the client and respond to the request, where as the client is
responsible to interact with the users of the system.

Figure4. 15 System architecture

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

4.4. Deployment Diagram


Deployment diagrams show the configuration of run-time processing elements and the
software components, processes, and objects that live on them. Software component
instances represent run-time manifestations of code units. Deployment diagrams are
useful when your software solution is deployed across multiple machines with each
having a unique configuration.

Figure4. 16 Deployment diagram

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

4.5. Persistence Data Management


Persistent Diagram is the process of producing a detailed data model of a database. This
logical data model contains all the needed logical and physical design choices and
physical storage parameters needed to generate a design in a data definition language,
which can then be used to create a database. A fully attributed data model contains
detailed attributes for each entity. It can be thought of as the logical design of the base
data structures used to store the data.

Figure4. 17 persistence data management diagram

4.6. Access Control and security


Access control is way of enabling & limiting access to a system or to physical or virtual
resources according to access level. A control is a process by which users are denied
access to the system or granted access and certain privileges to systems, resources or
information. When the user can login, the user will be authenticated and then authorized
access to the system.

Table 15. 1 System access control

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Use case Administrator Election Candidate Student/ SQL


committee voter agent

Manage users 
account

Approve candidate 

Approve EC 

Post result and 


image news

Apply registration  

Choose 

Post 
announcement

Create account  

Send password 
reset key

4.7. User Interface Design


User interface design is the overall process of designing how a user will be able to
interact with a system.
The goal of user interface design is to make the user's interaction as simple and efficient
as possible, in terms of accomplishing user goals.
3. Home page user interface

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure4. 18 Home page user interface

2. Voter registration page user interface

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure4. 19 Voter registration page

CHAPTER FIVE: IMPLEMENTATION

5.1 Tools
In order to implement our system we used the following program tools:

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

 Front end: PHP and JavaScript


 Back end: MY SQL server
 Web server: WAMP server
 Browser: Mozilla fire fox
 Dreamweaver/Notepad++: Used to write the specific code.
 Window 8 Operating system and above

5.2. Algorithms
In this part we describe the algorithm of the operations or methods which found in class
diagram using Pseudo code. Pseudo code is one type of algorithm representation method
using English language. So we have used pseudo code algorithm to show how the system
works.

I Pseudo code for login


Steps/procedure
Method name=login
Begin {
Variables: Acount_Type/status username, password
If (*inputs are valid*) {
(*select the previous username and password from database and compare with entered*)
If Acount_Type/status== entered Acount_Type/status username = =entered username
and Password = = entered password then (*display user’s home page *)}
Otherwise {Display “login error message!” }
End if
End }
II Pseudo code for register Candidate
Steps/procedure
Method name=register
Begin {

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Variables-first name, last name, email , sex, id no, dept, status, year, phone no,image
If (*variables are valid*) {
Then Add to table candidate (first name, last name, email, sex, id no, dept, status, year,
phone, image)
Values (first name variable, last name variable, email variable, sex variable, id no
variable, dept variable, status variable, year variable, phone variable, image variable) ;
}
Otherwise {
Display “invalid inputs error message!”
End if}
End}

III Pseudo code online vote

Steps/procedure
Method name= vote online
Begin {
Variables: voter ID, Password, status
If (*inputs are valid*) {
(*select the previous entered data from database and compare with entered*)
If voter ID = entered voter ID and Password = entered password
Then (*Display vote page *)
}
If status = Unvoted {
then (*you have successfully voted *)
}
Else if {
status = voted then alert “you are already voted!”;
}

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Otherwise {
Display “login error message!”
} End if
End }

5.3 Environments
The goal is to create a testing environment as close to the development environment as
possible and to provide an automated black box test suite that can be run when changes
are made to the software. The test environment is the same windows environment used
for software development. Below are the hardware and software requirements for the test
environment.

Table 16 .1The hardware and network requirements for testing activities are:

Hardware Purpose

1. Any PC and Mobile where we can To be able to run the online voting system.
connect to internet and run browser.

2. A web server to be able to setup To be able to run the online prototype online
web services and online voting web voting system.
pages.

Table 17.2The software requirements for testing activities are:

Software Purpose

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

1. Windows XP,7, 8, etc. The system shall operate in Windows operating


systems

2. Web Server To be able to run the web server

3. Windows 2007 and above for More secure than the other windows OSs.
the web server Operating
system

5.4 Sample code and sample output


5.4.1 Sample code for Home page

<html>
<head>
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico"/>
<title>Online Student Union Voting System for DTU </title>
</head>
<frameset cols="3%,*,3%" frameborder="0" scrolling="yes">
<frame name="top" src="no.html" noresize>
<frameset rows="19.8%,4%,71%,32" border="no" >
<frame name="top" src="top.html"width="1000"scrolling="no">
<frame name="cont1" src="globallink.html" scrolling="no"noresize >
<frameset cols="10.2%,35%,10%"scrolling="no">
<frame src="left.html"name="yee"scrolling="no" noresize>
<frame name="cont2" src="slid.php" noresize>
<frame name="cont2" src="right.html" scrolling="no"noresize>
</frameset>
<frameset rows="10000%">
<frame name="bottom" src="bootom.html"noresize scrolling="no">
</frameset>
</frameset>

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

<frame name="top" src="no.html"noresize scrolling="no">


</frameset>

</html

Figure5.20 Home page sample output

5.4.2 Login sample program

<?php session_start();

//Unset the variables stored in session

unset($_SESSION['account_type']);

unset($_SESSION['username']);

unset($_SESSION['password']);

?> <td><form name="loginform" action="validate_log.php" onsubmit="return validate()"


method="post"> <table width="483" height="313" align="center" bgcolor="#99CCCC" border="10%">
<td width="28%">&nbsp;&nbsp;<font size="+2" color="#CC3333"face="Arial Black">Login
Here</font><img src="images/login.jpg" width="174" height="209" /> </td>

<td width="72%">

<p> <font color="CC6633" size="+1" face="Cooper Black"> <b>Acount_Type:</b></font></p>

<p><select name="account_type" id="textbox" required="required">

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

<?php $mm=array("admin","Commitee"); $i=0;

foreach($mm as $mon){ $i++; value='$mon'> $mon</option>"; ?>

</select><p> <font color="#CC6633"size="+1" face="Cooper Black"><b>Username:</b></font>


</p> <input type="username" name="username" id="textbox" maxlength="23" value="" size=""
required="required"/>

<p> <font color="#CC6633"size="+1" face="Cooper Black"><b>Password:</b></font> </p>

<input type="password" name="password" id="pass" maxlength="30" value="" size=""

<input type="submit" name="submit" value="Login"size="" valign="center" />

<input type="reset" name="re" value="Clear" />

</font></p></td> </tr> </table></form><body bgcolor=#ffffcc></body></html >

Figure5. 21 output for login


5.4.3 Sample code for online vote

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

<! <html xmlns="http://www.w3.org/1999/xhtml">


<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Countdown Timer</title>
</head>
<body>
<body bgcolor="#ffffcc">
<th width="49%" height="48" scope="row"><p>
<?php
$con=mysql_connect("localhost","root","");
if(!$con)die("unable to connect");
mysql_select_db("voting",$con);
$b=mysql_query('select image,fname,cid,status,lname from candidate');
echo"<font color='blue'>WELL COME TO ELECTION 2017!!</font>";
echo"&nbsp &nbsp";echo"<br>";
echo"<br>";echo"<table border=''>";
echo"<tr> <td> Full Name</td> <td> Photo</td><td>Choice</td></tr>";
echo "<tr>";while($row = mysql_fetch_array($b))
{
$user=$row['status'];
if($user=="passed"){
echo"<td>";
echo $row['fname'];
echo"&nbsp &nbsp";
echo $row['lname'];
echo"</td>";?> <td>
<a href="detailc.php?cid=<?php echo $row['cid'];?>"> <img src ="<?php echo $row['image']?>"width
="150px" height="150px" align="left"/><a/></td>
<td><a href="voteme.php?cid=<?php echo $row['cid'];?>"><img src="images/vote.jpg"width ="150px"
height="150px"title="Click To give your Voice"><a/></td></tr><?php
}elseecho"";}echo"</table>";?></body></body></html>

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure5. 22 Sample output for online vote

5.5 User Manual


Since our system is online, everything important for the user would be explained and
implemented while giving short training when the system is deployed. Rather there is no
need of preparing full user manual because it is only deployed (hosted) on a single
machine that is on the server. But the team has prepared user manual entitled as a help in
our system navigation bar that can guide users when they get any confusion during their
usage. So, the following is the common question most users want to get the answer to
have access to our system.

How to you use our developed online vote system/application?

 First open the web page of the system by typing www.studunion.dtu.et


 Next show all information of the system from the displayed homepage
 In login page enter username and password
 In voting page enter voter id and password
 Select any service from main menu

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

CHAPTER SIX: TESTING

6.1. Unit Testing


In this testing part all, every module of the System is separately tested. I.e. the team tests
every module by applying some selection mechanism. Through this mechanism every
modules gets tested. If an error occurs correction will be taken without affecting another
module.

Table 18. 1Authentication of user login

Unit test=authentication of login user

Assumption =login to the user’s appropriate page

Test data=Acount_Type ,username, password(empty,valid,invalid)

Steps to be executed Test data Expected result

Empty username and Username=” ”, password=” “ Please fill out all the
password necessary filled

Valid Acount_Type, Acount_Type =admin Please enter valid


invalid username, or Username=amsalu and username and password
password Password=abcd

If Valid Acount_Type Acount_Type=”admin” Successfully logged in to


username and password Username=admin password=1234 the system

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Table 19. 2Voter registration

Unit to Test = Registration of Voter

Assumption= to get appropriate service from the system

Test Data = first name, last name, department, sex, Vote ID, password (invalid ,
Valid ,empty)

Steps to be Executed Test Data Expected Results

Empty first name and Any valid data for Please enter all the
all others filled and Click the other fields necessary filled
register button

Invalid last name and last name=78amsalu Please enter Valid letters
valid input for other numbers not allowed
filled and Click register
button

Enter valid age, empty age= 16 Any valid data Please Enter the valid age
all other filled and for the other fields between 18-65
Click register button

Enter All fields with All fields with valid data Successfully Registered
valid input

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

Figure5. 23 Samples of unit testing for login

6.2. Integration Testing


In this testing part, we employed this testing mechanism in our system to expose defects
in the interface and interaction between components (modules) that have been
successfully unit tested when integrated together to perform specific tasks and activities,
So we can make sure that the system’s component are correctly integrated each other.
This mechanism will seek to verify the interface between numbers of components.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

6.3 Acceptance testing


This testing methodology is the final phase of functional software testing and
involves making sure that all the project requirements have been meet and that the
end-users have tested the system to make sure it operates as expected and meets all
their defined requirements. In this testing there are another sub testing which would
be performed:

 Alpha testing: When our system has been completed, we have examined it by
actual users and an independent test team. Hence, Representative of the user would
come to us and test the system by himself whether it meets their need or not.
 Beta testing: - The system would have been tested by the users at their own
working place whether it meets their needs or not.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

CHAPTER SEVEN: CONCLUSION AND RECOMENDATION

7.1 Conclusion
This system is designed to fulfill the required requirements of student voting for Debre Tabor
university students. And this project has given us vast knowledge on the different
computing technologies. Our project enables a voter to cast his/her vote through internet
without going to voting closet and additionally able to register himself/herself for voting
in advance, proxy vote or double voting is not possible, fast to access, highly secure, easy
to maintain all information of voting, highly efficient , flexible and attractive with easy
GUI approach. Hence, this voting percentage will increase drastically. The use of online
voting has the capability to reduce or remove unwanted human errors. In addition to its
reliability, online voting can handle multiple modalities, and provide better scalability for
large elections. Online voting is also an excellent mechanism. We were also able to learn
a lot of system analysis and design of the project, algorithm design, and all about object
oriented concept with database. We came to know the different issues that come in the
way of the development of the online voting system. Security was the main issue in the
development of this project and we conclude that if these issues are taken into
consideration, online voting system will become and real life system from just more a
project.

7.2 Recommendation
In general, this project contributes an initial work on online voting system for Debre
Tabor University students’ union. But, this work needs to mature in other similar projects
in the future, to be scaled up to the whole university as well as for our countries. It is
recommended also that Debre Tabor University will take this opportunity to reduce work
load to entertain such alternative voting system by Integrating with their official sites
with other security method such as online digital signature and online facial recognition.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

CHAPTER EGHIT: REFERENCES


[1] Modern system analysis and design third edition by JEFFERY A.HOFFER,JOEY
F.GEORGE,JOSEPH S.VALACLCH (we take or read from this portion gathering
requirement method or what method are used for gathering information.) Retrieved on
Saturday15, November 2016 at 8:20am local time

[2] Modern system analysis and design third edition by JEFFERY A.HOFFER,
JOEYF.GEORGE, and JOSEPH S.VALACLCH (Show to design sequence diagram with
example.) Retrieved on Sunday13, January 2016 at 3:15am local time

[3] Modern system analysis and design third edition by JEFFERY A.HOFFER, JOEY
F.GEORGE, and JOSEPH S.VALACLCH (for the class diagram detail operation,
attribute, inheritance and association.) Retrieved on Monday07 January 2016, at 2:15pm
local time

[4] Modern system analysis and design third edition by JEFFERY A.HOFFER,JOEY
F.GEORGE,JOSEPH S.VALACLCH (about how to design activity diagram and we
seen some example in this portion.) Retrieved on Friday17, January 2016 at 8:20am local
time

From internet: Site link

[1].Sequencediagramretrievedfromhttp://www.agilemodeling.com/artifacts/
sequenceDiagram.htm(sequnce diagram and example). On Thursday, 2016 at 2:45am
local time.
[2].UMLclassDiagramretrievedfromhttp://www.tutorialspoint.com/uml/
uml_class_diagram.htm(how to draw class diagram and have details example). On
Saturday, 2016, at 2:20pm local time.

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE


ONLINE STUDENT UNION VOTING SYSTEM FOR DTU

[3].AmericanSecureOnlineVotingSystemretrievedfromhttp://www.scribd.com/doc/
21386702/Secure-Online-Voting-System Trip Adler and Jared Friedman (2007), On
Sunday, 2017, at 1:42pm local time.

CHAPTER NINE: APPENDICES


Sample question for questioner purpose
1. When the student committee is starting from the university?
2. How many members are their when it established?
3. How the system works currently?
4. What are the current states of the system?
5. What are the problems faced using the currently available system?
6. Is it better to develop an online system?
7. Have students in campus today get a full facilitate?
8. What are the main objectives of the union?
9. What is the mission and vision of the DTU student union?
10. How does your current system work?
 Is it manual?
 Is it computerized?
 Is it online?
11. What are the procedures or steps to use your system easily?
12. Where do you keep students security in the campus?
13. How do you think generate this system to the future?

DEBRE TABOR UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE

You might also like