0% found this document useful (0 votes)
74 views21 pages

Problem Identification

The document describes the development of an online student election system for Jimma University. It outlines the objectives and problems with the current manual system, including limited voting times and risk of cheating. The proposed system will use unique codes and email addresses to provide a secure online voting method. It details requirements like the user interface, database design, security measures, and generating reports of election results.

Uploaded by

MisganaWakene
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views21 pages

Problem Identification

The document describes the development of an online student election system for Jimma University. It outlines the objectives and problems with the current manual system, including limited voting times and risk of cheating. The proposed system will use unique codes and email addresses to provide a secure online voting method. It details requirements like the user interface, database design, security measures, and generating reports of election results.

Uploaded by

MisganaWakene
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 21

1

Chapter 1
Problem identification

1.1 Introduction:
Nearly all forms of endeavor within business and governmental application Business software.
Business application is any software or set of computer programs that are used by business users to
perform various business functions. These business applications are used to increase productivity,
to measure productivity and to perform business functions accurately.
Some business ICT has become an important tool in all aspects of life. With the development of
technology, the introduction of ICT as a tool has essentially brought tremendous revolution to the
practices and procedures of applications are interactive, i.e., they have a graphical user interface or
user interface and users can query/modify/input data and view results instantaneously. They can
also run reports instantaneously. Some business applications run in batch mode i.e. they are set up
to run based on a predetermined event/time and business user does not need to initiate them or
monitor them.
Election is one of the tasks of the government that can be benefited from ICT. Electronic voting is
common in several countries, but not known in Ethiopia till now.
The purpose of this project is to describe Jimma University students online voting system
(JUSOVS). It also contains software requirement specification that specifies the requirement of
JUSOVS using web based application.
1.2 Objective
1.2.1 General Objective:
The general objective of this project is to develop online student president election software.
1.2.2 Specific Objective:
To make the functional and non-functional requirements of the Jimma University Student Online
president Election system easy to comprehend.
To make functionality clear of the system to end users.
Designing the system architecture of the system
Designing back-end database to the system that can hold all the information
Designing user friendly interface
Implementing standard security algorithms that can keep the confidentiality of the data at rest as
well as at communication lines
2

Selecting the appropriate development tools for the system
Integrating the whole system
Testing the system
Documenting the whole system
1.3 Statement of problem
During the election of student representative in JimmaUniversity the following problems are
happened.
As there are many students to elect their representative at one station, only limited number of
students can give votes at a time.
As the existing system is manual, there is a chance for the election process to be cheated. i.e some
students may gate chance to elect twice.
A lot of human power is invested during and after the election process
1.4 Methodology:
The following are some of the main procedures that are followed to work the project;
User requirements are gathered by observation and analysis. Some of them are:
Studying the current voting system JU to get the requirement of the system
Study the security risks of e-voting
Study the current security technologies so as to implement in the system
Assessing the available network infrastructure that helps for data transfer
1.5 Modeling:
Object-oriented modeling is an approach to modeling an application that is used at the beginning
of the software cycle when using an object-oriented approach to software development.
Object Oriented modeling model is identified for system development.
1.6 Tools used
JAVA EE is used for development of the system
Tools that are used for development and deployment of the system:
- Modeler for modeling and prototyping the system
-Server applications: The election server runs on a http server, that isjsp enabled.
3

-Windows is the operating system
1.7 Proposed system:
The system to be developed based on this project is using online system that every student will have
unique code which will be provided with the email address of the students. That code will be used
during election time providing secure and private way of election.
1.8 Scope:
The application will be used only for/in Jimma University and not for other organizations.
The system is applicable for those students that have internet access and which are able to use the
email system.
1.9 Significance:
These computerized election systems have the following proposed importance.
1. Helps more efficiently with less time and effort, resulting in better production, profit, and a
more satisfied clientele.
2. Reduced human power for election process.
3. Easy and modern way of voting for students.
4. Less time wastage for both the students and the employees.
5. Fastened the election system
1.10 Time Scheduling
Design


Analysis

First Weak SecondWeak




4

CHAPTER TWO
Analysis
2.1 Existing System:
The existing system Jimma University is using during students president election has the following
form:
The election board assigns some people for each department (e.g. computer science) in order to
check each student elects only once. Then the students will get one official election card to choose
among the candidates. At the end of the election process the election board counts the votes for
each candidate student and announces the result of the election the next day.
The employees needed during the election process are:
Different officials, the existing student president, free visitors of the election process and of course
the security workers etc
Some drawbacks the existing systems are:
A lot of human power is invested during and after the election process; As there are many students
to elect their representative at one station, only limited number of students can give votes at a time.
2.1.2 Election system Rules
1. Only student of Jimma University can give vote.
2. The election will be held for only one day.
3. Each student can give only one vote.

