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

MATTU UNIVERSITY

COLLEGE OF ENGINEERING AND TECHNOLOGY


DEPARTMENT OF INFORMETION AND TECHNOLOGY
Project Title: Online Student Union Voting System For Mattu
University

Submitted To: The Department Of Information Technology


SUBMITTED BY:
1.Baheilu Awoke Ru/1643/13

2.Burtukan Asfaw Ru/2158/13

3.Dawit Barsisa Ru/2154/13

4.Sintayehu Mitiku Ru/3913/13

5.Thiel Chuol Ru/1947/13

Advisor Mr. Ibsa B(M.Sc). Mattu, Oromia, Ethiopia

Submission Date: May/28/2024


APPROVAL OF ADVISOR AND EXAMINERS

1.______________ _____________ __________

Advisor Name Signature Date

2.__________________ _____________ _________

Examiner Name Signature Date

3. _______________ ______________ _________

Examiner Name Signature Date

4. _______________ ______________ _________

Examiner Name Signature Date


Table of Contents
List of figures.........................................................................................................IV
Lists Of Table..........................................................................................................V
ABBREVIATIONS AND ACRONYMS...............................................................VI
Acknowledgement.................................................................................................VII
Abstract.................................................................................................................VIII
CHAPTER ONE: INTRODUCTION.......................................................................1
1.1 Introduction to the Project...................................................................................1
1.2 Background of the organization..........................................................................2
1.2.1 Vision............................................................................................................2
1.2.2 Mission..........................................................................................................3
1.3. Background of project........................................................................................3
1.4. Statement of the Problem...................................................................................3
1.5 Objective of the project.......................................................................................4
1.5.1 General objective of the project....................................................................4
1.5.2 Specific objective..........................................................................................4
1.6 Methodology........................................................................................................5
1.6.1 Data gathering technique...............................................................................5
1.6.2 System Analysis and Design........................................................................5
1.6.3 Software process model................................................................................6
1.6.4 Tools and techniques.....................................................................................7
1.6.4.1 Software requirement Tools....................................................................7
1.6.4.2 Hardware requirement tools....................................................................7
1.6.4.3 Programming language...........................................................................7
1.6.4.5 Testing Methodology..............................................................................8
1.7. Feasibility study.................................................................................................9

I
1.7.1 Economic feasibility...................................................................................9
1.7.2 Technical feasibility...................................................................................9
1.7.3 Operational feasibility.............................................................................10
1.7.4 Schedule feasibility (Time feasibility).....................................................10
1.8 Scope of the Project...........................................................................................10
1.9 Limitation of the project....................................................................................11
1.10 Significant of the project..............................................................................11
1.11 Time Schedule.................................................................................................12
1.12 Risk..................................................................................................................12
1.12.1 Risk Assessment and management...........................................................12
1.13 Organization Of The Project...........................................................................12
CHAPTER TWO.....................................................................................................13
2.1 Introduction.......................................................................................................13
2.2 Existing System.................................................................................................13
2.2.1 Existing System Description.......................................................................13
2.2.2 Supplementary Requirements.....................................................................13
1. Business Rules..............................................................................................13
2.3 New System.......................................................................................................14
2.3.1 Functional Requirement..............................................................................14
2.3.1.1 User requirement...................................................................................14
2.3.2 System requirements...................................................................................15
2.3.2.1 Use Case Diagram................................................................................15
2.3.2.1.1 Use Case Diagram Identification......................................................15
2.3.3 Non Functional Requirement......................................................................16
2.3.4 Essential Use case Diagram.......................................................................16
2.3.5 System Use case diagram............................................................................17
2.2 .6 Use case description...................................................................................18

II
2.3.7 Sequence diagram.......................................................................................30
2.3.8 Activity diagram..........................................................................................36
2.3.9 Conceptual Modeling:Class Diagram........................................................41
2.3.10 user interface Prototyping.........................................................................43
CHAPTER THREE: DESIGN................................................................................44
3.1 purpose and goals of design..............................................................................44
3.2 class modeling diagram.....................................................................................44
3.3 proposed software architecture..........................................................................46
3.3.1 Subsystem Decomposition..........................................................................46
3.3.2 Component diagram....................................................................................46
3.3.3 Deployment diagram...................................................................................47
3.3.4 Persistence Modeling for object oriented database.....................................48
3.3.5 Access control and security.........................................................................49
CHAPTER FOUR: IMPLEMENTATION AND TESTING..................................50
4.1 Implementation..................................................................................................50
4.2 Choose Your Test Approach.............................................................................54
4.3 Functional Test Specifications..........................................................................55
CHAPTER FIVE: CONCLUSION AND RECOMMENDATION........................56
5.1 Conclusion.........................................................................................................56
5.2 Recommendation...............................................................................................56
References...............................................................................................................57

III
List of figures
Figure 1 Software development model.....................................................................6
Figure 2 Time Scheduling .....................................................................................12
Figure 3 Essential Use case Diagram...................................................................17
Figure 4 System Use case diagram........................................................................18
Figure 5 Sequence diagram for login.....................................................................32
Figure 6 Sequence diagram for logout...................................................................33
Figure 7 Sequence diagram for creating an account...............................................34
Figure 8 Sequence diagram for casting vote..........................................................36
Figure 9 Activity diagram for login........................................................................37
Figure 10 Activity diagram for creating an account..............................................38
Figure 11 Activity diagram for voting....................................................................40
Figure 12 Activity diagram for updating account..................................................41
Figure 13 user interface Prototyping.....................................................................43
Figure 14 class modeling diagram..........................................................................45
Figure 15 Component diagram...............................................................................46
Figure 16 Deployment diagram.............................................................................47
Figure 17 Persistence Modeling ...........................................................................48

