MSC Cs 2nd Mini Project
MSC Cs 2nd Mini Project
MSC Cs 2nd Mini Project
2021-2022
-------------------------------------- -------------------------------------------
R. CATHERIN IDA SHYLU R. GLADIS THANKA ROOBI
MCA., M.Phil., ME., MCA., M.Phil.,
HOD COMPUTER SCIENCE DEPT
---------------------------------------------------------------------------------------------------------------------
Submitted for the Viva-Voce Examination Held on at Annai Violet Arts and Science College,
Chennai-600053.
------------------------------------------- -----------------------------------------
Signature of Internal Examiner Signature of External Examiner
The success and final outcome of the project required a lot of guidance and assistance from many
people and I am extremely privileged to have got this all along the completion of my project. All that I
have done is only due to such supervision and assistance and I would not forget to thank them.
I respect and thank Dr. INITHA LEBANON EBENCY, Principal of Annai Violet Arts and Science
College for providing me an opportunity to do the project and giving as all support and guidance which
made me complete the project duly. I am extremely thankful to her for providing such a nice support.
I wholeheartedly thank Mrs. JAPHIA SOLOMAN, Vice principal of Annai Violet Arts and Science
college for all support and encouragement which motivated us to complete the project successfully.
I would not forget to remember R. GLADIS THANKA ROOBI, MCA., M. Phil HOD incharge of
the Department for her encouragement and more over for their timely support and guidance till the
completion of my project work
I owe my deep gratitude to my project Guide R. CATHERIN IDA SHYLU, MCA.,M.Phil., ME.,
who took interest in my project work and guided me all along, till the completion of my project work
by providing all the necessary information for developing my project work
I am thankful to and fortunate enough to get constant encouragement, support and guidance from all
Teaching staffs of the computer science department which helped me in successfully completing my
project work.
Also, I would like to extend my sincere esteems to staff in the laboratory for their timely support.
Abstract 7
1 Introduction 8
Problem Definition 9
About Project 9
2 Project Analysis 10
Existing System 11
Proposed system 11
3 System Requirements 12
Hardware Requirements 13
Software Requirements 13
JSP Description 16
What is TOMCAT? 16
Admistrative Module 19
6 System Design 21
E-R Diagram 23
7 Database Table 25
Admin 26
Voter 26
Candidate 27
Vote count 27
Types of testing 29
System Testing 29
Component testing 30
Testing Strategies 30
Unit Testing 30
Validating Testing 30
Output Testing 31
Testing guidelines 32
Partition testing 33
9 Conclusion 34
11 Bibliography 38
ABSTRACT
The Online Voting System is a web based application. The system has a
centralized database to keep records of all the Voters and Candidates and Final Results. This
Online Voting System is based on SMS sending to voters, to confirmation of Vote. This web
based system is time saving, work load reduced information available at time and it provides
security for the data. During the election, the election commission of India has introduced a new
method of polling by online voting system (OVS). The election commission will maintain this
website. This is a simple, safe and secure method that takes minimum of time.
The word VOTE means to choose from a list, to elect or to determine. The main
goal of voting (in a scenario involving the citizens of a given country) is to come up with leaders
of the people’s choice. Most countries, India not an exception have problems when it comes to
voting. Some of the problems involved include ridging votes during election, insecure or
inaccessible polling stations, inadequate polling materials and also inexperienced personnel.
The existing manual Voting system consumes more time for Vote Casting. Voter has
to wait for vote polling station to vote for a right candidate. The election officers has to be
check the voter , this voter can vote in this booth then check voterID present in voters list of
booth those are information will be present then the voter can vote in that booth. The voter had
to stand in the queue to cast his vote. All the work is done in paper ballot so it is very hard to
locate particular candidate, some voters cast their votes for all candidates. To overcome of all
these problems we have to implement a web application, which is helpful for Voting from
anywhere.
The voting system currently being used by the association is a paper based system,
in which the voter simply picks up ballots sheets from electoral officials, tick off who they
would like to vote for, and then cast their votes by merely handing over the ballot sheet back
to electoral official.
The electoral officials gather all the votes being cast into a ballot box. At the end of the
elections, he electoral officials converge and count the votes cast for each candidate and
determine the winner of each election category.
Here we are proposing an web application for voting process that is Online Voting
System through SMS. The online voting system will manages the voter’s deatils, Candidate
details. The main feature of the project includes voters information and candidate
information, voter can login and use his/her voting rights. The system can manage the
information data very efficiently. The proposed system is more reliable, faster, accurate and
easy to handle compared to existing manual system. It helps to computerize everything and
reducing the errors as compare to manual voting system
Processor: Pentium
RAM: 4GB
Speed: 1.1GHz
Back-End: MYSQL .
NetBeans IDE is a free, open source, integrated development environment (IDE) that
enables you to develop desktop, mobile and web applications. The IDE supports application
development in various languages, including Java, HTML5, PHP and C++. The IDE provides
integrated support for the complete development cycle, from project creation through debugging,
profiling and deployment. The IDE runs on Windows, Linux, Mac OS X, and other UNIX-based
systems.
CSS is a style sheet language used for describing the look and formatting of a document
written in a markup language While most often used to style web pages and interfaces written in
HTML and XHTML, the language can be applied to any kind of XML document. One of the
favored features is its ability to allow the sorting of document content written in markup
languages (like HTML) from document presentation written in CSS. Here are more advantages of
CSS in website design:
HTML refers to the Hypertext Markup Language. HTML is used to create web pages. It
uses many tags to make a webpage. So it is a tag based language. The tags of HTML are
surrounded by angular bracket. It can use wide ranges of colors, objects and layouts .Very useful
for beginners in web designing field.
JavaServer Pages (JSP) is a technology for developing Web pages that supports dynamic
content. This helps developers insert java code in HTML pages by making use of special JSP
tags, most of which start with <% and end with %>.
A JavaServer Pages component is a type of Java servlet that is designed to fulfill the role of
a user interface for a Java web application. Web developers write JSPs as text files that combine
HTML or XHTML code, XML elements, and embedded JSP actions and commands.
In JSP there are three types of scripting elements:
JSP Expressions: It is a small java code which you can include into a JSP page. The
syntax is “<%= some java code %>”
JSP Scriptlet: The syntax for a scriptlet is “<% some java code %>”. You can add 1 to
many lines of Java code in here.
JSP Declaration: The syntax for declaration is “<%! Variable or method declaration
%>”, in here you can declare a variable or a method for use later in the code.
The Java ecosystem supports several kinds of application server, so let's disambiguate
them and see where Tomcat fits in:
Tomcat consists of the three main things that you need to know when starting web
development.They are:
JSP
MYSQL
Apache Web Server: It is a web server that allows you to host your websites or any other content
for that matter. Apache is available for UNIX as well as WINDOWS. Some of the most common
server-side languages supported by Apache are - JSP, Python and Perl. It is free of charge.
JSP: JavaServer Pages (JSP) is a technology for developing Webpages that supports dynamic
content. This helps developers insert java code in HTML pages by making use of special JSP
tags, most of which start with <% and end with %>.
MYSQL: It is the world's most popular open source database. It is a Relational Database
This proposed system consists of 3 main modules, which are listed below.
Online Voting is a voting system by which any Voter can use his\her voting rights
from anywhere in India. Online voting for association contains-:
The user after their registration only can login for voting. The user will view
nominee details with their image before they can vote. After knowing the nominee
details the user can login for voting. They should vote for board of director and the
manager in the association. The count will taken for each voting. After voting the
particular person/user cannot logon to vote again
The data flow diagram(DFD) is a graphical tool used for expressing system
requirements in a graphical form. The DFD also known as the “bubble chart” as the
purpose of clarification system requirements and identification major transformation
that will become program in system design. Thus DFD can be stated as the starting
point of the design phase that functionality decomposes the requirements specification
down to the lowest level of details. The DFD consists of series of bubble joined by
lines. The bubble represents data transformation and the lines represents the data flows
in the system. A DFD describes what data flow is does not to construct a Data Flow
Diagram, we use
Arrow: An arrow identifies the data flow in motion. It is a pipeline through which
information is flow like the rectangle in the flowchart.
Circle: A circle stands for process that converts data into information
Open End Box: An open ended box represents a data store, data at rest or a temporary
repository of data.
Squares: A square defines a source or destination of system.
Admin
Total Votes(final result) Candidate Information
Login
Voter Information
Level 1
7.1 AdminTable
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification, design, and coding. The user tests the developed system and
changes are made according to their needs. The testing phase involves the testing developed
system using various kinds of data.
System is the stage of implementation that is aimed at assuring at the system works
accurately and efficiently before live operation commences. Testing is vital to the success of the
system. System testing makes a logical assumption that if all the parts of the system are correct,
the goal will be successfully achieved. The candidate system is subject to a variety of tests such as
recover, security and usability tests. A series of testing is performed for the proposed system
before the system is ready for the user acceptance testing.
Implementation ends with formal tests. The test data are very crucial to this process. They
must be realistic and cover extreme conditions are well. Ideally, vary alternative path through the
program should be exercised at least once beyond the test data. The system test must involve all
the elements that compose the system including program validation checking, files, and forms and
triggers procedures.
Usually the responsibility of the component developer (except sometimes for critical
systems);
Tests are derived from the developer’s experience.
Object classes with several attributes and methods; Composite components with
defined interfaces used to access their functionality
Following are few of the testing strategies used for the testing purpose:
Unit testing.
Validation testing.
Output testing.
Unit testing focuses effort on the smallest unit of software design of the module. This is
also known as ‘Module Testing’. The module of FSA system is tested separately. This testing was
carried out during programming stage itself in this testing each module is found to be working
satisfactorily with regards to the expected output from the module.
After validation test has been conducted, one of the two possible conditions exists, the
functions are performance characteristics confirm to specification and are accepted or a deviation
from specification is uncovered and deficiency list is created. Proposed system under consideration
has been tested using validation testing and found to be working satisfactorily.
After performing the validation testing the next test is output testing of the
proposed system since no system could be useful if it does not produce the required output in
the specified format. Asking the user about the format required by them tests the outputs
generated or displayed by the system under consideration. Here, the output format is
considered in two ways. One on-screen and other is printed format. The output format on the
screen is found to be correct as the format was designed in the system phase according to the
user’s needs. Hence, output testing does not result in any correction in the system.
User acceptance of a system is the key factory for the success of any system. The
system under consideration is tested for user acceptance by constantly keeping in touch
with the perspective system. Users at time of developing can make changes wherever
required.
Testing guidelines are hints for the testing team to help them choose tests that will
reveal defects in the system.
• Choose inputs that force the system to generate all error messages;
Involves designing the test cases (inputs and outputs) used to test the system.
The goal of test case design is to create a set of tests that are effective in validation and
defect testing.
Design approaches:
a. Requirements-based testing;
b. Partition testing;
c. Structural testing.
8.4.1 Requirements based testing
Input data and output results often fall into different classes where all members of a
class are related.
Each of these classes is an equivalence partition or domain where the program behaves
in an equivalent way for each class member.
Test cases should be chosen from each partition.
In this user who is above 18years’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 online 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 very less time consuming. It is
very easy to debug.
The traditional method of manual voting system has few drawbacks. This method
is obviously not efficient as it wastes the voter’s energy and quite slow in term of
completion. This smart system involves the voter’s can cast their vote easily, and can be
implemented to the entire India.
&
SCOPE
SCOPE
As this website provides better way of election between voter and political
parties: hence we suppose that this project as a greater scope and is important requirement
is to provide a compact stable system of voting with a facility through online.
The Online Voting System platform can be made more secure by using the
following methods : Password Changing Fingerprinting Cornea Detection The
password used by the user to vote is provided by the administrator. In the future the user
can be given the privilege of changing the password. So it helps to increase the security of
the system. The other two methods that can be used are cornea detection and
fingerprinting. But here the problem is that it decreases the scope of the platform because
these systems need some electronic components to implement. So it will avoid the users
privilege to cast the votes at their fingertips. But it can guarantee that fake voting will be
impossible.
[1] https://www.w3schools.com
[2] https://www.electionsonline.com/online-voting-system/
[3] https://www.sqlite.org/
[4] https://www.functionx.com/sqlserver/
[5] https://en.wikipedia.org/wiki/Electronic_voting