Professional Documents
Culture Documents
PROJECT REPORT
ON
“ONLINE VOTING SYSTEM”
OF
BACHELOR OF TECHNOLOGY
IN
Computer Engineering
ABSTRACT
“ONLINE VOTING SYSTEM” is an online voting technique. It is based on the other online
services like “ONLINE RESERVATION SYSTEM” .In this system people who have citizenship
of INDIA and whose age is above 18 years of any sex can give his\her vote online without going
to any polling booth. There is a DATABASE which is maintained by the ELECTION
COMMISION OF INDIA in which all the names of voter with complete information is stored.
In “ONLINE VOTING SYSTEM” a voter can use his\her voting right online without any
difficulty. He\She has to fill a registration form to register himself\herself. All the entries is
checked by the DATABASE which has already all information about the voter. If all the entries
are correct then a USER ID and PASSWORD is given to the voter, by using that ID and
PASSWORD he\she can use his\her vote. If conditions are wrong then that entry will be
discarded.
CHAPTER-1
INTRODUCTION
1.1 Purpose
In “ONLINE VOTING SYSTEM” a voter can use his\her voting right online without any
difficulty. He\She has to fill a registration form to register himself\herself. All the entries is
checked by the DATABASE which has already all information about the voter. If all the entries
are correct then a USER ID and PASSWORD is given to the voter, by using that ID and
PASSWORD he\she can use his\her vote. If conditions are wrong then that entry will be
discarded.
1.2 Scope
The scope of the project that is hosted on the server. There is a DATABASE which is
maintained by the ELECTION COMMISION OF INDIA in which all the names of voter with
complete information is stored.
1.4 Overview
CHAPTER-2
OVERALL DESCRIPTION
1. Planned approach towards working: - The working in the organization will be well planned
and organized. The data will be stored properly in data stores, which will help in retrieval of
information as well as its storage.
2. Accuracy: - The level of accuracy in the proposed system will be higher. All operation would
be done correctly and it ensures that whatever information is coming from the center is accurate.
3. Reliability: - The reliability of the proposed system will be high due to the above stated reasons.
The reason for the increased reliability of the system is that now there would be proper storage of
information.
4. No Redundancy: - In the proposed system utmost care would be that no information is repeated
anywhere, in storage or otherwise. This would assure economic use of storage space and
consistency in the data stored.
5. Immediate retrieval of information: - The main objective of proposed system is to provide for
a quick and efficient retrieval of information.
6. Immediate storage of information: - In manual system there are many problems to store the
largest amount of information.
7. Easy to Operate: - The system should be easy to operate and should be such that it can be
developed within a short period of time and fit in the limited budget of the user.
2.2 Background
ONLINE VOTING SYSTEM is a voting system by which any Voter can use his\her voting rights
from any where in India. ONLINE VOTING SYSTEM contains-:
• Voter’s information in database.
• Voter’s Names with ID.
• Voter’s vote in a database.
• Calculation of total number of votes.
Various operational works that are done in the system are:-
• Recording information of the Voter in Voter database.
• Checking of information filled by voter.
• Discard the false information.
• Each information is sent to ELECTION COMMISSION OF INDIA.
Hardware Requirements
- Hard Disk :
SOFTWARE SPECIFICATION :
2.5 Constraints
GUI is only in English.
Login and password is used for identification of Voter.
Depending on the results of the initial investigation the survey is now expanded to a more detailed
feasibility study. “FEASIBILITY STUDY” is a test of system proposal according to its
workability, impact of the organization, ability to meet needs and effective use of the resources. It
focuses on these major questions:
1. What are the user’s demonstrable needs and how does a candidate system meet them?
2. What resources are available for given candidate system?
3. What are the likely impacts of the candidate system on the organization?
4. Whether it is worth to solve the problem?
During feasibility analysis for this project, following primary areas of interest are to be considered.
Investigation and generating ideas about a new system does this.
Steps in feasibility analysis
Eight steps involved in the feasibility analysis are:
• This is concerned with specifying equipment and software that will successfully satisfy the
user requirement. The technical needs of the system may include:
Front-end selection:
1. It must have a GUI that assists employees that are not from IT background.
2. Scalability and extensibility.
3. Flexibility.
4. Robustness.
5. According to the organization requirement and the culture.
6. Must provide excellent reporting features with good printing support.
7. Platform independent.
8. Easy to debug and maintain.
9. Event driven programming facility.
10. Front end must support some popular back end like Ms Access.
According to the above stated features we selected PHP as the front-end for
developing our project.
Back-end Selection:
1. Multiple user support.
2. Efficient data handling.
3. Provide inherent features for security.
4. Efficient data retrieval and maintenance.
5. Stored procedures.
6. Popularity.
7. Operating System compatible.
8. Easy to install.
Economic justification is generally the “Bottom Line” consideration for most systems. Economic
justification includes a broad range of concerns that includes cost benefit analysis. In this we
weight the cost and the benefits associated with the candidate system and if it suits the basic
purpose of the organization i.e. profit making, the project is making to the analysis and design
phase.
The financial and the economic questions during the preliminary investigation are
verified to estimate the following:
• The cost to conduct a full system investigation.
• The cost of hardware and software for the class of application being considered.
. The benefits in the form of reduced cost.
• The proposed system will give the minute information, as a result the
performance is improved
• This feasibility checks whether the system can be developed with the available funds. The
Online voting system does not require enormous amount of money to be developed. This can be
done economically if planned judicially, so it is economically feasible. The cost of project depends
upon the number of man-hours required.
• What new skills will be required? Do the existing staff members have these
skills? If not, can they be trained in due course of time?
The system is operationally feasible as it very easy for the End users to operate it. It only needs
basic information about Windows platform.
4.1.1 Objective:
4.1.2 Scope:-
4.1.3 Advantages:
• It reduces the paper work and makes the work less tedious for ELESTION
COMMISION.
About vb.net:
Assembly
Assemblies are the building blocks of .NET Framework applications; they form the
fundamental unit of deployment, version control, reuse, activation scoping, and
security permissions. An assembly is a collection of types and resources that are
built to work together and form a logical unit of functionality. An assembly provides
the common language runtime with the information it needs to be aware of type
implementations. To the runtime, a type does not exist outside the context of an
assembly
The .NET runtime/Common Language Runtime (CLR) ships three different classes of
JITters. The Main JIT compiler converts the MSIL code it to native code with out any
optimizations. The JIT compiler takes the MSIL code and optimizes it. So this compiler
requires lot of resources like, time to compile, larger memory footprint, etc. The PreJIT
is based on the Main JIT and it works like the traditional compilers (compiles MSIL to
native code during compilation time rather than runtime). This compiler is usually used at
the time of installation.
No matter whatever language we used to develop the HelloWorld program, it’s a known
fact that compiler’s are going to generate a MSIL format, once our code has been
converted in to MSIL format, from MSIL format all the code that we write will be
converted to native code in the same way whether if it is a VB.NET source or C# source.
.
Debugging is the most important feature of any programming language and Visual Studio
NET IDE provides this feature in an effective manner (but you can still do pretty good.
job with the .NET SDK alone). Application source code goes through two distinct steps
before a user can run it. First, the source code is compiled to Microsoft Intermediate
Language (MSIL) code using a .NET compiler. Then, at runtime, the MSIL code is
compiled to native code. When we debug a .NET application, this process works in
reverse. The debugger first maps the native code to the MSIL code. The MSIL code is
then mapped back to the source code using the programmer's database (PDB) file. In
order to debug an application, these two mappings must be available to the .NET runtime
environment.
To accomplish the mapping between the source code and the MSIL, use
the/debug:pdbonly compiler switch to create the PDB file (Note: When building
ASP.NET applications, specify the compilation setting debug="true" in the application’s
Web.config file). The second mapping between the MSIL code and native code is
accomplished by setting the JITTracking attribute in our assembly. By specifying the
/debug compiler switch, the PDB file is created and the JITTracking attribute is enabled.
When using this compiler switch, a debugger can be attached to an application loaded
outside of the debugger.
Once the required mappings exist, there are several means by which to debug our
applications. We can use the integrated debugger within Visual Studio .NET, or, if we
prefer, we can use DbgClr, a GUI-based debugger. There is also a command line
debugger, CorDBG that is included in the .NET Framework SDK.
Constants &Variables
A variable is a named memory location. They are programming elements that can change
during program execution. Data that needs to be stored in memory & accessed at a later
time are stored in variables. Instead of referring to the memory location by the actual
memory address you refer to it with a variable name.
Variables are declared as follows
Dim a as Integer
They can also be initialized at the time of declaration as follows:
Dim a as Integer = 10
Constants are very similar to variables. The main difference is that the value contained in
memory cannot be changed once the constant is declared. When you declare a constant
its value is also specified and this value cannot be changed during program execution.
Constants are used in situations where we need to keep the value in some memory
location constant. If you use hard-coded values, and the value is changed then it has to be
changed in all the locations in the code where it has been used. Instead if we are using
constants, all we will need to do is to change the value of the constant. This would
propagate the changes to our entire application.
Object Type
Object type or reference type variables are those, which are allocated storage space in the
heap. Reference type objects can be null. When a reference type is allocated under the
covers a value is allocated on the heap and a reference to that value is returned. There are
basically four reference types: classes, interfaces, delegates and arrays.
Class Type
Custom data types are available in .NET framework in the form of classes or class type. It
is nothing but a set of data and related behavior that is defined by the developer.
1.1.5 OVERVIEW:
1. Requirements:
• FUNCTIONAL REQUIREMENTS:
• Registration of the Voter depends upon the information filled by the user.
• Voter can give vote after login and entering the ID and PASSWORD.
• In the DATABASE information of every voter is stored.
• NON-FUNCTIONAL REQUIREMENTS:
6. SYSTEM TESTING
Unit testing
Unit testing involves the design of test cases that validate that the internal
program logic is functioning properly, and that program input produces valid
outputs. All decision branches and internal code flow should be validated. It is the
testing of individual software units of the application .it is done after the
completion of an individual unit before integration. This is a structural testing, that
relies on knowledge of its construction and is invasive. Unit tests perform basic
tests at component level and test a specific business process, application, and/or
system configuration. Unit tests ensure that each unique path of a business process
performs accurately to the documented specifications and contains clearly defined
inputs and expected results.
Integration testing
Integration tests are designed to test integrated software components to
determine if they actually run as one program. Testing is event driven and is more
concerned with the basic outcome of screens or fields. Integration tests
demonstrate that although the components were individually satisfaction, as shown
by successfully unit testing, the combination of components is correct and
consistent. Integration testing is specifically aimed at exposing the problems that
arise from the combination of components.
Functional test
Functional tests provide a systematic demonstration that functions tested are
available as specified by the business and technical requirements, system
documentation, and user manuals.
Functional testing is centered on the following items:
Valid Input : identified classes of valid input must be accepted.
Invalid Input : identified classes of invalid input must be rejected.
Functions : identified functions must be exercised.
Output : identified classes of application outputs must be
exercised.
Systems/Procedures: interfacing systems or procedures must be invoked.
System Test
System testing ensures that the entire integrated software system meets
requirements. It tests a configuration to ensure known and predictable results. An
example of system testing is the configuration oriented system integration test.
System testing is based on process descriptions and flows, emphasizing pre-driven
process links and integration points.
Test objectives
• All field entries must work properly.
• Pages must be activated from the identified link.
• The entry screen, messages and responses must not be delayed.
Features to be tested
• Verify that the entries are of the correct format
• No duplicate entries should be allowed
• All links should take the user to the correct page.
6.2 Integration Testing
Testing the links that call the Change Username & password, Migration and
Synchronization screens etc.
The username should be retained throughout the application in the form of
hidden variables or by using cookies.
If the login user does not have enough privileges to invoke a screen, the link
should be disabled.
Any modification in the Master server should be reflected in the Slave
server.
The XML file should retrieve only the records, which have been modified.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.
User
or
Administrator
System
Output
DFD Level-0
The above diagram is a 0-level DFD that only shows the flow of data between the various and
the system. In online voting system the Administrator is the controller of the system and all the
decisions are made by him. The Administrator can handle the entire voter and their details,
voting details etc. and view details of them and he can update that detail also.
DFD: Level 1:-
Login Voter
Registration
Process
Process
Voter
information Voting Final
checking Process Report
process
DFD Level 1
The above shown diagram is a 1-level Data Flow Diagram for the Online voting system.
According to this DFD various process are done after login process. The Administrator can
register voter. The ELECTION COMMISION can register the voters and voter can use their
voting rights. The voter can view the final report after giving vote..
.
DFD: Level 2
2.1:-
Administrator Voter
Login
Login Process
ElectionCommission
administrators
Admin. Registratio
n
VOTER
Fail
Pas
id s
Login
VOTING
Voting Report
Report
View
Class diagram-:
Fig: Relationship between the interface Actor List and its inheriting
classes
Fig: Association between Actor interface and other inheriting
classes
Registration, login, and logoff modules act as mediator.
CONCLUSION
This Online Voting system will manage the Voter’s information by which voter can login and
use his voting rights. The system will incorporate all features of Voting system. Its provide the
tools for maintaining voter’s vote to every party and it count total no. of votes of every party.
There is a DATABASE which is maintained by the ELECTION COMMISION OF INDIA in
which all the names of voter with complete information is stored.
In this user who is above 18 year’s register his/her information on the database and when he/she
want to vote he/she has to login by his id and password and can vote to any party only single
time. Voting detail store in database and the result is displayed by calculation. By voting system
percentage of voting is increases. It decreases the cost and time of voting process. It is very easy
to use and It is vary less time consuming. It is very easy to debug.