IV
Lists Of Table
Table 1 front end.......................................................................................................7
Table 2 back end.......................................................................................................8
Table 3 Actor identification....................................................................................15
Table 4 Use case Login..........................................................................................19
Table 5 Use case register........................................................................................20
Table 6 use a case description or create an account...............................................21
Table 7 Use case Approve election committee......................................................22
Table 8 Use case Approve candidate......................................................................23
Table 9 Use case Search information ....................................................................24
Table 10 Use case on vote......................................................................................25
Table 11 Use case Generate reports........................................................................26
Table 12 Use case View result...............................................................................27
Table 13 Use case logout........................................................................................28
Table 14 Use case View candidate........................................................................29
Table 15 Use case Give feedback...........................................................................30
Table 16 Access control and security....................................................................49

V
ABBREVIATIONS AND ACRONYMS

CPU:-Computer-Processing Unit

CSS:-Cascading Style Sheet

HTML:-Hyper Text Markup Language

PHP:- Hyper Preprocessor Scripting Language

RAM: Random Access Memory

UML:-Unified Modeling Language

XAMPP: stands for X-operating system, Apache, MySQL, PHP, Perl.

MaU: Mattu University

VI
Acknowledgement
We, the team behind the development and implementation of the Online Student Union Voting
System for Mattu University, would like to express our heartfelt gratitude to all those who have
contributed to the successful completion of this final project.First and foremost, we extend our
sincere thanks to the faculty members and advisors who provided us with invaluable guidance,
support, and encouragement throughout the course of this project. Their expertise, feedback, and
unwavering commitment to our success have been instrumental in shaping the development and
implementation of the Online Student Union Voting System.Furthermore, we would like to
acknowledge the Student Union Election Committee for their collaboration.n conclusion, we are
proud to have been part of this final project that has not only modernized the democratic process
within our student union but has also promoted transparency, inclusive, and student
empowerment,We would like to express our deepest gratitude to everyone who has contributed
to the success of this project. Your support and collaboration have been invaluable.

VII
Abstract
Online Student Union Voting System for Mattu University is a comprehensive web-based
platform designed to modernize and streamline the student union election process. This system
offers students a user-friendly interface to securely log in using their university credentials and
participate in the voting process. Through this system, students can view detailed profiles of
candidates, access debate schedules, receive voting reminders, and cast their votes electronically
for their preferred candidates.The primary goal of this system is to enhance transparency,
efficiency, and engagement in the student union election process at Mattu University. By
providing real-time updates on voter turnout and results, the system ensures fairness and
accountability in the election process. Furthermore, the platform aims to increase student
participation by making the voting process more accessible and convenient for all students. the
Online Student Union Voting System for Mattu University serves as a valuable tool for
promoting democracy, fostering student involvement, and creating a more inclusive and
democratic student union environment within the university community.

VIII
CHAPTER ONE: INTRODUCTION

1.1 Introduction to the Project


Online, in a generic sense, refers to when an electronic device is on and connected to other
devices, such as another computer, a network or a device such as a printer. More recently, the
term online has come to mean connected to the Internet. In this case, either a person may be
online when he or she is using the Internet, or the computer itself may be said to online when it
has established an Internet connection. An online voting system is a web application that allows
voters can vote for their representative easily in voting systems. In the online student union,
voting system election can be conducted in a free and fair manner every two years in secret
ballots. The president, the vice president, and the general secretary come to power through a
direct election in a secret ballot every two years per the vote they secured. The person with the
highest vote shall become the president, in addition to these chief executives, the union has
executive committees. Our project aims to develop an interactive, electronic, voting system for
Mattu student union members’ election with which students can vote using a web browser. It
automates the existing manual activities like voter registration, candidate & election process
voting, and vote counting. The project is expected to help students as well as the university at
large in overcoming the existing voting problems such as the time-consuming voting process,
extravagant resource-oriented election, geographically limited voting, and undocumented and
unstructured information capture. The system makes not only the voting process easy but also
assists students by providing them with information associated with the student union. The
system is capable of improving the user effort and time required and reduces the resource
expenditure of the university.

1
1.2 Background of the organization
Mattu university,in its acronym (mau),was established as a result of ethiopian government’s
endeavor towards realizing the country’s renaissance through educating the generation.its
foundation was laid by the then deputy minister of education H,E, Ato Adhana Haile and the
then oromia national regional state president H,E,Aba Dula Gemeda and other national and
regional authorities at the presence of multitudes from different angles of ilu aba bor zone to
celebrate the ceremony on October 11,2001 e,c /October-,2008/9.mattu university (mau) is third
generation public universities in ethiopia, the year 2010 marks the beginning of the first phase
1
buildings.up on the accomplishment of the /4 of the first phase mattu university has started its
career by enrolling 300 undergraduate regular students in 2011.two faculties faculty of
engineering and technology and faculty of natural and computational science,where the first
faculties opened..department of civil engineering,mechanical engineering,and electrical
engineering were under faculty of engineering and department of biology,chemistry,physics and
mathematics were under faculty of natural science.Currently its admission capacity has reached
over 22,000. When comes to its program profile, the university is currently running 56
undergraduate and 42 graduate programs through diversified modalities in two campuses. These
academic programs are run under eight colleges and three schools namely: College of
engineering and technology, college of natural and computational sciences, college of public
health and medical sciences, social science and humanities, college of business and economics,
college of education and behavioral sciences, college of agriculture, college of natural resource
management and school of law, school of commerce and school of agriculture. Parallel with
teaching-leaning, the university has been conducting researches targeting to solve societal
problems based on already identified thematic areas. Mattu university is located 600km apart
from the capitol Addis Ababa to the south west of the country,it is located in oromia national
regional state in Ilu Aba bor zone.it is situated to the north west of mettu town,the capital of the
zone.the zone is characterized by its ever green tropical forest and most of rainy months.

