[go: up one dir, main page]

100% found this document useful (1 vote)
2K views43 pages

Online Polling Sytem Project Report

The document discusses the concept of e-polling, which aims to allow online voting to address issues with in-person voting such as intimidation, security concerns, and the desire of newer generations for a more convenient voting system. It outlines the objectives of e-polling, including enabling voter registration and identification online, automatic vote counting, and providing a database for candidate and election commission announcements. The feasibility of e-polling is then assessed, including the technical requirements and feasibility, economic feasibility, and operational feasibility of implementing such an online voting system.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
2K views43 pages

Online Polling Sytem Project Report

The document discusses the concept of e-polling, which aims to allow online voting to address issues with in-person voting such as intimidation, security concerns, and the desire of newer generations for a more convenient voting system. It outlines the objectives of e-polling, including enabling voter registration and identification online, automatic vote counting, and providing a database for candidate and election commission announcements. The feasibility of e-polling is then assessed, including the technical requirements and feasibility, economic feasibility, and operational feasibility of implementing such an online voting system.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 43

e-polling

1
e-polling

Introduction :-
Problem Statement:-

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.
E-Polling will help all the peoples who cannot vote due to many reason but they want to vote, to
become a part of the government. It will allow people to vote from any part of the country and provide his
valuable support to the nation

1.2: Objective

Website enables the users to interact with the candidates and access other facilities provided in the website
easily with the help of a luring graphical windowing environment.
User can enter biographical information, personal details, interests.  

“E-Polling” provides a facility for online registration of the citizens, after completing the registration
process they are eligible for that any voting taking place in there area.

Any person who is eligible for voting i.e. as per election commission criteria can easily register using this
system.

Unique username and password will be provided by this system.

To avoid the cheating this system provides security for the unique id to citizens .

2
e-polling

After completing the voting procedure result are automatically calculated by this system.

“E-Polling” provide a database for various announcements of candidates and election commission also.

Site and database maintained by the system administrator.

System has a user friendly environment so it is easy to use by any person.

1.3: Scope

Condemning the feasibility of complex technology such as remote online voting cannot be done through
research of purely theoretical models. Real world deployment of remote online voting shows how the
weaknesses dominate, making remote online voting a risky proposition. This project will examine two uses
of remote online voting – two schemes that fail if we consider security a paramount requirement.

1.4 Platform Specification

1.4.1 Hardware

Requirement Professional

Processor 600MHz. Recommended: 1 GHz processor


RAM 192 MB Recommended: 256
MB
Operating System Windows 2000 Service Pack 4, Windows XP Service Pack 2,
Windows Server 2003 Service Pack 1, or Windows Vista 3,4

For a 64-bit computer, the requirements are as follows:

 Windows Server 2003 Service Pack 1 x64 editions


 Windows XP Professional x64 Edition

1.4.2 Software

We are using our main platform as NetBeans6.5, which is an integrated development environment (IDE),
which combines several development tools into a single cohesive package. The assortment usually includes

3
e-polling

a source code editor, compiler, debugger and other utilities. These tools work together throughout the
development process. To run our application we need a NetBeans Framework, Wampserver, and Jdk 1.6.

1.4.3 Implementation Language


1. Java
2. HTML
3. SQL
4. JavaScript

4
e-polling

2. System Analysis

2.1 Identification of Need-


2.1.1 It will provide all people a way to became a part of the government.
2.1.2 To make people vote without making any efforts.

5
e-polling

2.1.3 To give results quickly

2.2 Preliminary Investigation

Less participation of women in election

6
e-polling

7
e-polling

8
e-polling

3. Feasibility Study
This section studies the technical, schedule, operational, financial, organizational and social feasibilities, as well
as human factors, risk management, and the limitation of the feasibility study itself.
This feasibility study will determine whether the project could be done within the limitations of the available
project time, human, financial and technical resources. The feasibility study represents the projects preliminary
design factors.

3.1 Technical Feasibility

