Professional Documents
Culture Documents
Group One
Group One
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
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.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.
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
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.
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.
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.
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.
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).
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.
7
dynamic web pages.
2 MYSQL database
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
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.
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.
9
Do we have the skilled manpower to develop the project?
Do we have enough technology?
10
The system uses only the English language.
11
1.11 Time Schedule
1.12 Risk
Computer corrupted or virus attack
Old versions of the computer working area
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.
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
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.
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.
16
Figure 3 Essential Use case Diagram
17
Figure 4 System Use case diagram
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.
Basic course of
19
action User action System response
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.
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.
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.
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.
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.
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
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.
25
Use case UC-08
number
Name Generate reports
Priority High
Actor Admin
Description The administrator finally see total reports from the system
6. Fetch Report
26
number
Name View result
Priority Medium
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.
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.
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
Alternative course of If not successfully logout please try again it maybe connection problem go
action to basic course of action step two.
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.
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
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
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
36
using different elements like fork, join, etc. The purposes of the activity diagram can be
described as:
37
Figure 10 Activity diagram for creating an account
38
39
Figure 11 Activity diagram for voting
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
43
CHAPTER THREE: DESIGN
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
46
3.3.3 Deployment diagram
47
3.3.4 Persistence Modeling for object oriented database
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
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
<html>
<title>Login page</title>
<head>
<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-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);
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{
52
else{
?>
<div class="container">
<div class="form-container">
<div class="form-group">
<label for="phone">Phone</label>
</div>
<div class="form-group">
<label for="password">password</label>
</div>
</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>
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
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
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
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