1.2.1 Vision
To be known or recognized university in modern agriculture and natural science fields of study,
research and community services in Ethiopia in 2030.

2
1.2.2 Mission
Producing competent and decent graduates, conducting problem solving researches,
delivering/providing research-based community services and establishing collaboration and
partnership with international and national universities, research centers and industries.

1.3. Background of project


The existing system of the Mattu University 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.An online voting system is a web application that allows voters can vote for
their representative easily in voting systems. In the online student union, voting system election
can be conducted in a free and fair manner every two years in secret ballots.The proposed system
will solve the problems that are faced on the existing system.

1.4. Statement of the Problem


The existing system has several problems in the working procedure for universities and students.
At present Mattu University's manual system deals with the voting system. The existing student
union members' voting system has the following problems:
 Time-consuming: The process of collecting data and entering the collected data into the
existing system consumes or takes too much time to conduct. For example, collecting
candidate data from each department requires much time.
 Too much paperwork: since the voting system is manual, the process involves much
paperwork and paper storage, which is difficult as paper becomes bulky with the student
size. For example, registering candidate from each department requires paperwork and
paper to act as storage material.
 Loss of registration: The name of the candidate is registered on the paper since it is
manual and the paper can be lost and it may require re-registration.
 Duplication of work: There are repetitions of works in the existing system. This
duplication of work leads to losing many resources. For example, the name of the

3
candidate is registered on the paper since it is manual and the paper can be lost then the
candidate register repeatedly so duplication of works can occur.
 Difficult to keep the student’s interest: Because the system is manual, the candidate
information is not fairly verified to the student. For example, candidate information can
be verified by two students that select from each class from each department to elect or to
be elected the president and vice president so two students cannot be satisfied with all
student interests.
 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. Online Student
Union Voting because there is a manual unauthorized person can update, and delete
candidate information.
 Biased

1.5 Objective of the project


1.5.1 General objective of the project
The general objective of our project is to develop an online voting system for the Mattu
University students union.

1.5.2 Specific objective


The specific objectives of the proposed system are: To Study and understand the existing voting
process.
 Selecting the appropriate development tools for the system.
 Verify selected candidate to students and student dean.
 Designing the system architecture of the system.
 Documenting the whole system.
 Designing back-end database to the system that can hold all the information of the system
users.
 Designing friendly user interface.
 Implementing standard security that can keep the confidentiality of the data at rest as well as at
communication lines.
 Implementation of the system.

4
 Testing and deploying the system

1.6 Methodology
1.6.1 Data gathering technique
To design and develop an online student union voting system for Mattu University students, we
used the following methods to gather information about the current system and alternate ways to
develop the new system.
Interview: To collect information from the president of the student council and executive
members of the union.
Document analysis: Study the document that is used in the past, to ensure whether the system
had been figured out before and understand the problems in the current system, rules, and
procedures for processing data.
Observation:to collect information from a student that can be voted in the past.

1.6.2 System Analysis and Design


We use OOSAD (Object Oriented System Analysis and Design) Methodology. Because of
OOSAD provides the following advantages. Thus are: -

 Improved modularity: OOSAD encourages the creation of small, reusable objects that can
be combined to create more complex systems, improving the modularity and maintainability
of the software.

 Better abstraction: OOSAD provides a high-level, abstract representation of a software


system, making it easier to understand and maintain.

 Improved reuse: OOSAD encourages the reuse of objects and object-oriented design
patterns, reducing the amount of code that needs to be written and improving the quality and
consistency of the software.

 Improved communication: OOSAD provides a common vocabulary and methodology for


software developers, improving communication and collaboration within teams.

 Reusability: OOSAD emphasizes the use of reusable components and design patterns,
which can save time and effort in software development by reducing the need to create new
code from scratch.

 Scalability: OOSAD can help developers design software systems that are scalable and can
handle changes in user demand and business requirements over time.

5
 Maintainability: OOSAD emphasizes modular design and can help developers create
software systems that are easier to maintain and update over time.

 Flexibility: OOSAD can help developers design software systems that are flexible and can
adapt to changing business requirements over time.

 Improved software quality: OOSAD emphasizes the use of encapsulation, inheritance, and
polymorphism, which can lead to software systems that are more reliable, secure, and
efficient.

1.6.3 Software process model


Software Processes is a coherent set of activities for specifying, designing, implementing, and
testing software systems. A software process model is an abstract representation of a process that
presents a description of a process from some particular perspective.

There are various software development life cycle models defined and designed which are
followed during the software development process. So, the proposed system follows an iterative
model. Because in this model each module passes through the initial planning, requirement
analysis, design, implementation, and testing phases.