Technical feasibility centers around the existing computer system (hardware and software) whether it can
support the addition of proposed system, if not to what extend it can support the organization's capacity to
acquire required additional components.
Technical feasibility centers on the existing computer system (H/W, S/W etc.) and to what extent it
can support the proposed addition. For e.g., if the current computer is operating at 80 % capacity an
arbitrary ceiling then running another application could over load the system or require additional H/W.
This involves financial consideration to accommodate technical enhancements. If the budget is serious
constraint, then the project is judge not feasible.
During technical feasibility analysis, the analyst evaluates the technical merit of the system concept,
while at the same time it collects the information about the performance, reliability, maintainability and
productivity of the system.
We have analyzed that what kind of environment, process and methods are required to accomplish the
system. We are using java as front end and wampserver as backend.

3.2 Economical Feasibility

Economic analysis is most frequently used method for evaluating the effectiveness of a candidate system.
More commonly known as cost/benefit analysis, the procedure is to determine the benefits and savings that
are expected from a candidate system and compare them with costs. It benefit outweigh costs, and then
decision is made to design and implement the system. Otherwise, further justification or alterations in the
proposed system will have to be made if it is to have a chance of being approved. This is an ongoing effort
that improves in accuracy at each phase of the system life cycle. 

Financial or Economical feasibility decides whether the proposed system will be cost effective. Economic feasibility
9
e-polling

considers the following

I. The cost to conduct a full system investigation.


II. The cost of hardware and software for the class of application.
III. The benefits in the form of reduced cost or fewer costly errors.
IV. The cost if nothing changes (i.e. The proposed system is not developed).

3.3 Operational Feasibility

Operational feasibility determines how much effort will go in selling the proposed information system, and in
educating and training the employees on the new system, along with the new ways of conducting the business.

10
e-polling

4. Literature Survey

11
e-polling

4.1 Benefit
 E-polling will help all people who cannot vote due to many reason.
 Allow people to vote from any part of the country.
 It will provide all people a way to become a part of the government.
 It will help to give quick result.
 It will help to conduct fair election.

4.2. Proposed Solution

 Save paper and reduced role of manpower.


 Voting procedure will be fast and result will be declared within few hours after the completion of
election.
 e-Polling provides a safe way for voting.
 Online voters will not have any fear of terrorism.
 No booth capturing will take place.

4.4 Technology Needed

This includes the tools that we have used in constructing the projectand the form of
technology that we have used in the project, and we have the following technology used
in implementation of project:-

 Java
 Netbeans 6.0(IDE used)
 Adobe Dreamweaver (CS4)
 Wampserver

4.4.1 Java (front end )

Java is a programming language originally develepod by Sun


Microsystems and released in 1995 as a core componenet of Sun’s. Java platform. The language

12
e-polling

derives muchof its syntax from C and C++ but has a simpler object model and fewer low-level
facilities. Java applications are typically compiled to bytecode which can run on any Java virtual
machine(JVM) regardless of computer architecture.
One characteristic, platform independence, means that programs written in the Java language
must run similarly on any supported hardware/operating-system platform. One should be able to
write a program once, compile it once, and run it anywhere. The first technique is to simply compile
directly into native code like a more traditional compiler.
The Java Runtime Environment (JRE), is the software require to run any application . Deployed on
the Java platform. End users commonly use a JRE in software packages and Web browser plugins. Sun also
distributes a superset of the JRE called the Java 2 SDK(more commonly known as JDK), which includes
development tools such as the Java compiler,Javadoc,Jar and debugger. One of the unique advantages of the
concept of a runtime engine is that errors (exceptions) should not ‘crash’ the system.