2.2 New System
2.2.1 Nonfunctional Requirements
The non-functional requirement describes constrains for implementing the project. Some
Of them are:
Interface
Documentation
2.2.4 Security Requirements
The central server has to be provided at secured area.
The network infrastructure has to be private network.
Client machines at each of the computer laboratories must be provided.
The voter should have also basic computer skills.
5

All the passwords that are generated or accepted must be stored in database in an encrypted
form.
In election mode, the different password should be generated for a user in every
different election.
To prevent data loss in case of system failure, the result of votes that are polled till then
have to be saved in database.
In case system administrator detects any security problem in the system, he should be able
to shut down the system and prevent all connection to the server immediately to preserve
already polled votes.
The system should warn system administrators about the malfunction of the system.
2.2.4 Performance and Reliability
The systems performance is different according to its mode
In Election Mode
The system must be working at 99% efficiency during the voting process. Voters are allowed to be
active for short time.
In Normal Interactive Mode:
The system in this mode is expected to serve maximum number of users, but each voter can be
active for a long time. Since it may need some maintenance or preparation for the Election Day,
the system does not need to be reliable every time. So, 80% reliability is enough.
2.2.5 Functional Requirements
Activate System
Supervisor starts the system/systems of the station of his responsibility during election
Generate password: The election officerhas to create a password for voters. The
encryption/decryption key is generated from the pass phrase created in the system.
Create Candidates: Before the vote casting process begins, the EO createscandidates.
Create Registrar: Before the registration process begins, the system has to create the username
and password of the registrars.
Create and update Voter: After the eligible registrars are created, the registrar will register the
voters and update voter list if they graduated or not present in current education year.
Login: The registrar, the voter, and the election officers have their own
Credentials stored in the database. The system will check the keyed values against the values stored
in the database.
CV Edit (Candidate)
6

Allow candidate Add contents to or edit his CV Before election. The CV can be seen by voters.
View Election Candidate Information
Voter sees the candidates profiles by using this function the voters can reach information about the
candidates CVs and answers to asked questions.
Ask Question
Before election held the voters use the system for asking questions to candidates.
Read and Answer Question
Candidatecan read and/or write answers to the questions asked by the voter.
Cast Vote: When the voter keys(enters) the correct Identification number to the
system, the system will extract the eligible candidates then, the voters casts the vote by
keeping the rules.
Change password: This explains how the voter and candidate can changetheirpassword.Voter
take pre generated password and change if he wants his own password. It help voter to hold good
security level.
Generates Report: At the end of the election, the election officer will generate the votes for each
candidate and report the result.













7


2.3. Use Case Diagram
Use diagram election system

Figer 2.1: Use diagram election system





8



















2.3.1 Use case documentation (scenario)
Activate System
Use case name: ActivateSystem ID: 1 Priority: High
Primary actor: election officer
Stakeholders and interests: Election Station Supervisor wants to initiate the system
Brief description: This use case describes how the supervisor starts the system/systems.
Precondition: The user turns on the system.
Relationships:-No relations
Normal flow of events:
9

The user enters his/her supervisor ID and password
A. If the supervisor ID and password is valid, a session is opened
I. The security is verified
II. The voting page is loaded
B. If the supervisor ID and password is not valid, the login screen is redisplayed with an
error message
Create Registrar Account
Use case name: CreateRegistrarAccountID: 2Priority: High
Primary actor: EO Use case type: essential
Brief description: This describes how EO will generate Registrars new accounts.
Precondition:
Relationships:-No relations
Normal flow of events:
1. EO selects on Create Registrar Accounts from menu
2. System displays Create Candidate Accounts page
3. EO opens a new form for every Candidate
4. EO fills the form according to Registrars information
5. EO presses on Generate password button
6. System creates an account and password for that Registrar
7. EO presses on Print button and the system prints that document
8. EO finishes the task by pressing on Finish button
Create and Update Voters Account
Use case name: createandupdateVoters ID: 3 Priority: High
Primary actor: Registrar Use case type: essential
Stakeholders and Interests: Registrarwants to update all voters according to their status
Brief description: This describe how Registrar updates online voters
Precondition:
10