The iterative process starts with a simple implementation of a subset of the software
requirements and iteratively enhances the evolving versions until the full system is implemented.
At each iteration, design modifications are made and new functional capabilities are added. The
basic idea behind this method is to develop a system through repeated cycles (iterative) and in
smaller portions at a time (incremental).

Figure 1 Software development model

6
1.6.4 Tools and techniques
1.6.4.1 Software requirement Tools
The software requirements specification is the single most important document in the software
development process. It provides the basis for development as well as for validation. The
following are software requirements:
 XAMPP server: is an open-source software package that provides a local web server
environment for testing and development.

 Visual Studio code: is a streamlined code editor with support for development
operations like debugging, task running, and version control.

 Microsoft word 2010: used to prepare the documentation.

 Microsoft excel 2010: used to make the project time schedule.

 Microsoft visio: used to make UML diagrams.

1.6.4.2 Hardware requirement tools


 Desktop computer/Personal computer- minimum 2

 USB Flash drive - minimum storage of 16GB

 Hard disk- minimum storage 500GB

1.6.4.3 Programming language


NO Front End Description

1 HTML uesd to create web pages

2 CSS/Bootstrap Used for describing the look


and formatting of adocument
written .

Table 1 front end


NO Back end Description

1 PHP a server side scripting


language that used to creating

7
dynamic web pages.

2 MYSQL database

Table 2 back end


1.6.4.5 Testing Methodology
Testing is the final phase of our implementation. Testing is checking of the system workability in
an attempt to discover errors and avoiding such errors from the system. In this the team members
tested the entire system as a whole with all forms, code, modules. In this we tested all the
functionalities in the System. All errors in the forms, functions, will be tested. To simplify the
testing process the project team followed the different types of tests that break the testing process
up into the distinct levels. These types testing are unit testing, integration testing and system
testing.

Unit testing:Unit testing is every module of the System is separately tested. It is often done by
the programmer to test that the unit he/she has implemented is producing expected output against
given input. Functional Test Specifications

Integration testing:Integration testing is the activity of software testing in which individual


software modules are combined and tested as a group. It occurs after unit testing and before
acceptance testing. Thus, Integration testing is a logical extension of unit testing. In its simplest
form, two units that have already been tested are combined into a component and the interface
between them is tested.

System Testing:It is the final step of testing. In this the team members tests the entire system as
a whole with all forms, code, modules. This form of testing is popularly known as Black Box
testing or System tests. In this the team members tests all the functionalities in the System.

1.7. Feasibility study


Does the feasibility study aim to provide answers to several issues such as Is it easy to operate?
Does the return on investment justify the project and running costs? Is the system compatible

8
with the legal, political and social requirements of society in general and that of Mattu University
and the country in particular?
Vision
 It determines the potential of the existing system.
 It is used to determine/finds out the problem of the existing system.
 It finds all possible solutions to the problems of the existing system.
 To determine all goals of the new system.

1.7.1 Economic feasibility


The current system used by the student union election results in enormous expenditure on paper,
pen, time, and other costs due to improper mechanisms to deal with customer information. The
project resolves these additional requirements and expenditures by using a computerized system.
The new system is economically feasible.
 Tangible benefits:
Cost Reduction.
Error Reduction.
Increase Speed of activity.
 Intangible benefits:
Reduce Resource Consumption.
Increase security, reliability, and trust.

1.7.2 Technical feasibility


An online student union voting system is technically feasible. To ensure whether the system is
technically feasible or not, the system should specify the following cases: The software currently
possesses the necessary technology: Because it achieves the required goal, as much as possible
we tried to encounter all hardware and software requirements and also the technology is easily
available and deployed everywhere. The new system possesses’ the necessary technical experts:
In this project, the team uses languages such as HTML, PHP, java script, and CSS to develop the
new system. For example to control double voting using voting states when the voter vote on a
candidate then the vote states can be voted. All these are on the technology side and once the
module is developed it can be easily held by a non-technical person, so it doesn’t require any
technical expertise.
Technical feasibility can be defined in two ways:

9
 Do we have the skilled manpower to develop the project?
 Do we have enough technology?

1.7.3 Operational feasibility


This project is operationally feasible because the proposed system is a good solution maker of
the problem or specific solution that will work in the existing system and create a good
environment for the user of the system. So, the proposed system is operationally feasible
because:
 We have all the resources needed for its implementation.
 The system is accepted and supported by the users and site viewers.
 The system will minimize the time and manpower needed to give fast.

1.7.4 Schedule feasibility (Time feasibility)


Involves checking if the project team can develop the proposed system within the time allocated.
Meeting the project deadlines may depend on the size of the project team and the availability of
the key members of the user group.

1.8 Scope of the Project


The scope of the project refers to the area, where the ongoing system is applied and how much it
is powerful to solve the problem. It also shows how the specified specific objective achieves by
the project. The following are the scope of the online student union voting system for Mattu
University.
 The system shall allow the creation of a new account for users.
 The system shall allow login to the system only for authorized and authenticated users.
 The system shall validate and authenticate the users’ usernames and passwords.
 The system shall allow registered candidates and voters.
 The candidates take an online exam and see their exam results. Calculate the total number
of votes for each candidate.
 The system shall allow post-final results. At the end of the election, the system allows
generating a report of the election.

1.9 Limitation of the project


Some of the limitations of the project are:-