A Java Virtual Machine (JVM) is a set of computer software programs and data structures which
implements a specific virtual machine model. This model accepts a form of computer intermediate
language, commonly referred to as Java bytecode, which conceptually represents the instruction set
of a stack oriented, capability arechitecture.This code is most often generated by Java language
compilers, although the JVM canalso be targeted by compilers of other languages. JVMs using the
“Java” trademark may be developed by other compilers as long as hey adhere to the JVM
Specification published by Sun (and related contractual obligations). The JVM is a Crucial
componenet of the Java platform. Because JVMs are available for mny hardware and software platforms.
We have preferred Java because:

 Get started quickly: Although Java is a powerful object-oriented language, it's easy to learn,
especially for programmers already familiar with C or C++.
 Write less code: Comparisons of program metrics suggest that a program written in Java can
be four times smaller than the same program in C++.
 Write better code: The Java language encourages good coding practices and its garbage
collection helps you avoid memory leaks.
 Develop programs faster: Your development time may be as much as twice as fast versus
writing the same program in C++.
 Avoid platform dependencies with 100% Pure Java: You can keep your program portable
by avoiding the use of libraries written in other languages.
 Write once, run anywhere: Because 100% Pure Java programs are compiled into machine-
independent byte codes, they run consistently on any Java platform.
13
e-polling

Java has the following features:


 Simple
 Portable
 Object-oriented
 Robust
 Architecture-neutral
 Interpreted
 High performance

4.4.2 Netbeans 6.0(IDE used)

One of the most talked about and innovative features since Net-Beans 5.0 is Project Matisse or the Form
Editor. Many would agree that Matisse is the best user interface designer across different IDE categories
and technologies. A good number of developers will start or have started using Netbeans because of it. With
software, there is never-ending room for improvement and growth. In NetBeans6.0, familiar and new
developers will find many new Matisse features to help improve Swing application development, as you’ll
see in this article. Beans Binding and Before Netbeans 6, the Free Design layout manager supported a
single preferred gap for component placement. In6.0, three preferred gaps are supported. A preferred gap is
the preferred spacing between components, and is available on all sides of a component for quick and
elegant placement. For developers who may like more control over spacing between components, having
three choices comes in handy. The Swing Application Previous releases of Netbeans required a few extra
steps to internationalize and localize a UI. Now the process is streamlined. In previous versions, you had to
setup each individual UI element to pull values from the correct resource bundle. Then to actually localize
the bundle you needed to create separate bundle files or localized entries manually, enter the text for the
correct local, and format the file accordingly (using a different encoding, for example).In Netbeans 6.0, you
can now ask Matisse to automatically internationalize the application during UI design. This means that for
each resource that would normally be internationalized by hand Matisse automatically adds the value
supplied in the designer to a resource bundle. This is done for all UI elements .The visual localization
feature works in harmony with automatic international. You can right click the top form node in the tree of
the Inspector window, locate the Design Locale combo box Properties window, and then select a locale or
add a new one.

4.4.3 Adobe Dreamweaver (CS4):-

14
e-polling

Adobe Dreamweaver is a development application originally created by Macromedia, and is now


developed by Adobe Systems, which acquired Macromedia in 2005. Dreamweaver is available for
both Mac and Windows operating systems. Recent versions have incorporated support for web technologies
such as CSS, JavaScript, and various server-side scripting languages
and frameworks including ASP, ColdFusion, and PHP.
Dreamweaver's WYSIWYG mode can hide the HTML code details of pages from the user,
making it possible for non-coders to create web pages and sites. One criticism of this approach is that it has
the potential to produce HTML pages whose file size and amount of HTML code is larger than an optimally
hand-coded page would be, which can cause web browsers to perform poorly. 
Dreamweaver allows users to preview websites in locally-installed web browsers. It also has
site management tools such as FTP/SFTP and Web DAV file transfer and synchronization features, the
ability to find and replace lines of text or code by search terms and regular expressions across the entire site,
and a template feature that allows single-source update of shared code and layout across entire sites without
server-side includes or scripting. The behavior panel also enables use of basic JavaScript without any
coding knowledge. Dreamweaver can use third-party "Extensions" to extend core functionality of the
application, which any web developer can write (largely in HTML and JavaScript).