Relationships: -No relations
Normal flow of events:
1. Registrar selects on Update Voters from menu and displays that page
2. Registrar click on Update Now button
3. The system checks online voters with respect to upcoming elections voters list
a. If the voter exists in live campus student list, the system updates the voter with respect to the
voter information.
b. If the voter does not exist in the list, the system add that voter from Registrar database if
available.
c. If the voter doesnt existinglive campus student list, Registrar deletes or removes that user.
Generate password
Use case name: Generate passwordID: 4Priority: Medium
Primary actor: Candidate Use case type: essential
Stakeholders and Interests: Election Officer Will generate password for voters.
Brief description: This password is important for voters. They will use it when they log in to the
system and on the time to change the password.
Precondition: Registrar must register or update voters account
Relationships:-No relations
Normal flow of events:
1. On theEO profile there is a button labeled Generate password, he clicks it to Generate
password.
- The system opens a new page that contains active voter list if any.
A. the System generate password and print for all active voter in the list.
B. if no active voter in the list the System displays if no active voter in the list message.
2. The user clicks Save and Return button to save the changes and return to his profile.
Create Candidate Account
Use case name: CreateCandidateAccount ID: 5Priority: High
Primary actor: EO Use case type: Detail, essential
11

Brief description: This describes how EO will generate all election candidates new accounts.
Precondition:
Relationships:-No relations
Normal flow of events:
1. EO selects on Create Candidate Accounts from menu
2. System displays Create Candidate Accounts page
3. EO opens a new form for every Candidate
4. EO fills the form according to candidates information
5. EO presses on Generate password button
6. System creates an account and password for that candidate
7. EO presses on Print button and the system prints that document
8. EO finishes the task by pressing on Finish button
CV Edit (Candidate)
Use case name: CVEdit ID: 6Priority: Medium
Primary actor: Candidate Use case type: Detail, essential
Stakeholders and Interests: Election Candidates Wants to add or Edit his CV contents.
Brief description: This explains how the candidate can Add contents to or edit his CV. The CV can
be seen by voters.
Precondition: The user should be logged in into the system
Relationships: -No relations
Normal flow of events:
1. In the user profile there is a button labeled View and Edit CV he clicks it to edit his CV.
- The system opens a new page that contains the candidates CV with data in it if any in edit mode.
2. The user edits his CV using the free editing template.
3. The user clicks Save button to save the changes
4. The user clicks Return return to his profile.
Log In / Logout
12

Use case name: Login/Logout ID: 7Priority: High
Primary actor: User Use case type: Detail, essential
Stakeholders and interests:
Voter Wants to log into the system
ECA Wants to log into the system
ECC Wants to log into the system
Brief description: This describes how the users log into the system
Precondition: The user opens the login page
Relationships:-No relations
Normal flow of events:
1. The user enters his login id and password
A. If the login and password is valid, a session is opened
i. The security is verified
ii. The specific page of every user is loaded
B. If the login or password is not valid, the login screen is redisplayed with an error message
2. The user clicks on the logout button
i. The session is terminated.
ii. The login screen is displayed again.

Change password
Use case name: ChangepasswordID: 8 Priority: Medium
Primary actor: User Use case type: Detail, essential
Stakeholders and Interests:
Election Candidates Wants to change password
Voter - Wants to change password
Brief description: This explains how the voter and candidate can changehis/her password.
Precondition: The user should be logged in into the system
13

Relationships:-No relations
Normal flow of events:
1. In the user profile there is a button labeled Update Account he clicks it to update his account.
- The system opens a new page to enter old password and the new one.
2. The user enters his old password. He then enters his new password
3. User clicks the submit button.
- If the old password was entered incorrectly, the system will print an error messageand the form to
change password will re-appear.
- If the old password was entered correctly the system changes password and prints a success
message and redirects to his profile.
View Election Candidate Information
Use case name: ViewECInformation ID: 9Priority: Medium
Primary actor: Voter Use case type: Detail, essential
Stakeholders and interests: Voter wants to see the candidates profiles.
Brief description: By using this function the voters can reach information about the candidates CVs
and answers to asked questions.
Precondition: -The voter should be already registered to the system
-The voter should have logged in to the system
-Account of the EC should be activated by himself.
Relationships:-No relation
Normal flow of events:
1. Voter selects the candidate from candidate list.
A. If the candidate has not activated his profile then there will not be any link to his profile
B. If the candidates page is activated then voter clicks on the candidates profile link and ECs
profile page is displayed
i. By clicking the CV link voter can reach the general information about the EC.
ii. By clicking the promises link voter can view the ECs election campaign.
iii. By clicking the Questions/Answers link voter can view questions/answers and send questions.
14