10
 The system uses only the English language.

 system is dependent on Internet connection


 It does not work outside of Mattu university

1.10 Significant of the project


The significance of the project means the important role of the project to all the societies, the
users, and the concerned bodies.
 Improve voting service to the voters through fast, timely, and convenient voting.
 The system eliminate Loss of registration and Time-consuming
 The system eliminate voting repetition, while the voting will be taking place.
 The system eliminate the geographical limitation by making votes from anywhere in the
University.
 The system enable the administrator to update, delete and edit information about the voter
and candidate simpler.
 Any voter who has a local area network connection can make his/her sound to be heard
equally his/her vote to the preferred candidate.
 Resource and finance expenditure in terms of meeting-oriented costs will be saved and
the student union can use that for other essential works such as disabled students that can
be supported by the student union in terms of financial resources.
 An error in the counting of votes will not occur, because the system assures that counting
is done automatically so that there are no voting frauds at all. Increases accuracy and
availability and quality of the voting process and the number of voters as individuals will
find it easier and more convenient to vote.

11
1.11 Time Schedule

Figure 2 Time Scheduling

1.12 Risk
 Computer corrupted or virus attack
 Old versions of the computer working area

1.12.1 Risk Assessment and management


 To use the antivirus to protect computer failure
 To use the latest version of computer

1.13 Organization Of The Project


This project documentation is organized into five chapters. The first chapter Introduction of the
project, The second chapter study of the existing system ,The third chapter covers about software
requirement and specification, The fourth chapter deals the data analysis and finding of the
results. The fifth chapter encompasses the conclusion and recommendation for future studies.

12
CHAPTER TWO
ANALYSIS

2.1 Introduction
The current system of MaU students’ union voting system is going on or manually performing its
activity. All election processes and information distribution are performed by a manual system.
Such tasks; like writing a collection of sheets of paper and posting it on different places on
boards and a block of walls.

A project requirement is an objective that must be met. Project requirements provide an obvious
tool for evaluating the quality of a project because a final review should examine whether each
requirement has been met. This project is concerned with functional requirements and non-
functional requirements.

2.2 Existing System


2.2.1 Existing System Description
The existing system of the MaU 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).

2.2.2 Supplementary Requirements

1. 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.

BR1: The Candidate should be member of Mattu University achieved by candidate id.

13
BR2: The candidate and voter should have only regular student to participate in election.

BR3: in Mattu university student union rule the Candidate should have

CGPA greater than 2.8

BR4: The candidate should be free from any discipline record.

2.3 New System


2.3.1 Functional Requirement
2.3.1.1 User requirement
The system describes a single and well define goal of student union online voting system, and
the steps involved to reach this goal. The goal could be student union online election. The system
to be designed a program that can be used to facilitate Mattu University online election 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, the system 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.
 Online election:-using users’ friendly and dynamically interactive online election system.
 The system should allow voters to create a record of their vote that they can examine
directly, and that can be used to audit equipment and elections.
 The system must allow for recounts
 All events and failures of the system should be recorded
 The system shall be easier to be use and access information.

14
2.3.2 System requirements
2.3.2.1 Use Case Diagram
In its simplest form, a use case can be described as a specific way of using the system from a
user’s (actor’s) perspective and describes what the system does from the stand point of view. Use
cases provide a means to capture system requirements, communicate with the end users and
domain experts, and test the system. Use cases are best discovered by examining the actors and
defining what the actor will be able to do with the system. So generally use case model divided
in to two main categories namely Use case and Actor.

2.3.2.1.1 Use Case Diagram Identification


The use case is an activity that is accomplished by actors. A use case describes a sequence of
actions that provide a measurable value to an actor. In the following table, we try to list the use
case id, use case name, and description.

Table 3 Actor identification

No Use case Description

1 Admin The person who can oversee


the overall activities of the
system

2 Election committee election committee do all task


related to election together
with student dean.

3 Voter regular student that learns in


the university currently

4 Candidate university student they are


candidate for this election to
represent student.

15
2.3.3 Non Functional Requirement
A,Security:-Eligibility and Authentication—only authorized voters should be able to vote.

 The system shall be Uniqueness—no voter should be able to vote more than one time.
 The system shall to be Integrity—votes should not be able to be modified, forged, or deleted
without detection.

B,Assumptions/constraints:-Security and safety are the most crucial fundamentals of the online
vote system. The system has zero-tolerance with regard compromising. The system should
provide means for protecting and securing recounts of ballots cast in election.

For the proper working of the system we can list our assumptions and dependencies as follows.
 Working internet connection
 A web browser through which the voters access the server should have minimal support for
cookies and encrypted transactions.

C,Reliability:-The system should always be available for access at 24 hours, 7 days a week.
Also in the occurrence of any major system malfunctioning, the system should be available in 1
to 2 working days, so that business process is not severely affected.

D,Performance: Since the system is web based the deliver response time of the system

should be very fast. It perform its activity that are relating to the vote is accurately.

2.3.4 Essential Use case Diagram


Essential use cases harness abstraction to ensure the user interface is not designed too early, and
can be designed to be independent of any particular user interface technology. In the user role,
the focus on intention supports abstraction by avoiding the need to decide details of how the
intention is expressed.

16
Figure 3 Essential Use case Diagram

2.3.5 System Use case diagram


A System Use Case diagram is a visual representation of the interactions between actors (users
or external systems) and a system. It helps to identify the different use cases (or functionalities)
that the system provides, as well as the actors involved in using those functionalities.