4.4.4 Wampserver-

WampServer is a Windows web development environment. It allows you to create web applications with
Apache, PHP and the MySQL database. It also comes with PHPMyAdmin and SQLiteManager to easily
manage your databases. WampServer installs automatically (installer), and its usage is very intuitive. You
will be able to tune your server without even touching the setting files. WampServer is the only packaged
solution that will allow you to reproduce your production server. Once WampServer is installed, you have
the possibility to add as many Apache, MySQL and PHP releases as you want. WampServer also has a
trayicon to manage your server and its settings.

15
e-polling

=-

5.1External Interface Requirement

According to our project’s aim, identifying interfaces with subsystems is the subject of the external
interface requirements. External interface requirements should be described definitely. External interface
requirements are defining the system interaction between other organizations.

16
e-polling

5.1.1 User interfaces

User Interfaces is important because it is the face of the system. User interfaces should be user friendly,
understandable, useful, functional and purposely. There are two type users and interfaces. One of them is
internet user’s interface and other one is the administrative interface. In our project, interface has
hierarchical navigational systems with lots of hyperlinks. Interfaces of internet users and administrator are
including some specific parts. For example, sign up, log in, help, search, download, upload and so on.

5.1.2 Hardware interfaces

To run our application we need not any hardware peripherals. An extra hardware we require is a
webcam, by which we will allow user to take their picture and be inserted in the software.

5.1.3 Software interfaces

We are using our main platform as NetBeans6.5, which is an integrated development environment (IDE),
which combines several development tools into a single cohesive package. The assortment usually includes
a source code editor, compiler, debugger and other utilities. These tools work together throughout the
development process. To run our application we need a NetBeans Framework,Wampserver,Jdk 1.6 .
5.2 Other Nonfunctional Requirements
5.2.1 Performance requirements
5.2 .2Safety requirements

It is very important to secure the personal details of the voters to be kept confidential for this precaution are
required like candidate should not reveal their password in public, not to operate their accounts on
unauthentic systems, voter should take care the they don’t get trapped in fishing trap.

5.2.3 Security requirements

Security is receiving attacks and threats which are affecting the usability of the system. Protection is very
important as system has internet connection. If security is not appropriate, system can not resist on external
attacks. There are some damages which are caused by these external attacks. One of them is denial of
service; other one is corruption of programs or data and the last one is disclosure of confidential
information. We must block these external attacks.

5.2.4 Software quality attributes


17
e-polling

Correctness — software should do what it is suppose to do (according to the design specs)

Robustness- System should be able to detect the fake people.

User-friendliness- software should be able to used by every category of people.

Adaptability- software should be updated as per the requirement.

Security- Personal details of voters should be kept confidential.

18
e-polling

6. Software Engineering Approach

6.1 Software Engineering Paradigm Applied


6.1.1 Description:

Model Used:-

Spiral model: The spiral model is similar to the incremental model, with more emphases placed on risk
analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation. A
19
e-polling

software project repeatedly passes through these phases in iterations (called Spirals in this model). The
baseline spiral, starting in the planning phase, requirements is gathered and risk is assessed. Each
subsequent spiral builds on the baseline spiral.

Requirements are gathered during the planning phase. In the risk analysis phase, a process is undertaken to
identify risk and alternate solutions. A prototype is produced at the end of the risk analysis phase.

Software is produced in the engineering phase, along with testing at the end of the phase. The evaluation phase
allows the customer to evaluate the output of the project to date before the
project continues to the next spiral.

6.1.2 Advantages & Disadvantages


Advantages:

 High amount of risk analysis.


 Good for large and mission-critical projects.

 Software is produced early in the software life cycle.

Disadvantages:
20
e-polling

 Can be a costly model to use.


 Risk analysis requires highly specific expertise
 Project's success is highly dependent on the risk analysis phase.
 Doesn't work well for smaller projects

6.1.3 Why Used For Project

