Project
Project
Project
CHAPTER-1
INTRODUCTION
CHAPTER-2
COMPANY AND INDUSTRY PROFILE
CHAPTER-3
TASK AND ACTIVITIES PERFORMED
CHAPTER-4
CONCLUSION
LIST OF FIGURES
Figure 5 ER Diagarm
Online voting is an electronic way of choosing leaders via a web driven application. The
advantage of online voting over the common “queue method” is that the voters have the choice
of voting at their own free time and there is reduced congestion. It also minimizes on errors of
vote counting. The individual votes are submitted in a database which can be queried to find out
who of the aspirants for a given post has the highest number of votes.
This system is geared towards increasing the voting percentage in Nepal since it has been noted
that with the old voting method {the Queue System}, the voter turnout has been a wanting case.
With system in place also, if high security is applied, cases of false votes shall be reduced.
With the “ONLINE VOTING SYSTEM”, a voter can use his\her voting right online without any
difficulty. He\She has to register as a voter first before being authorized to vote. The registration
should be done prior to the voting date to enable data update in the database.
However, not just anybody can vote. For one to participate in the elections, he/she must have the
requirements. For instance, he/she must be a registered citizen i.e. must be 18 and above years
old. As already stated, the project ‘Online Voting' provides means for fast and convenient voting
and access to this system is limited only to registered voters.
Internet voting systems are appealing for several reasons which include; People are getting more
used to work with computers to do all sorts of things, namely sensitive operations such as
shopping and home banking and they allow people to vote far from where they usually live,
helping to reduce absenteeism rate.
Introduction of Organization
“ONLINE VOTING SYSTEM” is an online voting technique. In this system people who have
been in an organization and those who participated in election can give his\her vote online
without going to any physical polling station. There is a database which is maintained in which
all the names of voters 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 be registered first for him/her to vote. Registration is mainly done by
the system administrator for security reasons. The system Administrator registers the voters on a
special site of the system visited by him only by simply filling a registration form to register
voter. Employees seeking registration are expected to contact the system administrator to submit
their details. After the validity of them being employees of organization has been confirmed by
the system administrator by comparing their details submitted with those in existing databases
such as those as the Registrar of Persons, the citizen is then registered as a voter.
After registration, the voter is assigned a secret Voter ID with which he/she can use to log into
the system and enjoy services provided by the system such as voting. If invalid/wrong details are
submitted, then the citizen is not registered to vote.
The current situation of the existing manual system of voting include among others the
following:
1. Expensive and Time consuming: The process of collecting data and entering this data
into the database takes too much time and is expensive to conduct, for example, time and
money is spent in printing data capture forms, in preparing registration stations together
with human resources, and there after advertising the days set for registration process
including sensitizing voters on the need for registration, as well as time spent on entering
this data to the database.
2. Too much paper work: The process involves too much paper work and paper storage
which is difficult as papers become bulky with the population size.
3. Errors during data entry: Errors are part of all human beings; it is very unlikely for
humans to be 100 percent efficient in data entry.
4. Loss of registration forms: Some times, registration forms get lost after being filled in
with voters’ details, in most cases these are difficult to follow-up and therefore many
remain unregistered even though they are voting age nationals and interested in
exercising their right to vote.
5. Short time provided to view the voter register: This is a very big problem since not all
people have free time during the given short period of time to check and update the voter
register.
6. Above all, a number of voters end up being locked out from voting.
Foreign experience revealed that they are often confronted by security issues while the online
voting system is running. The origin of the security issues was due to not only outsider (such as
voters and attackers) but also insider (such as system developers and administrators), even just
because the inheritance of some objects in the source code are unsuitable. These errors caused
the voting system to crash.
The proposed solutions were correspondingly outlined to hold back these attacks. For example,
to avoid hacker making incursion into the voting system via network, we can design our system
to transmit data without network. Another example is to limit voter to input particular data, so
that we can prevent the command injection from running
Less effort and less labor intensive, as the primary cost and focus primary on creating,
managing, and running a secure web voting portal.
Increasing number of voters as individuals will find it easier and more convenient to
vote, especially those who are abroad having name on voter list
Features
Require less number of staff during the election.
This system is a lot easier to independently moderate the elections and subsequently
reinforce its transparency and fairness.
Less capital, less effort, and less labor intensive, as the primary cost and effort will
focus primarily on creating, managing, and running a secure online portal.
Increased number of voters as individual will find it easier and more convenient to
vote, especially those abroad.
Methodology/Procedure
For the development of project the designing of database was done on PHPMYADMIN,
back end was coded in basic PHP and for frontend we used the same basic PHP codes.
Software methodologies are concerned with the process of creating software – not so
much the technical side but the organizational aspects. Several software development
approaches have been used since the origin of information technology.
Project Framework
A framework is a standardized set of concepts, practices, and criteria for dealing with a common
type of problem, which can be used as a reference to help us approach and resolve new problems
of a similar nature.
The aim of framework is to provide a common structure so that developers don’t have to redo it
from scratch and can reuse the code provided. In this way, frameworks allows us to cut out much
of the work and save a lot of time
Data collection plays an important role in a projects succession and also it plays an inevitable
role in the timely completion of the project. The data in the project includes contact information
of the clients and their respective feedbacks/complaints which is stored in a database. To assure
safety, only the admin has proper access to the information provided by the clients.
Tools Used
Xampp:
o Apache:
(Application Server) Apache , often referred to as Server, is an open-
source Java Servlet Container developed by the Apache Software
Foundation.
o MySqlServer:
It handles larege databases much faster than existing solutions.
It consists of multi-threaded SQL server that supports different back ends,
several different client programs and libraries, administrative tools, and
application programming interfaces (APIs)
Its connectivity, speed, and security make MySQL Server highly suited for
accessing databases on the Internet.
Sublime Text 3.1.1-Sublime Text is a sophisticated text editor for code, markup and
prose. You'll love the slick user interface, extraordinary features and amazing
performance.
Web browsers: Google Chrome,Mozilla Firefox, Opera and Internet Explorer.
Git Hub: GitHub Inc. is a web-based hosting service for version control using Git. It is
mostly used for computer code. It offers all of the distributed version control and source
code management functionality of Git as well as adding its own features.
Testing
Testing is evaluation of the software against requirements gathered from users and system
specifications. Testing identifies important defects, flaws, or an error in the application code that
must be fixed .It also assesses the feature of a system. Testing assesses the quality of the product.
Unit Testing
Unit testing refers to the testing certain functions and areas of the code. It gives the ability to
verify that all the functions work as expected. Eventually, it helps to identify failures in the
algorithms as well as logic to help improve the quality of the code that composes a certain
function.
Integration Testing
Integration testing is basically a logical extension of unit testing. In simple words, two tested
units are combined into a component and the interface between them is tested. It identifies
problems that occur when different units are combined The different modules of this project have
undergone integration testing while being merged.
System Testing
System testing tests the behavior of whole system as defined by the scope of the development
project. It might include tests based on risks as well as requirement specifications, business
process, use cases or other high level descriptions of system behavior, interactions with the
operating systems and system resources. It is most often the final test performed to verify that the
system meets the specification and its objectives. System testing has been performed at the
completion of each feature and is still taking place to make improvements on the existing system.
CHAPTER-2
The first company founded to provide software products and services was Computer Usage
Company in 1955.[2] Before that time, computers were programmed either by customers, or the
few commercial computer vendors of the time, such as Sperry Rand and IBM.
The software industry expanded in the early 1960s, almost immediately after computers were
first sold in mass-produced quantities. Universities, government, and business customers created
a demand for software. Many of these programs were written in-house by full-time staff
programmers. Some were distributed freely between users of a particular machine for no charge.
Others were done on a commercial basis, and other firms such as Computer Sciences
Corporation (founded in 1959) started to grow. Other influential or typical software companies
begun in the early 1960s included Advanced Computer techniques, Automatic Data Processing,
Applied Data Research, and Informatics General.[3][4] The computer/hardware makers started
bundling operating systems, systems software and programming environments with their
machines.
The industry expanded greatly with the rise of the personal computer ("PC") in the mid-1970s,
which brought desktop computing to the office worker for the first time. In the following years, it
also created a growing market for games, applications, and utilities. DOS, Microsoft's first
operating system product, was the dominant operating system at the time.
In the early years of the 21st century, another successful business model has arisen for hosted
software, called software-as-a-service, or SaaS; this was at least the third time[citation needed]
this model had been attempted. From the point of view of producers of some proprietary
software, SaaS reduces the concerns about unauthorized copying, since it can only be accessed
through the Web, and by definition no client software is loaded onto the end user's PC.
Size of Industry
The global software products market amounts to US$968.25 billion in 2021 and had a compound
annual growth rate (CAGR) of 4%. Major companies include Microsoft, HP, Oracle, Dell and
IBM.
Business models of software companies have been widely discussed. Network effects in software
ecosystems, networks of companies, and their customers are an important element in the strategy
of software companies.
COMPANY PROFILE
Company Name: SINFO TECH PRIATE LIMITED
Country: India
SINFO TECH is a leader in IT services, digital and business solutions. We partner with our
clients to simplify, strengthen and transform their businesses to help them reach success. We
ensure the highest levels of certainty and satisfaction through our deep-rooted commitments.
With our comprehensive industry expertise, network of innovation and delivery centers, we
make sure that all our clients get exactly what they want.
Established in 2020, SINFO TECH has grown to significant heights. Through our outstanding
service record, collaborative partnerships, innovation and corporate responsibility, we have
become a significant player in IT services.
Vision
Our vision is to contribute to the success of our clients. We contribute to our client’s success in
whatever enormity by ensuring that we understand the complete picture.
Our vision is to deliver so much value to our customers that they know that we are their strategic
partners for success.
SINFO TECH has worked extensively on multiple technologies spanning various domains
addressing issues in various industries. The Company has evolved over time and has built in-
house proficiencies and expertise in various areas from:
• Web development
• Systems with inbuilt redundancy both within a facility and across multiple facilities
Leadership
He started SINFO TECH with a vision to create an organization that combined IT with
innovative ideas to build solutions that benefited a wide range of users and industries.
Exceptionally Self- Motivated and Directed. He analyses, evaluates and motivates team- oriented
collaborative environment. A part from handling the end-to-end chain of work and with 10 years
of experience in corporate development emerging business.
He Post Graduated from the Business Management and Business Administration Program from
the University of Andhra. He has a B.S. in Computer Science from the AcharyaNagarjuna
University.
He holds a Degree in Software Engineering from Madras University. He has been Director -
Operations of SINFO TECH. He is considered a pioneer in the field, highly respected amongst
his peers and his views are sought in the field of software technology
Srinivasarao Gude
(Director – F&A)
Gude Srinivasa Rao has a proven record of success in financial and operations management and
leadership. He has appeared ICAI and holds a B. Com in Accounting from the Acharya
Nagarjuna University. He has vast experience in Internal Operations.
Koganti SukanyaChowdary
She holds a Degree in Computer Science Engineering from JNTU. She has been Associate
Director - Technical of SINFO TECH. She has instituted ground breaking software development
practices ensuring optimal utilization of resources, on time delivery and best in class software
quality and services all geared towards ensuring customer satisfaction for SINFO TECH.
He holds a Master Degree in Computer Science Engineering from JNTU. He has been Project
Manager and Tech Lead of SINFO TECH. And he has over 10+ years of experience In corporate
development and emerging business. He leads the technical team with precision and passion.
Siva encourage team work, approach and innovation.
CHAPTER-3
TASK AND ACTIVITIES PERFORMED
System Analysis
System Analysis is a detailed study of the various operations performed by a system and their
relationships within and outside of the system. Here the key question is- why all problems exist
in the present system? What must be done to solve the problem? Analysis begins when a user or
manager begins a study of the program using existing system. During analysis, data collected on
the various files, decision points and transactions handled by the present system. The commonly
used tools in the system are Data Flow Diagram etc. Training, experience and common sense are
required for collection of relevant information needed to develop the system. The success of the
system depends largely on how clearly the problem is defined, thoroughly investigated and
properly carried out through the choice of solution. A good analysis model should provide not
only the mechanisms of problem understanding but also the frame work of the solution. Thus it
should be studied thoroughly by collecting data about the system. Then the proposed system
should be analyzed thoroughly in accordance with the needs. System analysis can be categorized
into four parts.
System planning and initial investigation
Information Gathering
Applying analysis tools for structured analysis
Feasibility study
Cost/ Benefit analysis.
In our existing system the recording of user’s information is done manually, So taking more time
for searching the information of the users. Another major disadvantage is that preparing the list
of members that viewed any user’s information takes more time. So, after conducting the
feasibility study I decided to make the manual Online Voting System to be computerized.
Preliminary Analysis
In the analysis the scope of project and risk associated with it was investigated and found out that
Online voting System is one of the most demanding software in the field of politics. It was learnt
that rather than using flexible and user-friendly computerized system, they are maintaining all
their activities manually with wastage of valuable time. I tried to figured out that some
employees were using excel to enter their data. So, through research it was found that the
development will surely overcome the overall problems related with the cost and time.
Problem Analysis
It is related with the accessing the detailed information of a user and a candidate. So, I have
initiated this project with simple requirements regarding the user and candidate information.
Some of the problems for designing and developing this project are discussed below:
Feasibility Analysis
A feasibility analysis is conducted once the problem is clearly understood. The purpose of the
study is to determine whether the problem is worth solving. It is an analysis and evaluation of a
proposed project to determine if it is technically feasible, feasible with the estimated cost and
profitable.
Economical Analysis
The economic feasibility of a system is used to evaluate the benefits achieved from and the costs
incurred for the project or system. This is done by a process called cost benefit analysis. It
provides tangible and intangible benefits like reduction in cost, more flexibility, faster activities,
proper database management, etc.
The application is medium scale application and is economically feasible for us to accomplish it.
This involves cost benefits analysis. Thus there is no problem of high cost and cost benefits
analysis.
Software Analysis
Operational Feasibility
The system is operational feasible as the system can be operate by normal users with basic
computer skills without any additional trainings. We have developed this system with the
willingness and ability to create, manage and operate the system which is easy for the end users
to operate it.
Use case Diagram
Above figure represents Use Case Diagram of the project and is a useful technique for
identifying, clarifying, and organizing system requirements. It describes how a user uses a
system to accomplish a particular goal. Use cases help ensure that the correct system is
developed by capturing the requirements from the user's point of view.
Sequence Diagram
A sequence diagram is a type of interaction diagram because it describes how—and in what
order—a group of objects works together. A sequence diagram specifically focuses on lifelines,
or the processes and objects that live simultaneously, and the messages exchanged between them
to perform a function before the lifeline ends.
Above diagram represents Sequence Diagram of the project which is a type of interaction
diagram because it describes how—and in what order—a group of objects works together. A
sequence diagram specifically focuses on lifelines, or the processes and objects that live
simultaneously, and the messages exchanged between them to perform a function before the
lifeline ends.
Data Flow Diagram
Above Data Flow Diagram, explains the overall structure of the system. It shows how and what
types of services the client chooses and the amount of admin interaction in it.
Activity Diagram
Above diagram describes the flow of control of a system. The flow can be sequential, concurrent
or branched showing the overall functions of the system.
ER Diagram
Figure 5: ER Diagram
ER diagram show all the relationships between entity sets stored in the database. It illustrates the
logical structure of the database. It helps to visualize how data is connected in general ways.
Gantt Chart
A Gantt chart illustrates how the project will run. It communicates with the client and shows
them the expected date of project completion. It helps you assess how long a project should take,
determine the resources needed, and plan the order in which you'll complete task.
Test Case
Test Case
Test Scenario ID Test Scenario Description Test Case ID Description
Enter an invalid
email & valid
TCS_PRS_003 Verify the login functionality TC_PRS_Login_003 password
Enter an invalid
email & invalid
TCS_PRS_004 Verify the login functionality TC_PRS_Login_004 password
Message: Please fill out this field Error: Please fill out this field Pass
A test case is a specification of the inputs, execution conditions, testing procedure, and expected
results that define a single test to be executed to achieve a particular software testing objective,
such as to exercise a particular program path or to verify compliance with a specific requirement.
Findings
After a series of testing and debugging, the project was ready for projection and is believed that
it will achieve the goals that it is designed to get, which is to vote in ease.
Application’s Output
Backend
Frontend
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. It provides 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 Sarwamangal Youth Club in which all the names
of voter with complete information is stored.
In this member who had registered his/her information on the database and when he/she want to
vote he/she has to login by his email and password and can vote to any candidate 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 vary less time consuming. It is very easy to debug.
Future Enhancement
With the existing constraints, the developed systems is not what was planned initially. The
primary aim of this project has been met. All the objectives that were set out have been
completed and giving positive results in the ends. In the future some features that can be added
will be about the two factor authentication. Although the user requirements were successfully
met the application is not yet fully utilized because the users of this website are just learning
about the benefits and working of the website. The user testing and evaluation of the application
did however highlight rooms for the expansion. The application could therefore be developed
further as soon as the user is fully aware of its working.