Professional Documents
Culture Documents
B.Tech
in
Stream
College Name
College Logo
At
June-July 2015
Page | 2
Page | 3
Acknowledgement
The achievement that is associated with the successful completion of any task would be
incomplete without mentioning the names of those people whose endless cooperation made it
possible. Their constant guidance and encouragement made all our efforts successful.
We take this opportunity to express our deep gratitude towards our project mentor, Mainak
Basu Roy for giving such valuable suggestions, guidance and encouragement during the
development of this project work.
We would like to convey our regards to our college Future Institute of Engineering and
Management and our respected Head of the Department Asst. Professor Anirban
Chakrabarty for giving us such a nice opportunity to work on this project.Last but not the
least we are grateful to all the faculty members of Ardent Computech Pvt. Ltd. for their
support.
Table of Contents
1. Abstract
Page
No
P a6g e | 4
2. Introduction
6-7
2.2Problem definition
2.3Project objective
6-7
3. Project Category
4. Tools/Platform
7-8
5. Goals of Implementation
8-9
7. Functional Requirements
9-10
8. Non-Functional Requirements
10-11
9. System Analysis
12-23
9.1 Feasibility
12-13
14
14
14-18
18-21
22
22
22
22
22
22-23
10.
Project Planning
23
11.
Project Scheduling
23
12.
System Design
25-40
27-30
14.1.1 ER Diagram
14.2 Table Design
14.2.1 Table Definitions
14.3 Form Design
13.
Coding
27
28
28-30
31
40-50
40-41
15.2 Code
41-50
14.
Testing
51-55
15.
55
16.
Database/Data security
55
17.
55
Page | 5
List of Tables
Table No
Table Name
Page
Table 9.1
Table 9.2
Table 9.3
Table 14.1
Table 14.2
Table 14.3
Table 14.4
Table 14.5
Table 14.6
No
Feasibility study
13
Login
20-21
Add election details
21
EVS_TBL_User_Credentials 28
EVS_TBL_User_Profile
28-29
EVS_TBL_Election
29
EVS_TBL_Party
29
EVS_TBL_Candidate
29-30
EVS_TBL_Application
30
Table 14.7
Table 14.8
Table 16.1
Table 16.2
Table 20.1
EVS_TBL_Result
EVS_TBL_Voter_Details
Test case1
Test case2
Cost Estimation
30
30
54
54
56
Figure Name
SDLC Process diagram
CAD
1st level DFD
2nd level DFD
Use case of administrator
Use case of EO
Use case of voter
Gannt chart
Sequence diagram
Class diagram
System design
Deployment diagram
ER diagram
Schema design
Testing process
Page No
8
14
15-16
17-18
19
19
20
23
24
25
25
26
27
28
52
List of Figures
Figure No
Fig 6.1
Fig 9.1
Fig 9.2
Fig 9.3
Fig 9.4
Fig 9.5
Fig 9.6
Fig 11.1
Fig 12.1
Fig 13.1
Fig 14.1
Fig 14.2
Fig 14.3
Fig 14.4
Fig 16.1
Page | 6
1. Abstract
The project Electronic Voting Systemtargets to help all the citizens to cast their vote online.
An eligible citizen, who doesnt have a voter id, can request for voter id through this
application. A party or a candidate of party can also register themselves with the help of this
application. A voter can also view the contestant details, election schedule, election results by
Page | 7
logging into this application. It also helps the Administrator and the Electoral Officer as the
system becomes computerized.So in the process, it will help the citizens as well as the
Election Commission.
2. Introduction
2.1 Relevance of the topic:
Nowadays online systems are very popular. A large number of people use the online systems
regularly. They prefer to operate from their house, and not wander outside. An online
application that is simple and easy to useis an instant hit with millions of online users. The
motive of our application is to learn and experience developing a simple online application
targeting a small set of users. The knowledge obtained in this process can be applied later in
our career to develop any similar kind of application focusing a large group of users.
2.2 Problem Definition
Electronic voting system or e-voting is a simple online voting system which will help the
voters to cast their votes, apply for voter ids in online manner. The system will also help the
Administrator to add/view the election details,party details and candidate details. The
administrator also approves and declares the election result, forward the pending applications
for voter ids to the Electoral Officer. Our system will also help the EO (Electoral Officer) to
approve/decline the pending voter id requests.
2.3Project Objective
The objective of the project is:
The system interacts with the users (Administrator, Electoral Officer,Voter) by means of some
front-end form. To enter the system a log in form will be displayed where Username and
Password for the Administrator, Electoral Officer and Voter will have to be entered to log
into the system and then this will check the Permission of that user. According to the
permission the System is loaded.
After logging in, the voter enters into his/her profile. They can cast their vote, they
can view the contestant details,election results, election schedule. Each user will hold
only one voter id and cast vote only once for a particular election.
Page | 8
After logging in, the Administrator enters into his/her profile. Administrator can
add/view election details, party details, candidate detailsfor a particular election as
well as for a particular party.An Administrator can view upcoming election details,
approve and declare election results, view all pending applications for voter id,
forward the pending voter id request to EO(Electoral Officer) for further processing.
After logging in, the EO (Electoral Officer) enters into his/her profile. EO can
approve/decline the applications for voter id after checking all the documents
Data at every stage is stored in the database after checking and testing. This is why the
system is reliable, easy to use and every user can accept the system by thinking its utility in
present and by applying the idea of Spiral Model the system can be developed with more
features in future.
3.Project Category
Web Application
4.Tools/Platform
Tools
1. Visual Studio 2013
Platform
1. Microsoft Windows 7/8
2. .Net Framework
3. Sql sever database(Embedded in VS 2013)
5.Goals of Implementation
The implementation aims at seamless document sharing across the institution. This
implementation will help the voters by giving the facility to cast their vote online. It will
provide the facility that they can give vote from their houses. They need not have to go
Page | 9
outside in any political and any environmentally worseweather. An aged person or any person
suffering from any health related issues need not have to go outside to cast their vote. None
will influence them in this voting process. A person who is eligible for voting can request for
voter id from his house only, in case he doesnt possess a voter id already. An Administrator
and an EO can deliver important notices and information to the mass in an efficient manner.
Registration of a party or a candidate of any party will be much easier.
Fig 6.1
Often, a customer defines a set of general objectives for software but does not identify
detailed input, processing, or output requirements. In other cases, the developer may be
unsure of the efficiency of an algorithm, the adaptability of an operating system, or the form
that human/machine interaction should take. In these, and many other situations, a
prototyping paradigm may offer the best approach.
The prototyping paradigm begins with requirements gathering. Developer and customer
meet and define the overall objectives for the software, identify whatever requirements are
P a g e | 10
known, and outline areas where further definition is mandatory. A "quick design" then
occurs. The quick design focuses on a representation of those aspects of the software that will
be visible to the customer/user (e.g., input approaches and output formats). The quick design
leads to the construction of a prototype. The prototype is evaluated by the customer/user and
used to refine requirements for the software to be developed. Iteration occurs as the prototype
is tuned to satisfy the needs of the customer, while at the same time enabling the developer to
better understand what needs to be done.
Ideally, the prototype serves as a mechanism for identifying software requirements. If a
working prototype is built, the developer attempts to use existing program fragments or
applies tools (e.g., report generators, window managers) that enable working programs to be
generated quickly.
7. Functional Requirements
Functional Requirements are those that refer to the functionality of the system, i.e.,
what services it will provide to the user. Nonfunctional (supplementary) requirements
pertain to other information needed to produce the correct system and are detailed
separately.
Any registered user can log in through login procedure.
Any new user can register through register procedure.
A registered user can navigate through only those pages which permission is given
to them.
A voter can cast vote, view upcoming election, party details, candidate details and
results of elections.
A person who is eligible for voting but doesnt have voterid can apply for voterid.
An administrator can add or view election details, send voterid request application to
EO for his approval, managed voting results of different constituencies of different
elections.
An EO can approve or decline a voter id request application after viewing the
applicants documents.
P a g e | 11
entire solution. The specification needs to describe any such attributes the customer requires.
You must decide the kind of requirements that apply to your project and include those that are
appropriate.
Each requirement is simply stated in English. Each requirement must be objective and
quantifiable; there must be some measurable way to assess whether the requirement has been
met.
Often deciding on quality attributes requires making tradeoffs, e.g., between performance and
maintainability. In the APPENDIX you must include an engineering analysis of any
significant decisions regarding tradeoffs between competing attributes.
Here are some examples of non-functional requirements:
Performance requirements
Requirements about resources required, response time, transaction rates, throughput,
benchmark specifications or anything else having to do with performance.
For better performance the application will restrict the document size to 5 MB.
Operating constraints
List any run-time constraints. This could include system resources, people, needed software,
The application must run without any manual intervention.
Platform constraints
Discuss the target platform. Be as specific or general as the user requires. If the user doesn't
care, there are still platform constraints.
Since the application will be developed in JEE it is platform independent.
P a g e | 12
The effort required to move the software to a different target platform. The measurement is
most commonly person-months or % of modules that need changing.
Reliability
Requirements about how often the software fails. The measurement is often expressed in
MTBF (mean time between failures). The definition of a failure must be clear. Also, don't
confuse reliability with availability which is quite a different kind of requirement. Be sure to
specify the consequences of software failure, how to protect from failure, a strategy for error
detection, and a strategy for correction.
Security
One or more requirements about protection of your system and its data. The measurement can
be expressed in a variety of ways (effort, skill level, time) to break into the system.
Only secured users can access the application.
No one can go to any independent page without logging in.
Usability
Requirements about how difficult it will be to learn and operate the system. The requirements
are often expressed in learning time or similar metrics.
Legal
There may be legal issues involving privacy of information, intellectual property rights,
export of restricted technologies
9.System Analysis
9.1 FEASIBILITY
Feasibility test
One should provide a feasibility report in the following format:
Product: A general statement of the product; give a brief description of what the
proposed system will do, highlighting where the proposed system meets the specified
business requirements of the organization.
P a g e | 13
Economic Feasibility: Consider the cost/benefits of the proposed system. Detail the
costs that will be incurred by the organization adopting the new system; consider
development costs and running costs. Detail benefits that the new system will bring,
direct economic benefits such as reduced costs, and indirect benefits, such as
improved management information and better customer service. Illustrate the
cost/benefit of the new system by applying a suitable cost/benefit analysis method
such as the payback method.
At this point, all of the planning for the project has been done and if the feasibility study has
shown that the project is likely to succeed within its constraints, then it only remains for us to
start the requirements analysis and thus proceed with the project.
P a g e | 14
Feasibility Study
System: Electronic Voting System(E- Date: 25/3/2015
Voting)
Author: SPMS
Page: 1
Product
The project requires a web application to be developed that will allow
online knowledge/document/paper sharing.
Technical Feasibility
The web application will be developed using JEE, HTML, CSS and Oracle.
The team is competent in that.
Social Feasibility
Some training for the Administrator and EO are required.
Market Research
Market research says that this application would be useful for the users as
it could seamlessly help them to share documents.
Economic Feasibility
The application can be developed within budget.
Alternate Solution
Could be a desktop system but that would not allow documents to be
shared online.
Table 9.1
At present there is no online system for voting in our country. People have to go
booth and wait into the queue and cast the vote. There is also no online system for
requesting voter id. They have contact with the nearby SDO or BDO offices and have
to go through with a long process. Casting votes and counting votes are also not a
secure process at existing system.
9.3 PROPOSED SYSTEM
The aim of the project is to make an online application that will help voters,
administrators and the electoral officers. It will help the voters to cast vote from their
home. They need not to go outside to give vote in a catastrophic weather. It also give
the liberty to the user to chose the protocol (https or local host) through which they
want to navigate. It ensures more network security.
9.4DATA FLOW DIAGRAM
P a g e | 15
processing (structured design). On a DFD, data items flow from an external data source or an
internal data store to an internal data store or an external data sink, via an internal process.
A DFD provides no information about the timing of processes, or about whether processes
will operate in sequence or in parallel. It is therefore quite different from a flowchart, which
shows the flow of control through an algorithm, allowing a reader to determine what
operations will be performed, in what order, and under what circumstances, but not what
kinds of data will be input to and output from the system, nor where the data will come from
and go to, nor where the data will be stored (all of which are shown on a DFD).
9.4.a.1. CAD (Level 0)
Fig 9.1
P a g e | 16
P a g e | 17
Fig 9.2
P a g e | 18
P a g e | 19
Fig 9.3
9.5 USE CASE DIAGRAM
P a g e | 20
9.5.1. Use Case Diagram for Admin
Fig 9.4
9.5.2 Use Case Diagram for Electoral Officer
Fig 9.5
P a g e | 21
9.5.3 Use Case Diagram for Voter
Fig 9.6
The requirements of a system can be represented using a use case model in the
Use Case Diagram. The use case diagram for the actors of this case study is
given as below.
Log in:USE CASE #
Login
Goal
Preconditions
Login button
Step
Action
1
Enter Login credentials (id & password)
2
Click on Login button
P a g e | 22
3
Related
Information/Use cases
Priority
Performance
Frequency
Assumptions
Below table explains Use Case definition for requirement AD-001 ADD
Election Details operation for Admin user only.
ADD Election Details
USE CASE #
Goal
Preconditions
Success End Condition
Failed End Condition
Primary, Secondary
Actors
Trigger
DESCRIPTION
Related
Information/Use cases
Priority
Performance
Frequency
Assumptions
P a g e | 23
Software Requirement Specification
Client Machine
Any standard
Browser
Software
Server Machine
Visual studio 2013
browser with
Javascript
Client side mark up /
interpreter
HTML,CSS,
Database
Sql
scripting languages
Javascript
Management
server(embedded)
System Software
System Software
Specification
9.6.1 Front End: We have designed the front end using html and css.
9.6.2 Middle End: We have used Visual Studio 2013 as a middle end.
9.6.3 Application Server: We have used IIS server as our application server.
9.6.4 Database Server: We have used Sql server as our database server.
9.7 HARDWARE REQUIREMENTS
MB
Pentiu
Proces
sor
m 4 or
sor
Server Machine
Minimum 100GB.
Dual Core or newer processor
newer
proces
sor
that
suppor
ts
Memo
SSE2
512
Memo
ry
MB
ry
GB
P a g e | 24
Project planning is concerned with identifying the following for every project:
Activities
Milestones
Deliverables.
A plan must be drawn up to guide the development towards the project goal. A plan is drawn
up at the start of a project. This plan should be used as the driver for the project. The initial
plan is not static, and must be modified as the project progresses.
Planning is required for development activities from specification through to delivery of the
system.
Task
Person(s)
Responsible
Week 1
Communication
Quick Plan
Modeling Quick Design
Construction of Prototype
Deployment, Delivery and
Feedback
Fig 11.1
Week 2
Week 3
Week 4
P a g e | 25
14.1.1 ER DIAGRAM
Fig 14.3
14.2TABLE DESIGN
14.2.1 TABLE DEFINITIONS
1. Table: EVS_TBL_User_Credentials
This table contains Authentication Information for Administrator, Electoral Officer & Voter
Field Name
Userid
Data Type
VARCHAR2(6)
Description
Primary Key*
P a g e | 26
Password
VARCHAR2(20)
Not Null
Usertype
VARCHAR2(1)
Either ['A','E','V']
Loginstatus
NUMBER(1)
Either [1 ,0]
Table 14.1
2. Table: EVS_TBL_User_Profile
This table contains User specific details entered during User Registration.
Field Name
Userid
Firstname
lastname
Dateofbirth
Gender
Data Type
VARCHAR2(6)
VARCHAR2(15)
VARCHAR2(15)
DATE
VARCHAR2(7)
Description
Foreign Key
Not Null
Not Null
Not Null
Not Null
Street
Location
City
VARCHAR2(30)
VARCHAR2(15)
VARCHAR2(15)
Not Null
Not Null
Not Null
State
Pincode
VARCHAR2(15)
VARCHAR2(10)
Not Null
Not Null
MobileNo
EmailId
VARCHAR(10)
VARCHAR2(30)
Table 14.2
3. Table: EVS_TBL_Election
This table contains Election specific information, as necessary and applicable.
Field Name
Data Type
Description
ElectionId
VARCHAR2 (6)
Primary Key
Name
VARCHAR2(15)
Not Null
Electiondate
DATE
Not Null
District
VARCHAR2(15)
Not Null
Constituency
VARCHAR2(15)
Not Null
Countingdate
DATE
Not Null
Table 14.3
4. Table: EVS_TBL_Party
This table contains Party details like Party Name, Symbol & Leader Name.
Field Name
Data Type
Description
PartyId
VARCHAR2 (6)
Primary Key
Name
VARCHAR2(20)
Not Null
Leader
VARCHAR2(20)
Not Null
Symbol
VARCHAR2(40)
File reference
Table 14.4
5. Table: EVS_TBL_Candidate
This table contains candidate details like Name of the Candidate, Election Name, Party Name and the contact
details.
Field Name
Data Type
Description
P a g e | 27
CandidateId
Name
Electionid
Partyid
District
VARCHAR2 (6)
VARCHAR2(20)
VARCHAR2 (6)
VARCHAR2 (6)
VARCHAR2(20)
Primary Key
Not Null
Foreign Key
Foreign Key
Not Null
Constituency
Dateofbirth
MobileNo
Address
Emailid
VARCHAR2(20)
DATE
VARCHAR(10)
VARCHAR2(50)
VARCHAR2(20)
Table 14.5
Not Null
Not Null
Exact 10 digit only
Not Null
May or may not Null
6. Table: EVS_TBL_Application
This table contains details about request of voterid by user and the request status.
Field Name
Data Type
Description
Userid
VARCHAR2 (6)
FK
Constituency
VARCHAR2 (20)
Not Null
Passedstatus
NUMBER(2)
Either [1|2|3]*
Approvedstatus
NUMBER(2)
Either [0|1]**
VoterId
VARCHAR2(8)
***
Table 14.6
* 1-> New request, 2->Admin forwards to EO, 3-> EO approves/rejects
** 0-> EO rejects, 1-> EO approve
7. Table: EVS_TBL_Result
This table contains the details about the no of vote received by each candidate.
Field Name
Data Type
Description
Serialno
NUMBER(6)
PK, Autogenerated
Electionid
VARCHAR2 (6)
FK
Candidateid
VARCHAR2 (6)
FK
Votecount
NUMBER(5)
Not Null
Table 14.7
8. Table: EVS_TBL_Voter_Details
This table contains the details about the voter id, election id & corresponding candidate id.
Field Name
Data Type
Description
Serialno
NUMBER(6)
Candidateid
VARCHAR2 (6)
FK
Electionid
VARCHAR2 (6)
FK
Userid
VARCHAR2 (8)
FK
Voterid
VARCHAR2 (8)
Not null
Table 14.8
PK, Autogenerated
P a g e | 28
15. Coding
15.1 Features of Language
Java is a high-level, third generation programming language, like C, FORTRAN, Smalltalk,
Perl, and many others. It is platform independent. We can use Java to write computer
applications like play games, store data or do any of the thousands of other things computer
software can
do. Compared to other programming languages, Java is most similar to C. However although
Java shares much of C's syntax, it is not C. Knowing how to program in C or,
better yet, C++, will certainly help you to learn Java more quickly, but you don't need to
know C to learn Java. A Java compiler won't compile C code, and most of the large C
programs need to be changed substantially before they can become Java programs. Whats
most special about Java in relation to other programming languages is that it lets you write
special programs called applets that can be downloaded from the Internet and played safely
within a web browser. Java language is called as an Object-Oriented Programming language
and before beginning for Java, we have to learn the concept of OOPs (Object-Oriented
Programming).
15.2 Code
There are numerous lines of codes are used to make this online system to
work. Various important validation and authentication were done in the process of making it
live. There are several queries used to insert, update and delete data from database.
Below some they are shown:
This code has been used for login validation for registered user:
package com.project.evs.bean;
publicclass CredentialsBean {
private String Userid;
private String Password;
private String Usertype;
public String getUserid() {
returnUserid;
P a g e | 29
}
publicvoid setUserid(String userid) {
Userid = userid;
}
public String getPassword() {
returnPassword;
}
publicvoid setPassword(String password) {
Password = password;
}
public String getUsertype() {
returnUsertype;
}
publicvoid setUsertype(String usertype) {
Usertype = usertype;
}
@Override
publicboolean equals(Object obj) {
// TODO Auto-generated method stub
if(obj==this)
returntrue;
if(!(objinstanceof CredentialsBean))
returnfalse;
CredentialsBean user1=(CredentialsBean)obj;
returnUserid.compareTo(user1.Userid)==0
&&Password.compareTo(user1.Password)==0
&&Usertype.compareTo(user1.Usertype)==0 ;
}
}
/*LoginAction.java*/
package com.project.evs.action;
import java.util.Map;
import
import
import
import
import
com.opensymphony.xwork2.ActionContext;
com.opensymphony.xwork2.ActionSupport;
com.project.evs.bean.CredentialsBean;
com.project.evs.exceptions.SystemException;
com.project.evs.util.Authentictaion;
P a g e | 30
private CredentialsBean credentials;
public CredentialsBean getCredentials() {
return credentials;
}
public void setCredentials(CredentialsBean credentials) {
this.credentials = credentials;
}
@Override
public String execute() {
// TODO Auto-generated method stub
Map request = (Map)
ActionContext.getContext().get("request");
try {
if (Authentictaion.authenticate(credentials)) {
request.put("utype", credentials.getUsertype());
return "waiting";
} else {
request.put("erstatus", "w");
request.put("wrongup", "Wrong userid/password");
return "error";
}
} catch (SystemException e) {
request.put("erstatus", "e");
request.put("errormsg", "System error..sorry!!");
return "error";
}
}
}
/*LogoutAction.java*/
package com.project.evs.action;
import com.opensymphony.xwork2.ActionSupport;
import com.project.evs.util.User;
public class LogoutAction extends ActionSupport {
@Override
public String execute() {
// TODO Auto-generated method stub
User user = new User();
if (user.logout())
P a g e | 31
return "Main";
else
return "error";
}
}
/**/
com.opensymphony.xwork2.ActionContext;
com.opensymphony.xwork2.ActionSupport;
com.project.evs.bean.ProfileBean;
com.project.evs.exceptions.SystemException;
com.project.evs.util.User;
P a g e | 32
Map request = (Map)
ActionContext.getContext().get("request");
profile.setUserID("0");
try {
// TODO Auto-generated method stub
String uidstatus = new User().register(profile);
request.put("uidstatus", uidstatus);
// if(!(uidstatus.equals("FAIL")))
return "success";
} catch (SystemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
request.put("errormsg", e.getMessage());
return "error";
}
}
// @Override
// public void validate() {
// TODO Auto-generated method stub
// }
}
/*RegistrationAction-validation.xml*/
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEvalidatorsPUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator1.0.2.dtd">
<validators>
<fieldname="confirmPassword">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.firstName">
<field-validatortype="requiredstring">
P a g e | 33
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.lastName">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.gender">
<field-validatortype="requiredstring">
<paramname="trim">true</param>
<message>Please Select a value to continue</message>
</field-validator>
</field>
<fieldname="profile.dateOfBirth">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.street">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.location">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.city">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.state">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.pincode">
P a g e | 34
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.mobileNo">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.emailID">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
<fieldname="profile.password">
<field-validatortype="requiredstring">
<message>Sorry,must be given......</message>
</field-validator>
</field>
</validators>
Code for administrator.java
package com.project.evs.service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import com.project.evs.bean.ApplicationBean;
import com.project.evs.bean.CandidateBean;
import com.project.evs.bean.ElectionBean;
import com.project.evs.bean.PartyBean;
import com.project.evs.bean.ResultBean;
import com.project.evs.dao.ApplicationDAO;
import com.project.evs.dao.CandidateDAO;
import com.project.evs.dao.ElectionDAO;
import com.project.evs.dao.PartyDAO;
import com.project.evs.dao.ResultDAO;
import com.project.evs.dao.Voter_DetailsDAO;
P a g e | 35
import com.project.evs.exceptions.SystemException;
public class Administrator {
public static java.lang.String addElection(ElectionBean electionBean)
throws SystemException {
if (ElectionDAO.insertElections(electionBean))
return "success";
else
return "error";
}
public static ArrayList<ElectionBean> viewElections()
throws SystemException {
ArrayList<ElectionBean> electionar = new ElectionDAO().viewElections();
return electionar;
}
public static ArrayList<ApplicationBean> viewpendingreq()
throws SystemException {
ArrayList<ApplicationBean> ar = ApplicationDAO.viewpendingrequests(1);
return ar;
}
public static boolean forwardVoterIDRequest() {
try {
ApplicationDAO.changePassedStatus(2, 1, 1, null);
return true;
} catch (SystemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
}
public static ArrayList<ElectionBean> viewUpElections()
P a g e | 36
throws SystemException {
// TODO Auto-generated method stub
ArrayList<ElectionBean> electionar = new ElectionDAO()
.viewUpElections();
return electionar;
}
public static String addParty(PartyBean party) throws SystemException {
// TODO Auto-generated method stub
if (PartyDAO.insertParty(party))
return "success";
else
return "error";
}
public static ArrayList<PartyBean> viewParty() throws SystemException {
// TODO Auto-generated method stub
ArrayList<PartyBean> partyar = new PartyDAO().viewParty();
return partyar;
}
public static Map<String, Object> approveElectionResults(String electionId)
throws SystemException {
Map<String, Object> map = new HashMap<String, Object>();
String district, constituency, partyname[];
String[] candidateids = CandidateDAO.getcandidateid(electionId);
int i = 0;
ArrayList<ResultBean> resultar = new ArrayList<ResultBean>();
ResultBean result;
partyname = new String[candidateids.length];
for (String cid : candidateids) {
result = new ResultBean();
result.setCandidateID(cid);
result.setElectionID(electionId);
P a g e | 37
result.setVoteCount(Voter_DetailsDAO.getvotecounts(electionId,
cid));
result.setSerialNo(1);
if (ResultDAO.insertResult(result))
resultar.add(i, result);
partyname[i++] = PartyDAO
.getPartyName(CandidateDAO.getPartyId(cid));
}
ElectionBean election = ElectionDAO.findById(electionId);
district = election.getDistrict();
constituency = election.getConstituency();
map.put("resultar", resultar);
map.put("district", district);
map.put("constituency", constituency);
map.put("partyname", partyname);
return map;
}
public static String addCandidate(CandidateBean candidate)
throws SystemException {
// TODO Auto-generated method stub
if (CandidateDAO.insertCandidate(candidate))
return "success";
else
return "error";
}
public static ArrayList<CandidateBean> viewCandidateDetailsByElectionName(
String electionName) throws SystemException {
String eid = ElectionDAO.getElectionID(electionName);
ArrayList<CandidateBean> candidatear = new CandidateDAO()
.viewCandidatesByEID(eid);
return candidatear;
}
P a g e | 38
16. Testing
Team Interaction
The following describes the level of team interaction necessary to have a successful product.
The Test Team will work closely with the Development Team to achieve a high quality
design and user interface specifications based on customer requirements. The Test Team
is responsible for visualizing test cases and raising quality issues and concerns during
meetings to address issues early enough in the development cycle.
The Test Team will work closely with Development Team to determine whether or not the
application meets standards for completeness. If an area is not acceptable for testing, the
code complete date will be pushed out, giving the developers additional time to stabilize
the area.
Since the application interacts with a back-end system component, the Test Team will
need to include a plan for integration testing. Integration testing must be executed
successfully prior to system testing.
Test Objective
The objective our test plan is to find and report as many bugs as possible to improve the
integrity of our program.
P a g e | 39
broad range of tests to achieve our goal. We will be testing a Binary Search Tree Application
utilizing a pre-order traversal format. There will be eight key functions used to manage our
application: load, store, clear, search, insert, delete, list in ascending order, and list in
descending order. Our user interface to utilize these functions is designed to be user-friendly
and provide easy manipulation of the tree. The application will only be used as a
demonstration tool, but we would like to ensure that it could be run from a variety of
platforms with little impact on performance or usability.
Identify the requirements to be tested. All test cases shall be derived using the current
Program Specification.
Review the test data and test cases to ensure that the unit has been thoroughly verified
and that the test data and test cases are adequate to verify proper operation of the unit.
Document the test case configuration, test data, and expected results.
Document the test data, test cases, and test configuration used during the testing
process. This information shall be submitted via the Unit/System Test Report (STR).
Successful unit testing is required before the unit is eligible for component
integration/system testing.
P a g e | 40
10 Test documents and reports shall be submitted. Any specifications to be reviewed,
revised, or updated shall be handled immediately.
Testing Process
b. Design
System Test
a.Organize
Project
c.Design/
Build
e.Design/Build
Test Proc.
f.Signoff
d.Organize
Project
Fig 18.1
Fig 16.1
The diagram above outlines the Test Process approach that will be followed.
a
Organize Project involves creating a System Test Plan, Schedule & Test Approach, and
assigning responsibilities.
b. Design/Build System Test involves identifying Test Cycles, Test Cases, Entrance & Exit
Criteria, Expected Results, etc. In general, test conditions/expected results will be
identified by the Test Team in conjunction with the Development Team. The Test Team
will then identify Test Cases and the Data required. The Test conditions are derived from
the Program Specifications Document.
c. Design/Build Test Procedures includes setting up procedures such as Error Management
systems and Status reporting.
d. Build Test Environment includes requesting/building hardware, software and data setups.
e. Execute System Tests The tests identified in the Design/Build Test Procedures will be
executed. All results will be documented and Bug Report Forms filled out and given to
the Development Team as necessary.
P a g e | 41
f. Signoff - Signoff happens when all pre-defined exit criteria have been achieved.
Testing Strategy
The following outlines the types of testing that will be done for unit, integration, and system
testing. While it includes what will be tested, the specific use cases that determine how the
testing is done will be detailed in the Test Design Document.
Test cases
Tested By:
Sumakshi Das
Test Type
Unit Testing
Test Case Number 1
Test Case Name
User Identification
Test
Case The user should enter his/ her accurate userid
Description
Output/Result
1 Successful login
2 Failure Message
Table 16.1
P a g e | 42
Tested By:
Moumita Chitrakar
Test Type
Unit Testing
Test Case Number 2
Test Case Name
Register
Test
Case
Description
The user fills up the registration form.
Item(s) to be tested
Check whether the user has filled up the form properly.
1
2
Specifications
Expected
Input
Output/Result
1 Trying to submit without filling 1 The user is redirected to the
the form properly.
2 Check for acknowledgement
from the server.
registration
page
with
error
messages.
2 Redirect accordingly.
Table 16.2
Unit Testing
Unit Testing is done at the source or code level for language-specific programming errors
such as bad syntax, logic errors, or to test particular functions or code modules. The unit test
cases shall be designed to test the validity of the programs correctness.
Black Box Testing
Black box testing typically involves running through every possible input to verify that it
results in the right outputs using the software as an end-user would. We have decided to
perform Equivalence Partitioning and Boundary Value Analysis testing on our application.
System Testing
The goals of system testing are to detect faults that can only be exposed by testing the entire
integrated system or some major part of it. Generally, system testing is mainly concerned
P a g e | 43
with areas such as performance, security, validation, load/stress, and configuration sensitivity.
But in our case we focus only on function validation and performance. And in both cases we
will use the black-box method of testing.
20. Cost Estimation of the Project along with Cost Estimation Model
Analogous estimate of effort or cost
Used for Early Estimate or Individual Activity Estimate
Sample example shown below is for two major deliverables of a software project. We use a
previous project as a benchmark for analogous estimation. Using our experience we will
estimate a multiplier.
Multipliers:
1. Prototyping: 0.75.
2. Testing: 0.5
3. Deployment: 0.5
Finally, if we want to convert to cost, we would use current rates for the resource.
Previous
WBS
Similar
Previous
ID
Project
Effort
Activity
1
Prototyping
Testing
40 WorkHours
20 WorkHours
Current
Project
Estimate
Effort
Multiplie
(Previous
Effort *
Prototyping
0.75
Testing
0.50
Total
0.75)
30 Workhours
10 WorkHours
40 WorkHours
Cost
(Rs.
500/hr.)
Rs. 15000/Rs. 5000/Rs. 20000/-
Table 20.1
Note: Effort is also called Size and unit of estimation is called either Work-Hour, personhours.
P a g e | 44
In future documents may be classified category-wise. It may try to analyze the user
24. Conclusion
The application has been designed, implemented and tested successfully. The project helped
us in understanding the challenges involved in developing an onlineapplication, the ways to
overcome them. It has also helped in understanding the value of designing the components of
overall application before implementing them. In addition to that, it has also taught us
programming skills and refining the design and implementation logic of the software at every
phase of the development life cycle in order to improve the overall performance of the
application. This has also taught us to work in a team. Lastly it has boosted our confidence
that if we get a similar type of project in future, we will be able to contribute our knowledge
and experience.
25.Appendices
P a g e | 45
A
acceptrequest() - Method in class com.project.evs.action.EOAction
addCandidate(CandidateBean) - Static method in class com.project.evs.service.Administrator
adddetails() - Method in class com.project.evs.action.AdminCandidateAction
adddetails() - Method in class com.project.evs.action.AdminElectionAction
adddetails() - Method in class com.project.evs.action.AdminPartyAction
addElection(ElectionBean) - Static method in class com.project.evs.service.Administrator
addParty(PartyBean) - Static method in class com.project.evs.service.Administrator
AdminCandidateAction - Class in com.project.evs.action
AdminCandidateAction() - Constructor for class
com.project.evs.action.AdminCandidateAction
AdminCandidateEditAction - Class in com.project.evs.action
AdminCandidateEditAction() - Constructor for class
com.project.evs.action.AdminCandidateEditAction
AdminEditAction - Class in com.project.evs.action
AdminEditAction() - Constructor for class com.project.evs.action.AdminEditAction
AdminElectionAction - Class in com.project.evs.action
AdminElectionAction() - Constructor for class com.project.evs.action.AdminElectionAction
Administrator - Class in com.project.evs.service
Administrator() - Constructor for class com.project.evs.service.Administrator
AdminPartyAction - Class in com.project.evs.action
AdminPartyAction() - Constructor for class com.project.evs.action.AdminPartyAction
AdminViewResultAction - Class in com.project.evs.action
AdminViewResultAction() - Constructor for class
com.project.evs.action.AdminViewResultAction
AdminVoterRequest - Class in com.project.evs.action
AdminVoterRequest() - Constructor for class com.project.evs.action.AdminVoterRequest
ApplicationBean - Class in com.project.evs.bean
ApplicationBean() - Constructor for class com.project.evs.bean.ApplicationBean
ApplicationDAO - Class in com.project.evs.dao
ApplicationDAO() - Constructor for class com.project.evs.dao.ApplicationDAO
approveElectionResults(String) - Static method in class
com.project.evs.service.Administrator
approveresult() - Method in class com.project.evs.action.AdminViewResultAction
authenticate(CredentialsBean) - Static method in class com.project.evs.util.Authentictaion
Authentictaion - Class in com.project.evs.util
Authentictaion() - Constructor for class com.project.evs.util.Authentictaion
AuthentictaionTest - Class in com.project.evs.test
AuthentictaionTest() - Constructor for class com.project.evs.test.AuthentictaionTest
C
CacheInterceptor - Class in com.project.evs.util
CacheInterceptor() - Constructor for class com.project.evs.util.CacheInterceptor
CandidateBean - Class in com.project.evs.bean
CandidateBean() - Constructor for class com.project.evs.bean.CandidateBean
CandidateDAO - Class in com.project.evs.dao
CandidateDAO() - Constructor for class com.project.evs.dao.CandidateDAO
P a g e | 46
castVote(String, String, String) - Method in class com.project.evs.service.Voter
changeApprovedStatus(int, String) - Static method in class
com.project.evs.dao.ApplicationDAO
changePassedStatus(int, int, int, String) - Static method in class
com.project.evs.dao.ApplicationDAO
changepassword(String, String) - Static method in class
com.project.evs.dao.User_CredentialsDAO
changepassword(String, String) - Static method in class
com.project.evs.dao.User_ProfileDAO
changePassword(CredentialsBean, String) - Method in class com.project.evs.util.User
ChangePasswordAction - Class in com.project.evs.action
ChangePasswordAction() - Constructor for class
com.project.evs.action.ChangePasswordAction
com.project.evs.action - package com.project.evs.action
com.project.evs.bean - package com.project.evs.bean
com.project.evs.dao - package com.project.evs.dao
com.project.evs.exceptions - package com.project.evs.exceptions
com.project.evs.service - package com.project.evs.service
com.project.evs.test - package com.project.evs.test
com.project.evs.util - package com.project.evs.util
create(ArrayList<ResultBean>, ResultBean) - Method in class com.project.evs.util.PdfCreate
createvoterid(String) - Static method in class com.project.evs.dao.ApplicationDAO
CredentialsBean - Class in com.project.evs.bean
CredentialsBean() - Constructor for class com.project.evs.bean.CredentialsBean
D
DBCon - Class in com.project.evs.util
DBCon() - Constructor for class com.project.evs.util.DBCon
DBUtil - Class in com.project.evs.util
DBUtil() - Constructor for class com.project.evs.util.DBUtil
declareElectionResults(ArrayList<ResultBean>) - Static method in class
com.project.evs.service.Administrator
declareresult() - Method in class com.project.evs.action.AdminViewResultAction
declinerequest() - Method in class com.project.evs.action.EOAction
delete(String) - Static method in class com.project.evs.dao.CandidateDAO
delete(String) - Static method in class com.project.evs.dao.ElectionDAO
delete(String) - Static method in class com.project.evs.dao.PartyDAO
deleteCandidate() - Method in class com.project.evs.action.AdminCandidateEditAction
deleteCandidate(String) - Static method in class com.project.evs.service.Administrator
deleteelection() - Method in class com.project.evs.action.AdminEditAction
deleteElection(String) - Static method in class com.project.evs.service.Administrator
deleteparty() - Method in class com.project.evs.action.AdminEditAction
deleteParty(String) - Static method in class com.project.evs.service.Administrator
E
editCandidatebyElectionName() - Method in class
com.project.evs.action.AdminCandidateEditAction
P a g e | 47
ElectionBean - Class in com.project.evs.bean
ElectionBean() - Constructor for class com.project.evs.bean.ElectionBean
ElectionDAO - Class in com.project.evs.dao
ElectionDAO() - Constructor for class com.project.evs.dao.ElectionDAO
ElectoralOfficer - Class in com.project.evs.service
ElectoralOfficer() - Constructor for class com.project.evs.service.ElectoralOfficer
EOAction - Class in com.project.evs.action
EOAction() - Constructor for class com.project.evs.action.EOAction
EOBean - Class in com.project.evs.bean
EOBean() - Constructor for class com.project.evs.bean.EOBean
equals(Object) - Method in class com.project.evs.bean.CredentialsBean
execute() - Method in class com.project.evs.action.ChangePasswordAction
execute() - Method in class com.project.evs.action.LoginAction
execute() - Method in class com.project.evs.action.LogoutAction
execute() - Method in class com.project.evs.action.RegistrationAction
execute() - Method in class com.project.evs.action.VoterCandidateAction
execute() - Method in class com.project.evs.action.VoterCastVote
execute() - Method in class com.project.evs.action.VoterList
execute() - Method in class com.project.evs.action.VoterResultAction
F
findById(String) - Static method in class com.project.evs.dao.ElectionDAO
findByID(String) - Method in class com.project.evs.dao.User_CredentialsDAO
forwardpendings() - Method in class com.project.evs.action.AdminVoterRequest
forwardVoterIDRequest() - Static method in class com.project.evs.service.Administrator
G
generateVoterId(String) - Static method in class com.project.evs.service.ElectoralOfficer
getAdd() - Method in class com.project.evs.action.AdminCandidateEditAction
getAddcertificate() - Method in class com.project.evs.action.VoterIDAction
getAddproof() - Method in class com.project.evs.action.VoterIDAction
getAddproofFileName() - Method in class com.project.evs.action.VoterIDAction
getAddress() - Method in class com.project.evs.bean.CandidateBean
getAllElectionnames() - Static method in class com.project.evs.dao.ElectionDAO
getAllPartynames() - Static method in class com.project.evs.dao.PartyDAO
getAllprofiles(String[]) - Static method in class com.project.evs.dao.User_ProfileDAO
getAllusersHavingVoterID() - Static method in class com.project.evs.dao.ApplicationDAO
getApplication() - Method in class com.project.evs.action.VoterIDAction
getApprovedStatus() - Method in class com.project.evs.bean.ApplicationBean
getC() - Method in class com.project.evs.action.AdminEditAction
getCandidate() - Method in class com.project.evs.action.AdminCandidateAction
getCandidateid() - Method in class com.project.evs.action.VoterCastVote
getCandidateID() - Method in class com.project.evs.bean.CandidateBean
getCandidateID() - Method in class com.project.evs.bean.ResultBean
getcandidateid(String) - Static method in class com.project.evs.dao.CandidateDAO
getcandidatename(String) - Static method in class com.project.evs.dao.CandidateDAO
getCandidatenames() - Method in class com.project.evs.action.VoterResultAction
P a g e | 48
getCdate() - Method in class com.project.evs.action.AdminEditAction
getCid() - Method in class com.project.evs.action.AdminCandidateEditAction
getCity() - Method in class com.project.evs.bean.ProfileBean
getCname() - Method in class com.project.evs.action.AdminCandidateEditAction
getConfirmPassword() - Method in class com.project.evs.action.RegistrationAction
getCons() - Method in class com.project.evs.action.AdminCandidateEditAction
getConstituency() - Method in class com.project.evs.action.AdminViewResultAction
getConstituency() - Method in class com.project.evs.action.VoterCandidateAction
getConstituency() - Method in class com.project.evs.action.VoterResultAction
getConstituency() - Method in class com.project.evs.bean.ApplicationBean
getConstituency() - Method in class com.project.evs.bean.CandidateBean
getConstituency() - Method in class com.project.evs.bean.ElectionBean
getConstituency() - Method in class com.project.evs.bean.EOBean
getCountingDate() - Method in class com.project.evs.bean.ElectionBean
getCredentials() - Method in class com.project.evs.action.ChangePasswordAction
getCredentials() - Method in class com.project.evs.action.LoginAction
getD() - Method in class com.project.evs.action.AdminEditAction
getDateOfBirth() - Method in class com.project.evs.bean.CandidateBean
getDateOfBirth() - Method in class com.project.evs.bean.ProfileBean
getDBConnection() - Static method in class com.project.evs.util.DBUtil
getDistrict() - Method in class com.project.evs.action.AdminCandidateEditAction
getDistrict() - Method in class com.project.evs.action.AdminViewResultAction
getDistrict() - Method in class com.project.evs.action.VoterCandidateAction
getDistrict() - Method in class com.project.evs.action.VoterResultAction
getDistrict() - Method in class com.project.evs.bean.ApplicationBean
getDistrict() - Method in class com.project.evs.bean.CandidateBean
getDistrict() - Method in class com.project.evs.bean.ElectionBean
getDob() - Method in class com.project.evs.action.AdminCandidateEditAction
getDobcertificate() - Method in class com.project.evs.action.VoterIDAction
getDobproof() - Method in class com.project.evs.action.VoterIDAction
getDobproofFileName() - Method in class com.project.evs.action.VoterIDAction
getDocuments() - Method in class com.project.evs.bean.ApplicationBean
getDocumentsfilenames() - Method in class com.project.evs.bean.ApplicationBean
getEdate() - Method in class com.project.evs.action.AdminEditAction
getEid() - Method in class com.project.evs.action.AdminCandidateEditAction
getEid() - Method in class com.project.evs.action.AdminEditAction
getEid() - Method in class com.project.evs.action.VoterResultAction
getElection() - Method in class com.project.evs.action.AdminElectionAction
getElectionDate() - Method in class com.project.evs.bean.ElectionBean
getElectionid() - Method in class com.project.evs.action.AdminViewResultAction
getElectionid() - Method in class com.project.evs.action.VoterCastVote
getElectionID() - Method in class com.project.evs.bean.CandidateBean
getElectionID() - Method in class com.project.evs.bean.ResultBean
getelectionid(String) - Static method in class com.project.evs.dao.CandidateDAO
getElectionID(String) - Static method in class com.project.evs.dao.ElectionDAO
getElectionIDByNameConstituencyDistrict(String, String, String) - Static method in class
com.project.evs.dao.ElectionDAO
getElectionName() - Method in class com.project.evs.action.AdminCandidateAction
P a g e | 49
getElectionResults(String) - Static method in class com.project.evs.service.Voter
getElectoralOfficerID() - Method in class com.project.evs.bean.EOBean
getEmail() - Method in class com.project.evs.action.AdminCandidateEditAction
getEmailID() - Method in class com.project.evs.bean.CandidateBean
getEmailID() - Method in class com.project.evs.bean.ProfileBean
getEname() - Method in class com.project.evs.action.AdminEditAction
getEname() - Method in class com.project.evs.action.VoterCandidateAction
getFirstName() - Method in class com.project.evs.bean.ProfileBean
getFlag() - Method in class com.project.evs.action.AdminCandidateAction
getFlag() - Method in class com.project.evs.action.AdminCandidateEditAction
getGender() - Method in class com.project.evs.bean.ProfileBean
getLastName() - Method in class com.project.evs.bean.ProfileBean
getLeader() - Method in class com.project.evs.bean.PartyBean
getLocation() - Method in class com.project.evs.bean.ProfileBean
getlocation(String) - Static method in class com.project.evs.dao.ApplicationDAO
getMob() - Method in class com.project.evs.action.AdminCandidateEditAction
getMobileNo() - Method in class com.project.evs.bean.CandidateBean
getMobileNo() - Method in class com.project.evs.bean.ProfileBean
getName() - Method in class com.project.evs.bean.CandidateBean
getName() - Method in class com.project.evs.bean.ElectionBean
getName() - Method in class com.project.evs.bean.PartyBean
getNewpassword() - Method in class com.project.evs.action.ChangePasswordAction
getParty() - Method in class com.project.evs.action.AdminPartyAction
getPartyID() - Method in class com.project.evs.bean.CandidateBean
getPartyID() - Method in class com.project.evs.bean.PartyBean
getPartyId(String) - Static method in class com.project.evs.dao.CandidateDAO
getPartyID(String) - Static method in class com.project.evs.dao.PartyDAO
getPartyName() - Method in class com.project.evs.action.AdminCandidateAction
getPartyname() - Method in class com.project.evs.action.AdminViewResultAction
getPartyname() - Method in class com.project.evs.action.VoterResultAction
getPartyName(String) - Static method in class com.project.evs.dao.PartyDAO
getPassedStatus() - Method in class com.project.evs.bean.ApplicationBean
getPassword() - Method in class com.project.evs.bean.CredentialsBean
getPassword() - Method in class com.project.evs.bean.ProfileBean
getPid() - Method in class com.project.evs.action.AdminCandidateEditAction
getPid() - Method in class com.project.evs.action.AdminEditAction
getPincode() - Method in class com.project.evs.bean.ProfileBean
getPleader() - Method in class com.project.evs.action.AdminEditAction
getPname() - Method in class com.project.evs.action.AdminEditAction
getProfile() - Method in class com.project.evs.action.RegistrationAction
getPsymbol() - Method in class com.project.evs.action.AdminEditAction
getRecentElections() - Static method in class com.project.evs.dao.ElectionDAO
getResultar() - Method in class com.project.evs.action.AdminViewResultAction
getResultar() - Method in class com.project.evs.action.VoterResultAction
getSerialNo() - Method in class com.project.evs.bean.ResultBean
getState() - Method in class com.project.evs.bean.ProfileBean
getStatusmsg() - Method in class com.project.evs.action.AdminEditAction
getStreet() - Method in class com.project.evs.bean.ProfileBean
getSymbol() - Method in class com.project.evs.bean.PartyBean
P a g e | 50
getUserid() - Method in class com.project.evs.action.EOAction
getUserID() - Method in class com.project.evs.bean.ApplicationBean
getUserid() - Method in class com.project.evs.bean.CredentialsBean
getUserID() - Method in class com.project.evs.bean.ProfileBean
getUsertype() - Method in class com.project.evs.bean.CredentialsBean
getVoteCount() - Method in class com.project.evs.bean.ResultBean
getvotecounts(String, String) - Static method in class com.project.evs.dao.Voter_DetailsDAO
getVoterid() - Method in class com.project.evs.action.VoterCastVote
getVoterID() - Method in class com.project.evs.bean.ApplicationBean
getvoterid(String) - Static method in class com.project.evs.dao.ApplicationDAO
getWinningparty() - Method in class com.project.evs.action.VoterResultAction
getWinningparty(String) - Static method in class com.project.evs.dao.ResultDAO
getWinningparty(ArrayList<ResultBean>) - Static method in class
com.project.evs.service.Administrator
getWinningparty(String) - Static method in class com.project.evs.service.Voter
I
insertApplication(ApplicationBean) - Static method in class
com.project.evs.dao.ApplicationDAO
insertCandidate(CandidateBean) - Static method in class com.project.evs.dao.CandidateDAO
insertElections(ElectionBean) - Static method in class com.project.evs.dao.ElectionDAO
insertParty(PartyBean) - Static method in class com.project.evs.dao.PartyDAO
insertResult(ResultBean) - Static method in class com.project.evs.dao.ResultDAO
insertUser_Credentials(ProfileBean) - Method in class com.project.evs.dao.User_ProfileDAO
insertVoter(String, String, String) - Static method in class
com.project.evs.dao.Voter_DetailsDAO
intercept(ActionInvocation) - Method in class com.project.evs.util.CacheInterceptor
isApproved(String) - Static method in class com.project.evs.dao.ApplicationDAO
isexistsapplication(String) - Static method in class com.project.evs.dao.ApplicationDAO
isexistsvoter(String, String) - Static method in class com.project.evs.dao.Voter_DetailsDAO
L
login(CredentialsBean) - Method in class com.project.evs.util.User
LoginAction - Class in com.project.evs.action
LoginAction() - Constructor for class com.project.evs.action.LoginAction
logout() - Method in class com.project.evs.util.User
LogoutAction - Class in com.project.evs.action
LogoutAction() - Constructor for class com.project.evs.action.LogoutAction
M
makeCon() - Static method in class com.project.evs.util.DBCon
N
NavigationException - Exception in com.project.evs.exceptions
P a g e | 51
NavigationException() - Constructor for exception
com.project.evs.exceptions.NavigationException
NavigationException(String) - Constructor for exception
com.project.evs.exceptions.NavigationException
noOfPendingRequests() - Static method in class com.project.evs.service.ElectoralOfficer
P
PartyBean - Class in com.project.evs.bean
PartyBean() - Constructor for class com.project.evs.bean.PartyBean
PartyDAO - Class in com.project.evs.dao
PartyDAO() - Constructor for class com.project.evs.dao.PartyDAO
PassedStatus(String) - Static method in class com.project.evs.dao.ApplicationDAO
PdfCreate - Class in com.project.evs.util
PdfCreate() - Constructor for class com.project.evs.util.PdfCreate
pendingresults() - Static method in class com.project.evs.dao.ResultDAO
ProfileBean - Class in com.project.evs.bean
ProfileBean() - Constructor for class com.project.evs.bean.ProfileBean
R
register() - Method in class com.project.evs.action.RegistrationAction
register(ProfileBean) - Method in class com.project.evs.util.User
RegistrationAction - Class in com.project.evs.action
RegistrationAction() - Constructor for class com.project.evs.action.RegistrationAction
requestid() - Method in class com.project.evs.action.VoterIDAction
requestVoterId(ApplicationBean) - Method in class com.project.evs.service.Voter
ResultBean - Class in com.project.evs.bean
ResultBean() - Constructor for class com.project.evs.bean.ResultBean
ResultDAO - Class in com.project.evs.dao
ResultDAO() - Constructor for class com.project.evs.dao.ResultDAO
S
setAdd(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setAddcertificate(String) - Method in class com.project.evs.action.VoterIDAction
setAddproof(File) - Method in class com.project.evs.action.VoterIDAction
setAddproofFileName(String) - Method in class com.project.evs.action.VoterIDAction
setAddress(String) - Method in class com.project.evs.bean.CandidateBean
setApplication(ApplicationBean) - Method in class com.project.evs.action.VoterIDAction
setApprovedStatus(int) - Method in class com.project.evs.bean.ApplicationBean
setC(String) - Method in class com.project.evs.action.AdminEditAction
setCandidate(CandidateBean) - Method in class
com.project.evs.action.AdminCandidateAction
setCandidateid(String) - Method in class com.project.evs.action.VoterCastVote
setCandidateID(String) - Method in class com.project.evs.bean.CandidateBean
setCandidateID(String) - Method in class com.project.evs.bean.ResultBean
setCandidatenames(String[]) - Method in class com.project.evs.action.VoterResultAction
setCdate(String) - Method in class com.project.evs.action.AdminEditAction
P a g e | 52
setCid(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setCity(String) - Method in class com.project.evs.bean.ProfileBean
setCname(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setConfirmPassword(String) - Method in class com.project.evs.action.RegistrationAction
setCons(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setConstituency(String) - Method in class com.project.evs.action.AdminViewResultAction
setConstituency(String) - Method in class com.project.evs.action.VoterCandidateAction
setConstituency(String) - Method in class com.project.evs.action.VoterResultAction
setConstituency(String) - Method in class com.project.evs.bean.ApplicationBean
setConstituency(String) - Method in class com.project.evs.bean.CandidateBean
setConstituency(String) - Method in class com.project.evs.bean.ElectionBean
setConstituency(String) - Method in class com.project.evs.bean.EOBean
setCountingDate(String) - Method in class com.project.evs.bean.ElectionBean
setCredentials(CredentialsBean) - Method in class
com.project.evs.action.ChangePasswordAction
setCredentials(CredentialsBean) - Method in class com.project.evs.action.LoginAction
setD(String) - Method in class com.project.evs.action.AdminEditAction
setDateOfBirth(String) - Method in class com.project.evs.bean.CandidateBean
setDateOfBirth(String) - Method in class com.project.evs.bean.ProfileBean
setDistrict(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setDistrict(String) - Method in class com.project.evs.action.AdminViewResultAction
setDistrict(String) - Method in class com.project.evs.action.VoterCandidateAction
setDistrict(String) - Method in class com.project.evs.action.VoterResultAction
setDistrict(String) - Method in class com.project.evs.bean.ApplicationBean
setDistrict(String) - Method in class com.project.evs.bean.CandidateBean
setDistrict(String) - Method in class com.project.evs.bean.ElectionBean
setDob(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setDobcertificate(String) - Method in class com.project.evs.action.VoterIDAction
setDobproof(File) - Method in class com.project.evs.action.VoterIDAction
setDobproofFileName(String) - Method in class com.project.evs.action.VoterIDAction
setDocuments(String[]) - Method in class com.project.evs.bean.ApplicationBean
setDocumentsfilenames(String[]) - Method in class com.project.evs.bean.ApplicationBean
setEdate(String) - Method in class com.project.evs.action.AdminEditAction
setEid(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setEid(String) - Method in class com.project.evs.action.AdminEditAction
setEid(String) - Method in class com.project.evs.action.VoterResultAction
setElection(ElectionBean) - Method in class com.project.evs.action.AdminElectionAction
setElectionDate(String) - Method in class com.project.evs.bean.ElectionBean
setElectionid(String) - Method in class com.project.evs.action.AdminViewResultAction
setElectionid(String) - Method in class com.project.evs.action.VoterCastVote
setElectionID(String) - Method in class com.project.evs.bean.CandidateBean
setElectionID(String) - Method in class com.project.evs.bean.ElectionBean
setElectionID(String) - Method in class com.project.evs.bean.ResultBean
setElectionName(String) - Method in class com.project.evs.action.AdminCandidateAction
setElectoralOfficerID(String) - Method in class com.project.evs.bean.EOBean
setEmail(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setEmailID(String) - Method in class com.project.evs.bean.CandidateBean
setEmailID(String) - Method in class com.project.evs.bean.ProfileBean
setEname(String) - Method in class com.project.evs.action.AdminEditAction
P a g e | 53
setEname(String) - Method in class com.project.evs.action.VoterCandidateAction
setFirstName(String) - Method in class com.project.evs.bean.ProfileBean
setFlag(String) - Method in class com.project.evs.action.AdminCandidateAction
setFlag(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setGender(String) - Method in class com.project.evs.bean.ProfileBean
setLastName(String) - Method in class com.project.evs.bean.ProfileBean
setLeader(String) - Method in class com.project.evs.bean.PartyBean
setLocation(String) - Method in class com.project.evs.bean.ProfileBean
setMob(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setMobileNo(String) - Method in class com.project.evs.bean.CandidateBean
setMobileNo(String) - Method in class com.project.evs.bean.ProfileBean
setName(String) - Method in class com.project.evs.bean.CandidateBean
setName(String) - Method in class com.project.evs.bean.ElectionBean
setName(String) - Method in class com.project.evs.bean.PartyBean
setNewpassword(String) - Method in class com.project.evs.action.ChangePasswordAction
setParty(PartyBean) - Method in class com.project.evs.action.AdminPartyAction
setPartyID(String) - Method in class com.project.evs.bean.CandidateBean
setPartyID(String) - Method in class com.project.evs.bean.PartyBean
setPartyName(String) - Method in class com.project.evs.action.AdminCandidateAction
setPartyname(String[]) - Method in class com.project.evs.action.AdminViewResultAction
setPartyname(String[]) - Method in class com.project.evs.action.VoterResultAction
setPassedStatus(int) - Method in class com.project.evs.bean.ApplicationBean
setPassword(String) - Method in class com.project.evs.bean.CredentialsBean
setPassword(String) - Method in class com.project.evs.bean.ProfileBean
setPid(String) - Method in class com.project.evs.action.AdminCandidateEditAction
setPid(String) - Method in class com.project.evs.action.AdminEditAction
setPincode(String) - Method in class com.project.evs.bean.ProfileBean
setPleader(String) - Method in class com.project.evs.action.AdminEditAction
setPname(String) - Method in class com.project.evs.action.AdminEditAction
setProfile(ProfileBean) - Method in class com.project.evs.action.RegistrationAction
setPsymbol(String) - Method in class com.project.evs.action.AdminEditAction
setResultar(ArrayList<ResultBean>) - Method in class
com.project.evs.action.AdminViewResultAction
setResultar(ArrayList<ResultBean>) - Method in class
com.project.evs.action.VoterResultAction
setSerialNo(int) - Method in class com.project.evs.bean.ResultBean
setServletRequest(HttpServletRequest) - Method in class
com.project.evs.action.AdminPartyAction
setSession(Map) - Method in class com.project.evs.action.AdminCandidateAction
setSession(Map) - Method in class com.project.evs.action.AdminCandidateEditAction
setSession(Map) - Method in class com.project.evs.action.AdminEditAction
setSession(Map) - Method in class com.project.evs.action.AdminElectionAction
setSession(Map) - Method in class com.project.evs.action.AdminPartyAction
setSession(Map) - Method in class com.project.evs.action.AdminViewResultAction
setSession(Map) - Method in class com.project.evs.action.AdminVoterRequest
setSession(Map) - Method in class com.project.evs.action.ChangePasswordAction
setSession(Map) - Method in class com.project.evs.action.EOAction
setSession(Map) - Method in class com.project.evs.action.VoterCandidateAction
setSession(Map) - Method in class com.project.evs.action.VoterCastVote
P a g e | 54
setSession(Map) - Method in class com.project.evs.action.VoterIDAction
setSession(Map) - Method in class com.project.evs.action.VoterList
setSession(Map) - Method in class com.project.evs.action.VoterResultAction
setState(String) - Method in class com.project.evs.bean.ProfileBean
setStatusmsg(String) - Method in class com.project.evs.action.AdminEditAction
setStreet(String) - Method in class com.project.evs.bean.ProfileBean
setSymbol(String) - Method in class com.project.evs.bean.PartyBean
setUserid(String) - Method in class com.project.evs.action.EOAction
setUserID(String) - Method in class com.project.evs.bean.ApplicationBean
setUserid(String) - Method in class com.project.evs.bean.CredentialsBean
setUserID(String) - Method in class com.project.evs.bean.ProfileBean
setUsertype(String) - Method in class com.project.evs.bean.CredentialsBean
setVoteCount(int) - Method in class com.project.evs.bean.ResultBean
setVoterid(String) - Method in class com.project.evs.action.VoterCastVote
setVoterID(String) - Method in class com.project.evs.bean.ApplicationBean
setWinningparty(String) - Method in class com.project.evs.action.VoterResultAction
SystemException - Exception in com.project.evs.exceptions
SystemException() - Constructor for exception com.project.evs.exceptions.SystemException
SystemException(String) - Constructor for exception
com.project.evs.exceptions.SystemException
T
takeValue() - Method in class com.project.evs.test.AuthentictaionTest
testAuthenticate() - Method in class
AuthentictaionTestAuthentictaion.authenticate(com.project.evs.bean.Credentials
Bean)
U
update(CandidateBean) - Static method in class com.project.evs.dao.CandidateDAO
update(ElectionBean) - Static method in class com.project.evs.dao.ElectionDAO
update(PartyBean) - Static method in class com.project.evs.dao.PartyDAO
updateCandidateDetails(CandidateBean) - Static method in class
com.project.evs.service.Administrator
updateelection() - Method in class com.project.evs.action.AdminEditAction
updateElectionDetails(ElectionBean) - Static method in class
com.project.evs.service.Administrator
updateparty() - Method in class com.project.evs.action.AdminEditAction
updatePartyDetails(PartyBean) - Static method in class com.project.evs.service.Administrator
uploadfiles() - Method in class com.project.evs.action.VoterIDAction
User - Class in com.project.evs.util
User() - Constructor for class com.project.evs.util.User
User_CredentialsDAO - Class in com.project.evs.dao
User_CredentialsDAO() - Constructor for class com.project.evs.dao.User_CredentialsDAO
User_ProfileDAO - Class in com.project.evs.dao
User_ProfileDAO() - Constructor for class com.project.evs.dao.User_ProfileDAO
P a g e | 55
validate() - Method in class com.project.evs.action.AdminPartyAction
viewAllVoterIdApplications() - Static method in class
com.project.evs.service.ElectoralOfficer
viewapplications(int) - Static method in class com.project.evs.dao.ApplicationDAO
viewCandidateDetailsByElectionName(String) - Static method in class
com.project.evs.service.Administrator
viewCandidateDetailsByPartyName(String) - Static method in class
com.project.evs.service.Administrator
viewCandidatesByEID(String, ArrayList<CandidateBean>) - Static method in class
com.project.evs.dao.CandidateDAO
viewCandidatesByElectionName(String, String, String) - Static method in class
com.project.evs.service.Voter
viewCandidatesByPID(String) - Method in class com.project.evs.dao.CandidateDAO
viewdetails() - Method in class com.project.evs.action.AdminElectionAction
viewdetails() - Method in class com.project.evs.action.AdminPartyAction
viewdetailsbyename() - Method in class com.project.evs.action.AdminCandidateAction
viewdetailsbypname() - Method in class com.project.evs.action.AdminCandidateAction
viewElectionResult(String) - Static method in class com.project.evs.service.Voter
viewElections() - Method in class com.project.evs.dao.ElectionDAO
viewElections() - Static method in class com.project.evs.service.Administrator
viewGeneratedVoterId(String) - Method in class com.project.evs.service.Voter
viewID() - Method in class com.project.evs.action.VoterIDAction
viewParty() - Method in class com.project.evs.dao.PartyDAO
viewParty() - Static method in class com.project.evs.service.Administrator
viewpendingreq() - Static method in class com.project.evs.service.Administrator
viewpendings() - Method in class com.project.evs.action.AdminVoterRequest
viewpendings() - Method in class com.project.evs.action.EOAction
viewTodayElection(String, String) - Method in class com.project.evs.dao.ElectionDAO
viewupdetails() - Method in class com.project.evs.action.AdminElectionAction
viewUpElections() - Method in class com.project.evs.dao.ElectionDAO
viewUpElections() - Static method in class com.project.evs.service.Administrator
Voter - Class in com.project.evs.service
Voter() - Constructor for class com.project.evs.service.Voter
Voter_DetailsDAO - Class in com.project.evs.dao
Voter_DetailsDAO() - Constructor for class com.project.evs.dao.Voter_DetailsDAO
VoterCandidateAction - Class in com.project.evs.action
VoterCandidateAction() - Constructor for class com.project.evs.action.VoterCandidateAction
VoterCastVote - Class in com.project.evs.action
VoterCastVote() - Constructor for class com.project.evs.action.VoterCastVote
VoterIDAction - Class in com.project.evs.action
VoterIDAction() - Constructor for class com.project.evs.action.VoterIDAction
VoterList - Class in com.project.evs.action
VoterList() - Constructor for class com.project.evs.action.VoterList
VoterResultAction - Class in com.project.evs.action
VoterResultAction() - Constructor for class com.project.evs.action.VoterResultAction
P a g e | 56
26. Bibliography
1. Roger S. Pressman. Software Engineering: A Practioner's Approach (Sixth Edition,
International Edition). McGraw-Hill, 2005.
2. Ian Sommerville. Software Engineering (Seventh Edition). Addison-Wesley, 2004.
3. Frederick P. Brooks. The Mythical Man-Month: Essays on Software Engineering,
Anniversary Edition. Addison-Wesley Pub Co; 1st edition (August 2, 1995).
4. 1st Edition: 1975. Tells the story of the IBM 360 Operating System, and what failed
why.
5. UML = Unified Modeling Language
6. Martin Fowler. UML Distilled. Addison-Wesley Pub Co; 3rd edition (September 19,
2003).
7. Edward Yourdon and Larry L. Constantine. Structured Design: Fundamentals of a
Discipline of Computer Program and System Design. Prentice-Hall, 1979.
8. Ken Arnold and James Gosling, The Java Programming Language, second ed.,
Addison-Wesley, 1998.
9. Gary Cornell and Cay S. Horstmann, Core Java, second ed., SunSoft Press, 2013
www.oracle.com/oracle-tutorial
www.w3schools.com/css
www.javatpoint.com/java-tutorial
www.tutorialspoint.com/j2ee