Read / Answer Questions
Use case name: Read/Answer Questions ID: 10Priority: Medium
Primary actor: Candidate Use case type:
Stakeholders and Interests: Election Candidates Wants to Read and/or answer questions
from the voters before the election.
Brief description: This explains how the candidate can read and/or write answers to
thequestions asked by the voter-to-be.
Precondition: The user should be logged in into the system
Relationships:-No relations
Normal flow of events:
1. In the user profile there is a button labeled Questions he clicks it to read and/or
answer the questions.
- The system opens a new page that contains the questions from the voters
- If there are questions the candidate clicks on the question to read and answer it on the provided
answer text box.
- User can choose to return to his profile.
2. The user reads and/or answers questions if any.
3. The user clicks Reply and send to save and send answers of the questions.
4. The system takes the user to the questions page
5. User clicks on Return button to return to his profile

Ask Question to a Candidate
Use case name: AskToCandidate ID: 11Priority: Medium
Primary actor: Voter Use case type: Detail, essential
Stakeholders and interests: Voter wants to direct questions to candidates about their election
campaign.
Brief description: This explains how the voters use the system for asking questions to
candidates.
Precondition:
15

Relationships:-No relations
Extend: View Candidate Information
Normal flow of events:
1. User clicks on the Questions/Answers link
2. He writes his question on the text field
3. By pressing Send Question, user sends his question
Cast vote
Use case name: castvoteID: 12Priority: High
Primary actor: Voter Use case type: Detail, essential
Stakeholders and interests: Voter wants to use his vote by using system.
Brief description: This explains voting process by using the system.
Precondition: -user must register
- have given or changed password
Relationships:-No relations
Normal flow of events:
1. Voter gets a hash password from the EO.
2. Voter fills the Voter Identification Number (VIN), username and password areas.
3. Voter press log in button.
A. If the login operation is not verified the system prompts an error message and returns to
login page.
B. If login operation is verified
i. The system will prompt the list of parties/candidates.
ii. Voter chooses one of the parties/candidates from list.
iii. He presses the vote button for voting process.
iv. If the operation is successful, voter marked as Online Voted by the system
v. System automatically returns to the log in page
Generate Report
16

Use case name: GenerateReport ID: 13Priority: High
Primary actor: ElectionOfficer Use case type: Detail, essential
Stakeholders and Interests: Election Candidates Wants to generate election result.
Precondition: Casting vote must be completed
Relationships:-No relations
Normal flow of events:
1. In the EO profile there is a button labeled Generate Report he clicks it to generate report.
- The system calculate the vote each candidate and produce Report.
2. The user clicks Save and Return button to save the changes and return to his profile.
View Election Results
Use case name: ViewElectionResults ID: 14Priority: Medium
Primary actor: Voter Use case type: Detail, essential
Stakeholders and interests: General public (Voters, ECs, ESS, etc.) wants to see the election
results.
Brief description: This describes the process of how the voters view the election results by
using the system.
Precondition:
Relationships:-No relations
Normal flow of events:
1. He clicks on the election results link.
2. The system displays the required information according to the selected choices.







17



















Chapter 3
Data Dictionary and user interface
3.1 Data dictionary
Header Description Field Type Field Length/
Maximum
Number
Userid This is a unique user
identification word
which is unique to every
registered user
string 10,000
Password A password for every
user to log in into
the system
string 15,000
18

voter An array of voters
registered for the coming
election
string 12,000
electioncandidate An array of election
candidates
registered for the coming
election
string 3
earnedvote Keeps the total votes a
candidate has got
from voters
integers 3
totalvotes Keeps the total votes in a
given region of a
candidate given by voters
integer

3.1.1 Data Description
3.1.2 Data Objects
We can classify our data objects and their main attributes as follows.
Login: UserId, Username and Password.
UserList: Voters [], EOs[], Registrars[], Cs[].
User: Name, Address, JU id, username, password
CandidateVotes: earntVotes, totalVotes, percentage, rank
Candidate: position
Registar: userId, password

3.1.3. Relationships
A. Associations
The following object relationships show association in JUSOVS system
o Login and User
o Login and Registrar
o Candidate and Candidate Votes
o User and Candidate Votes
B. Composition
The following object relationships show composition in JUSOVS system
User and UserList
19

3.2 Conceptual modeling:
3.2 .1 Class diagram





3.2.2 Sequence diagram
20

3.2.3 Voter use case
3.2.4 Registrar Use case






3.3 Candidate
21


3.3.1 Activate System

You might also like