17
Figure 4 System Use case diagram

2.2 .6 Use case description


Use case UC-01
number
Name Login
Priority Must have
Actor Voter ,Election committee ,Admin,candidate

Description This describes how the users login to the system

Precondition: Users of the system should have user name and password
Basic course of
action

18
User action System response
1. Any user that has account enters his 1. A. the system check if the security
login id and password. password is correct or not. If it is

2.The user click on the login button correct return wanted page. If not
correct return you are not correct
A. If the login and password is valid, a
user massage.
session is opened
2. The user click on logout button the
 The security is verified
system is sleep.
 The specific page of every user is
loaded

Alternative If the login or password is not valid, the login screen is re-displayed with an
course of error message.
action  The session is terminated.
 The login screen is displayed.
Post condition The Voter, Election committee, Admin and candidate successfully login and do
tasks properly.

Table 4 Use case Login

Use case number UC-02


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 mu

Basic course of

19
action User action System response

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


2. Enter password and username to go username and return
registration form. message and page.

3. Password and username is valid fill 2. Display correctly

the form correctly. registered message.

4. Click on register button.

Alternative course 3. If password and username entered by student is not valid return to basic
of action course of action step 2 and try again.

Post condition Logout their account correctly.

Table 5 Use case register

Use case ID UC-03


Use case name Create Account
Actor Administrator
Description the system administrator registers authorized users to the
System
Precondition: A system administrator must log in and should manually
get the list of eligible users’ information first.

User action System action


1. Clicks on register link. 2.Registration form

20
displayed
3. Enter User name &
Basic course of action (Flow of password.
5.validate data entry
event): 4.System administrator
clicks on register button.
7. Logout 6.Display successfully
registered message.
An alternative course of action 1. If the data entry is not valid, the system displays an
invalid Input message.
2. If the user has already registered, the user registered
message is displayed.
Post condition The System Administrator created an account so users can
log in to the system
Table 6 use a case description or create an account

21
Use case number UC-04
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.

Basic course of System response


action User action

1. Administrator announce for student


register for election committee.
2. Student registers for election
committee.
3. Administrator selects 7 members for
committee by performance and
experiences.
4. Administrator tells what type of work
the committee does.
5. Use case ends.

Alternative course of 3. If any complain make to student by the student return to student profile
action that registered basic course of action no 2 and check again.

Post condition Announce for student selected election committee.

Table 7 Use case Approve election committee

22
Use case number UC-05
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.
Basic course of action
User action System response
1. Check if the necessary
1. EC see applicant form registration information of
list. candidate is inserted.
2. EC selects the candidate 2. EC can get result of
application form from list by their student from registrar
performance database.
3. Post selected candidate for user of 3. Successfully inserted
the system. message display.
4. Insert selected candidate to the
system.
5. Use case ends.

Alternative course of If candidates are not full filed the criteria of the election, the EC can
action change other candidate students from the university.

Post condition The EC can get accepted candidates.

Table 8 Use case Approve candidate

23
Use case UC-06
number
Name Search
Priority High
Actor Voter ,Election committee ,Admin
Description To access information which distributed by the users and votes from database.
Precondition: Must be login to the system.
Basic course of
action User action System response
1. User of the system wants to search 5. The system responds the requested
data from the system. action.
2. User of the system opens the site of 6. The system display searched data or
the system. information to the wanted person.
3. Go to search button text area write
information search from database.
4. Click on search button.
7. The user sees information they
search.
8. Use case ends.

Alternative 3.1 If the searching word not available the system generates alternative retry
course of action message to the web users, the user go to step 3 basic course of action and tray
again.

Post condition View the searched data correctly

Table 9 Use case Search information

24
Use case UC-07
number
Name Vote online
Priority High
Actor Voter
Description This explains voting process by using the system.
Precondition: Voters must be registered student in the university.
Basic course
of action User action System response

1. Open website to enter his username 1. The system checks if


and password. username and password is
2. Voter gets his validation form the correct or not.

system. 2. Display online vote page

3. Voters must have user name and 3. You select successfully

password to login in to the system. message displayed.

4. If the username and password is


correct 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 4.1 If the username and password is not correct go to step 3 basic course of action
course of and login again.
action 5.1 If voter not selected one candidate try again to open the page and select the
candidate.

5.2 If candidate identification not happened back and open the page again.

Post condition Logout the account.

Table 10 Use case on vote

25
Use case UC-08
number
Name Generate reports
Priority High
Actor Admin

Description The administrator finally see total reports from the system

Precondition: The election process or time must finish.


Basic course of
action User action System response

1. The administrator login to the 2. Check if username and password


system by their username and are correct system responded valid
password. page.
4. If not correct display error
3. If username and password are
message.
correct page is opened.

5. Click on necessary reports from


page.

6. Fetch Report

7. Use case ends.


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

Post condition Generate final Report Information

Table 11Use case Generate reports

Use case UC-09

26
number
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.
Basic course of
action User action System response
1. The user must be open website. 4. The system respond requested
2. The user can ask information they action to the administrator.
want to know. 5. The system display searched data
3. After searching necessary or information.
information click on view button. 7. System display successfully
message.
6. After getting necessary information
they can view.

8. Use case end.

Alternative If all users can’t see the result of the election, try again and login to the system.
course of
action
Post condition The user knows the wanted information.

Table 12 Use case View result

Use case number UC-10