The spiral model is a software development process combining elements of both design and prototyping-in-
stages, in an effort to combine advantages of top-down and bottom-up concepts. The first step in this project
was the analysis. Requirement gathering at the system level with a small amount of top-level design and
analysis was done. The basic aspects related with large computations i.e. time and money was the major
areas of concern.

The requirement gathering process was intensified and focused. To add the required features information
was gathered and whole website was analyzed. Behavior and the expected performance of the system were
reviewed with the customer. All the requirement specifications were available at the analysis phase. After
analysis software design was developed. Data structure, software architecture, interface representation and
procedural details were worked upon. The design process translated the requirements in to a representation
of software that can be accessed for quality before coding begins. A clear separation between the planning
and designing of the project and the actual implementation is achieved through this model. This helps in
reducing the complexity of the project development

6.2 REQUIREMENT ANALYSIS

6.2.1 Requirements Elicitation


Since there was no "customer" in the traditional project sense, we decided to work with the small set of core
functional directives listed above and to formally establish a project requirements baseline (again, to shorten
the requirements analysis process for the subsequent portals) only after . This had the advantage that we
didn't need to conduct a formal requirements acceptance test until the second portal was deployed. The first
step in eliciting requirements was to identify key product stakeholders. These stakeholders consisted of
personnel from the marketing, sales, user interface, content generation, software development, quality

21
e-polling

assurance, and systems engineering teams, all of whom were polled for input. The marketing group
represented the viewpoint of an end user in the community and so became the de facto "customer."
The core high-level requirements were organized quite simply, into three sections:

 functional requirements — actions the system must be able to perform


 nonfunctional presentation requirements— how the information is to be displayed to the user
 requirements— other system requirements, such as usability, reliability, performance, and
supportability

There were a number of reasons for choosing this approach. For one thing, it aligned with how our technical
resources and organization were structured. The graphical design team (charged with meeting the
presentation requirements) was composed of Web designers who used a different set of tools than the site
developers building Active Server Pages. Grouping the functional requirements together, separate from the
network, security, and other engineering disciplines, matched the structure of our engineering organization.

6.2.2 Requirements Analysis

Requirements Analysis is the process of understanding the customer needs and expectations from a
proposed system or application and is a well-defined stage in the Software Development Life Cycle mode.
Requirements are a description of how a system should behave or a description of system properties or
attributes. It can alternatively be a statement of ‘what’ an application is expected to do. Given the multiple
levels of interaction between users, business processes and devices in global corporations today, there are
simultaneous and complex requirements from a single application, from various levels within an
organization and outside it as well. The Software Requirements Analysis Process covers the complex task of
eliciting and documenting the requirements of all these users, modeling and analyzing these requirements
and documenting them as a basis for system design. A dedicated and specialized Requirements Analyst is
best equipped to handle the job. The Requirements Analysis function may also fall under the scope of
Project Manager, Program Manager or Business Analyst, depending on the organizational hierarchy.
Software Requirements Analysis and Documentation Processes are critical to software project success.
Requirements engineering is an emerging field which deals with the systematic handling of requirements.

Steps in the Requirements Analysis Process-

22
e-polling

I. Fix system boundaries This initial step helps in identifying how the new application integrates with
the business processes, how it fits into the larger picture and what its scope and limitations will be.
II. Identify the customer In more recent times there has been a focus on identifying who the ‘users’ or
‘customers’ of an application are. Referred to broadly as the ‘stake holders’, these indicate the group
or groups of people who will be directly or indirectly impacted by the new application. By defining
in concrete terms that the intended user is, the Requirements Analyst knows in advance where he has
to look for answers. The Requirements Elicitation Process should focus on the wish-list of this
defined group to arrive at a valid requirements list.
III. Requirements Analysis Process: Once all strake holder requirements have been gathered, a
structured analysis of these can be done after modeling the requirements. Some of the software
requirements analysis techniques used are requirements animation, automated reasoning,
knowledge-based critiquing, consistency checking, analogical and case-based reasoning.

