top final
TRANSCRIPT
ONLINE NATIONAL POLLING 2010
THE GREAT MIND CHALLENGE 2010
ONLINE NATIONAL POLLING
SOFTWARE REQUIREMENT SPECIFICATION
TEAM
NAME
TEAM MEMBERS
HARSHIT SOMPURA
PALLAVI MODANI
ANKIT SHARMA
RAHUL GOYAL
PROJECT MENTOR
Mr. HARPREET GILL
ONLINE NATIONAL POLLING 2010
INDEX
1. Introduction……………………………………………………………………………….
1.1 Purpose……………………………………………………………………………………
1.2 scope…………………………………………………………………………………
1.3 definitions, acronyms, abbreviations…………………………………….
1.4 technologies…………………………………………………………………
1.5 overview…………………………………………………………………………..
2. overall description…………………………………………………………………
2.1 product’s perspective…………………………………………………………………
2.2 software interface…………………………………………………………………
2.3 hardware interface…………………………………………………………………
2.4 communication interface……………………………………………………
2.5 product function…………………………………………………………………
2.5.1 functional requirements………………………………………………
2.5.2 non-functional requirements…………………………………
2.6 user characteristics…………………………………………………………………
ONLINE NATIONAL POLLING 2010
2.7 constraints…………………………………………………………………
2.8 assumptions and dependencies………………………………………………
3. specific requirements…………………………………………………………………
3.1 use case report…………………………………………………………………
3.2 E-R diagram…………………………………………………………………
3.3 Data flow diagram…………………………………………………………………
3.4 Class diagram…………………………………………………………………
3.5 Object diagram…………………………………………………………………
3.6 Use case diagram…………………………………………………………………
3.7 Sequence diagram…………………………………………………………………
3.8 Collaboration diagram………………………………………………………
3.9 Activity diagram…………………………………………………………………
3.10 Supplementary requirements……………………………………………
3.10.1 power backup…………………………………………………………………
3.10.2 proper maintenance…………………………………………………
3.10.3 network availability and bandwidth issues…………
3.10.4 server should be highly responsive………………………………
FAQ’s………………………………………………………………………………………
ONLINE NATIONAL POLLING 2010
1. INTRODUCTION
1.1 PURPOSE
The purpose of this project is to build an online polling system so that more and more
voters are able to cast their votes in case they are not able to reach the Polling Stations.
This system is solely designed for those who are far away from their polling zone still they
can vote from that place. It can also help people cast their vote online even when they are
not in the country.
1.2 SCOPE
We live in a democracy and voting is one of our fundamental duties as responsible citizens
of the country, but nowhere around the country a 100% people come to vote during the
elections in their territory. There have been many reasons for that some of them are:
• In the rural areas the influential people keep their men at the polling booths to threaten
the common man to vote for them.
• There are many portions of the country like the North East where there is locally
sponsored terrorism, at such places the security conditions are also not very bright, so
naturally people feel afraid to come out of their houses and go to vote.
• Net savvy new generation want hassle free voting system. Also the people in metros want
a system through which they can vote for their territory without traveling.
Keeping in mind these situations and to improve the state of democracy in the country
Online Polling System can be thought as a solution, in conjunction with the ongoing current
manual voting system.
ONLINE NATIONAL POLLING 2010
1.3 DEFINITIONS, ACRONYMS & ABBREVIATIONS
SLA: SLA is a formal written agreement made between two parties. The service provider
and the service recipient. It defines the term of engagement the fundamental rules that will
govern the relationship.
HTML: Hypertext Markup Language is a markup language used to design static web pages.
EJB: Enterprise Java Beans.
J2EE: Java 2 Enterprise Edition is a programming platform—part of the Java platform—for
developing and running distributed multitier architecture Java applications, based largely
on modular software components running on an application server.
DB2: DB2 Database is the database management system that delivers a flexible and cost
effective database platform to build robust on demand business applications.
WAS: Web sphere application server is an application server that runs business
applications and supports the J2EE and web services standards.
WSAD : Web sphere studio application developer is a toolkit which is designed for the
creation of more complex projects, providing fully dynamic web application utilizing EJB’s.
This consist of EJB tools, CMP, data mapping tools & a universal test client that is designed
to aid testing of EJB’s.
HTTP: Hypertext Transfer Protocol is a transaction oriented client/server protocol
between web browser & a Web Server.
HTTPS: Secure Hypertext Transfer Protocol is a HTTP over SSL (secure socket layer).
TCP/IP: Transmission Control Protocol/Internet Protocol, the suite of communication
protocols used to connect hosts on the Internet. TCP/IP uses several protocols, the two
main ones being TCP and IP.
ONLINE NATIONAL POLLING 2010
1.4 TECHNOLOGIES
J2EE: Application Architecture
JSP: java server programming
DB2-Express C: Database Architecture
RAD(Rational application developer): IDE (Integrated Development Environment)
Server: WAS
1.5 OVERVIEW
The SRS will include two sections:
Overall Description will describe major components of the system, interconnection and
external interfaces.
Specific Requirements will describe the functions of actors, their role in the system and
constraints.
ONLINE NATIONAL POLLING 2010
2. OVERALL DESCRIPTION
2.1 PRODUCT’S PERSPECTIVE
A clean interface is built which is easy to understand and work on so that a person having
little knowledge in field of computers can also work easily and cast his vote.
The web pages (XHTML/JSP are present to provide the user interface on system
client side. Communication between customer and server is provided through HTP/HTTPS
protocols.
The Client Software is to provide the user unterface on system user client side aand
for this TCP/IP protocol are used.
On the server side web servar is for EJB and database server is for stroing the information.
HTTP/HTTPS
TCP/IP
DB2
HTML
Client
(customer)
Client
Software
(System
user)
WAS
ONLINE NATIONAL POLLING 2010
2.2 SOFTWARE INTERFACE
Client on internet : Web Browser, Operating System(any)
Cliebt on Intranet : Client Software, Web Browser, Operating System(any)
Data Base Server : DB2 Express-C, Operating System(any)
Development End : WASD (J2EE, JAVA, Servlet, HTML), DB2, OS(Windows), Web Server.
2.3 HARDWARE INTERFACE
CLIENT SIDE
Software Processor RAM(Minimum Disk Space
Internet Explorer
6.0 (or Higher)
Pentium III at 1GHz 128 MB 100 MB
SERVER SIDE
WAS Pentium III at 1
GHz
512 MB 1 GB
DB2 Express-C Pentium III at 1
GHz
512 MB 1 GB
2.4 COMMUNICATION INTERFACE
It uses HTTP/HTTPS protocol on client side.
Firewall security is required for security the server.
TCP/IP protocol is the basic need for the client side.
ONLINE NATIONAL POLLING 2010
2.5 PRODUCT FUNCTION
2.5.1 FUNCTIONAL REQUIREMENTS (OR PRIMARY FUNCTIONS)
VOTING
The main task of online polling is to design a software which enables the general
public of the country to exercise their right to vote online. An electoral roll, list of all eligible
citizen who are entitled to cast their vote in an election , is displayed on the HTML pages
and also the party manifestos.
POLLING INFORMATION
All the information regarding the polling and the candidate of the local is given directly to
the people.
Mobility of voting: The voter can now vote from anywhere in the world for his locate. This
also saves the time and money of the consented government.
COUNTING OF VOTES
The votes are directly stored in the database which are further be received by the authority
or administrators by just passing on query into the database with authentication.
2.5.2 NONFUNCTIONAL REQUIREMENTS (OR SECONDARY FUNCTIONS):
MORE EASY AND QUICK MANAGEMENT:
The data is stored at a single place and security firewall can be provided so that its
management is easy.
GENERAL AWARENESS
The project also spread the general awareness among the people and tells them why they
MUST exercise their vote in the welfare of the country. This is done by the means of display
videos, spreading information about the causes and effect of the people practicing their
ONLINE NATIONAL POLLING 2010
votes, It also aware the general public on what measures they should take while choosing a
candidate to be their representative in the legislative assembly.
SECURITY
The data including the candidate list and voter registration are kept safe by efficient
management of data provided by DB2 Express-C.
AVAILABLITY
The project has been so designed that it provides the 24x7 availability to the users.
2.6 USER CHARACTERSTICS
The user should be aware of the normal internet usage and comfortable with the browser
interface. He should be aware of the general voting trend of the country. The user need not
know about the internal structure of the Java environment and working.
2.7 CONSTRAINTS
Elections can exist on more than one day.
GUI is only in English.
Login and password is used for identification of voters, polling officers, and there is
no facility for guest.
This system must only be used for a state-wide election or smaller.
All poll workers must be trained on the systems in which they will assist.
All devices must be tamper evident.
A random sampling of devices must be put through additional pre & post election
testing.
Limited to HTTP/HTTPS.
All devices must undergo a full re-installation and product upgrade between
elections.
All devices must be secured while in transit, storage, and in use.
ONLINE NATIONAL POLLING 2010
2.8 ASSUMPTIONS AND DEPENDENCIES
The voting is done through the country on a single day.
All the candidates have their respective data on portals of their parties which
can be kinked with the main electronic voting sites.
Role of every user predefined and no other extensions can be done without the
permission of election commissioner and administrator both.
User ID and password are provided with Voter-Id which can further be modified.
Important: During the making of this project it has been assumed that the city is not
been divided into different wards. In fact the whole city can be treated as a ward and
all the candidates of particular city compete under one ward only. The voters also cast
their votes under one ward only.
ONLINE NATIONAL POLLING 2010
3. SPECIFIC REQUIREMENTS
3.1 USE-CASE REPORTS
A) ADMINISTRATOR
Responsible for providing all the information of candidates who have applied for the
polling and voter registration.
I) PROFILE OF CANDIDATES
All the candidates have to submit their information to the administrator so that it can be
displayed on the site.
II) PROVIDING THE LIST OF CANDIDATES
He will provide the list of all the candidates at the local as well as national level.
NAME OF USE-CASE:- PROFILE OF CANDIDATES
DESCRIPTION
Administrator inserts the candidate’s profile data in the database only after verification.
After then only the profile is displayed on the portal.
PRECONDITIONS
Data is verified by the Administrator.
Administrator is logged in already.
NORMAL FLOW OF EVENTS:
CANDIDATE
INFORMATION DATABASE
ADMINISTRATOR
PROFILE INCLUDES
ONLINE NATIONAL POLLING 2010
Administrator clicks on to the link of view profiles on his home page.
Data is already provided by the candidate and the administrator verifies it.
Query is submitted and data is saved on database.
B) FIELD OFFICERS
All the responsibility of maintaining the connection and availability of the system is taken
by this person. He is also responsible for voter registration done on the day of polling.
I) MANAGING CONNECTIVITY AND AVAILABILITY OF THE SYSTEM
All the connectivity and system availability is maintained while polling process continues.
II) ON-SPOT VOTER REGISTRATION
Voters who were not able to register themselves beforehand, the field officers do their
registration thereby itself on the day of polling.
NAME OF CASE USED:- AUTHENTICATE NEW VOTERS
DESCRIPTION
All newly registered voters are given a unique id by the Administrator which is useful for
them while voting because they are registered in database with this id.
PRECONDITIONS
All the formalities are done such as Voter Id-card.
Voters are verified.
NORMAL FLOW OF EVENT
VOTER’S
INFORMATION DATABASE FIELD
OFFICER
PROFILE INCLUDES
ONLINE NATIONAL POLLING 2010
Data verified by election commission.
Data sent to Administrator.
Voter’s information is verified by the administrator and stored in database and
given a unique id for login.
C) CANDIDATES
The candidates who are competing for elections in their respective constituencies are
provided with a registration form. After filling the form and getting it verified by the
Administrator, the candidates are eligible for voting.
I) PROVIDE PROFILE INFORMATION
The candidate provides the information regarding his/her qualification, profession, party
which he wants to join, etc by filling the registration form.
NAME OF CASE USED:- PROVIDE PROFILE INFORMATION
DESCRIPTION
All the candidates wishing to contest elections have to provide their detailed information
on the form upload on the site. This information is then verified by the Administrator, only
after which the candidate can fight elections. The candidate is also given a unique id by the
Administrator which can be used by them for updating profile information.
PRECONDITIONS
CANDIDATE’S
INFORMATION DATABASE ADMINISTRATOR’
S VERIFICATION
PROFILE INCLUDES
ONLINE NATIONAL POLLING 2010
All the formalities are done such as age verification, medical checkup, etc.
Candidates are verified.
NORMAL FLOW OF EVENT
Profile details provided by the candidate.
Data sent to Administrator.
Candidate’s information is verified by the administrator and only after successful
verification , they are given a unique Id for login.
D) VOTERS
The candidates who are competing for elections in their respective constituencies are
provided with a registration form. After filling the form and getting it verified by the
Administrator, the candidates are eligible for voting.
I) PROVIDE PROFILE INFORMATION
The candidate provides the information regarding his/her qualification, profession, party
which he wants to join, etc by filling the registration form.
II) CAST THEIR VOTES
The voters practice their right to vote by logging into their account. After login the
candidate list is displayed and the voter can chose which candidate to vote.
III) GETTING INFORMATION ABOUT PARTY MANIFESTOS AND CANDIDATE
PROFILES:
Party manifestos are already stored in database and the voter is displayed this on his
homepage. He can also view the profiles of all the candidates who are contesting for
elections.
NAME OF CASE USED:- PROVIDE PROFILE INFORMATION
VOTER’S
INFORMATION DATABASE FIELD OFFICER’S
VERIFICATION
PROFILE INCLUDES
ONLINE NATIONAL POLLING 2010
DESCRIPTION
All the voters wishing to cast their vote have to provide their detailed information on the
form uploaded on the site. This information is then verified by the Administrator, only after
which the voter can vote. The voter is also given a unique id by the Administrator which
can be used by them for login and viewing party manifestos and candidate profiles.
PRECONDITIONS
All the formalities are done such as age verification, medical checkup, etc.
Voters are verified.
NORMAL FLOW OF EVENT
Information details provided by the voters.
Data sent to Administrator.
Voter’s information is verified by the administrator and only after successful
verification, they are given a unique Id for login.
ONLINE NATIONAL POLLING 2010
3.2 E-R DIAGRAM:
In software engineering, an entity-relationship model (ERM) is an abstract and
conceptual representation of data. Entity-relationship modeling is a database modeling
method, used to produce a type of conceptual schema or semantic data model of a system,
often a relational database, and its requirements in a top-down fashion. Diagrams created
by this process are called entity-relationship diagrams, ER diagrams, or ERDs.
The first stage of information system design uses these models during the requirements
analysis to describe information needs or the type of information that is to be stored in a
database. The data modeling technique can be used to describe any ontology (i.e. an
overview and classifications of used terms and their relationships) for a certain area of
interest. In the case of the design of an information system that is based on a database, the
conceptual data model is, at a later stage (usually called logical design), mapped to a logical
data model, such as the relational model; this in turn is mapped to a physical model during
physical design. Note that sometimes, both of these phases are referred to as "physical
design".
ONLINE NATIONAL POLLING 2010
Candidate
s
Candidates Id
Contact Details
Experience
Party Details
Vote
Casted
Upload
Correct
Details
General Public
Admin
Field Officer
Gets Data
And
validates it
Validates
The Data
Gets Data
From Form
Area Name
Name
Voter Id
Contact
Details
Domicile
Address
Area Id
Id
Name
Phone No. Age
Reg. form
Name
Email Id.
Email id
Name
Phone No.
Age
Id
Verificatio
n
Verification
Row
State
City Area
General Details
General Details
Address
Election Commission
ONLINE NATIONAL POLLING 2010
3.3 DATA FLOW DIAGRAM
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system. DFDs can also be used for the visualization of data processing
(structured design).
LEVEL 0 (DATA FLOW DIAGRAM)
It is common practice to draw a context-level data flow diagram first, which shows the
interaction between the system and external agents which act as data sources and data
sinks.
LEVEL 1
This level (level 1) shows all processes at the first level of numbering, data stores, external
entities and the data flows between them. The purpose of this level is to show the major
and high-level processes of the system and their interrelation.
LEVEL 2
This level is a decomposition of a process shown in a level-1 diagram, as such there should
be a level-2 diagram for each and every process shown in a level-1 diagram.
ONLINE NATIONAL POLLING 2010
CASTE VOTE
REQUEST FOR REGISTRATION
CONFIRMATION FOR REGISTRATION CONFIRM REGISTRATION
GIVE RESULT
GENERATE RESULT REQUEST FOR
REGISTRATION MANAGES VOTER’S AND CANDIDATE’S DATA PROFILE
CASTE VOTE
CANDIDATES
ADMINISTRATOR
ONLINE
NATIONAL
POLLING
VOTERS
LEVEL ‘0’ DFD
ONLINE NATIONAL POLLING 2010
ONLINE
REGISTRATION
VERIFICATION AND MANAGE
VOTERS
CONFIRM REGISTRATION
MANAGE DETAILS
CASTE VOTE CONTROL AND DISPLAY DETAIL PROFILE REQUEST FOR SEND REGISTRATION DETAILS GIVE RESULTS
GENERATE VOTER ID AND PASSWORD AFTER VERIFICATION
RESULT GENERATION GENERATION CANDIDATES CASTE VOTE UPDATE RECORD
ENTER DETAILS AND MODIFY
VERIFICATION
`
POLLING
ADMINISTRATOR
VOTERS FIELD OFFICER
CANDIDATE
LEVEL ‘1’ DFD
ONLINE NATIONAL POLLING 2010
ONLINE
REGISTRATION
VALIDATION
LEVEL ‘2’ DFD
CONFIRM REGISTRATION
GENERATE ID
AND PASSWORD REQUEST FOR REG COLLECT VOTES
VERIFIES DATA
VERIFY ENTER VOTER’S DETAILS VOTER
CASTE VOTE DETAILS VERIFICATION UPDATES
CANDIDATE
ENTER DETAILS
MODIFY
COUNTS VOTE AND GENERATES RESULT GENERATES RESULT
POLLING
FIELD OFFICER
VOTERS
ADMINISTRATOR
CANDIDATE
RESULT
GENERATION
ONLINE NATIONAL POLLING 2010
3.4 CLASS DIAGRAM:
The class diagram is the main building block in object oriented modeling. It is used both for
general conceptual modeling of the systematic of the application, and for detailed modeling
translating the models into programming code. The classes in a class diagram represent
both the main objects and or interactions in the application and the objects to be
programmed.
CANDIDATE
C_id C_name C_dob C_party C_address C_experience Party() Vote() Entrerdt()
FIELD OFFICER F_id F_name F_address F_area F_address() Validation() Update()
VOTER
V_id V_password V_name V_domicile V_dob V_num Vote() Register()
PARTY
P_no P_name P_symbol No_of_candidate()
VOTE Voter_id C_id
ADMINISTRATOR
A_id A_name Verify() Update() Generate_result() Instruct() Generate_id()
ONLINE NATIONAL POLLING 2010
3.5 OBJECT DIAGRAM:
An object diagram in the Unified Modeling Language (UML) is a diagram that shows a
complete or partial view of the structure of a modeled system at a specific time. An Object
diagram focuses on some particular set of object instances and attributes, and the links
between the instance.
3.6 USE CASE DIAGRAM
A use case diagram in the Unified Modeling Language (UML) is a type of behavioral
diagram. Its purpose is to present a graphical overview of the functionality provided by
system in terms of factors, their goals ( represented as use cases), and dependencies
between those use cases.
Field officer REGISTRATION &
Verify
vote
Provide
profile &
updation
candidate
vote
View
profile
voter
Voter info.
Display
result
Administrator
Generate
voter id &
password
Check
system
Collect votes
ONLINE NATIONAL POLLING 2010
ADMINISTRATOR (ELECTION COMMISSION OFFICERS)
He is responsible for providing all the information of candidates who have applied for
the polling.
Register candidates
Registration of new candidates is dine on the site.
Provide information of candidates
All the candidates have to submit their information to the administrator so that
it can be shown onto the site to the general public of the country.
Provide the list of candidates
Provides the list of all candidates in the local as well as national level.
Display result
Add the polling result to the database to calculate the final result to display on
the site immediately.
ONLINE NATIONAL POLLING 2010
1. FIELD OFFICERS
All the responsibility of maintain the connection and availability of the
system is taken by this entity. Online registration for the voters which will be
verified by the field officers. All new voters are been authenticated and added to
voter list after they are verified.
2. GENERAL PUBLIC
Provide information for voter registration.
Give vote.
3. CANDIDATES
Provide information registration
ONLINE NATIONAL POLLING 2010
3.7 SEQUENCE DIAGRAM:
A sequence diagram shows, as parallel vertical lines (lifelines), different processes or
objects that live simultaneously, and, as horizontal arrows, the messages exchanged
between them, in the order in which they occur.
Request for Registration
Verify Registration
Modify database
Request for Registration
Verify Registration Instruct
Generate voter id
Vote
Calculate no. of votes
Show Result
Show Result
3.8 COLLABORATION DIAGRAM:
VOTER FIELD OFFICER
OFFOFFICER
OOFFICER
ADMINISTRATOR CANDIDATE
ONLINE NATIONAL POLLING
ONLINE NATIONAL POLLING 2010
A Collaboration diagram shows the dynamic interaction of the objects in a system. A
distinguishing feature of a Collaboration diagram is that it shows the objects and their
association with other objects in the system apart from how they interact with each other.
3.9 ACTIVITY DIAGRAM
Activity diagrams are graphical representations of workflows of stepwise activities and
actions with support for choice, iteration and concurrency.[1] In the Unified Modeling
Language, activity diagrams can be used to describe the business and operational step-by-
step workflows of components in a system.
CANDIDATE
ADMINISTRATOR AREA OFFICER
VOTER
1. send
application
for
registration
Verify 2.
the
registration 3. send
request for
registration
4. instruct
5. verify the
registration
6. give votes
7. calculation is performed
ONLINE NATIONAL POLLING 2010
3.10 SUPPLEMENTARY REQUIREMENTS
3.10.1 POWER BACKUP
Whenever the polling is taking place the system should not face any breakdown in the
supply of power otherwise data could be lost or connection could be broken.
3.10.2 PROPER MAINTENANCE
While in operation if any error occurs when there must be a technical person to solve it, he
can be any one of polling agents.
3.10.3 NETWORK AVAILABILITY AND BANDWIDTH ISSUE
High speed network connection is required so that the data can travel swiftly.
3.10.4 SERVER SHOULD BE HIGHLY RESPONSIVE
When polling happens in any country on a single day then it would give a lot of stress on to
the server, the server should be configured in a manner so that it can bear that stress.
ONLINE NATIONAL POLLING 2010
FAQS: YOU REALLY NEED TO KNOW THIS
1.WHY SHOULD YOU VOTE?
India is the largest democracy in the world. The right to vote and more importantly the
exercise of franchise by the eligible citizens is at the heart of every democracy. We, the
people, through this exercise of our right to vote have the ultimate power to shape the
destiny of country by electing our representatives who run the Government and take
decisions for the growth, development and benefit of all the citizens.
2 .WHO CAN VOTE?
All citizens of India who are 18 years of age as on 1st January of the year for which the electoral roll
is prepared are entitled to be registered as a voter in the constituency where he or she ordinarily
resides. Only persons who are of unsound mind and have been declared so by a competent court or
disqualified due to ‘Corrupt Practices’ or offences relating to elections are not entitled to be
registered in the electoral rolls.
3 .WHAT IS THE DISCLOSURE BY CANDIDATES?
3.1 Recently the Election Commission of India has made it mandatory consequent upon a
Judgement of Hon’ble supreme court that all candidates must file an affidavit along with
their nomination form with details such as:-
i. his/her criminal antecedents,
ii. his/her assets and liabilities and those of his/her spouse and dependents, and
iii. his/her educational background.
ONLINE NATIONAL POLLING 2010
This has been done with a view that every citizen has a right to know about the candidates
contesting an election and make an informed choice.
3.2 The Election Commission has directed all Returning Officers to display the copies of
nomination papers and accompanying affidavits received during any day on his notice
board immediately on receipt and make copies of these for distribution to the press and
any members of public who want this information, free of cost. Any citizen of the country
can obtain copies of the nomination form and the affidavit filed by any candidate from the
Returning Officer and it shall not be refused. As a voter you have every right to seek this
information and get it.
3.3 Above measures help the electors make an informed choice about the candidate they
are going to vote for.