Name Logout
Priority High

27
Actor Voter ,Election committee ,Admin, and Student dean

Description The Voter, Election committee, Admin, and Administrator of the system
must logout after you finish work properly.
Precondition: UC-1

Basic course of User action System response


action
1. The Voter, Election committee, Admin, and 3. The system responds
Administrator went to logout from the site. the requested action.
2. The Voter, Election committee, Admin, and 4. The system forms
Administrator click on logout button. that page to login page.

5. The use case exit.

Alternative course of If not successfully logout please try again it maybe connection problem go
action to basic course of action step two.

Post condition The system logout.

Table 13 Use case logout

Use case ID UC -11

28
Name View candidate
Actor Voter, student service director, the candidate.
Description This describes the process of how the user views the candidate
information by using the system.
Precondition Candidate Must fulfill the required information and rules.
User action System action
1. The user must open the website.

3. The user can ask for the


2. The system displays
information they want to know.
the appropriate page.
4. After searching
necessary information
Basic course of action
Click on the candidates' view button.
5. After getting the necessary
information they can view it.
6. Logout.

The alternative course of If all users can’t see the candidates’ information, try again and
action log in to the system
Post condition The user knows the wanted information

Table 14 Use case View candidate

Use case ID UC-12

29
Name Give feedback
Actor Voter, candidate.
system admin, main registrar
Description All users can comment on the process.
Precondition The actors must be used the system before that time.
User action system action

1. Open the home 2. System displays the comment


space(form).
page

3. User enters email


Basic course of action address and writes a
comment on the space
provided.
5. System responses message
4. click on the send successfully sent the feedback.
button
6. Logout.
The alternative course of If the information filled is not valid the system displays please
action fill the information correctly.
Post condition The users send successful feedback.
Table 15 Use case Give feedback

2.3.7 Sequence diagram


Sequence diagrams are commonly used in software development to illustrate the behavior of a
system or to help developers design and understand complex systems. They can be used to model

30
both simple and complex interactions between objects, making them a useful tool for software
architects, designers, and developers.

UML Sequence diagram showing the sequence of interactions among objects and used to
represent or model the flow of messages, events, and actions between the objects or components
of a system. Sequence diagrams are also used primarily to design, document, and validate the
architecture and interfaces of the system by describing the sequence of actions that need to be
performed to complete a task or scenario.

31
Figure 5 Sequence diagram for login

32
Figure 6 Sequence diagram for logout

33
Figure 7 Sequence diagram for creating an account

34
35
Figure 8 Sequence diagram for casting vote

Figure2. 5 Sequence diagram for viewing election result

2.3.8 Activity diagram


Activity diagrams are used to document the logic of a single operation/method, a single-use
case, or the flow of a business process. Activity diagrams are essentially a flowchart showing the
flow of control from activity to activity. It includes modeling the sequential process. It also
includes modeling the flow of an object as the object as it moves from one state to another state
at different points in the flow of control. Activity diagrams deal with all types of flow control by

36
using different elements like fork, join, etc. The purposes of the activity diagram can be
described as:

 Draw the activity flow of a system.


 Describe the sequence from one activity to another.
 Describe the parallel, branched, and concurrent flow of the system.

Figure 9 Activity diagram for login

37
Figure 10 Activity diagram for creating an account

38
39
Figure 11 Activity diagram for voting

Figure 12 Activity diagram for updating account

40
2.3.9 Conceptual Modeling:Class Diagram
Class diagrams are the blueprints of your system or subsystem.You can use class diagrams to
model the objects that make up the system, to display the relationships between the objects, and
to describe what those objects do and the services that they provide. Class diagrams are useful in
many stages of system design.

41
42
2.3.10 user interface Prototyping

Figure 13 user interface Prototyping

43
CHAPTER THREE: DESIGN

3.1 purpose and goals of design


The objectives of designing are to model a system with high quality. Implementing a high-
quality system depends on the nature of the design created . If one wants to make changes to the
system after it has been put into operation depends on the quality of the system design. So if the
system is designed perfectly, it will be easy to make changes to it.
The goal of the system design is to manage complexity by dividing the system into manageable
pieces.
Some of the goals are listed below.
Modifiability: The system should be modifiable to modify different services depending on
the need of the user.
Flexibility: The system should be changeable to suit new conditions or situations.
Efficiency: The system must do what it is supposed to do efficiently without the problem.
Accessibility:One of the best features of the proposed system is its accessibility. Users can
access the current information in the university.
Reliability: the system should be reliable.

3.2 class modeling diagram


A class modeling diagram, also known as a class diagram, is a type of UML
(Unified Modeling Language) diagram that represents the structure of a system by
showing the classes, their attributes, methods, and the relationships between them.

44
Figure 14 class modeling diagram

45
3.3 proposed software architecture
3.3.1 Subsystem Decomposition
Subsystem diagram shows the service it provides or it accepts from other subsystems, and the
coupling and the coherence between them.

 Registration subsystem

 Voter subsystem

 Candidate subsystem

 Election committee subsystem

3.3.2 Component diagram

Figure 15 Component diagram

46
3.3.3 Deployment diagram

Figure 16 Deployment diagram

47
3.3.4 Persistence Modeling for object oriented database

Figure 17 Persistence Modeling

3.3.5 Access control and security


use case Admin Voter candidate Election

48
committee
Generate report 

Block account 

View account 

Update account 

Create account 

search    

View Result 

Vote Online 