6.2.3 Requirements Negotiation

Negotiating requirements is one of the first steps in any software system life cycle, but its results have
probably the most significant impaction the system’s value. However, the processes of requirements
negotiation are not well understood. We have had the opportunity to capture and analyze requirements
negotiation behavior for groups of projects developing library multimedia archive systems.

6.2.4 Requirements Specification

Requirements, once elicited, modeled and analyzed should be documented in clear, unambiguous terms. A
written requirements document is critical so that its circulation is possible among all stakeholders including
the client, user-groups, the development and testing teams. Current requirements engineering practices
reveal that a well-designed, clearly documented Requirements Specification is vital and serves as a:

 Base for validating the stated requirements and resolving stakeholder conflicts, if any.
 Contract between the client and development team.
 Basis for systems design for the development team.
 Bench-mark for project managers for planning project development lifecycle and goals.
 Source for formulating test plans for QA and testing teams.
 Resource for requirements management and requirements tracing.
 Basis for evolving requirements over the project life span.
23
e-polling

Software requirements specification involves scoping the requirements so that it meets the customer’s
vision. It is the result of collaboration between the end-user who is often not a technical expert, and a
Technical/Systems Analyst, who is likely to approach the situation in technical terms.
The software requirements specification is a document that lists out stakeholders’ needs and communicates
these to the technical community that will design and build the system. The challenge of a well-written
requirements specification is to clearly communicate to both these groups and all the sub-groups within.
To overcome this, Requirements Specifications may be documented separately as:
 User Requirements - written in clear, precise language with plain text and use cases, for the benefit
of the customer and end-user.
 System Requirements - expressed as a programming or mathematical model, addressing the
Application Development Team and QA and Testing Team.

Requirements Specification serves as a starting point for software, hardware and database design. It
describes the function (Functional and Non-Functional specifications) of the system, performance of the
system and the operational and user-interface constraints that will govern system development.

6.3 Planning Managerial Issues

6.3.1 Planning scope

Scoping is related but requires additional information. Do multiple transactions need to occur while a user is
interacting with the system. We can see that this is a lot to think about, especially when we multiply this
effort by the number of users in our project. We might be able to think of the user as separate authorizer,
and then divide some of the scoping work among different team members to make the process more
efficient. The development leader or architect should be stay focused on any cross application dependencies
or areas where resources can be combined.

6.3.2 Team Organization

6.3.2.1 Team Structure


Our team consists of 4 full-time people for two different minor part of our project- web/database developer,
web designer/technologist, web developer. one people among us work as web/database developer, two

24
e-polling

people among us work as web designer/technologist, and one person works as a web developer. There is no
one on the team responsible for overall content management (the content is supposed to come "ready to
post" from virtually anyone of the team who has something they want or need to say on the website).

6.3.3 Risk Analysis

Our team analyzed the project and we have to face risks .And we manage the risks with our Code & Data
Management skills.

6.4 Design
6.4.1 Design Concept and Technique
Following are the main points related to the design concept:-
1. Abstraction
2. Architecture
3. Patterns
4. Modularity
5. Information hiding
6. Functional Independence
7. Refinement
8. Refactoring

25
e-polling

26
e-polling

27
e-polling

28
e-polling

29
e-polling

30
e-polling

31
e-polling

32
e-polling

6.5 Implementation Phase

6.5.1 Characteristics of Language, Platform and Tools Used

Characteristics of Java, JavaScript & HTML


Five important characteristics make practical nature possible:

· Familiarity
· Simplicity
· Efficiency
· Security
· Flexibility

Familiarity

33
e-polling

Programmers from many backgrounds will find themselves already accustomed to the Java language. Many
of the language's constructs are borrowed from C and C++, and in many cases Java code is almost
indistinguishable from that found in the typical C# or C++ program. This minimizes the learning curve
considerably.

Simplicity
A JavaScript can consist of 10,000 lines or one line: whatever you need to get the job done. There is no need
to include libraries, special compilation directives, or anything of the sort. The script engine simply begins
executing the code after the first escape sequence (). If the code is syntactically correct, it will be executed
exactly as it is displayed.
It is also a navigator embedded scripting which works differently on different browerson the net.

Efficiency

Efficiency is an extremely important consideration for working in a multiuser environment such as the
langauge introduced resource allocation mechanisms and more pronounced support for object-oriented
programming, in addition to session management features..

Security
Java provides developers and administrators with a flexible and efficient set of security safeguards. Java
furnishes a number of security mechanisms that administrators can manipulate, providing for the maximum
amount of freedom and security when Java is properly configured. Java can be run in what is known as safe
mode, which can limit users' attempts to exploit the Java implementation in many important ways. Limits
can also be placed on maximum execution time and memory usage, which if not controlled can have
adverse affects on server performance.
This Project is Platform Independence. It needs only client and a server.

Characteristics of Dreamweaver:-
Looking back, the death of DHTML was an expected casualty of the browser wars and incompatible DOMs
between Netscape and Internet Explorer. However, Dynamic HTML has had resurgence under the umbrella
of a new buzzword and movement.

34
e-polling

CSS, by contrast, has flourished for the last 10 years, and Dreamweaver has concentrated heavily on
standards-based design over the last few releases. And although Dreamweaver has established itself as the
market leader among visual editors, there's also been a significant focus on strengthening the code-centric
tools that today's web designers and developers require.

Characteristics of WampServer:-
Easy to Install and Deploy - Users can set up WampServer in minutes enabling organizations to deliver
new applications faster than with proprietary databases.

Easy to Administer WampServer is a low administration database that eliminates the need for highly
trained, skilled, and costly database administrators to maintain the database.

High Performance - In February 2002, eWeek published the results of their Database Benchmark Test,
showing WampServer has the best overall performance and scalability (matching Oracle). To view the
results of eWeek Database Benchmark test .

Reliability and High Availability - WampServer has a well-earned and established reputation for
reliability among its 5 million user community. In addition to reliability, WampServer Cluster provides
99.999% availability.
.

6.6 Testing
Software testing is the process used to measure the quality of developed computer software. Usually, quality
is constrained to such topics as correctness, completeness, security, but can also include more technical
requirements such as capability, reliability, efficiency, portability, maintainability, compatibility, and
usability. Testing is a process of technical investigation, performed on behalf of stakeholders, that is
intended to reveal quality-related information about the product with respect to the context in which it is
intended to operate. This includes, but is not limited to, the process of executing a program or application
with the intent of finding errors. Quality is not an absolute; it is value to some person. With that in mind,
testing can never completely establish the correctness of arbitrary computer software; testing furnishes a
criticism or comparison that compares the state and behavior of the product against a specification. An
important point is that software testing should be distinguished from the separate discipline of Software
Quality Assurance (SQA), which encompasses all business process areas, not just testing.

35
e-polling

6.6.1Testing Objectives

There are number of rules that can serve well as testing objectives.

1.) Testing is a process of executing a program with the intent of finding an error.

2.) A good test case is one that has a high probability of finding an as yet undiscovered error.

3.) A successful test is one that uncovers an as yet undiscovered error.

These objectives implies that a successful test is one in which no errors are found. Our objective is to design
tests that systematically uncover different classes of errors and do so with minimum amount of time and
effort.
If testing is conducted successfully it will uncover errors in software. The secondary benefit, testing
demonstrates that software functions are working according to specification and requirement appears to
have been met.

White Box Testing


White Box Testing, sometimes called Glass Box Testing or Structured Testing is a test case design method
that uses the control structure of the procedural design to derive test cases. The tester can analyze the code
and use knowledge about the structure of a component to derive test data.
"Knowing the internal working of a product, test can be conducted to ensure that internal operation performs
according to specification and all internal components have been adequately exercised", is called White Box
Testing.
White Box Testing of software is predicted on close examination of procedure detail. Logical paths of the
white software are tested by providing test cases that exercise specific sets of condition or loops.