View candidate 

View promotion 

View notice 

Approve 
candidate

View candidate 

Post promotion 

register 

Give feedback 

Table 16 Access control and security

CHAPTER FOUR: IMPLEMENTATION AND TESTING

49
4.1 Implementation
Implemenation refersto the process of putting a plan,ideal,or concept into action or practice.it
involvesturning a theoretical or abstract concept into a tangible and operational relality

 Sample code login-form committee page

<html>

<title>Login page</title>

<head>

<title>Cute Registration Form</title>

<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">

<style>

.form-container {

50
max-width: 400px;

margin: 0 auto;

padding: 20px;

border: 1px solid #ccc;

border-radius: 10px;

background-color: #f9f9f9;

margin-top: 50px;

.form-group {

margin-bottom: 20px;

</style>

</head>

<body>

<?php

$error="";

include('con.php');

session_start();

if(isset($_POST['phone'])){

$phone=stripslashes($_REQUEST['phone']);

$phone=mysqli_real_escape_string($connect,$phone);

51
$pasword=stripslashes($_REQUEST['password']);

$password=mysqli_real_escape_string($connect,$pasword);

$query="SELECT * FROM admintable WHERE phone='$phone'

AND password='$pasword'";

$result=mysqli_query($connect,$query) or die(mysqli_error());

if(mysqli_num_rows($result)>0){

$rows=mysqli_fetch_assoc($result);

if($rows['type']=='admin'){

header("Location:logiiiiiiiin.php");

elseif($rows['type']==''){

$_SESSION['phone']=$phone;

header("Location: comitepage.php");

else{

echo"<script> alert('Invalid phone number or password!');</script>";

52
else{

?>

<?php include("ho.php"); ?>

<div class="container">

<div class="form-container">

<h2 class="text-center mb-4">Login Here</h2>

<form action="#" method="post" enctype="multipart/form-data">

<div class="form-group">

<label for="phone">Phone</label>

<input type="number" class="form-control" name="phone" id="phone" placeholder="Enter


phone number" required>

</div>

<div class="form-group">

<label for="password">password</label>

<input type="text" class="form-control" name="password" id="password"


placeholder="enter password" required>

</div>

<button type="submit" name="submit" class="btn btn-primary btn-block">login</button>

</form>

</div>

53
</div>

<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>

<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js"></
script>

<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>

</body>

</html>

4.2 Choose Your Test Approach


Testing is the final phase of our implementation. Testing is checking of the system workability in
an attempt to discover errors and avoiding such errors from the system. In this the team members
tested the entire system as a whole with all forms, code, modules. In this we tested all the
functionalities in the System. All errors in the forms, functions, will be tested. To simplify the
testing process the project team followed the different types of tests that break the testing process
up into the distinct levels. These types testing are unit testing, integration testing and system
testing are using :-

Unit testing:Unit testing is every module of the System is separately tested. It is often done by
the programmer to test that the unit he/she has implemented is producing expected output against
given input. Functional Test Specifications

Integration testing:Integration testing is the activity of software testing in which individual


software modules are combined and tested as a group. It occurs after unit testing and before
acceptance testing. Thus, Integration testing is a logical extension of unit testing. In its simplest
form, two units that have already been tested are combined into a component and the interface
between them is tested.

System Testing:It is the final step of testing. In this the team members tests the entire system as
a whole with all forms, code, modules. This form of testing is popularly known as Black Box
testing or System tests. In this the team members tests all the functionalities in the System.

54
4.3 Functional Test Specifications
The tests that are done are as follow:

 Tests students

 Tests admin login

 Tests election committee

Actions Test Procedure Input Expected test Pass /fail


result

Test The login-form Committee The page that Pass: access to


committee page Appropriate the page
login-form should click enables the
committee userId and committee to
pagesystem login button post date,
password. approve
candidate
Log-in Page
screen is
displayed
“Please Enter

correct username
Committee and password “
enters his/her user
message display Fail: committee
name and can’t access the
password. Incorrect user Id
pages.
and

password

CHAPTER FIVE: CONCLUSION AND RECOMMENDATION

5.1 Conclusion
An online voting system is a web application that allows voters can vote for their representative

55
easily in voting systems. In the online student union voting system elections can be conducted in
a free and fair manner every two years in secret ballots. Our project aims to develop an
interactive, electronic, voting system for the Mattu University student union members’ election
with which students can vote using a web browser. It automates the existing manual activities
like voter registration, candidate & election process announcements, voting, and vote counting.

5.2 Recommendation
According to the scope of the project, the team develops web-based applications. Because of the
time constraint, the system may have limitations but in the feature, the team believes that this
system should be fully operational by adding some functionality that is not included in the
proposed system. The team also wants to recommend this project can be expanded and more
automated with additional functionalities by integrating with many new technologies. Generally,
the team recommends being included with the following functionality: The system can be
responsive. Generally in the future we can develop the student union online voting system in all
higher educational institutions.

References
[1] Mattu University. [Online] https://www.meu.edu.et/home/about-meu.

[2] ,S.G.Sherless, System Analysis and Design, United States: Rosenblatt, 2011.

56
[3] Pippa.N, "E-voting as a magic ballot," Harvard.education, November 2018. [Online].
Available: https://ksbhome.harvard. [Accessed January 2018].

[4] https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-sequence-
diagram/

[5] https://creately.com/guides/use-case-diagram-tutorial/

57

You might also like