Using White Box Testing methods, the software engineer can derive test cases that:-

1.) All independent paths within a module have been exercised at least once.
2.) Exercise all logical decisions and their true and false sides.
3.) Execute all loops at their boundaries and within their operational bounds.
4.) Exercise internal data structure to ensure their validity.

36
e-polling

The advantage of White Box Testing is that an analysis of the code can be used to find how many test cases
are needed to guarantee a given level of test coverage.

Black Box Testing:-

Sometimes called Behavioral Testing or Particular Testing. Black Box Testing focuses on the functional
requirements of the software. That is, Black Box Testing enables the software engineer to derive sets of
input condition that will fully exercise all functional requirements for a program. Black Box Testing is not
an alternative to White Box techniques. Rather, it is a complementary approach that is likely to uncover a
different class of errors than White Box methods.

Black Box Testing attempts to find errors in the following categories:-


1.) Incorrect or missing function.
2.) Interface errors.
3.) Errors in data structures or external data base access.
4.) Performance errors.
5.) Initialization and termination errors.

Unlike White Box Testing which is performed easily in the testing process Black Box Testing tends to be
applied during data stages of testing. Because Black Box Testing purposely disregards control structure,
attention is focused on the information domain. Tests are designed to answer the following question:-

* How is functional validity tested?


* What classes of input will make good test cases?
* Is the system particularly sensitive to certain input values?
* How are the boundaries of data class isolated?
* What data rates and data volume can the system tolerate?
* What effect will specific combinations of data have on system operations?

By applying Black Box techniques we derive a set of test cases that satisfy the following criteria:

1.) Test cases that reduce, by a count that is greater than one, the number of additional test cases that must
be designed to achieve reasonable testing.

37
e-polling

2.) Test cases that tell us something about the presence or absence of classes of errors, rather than errors
associated only with the specific test at hand.

38
e-polling

7. Conclusion

7.1 Limitation of Project

 Administrator is created in the system already.


 All roles are created in the system already.
 Roles and tasks are predefined and are made known to the administrator.
 All users are using Javascript enabled browsers
 End user should have a basic knowledge of English and computer usage
 We have not included the concept of campaigning in our project.
 Authenticating only on the basis of personal details.
 A personal photo identification is not implemented.

7.2 Difficulties Encountered


39
e-polling

The difficulties encountered during the development of the entire system include the following:

1. Difficulty in defining the complete scope of the system.

2. Having to deal with changing system requirements.

3. The response of the public led’s to delay in development.

4. Assessing the potential risk involved

5. Confined knowledge of the election criteria.


6. Maintenance of large database

7.3 Future Enhancements & Suggestions

Due to time constraints, we restrict ourselves only to a minor part of the major idea that was thought.
The system developed, though can perform most of the operations mentioned in this report, there are still
some areas where coding has to be completed. We have taken every possible effort, to bring out the best
results for all the modules mentioned, but since we are doing the project after the introductory course in java
we find it hard and time consuming in analyzing each and every module. While doing the project we learned
some advanced topics which we don’t know previously regarding JavaScript.

40
e-polling

41
e-polling

Bibliography & References

8.1 Reference Books

 Software Engineering Principles by Roger S. Pressman


 Software Engineering
by Rajiv Mal
 PL/SQL by Ivan Bayross

 Database System concepts


by Korth
 System Analysis & Designing by James A. senn
 Software Engineering Concepts by Fairley

8.2 Other Documentations & Resources

 http://www.google.in/
42
e-polling

 http://www.mponline.org/
 http://www.indianrailways.org/
 http://www.nrdcindia.com/
 http://ebooks-space.com/
 http://programmerworld.net/

 http://www.w3school.com

 http://www.stackoverflow.com

43

You might also like