online banking management system 12
DESCRIPTION
projectTRANSCRIPT
ONLINE BANKING MANAGEMENTSYSTEM
A PROJECT REPORT
Submitted by
MR. VIJAY CHAUDHARY(7285022)
in partial fulfillment for the award of the degree
of
(BACHELOR OF COMPUTER APPLICATION)
UNDER THE GUIDANCE OFMRS. RESHU
At
INSTITUTE OF MANAGEMENT STUDIES GHAZIABADC-238, BULANDSHAR ROAD, LAL QUAN GHAZIABAD
(Session 2011-2014)
1
ACKNOWLEDGEMENT
It is a pleasure to acknowledge the direct and implied help I have received in
task of developing the project at its various stages. It would not have been
possible to develop such a project without the contribution efforts and great
deal of encouragement on part of numerous individuals.
I express my profound gratitude to my guide MRS. RESHU for guidance,
motivation and assistance in the course of this profit.
I am greatly thankful to all our lab in charge/instructors for providing us all
the facilities and environment for the successful completion of the project
within the time limits.
I am also grateful for the support and resources provided to me by the
I.T.E.R.C computer center and library.
VIJAY CHAUDHARY
BCA – III Year
(7285022)
2
TABLE OF CONTENT
Page No.
1. INRODUCTION 51.1.Objectives 6
2. TECHNOLOGIES TO BE USED 7
3. Analysis Document 3.1 Types of Feasibility 8-11
4. Project profile 4.1 Introduction 12 4.2 Advantages and Disadvantages of online banking Management system. 4.3 Purpose of the project 135. Software Requirement Specification 15
5.1 Existing System 155.2 Analysis Of The Existing System 15-165.3 Data Flow Diagrams 16-19
6. Module Design 206.1 Input Design 206.2 Output Design 20-21
6.3 Design Document 21 6.4 RDBMS 22
6.4.1 Relations, Domains And Attributes 22
6.4.2 Relationships 226.5 Database Tables 23-25
7. Forms with coding 26-548. Testing Methodology 55
3
8.1Test Plans 568.1.1 Unit Testing 578.1.2 Integration Testing 58 8.1.3 Validation Or System Testing 58-59 8.1.4 Output Testing 59-60
8.2 Training 60-61 9. Limitations Of the Project 6210. Future Application of the Project 6311.Conclusion 64 12.Bibliography 65
4
1. INTRODUCTION
Due to expanding of computer & its applications from large enterprises to the personal
computer, the productivity of the concerned has been increased many folds. Today with
the development of users friendly software applications at reasonable cost & its
subsequent expansion as per the requirement has made many impossible tasks & complex
topics possible with very little effort. Today with all round development in software,
users friendly applications require an understanding for related terms such as intelligence,
knowledge, reasoning, thought, cognition, learning & a number of computer related terms
to develop an application which can be used in any required field with little or no
knowledge. An ocean of data, details of complex data, reports & returns, records &
updating with summary details are made available by AUTOMATION.
Though AUTOMATION can be an asset to any known field/ any organization, however
in this particular project “ONLINE BANKING MANAGEMENT SYSTEM” has been
chosen for this project. The software has been made users friendly where it does not
require any expertise in operation. The proposed software has been developed by using
JDK 7 And net beans IDE as front-end & MYSQL And Oracle as back-end.
“The remainder of this document describes the intended users that would expected to
interact with the system frequently & a simple profile of each user type is provided as a
sample. This document now will go into more detail on the expected users this interface
&interaction with the product & more on the technical approach &consideration to be
implemented.
5
1.1 OBJECTIVES
ONLINE BANKING MANAGEMENT SYSTEM used for maintaining financial
transactions of the bank. It helps to measure the performance of the organization by
calculating the total currency and money .
This system provides the fast long term, inconsistent, accurate data storage & access of
the data in comparison to the manual system. The system can be embedded with the other
module like personal information system, management information system, marketing &
the maintenance management system.
The system is maintained as a single consolidated database on a server accessible from
vouchers manual records & daily transactions in the organization. The system has been
made secured but accessible by authorized accounts persons.
A common database maintained & updated time to time. Data is made consistent through
data only being entered at one source. The system environment provides for, tan easy to
user reporting/enquiry tool for ad-hoc use.
In the existing system the transactions are done only manually but in proposed system we
have to computerize all the banking transaction using the software Banking Management
System.
Some features are-
Create new account
Deposit amount
Withdrawn amount
Balance amount
Transfer amount
Close account
6
Details about bank
2. TECHNOLOGIES TO BE USED
SOFTWARE
Operating System-Windows 7 and 8
Front end – JDK 7 and net beans IDE
Backend – mysql and oracle
Database language – oracle
HARDWARE
Processor – dual core and core i3
RAM - 2 GB
Hard Disk – 50 GB
7
3. ANALYSIS DOCUMENT
The concept of feasibility is to determine whether or not a project is worth doing.
The process followed in making this determination is called feasibility study.
Once it has been determined that a project is feasible, the system analyst can go
ahead and prepare the project specification which finalizes project requirements.
3.1 TYPES OF FEASIBILITY
Technical Feasibility
Operational Feasibility
Economic Feasibility
Social Feasibility
Management Feasibility
Legal Feasibility
Time Feasibility
TECHNICAL FEASIBILITY
This is concerned with specifying equipment and software that will successfully
satisfy the user requirement. Technical needs of the system include: -
Facility to produce outputs in a given time
Response time under certain conditions
Ability to process a certain volume of transaction at a particular
period
Facility to communicate data to distant location
8
In examining technical feasibility, configuration of the system is given more
importance than the actual make of hardware. Configuration should give the
complete picture about the system’s requirements: how many workstations are
required, how these units are interconnected so that they could operate and
communicate smoothly. What speeds of input and output should be achieved at
particular quality of printing.
The computers are easily available in almost all the places, even in villages.
The hardware needed to carry out this project include workstations with 2 GB of
RAM and 50 Hard Disk.
The software needed to carry out this project include Net Beans IDE as front end
and ORACLE as backend. So the technology required to carry out the project is
easily available and affordable, hence this project is technically feasible.
Due to all these reasons implementation of such system becomes not only feasible
but reputed to the organization.
OPERATIONAL FEASIBILITY
This is mainly related to human organization and political aspects. The points to
be considered are: -
What changes will be brought with the system?
What organizational structures are disturbed?
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.
This feasibility study is carried out by a small group of people who
are familiar with information system techniques, who understand the
parts of business that are relevant to the project and are skilled in
system analysis and design process.
This project are not developed just for fun. They are developed on demand of the
organization for which the system is being developed. Therefore the chances of
resistance from the Corporation staff are almost nil. Any disturbance to the organization
if occurs will be advantageous to the organization. Also the time required to carry out a
transaction will be reduced to a large extent, which will make the consumer happy and
9
cheerful. The operators now will be able to service more consumers than before in the
same time period. There is no need to recruit new staff to operate the system. The
existing staff of the Corporation can be trained to interact with the system which is a GUI
based software and is easy to use. Hence the project is operationally feasible.
ECONOMIC FEASIBILITY
Economic analysis is the most frequently used technique for evaluating the effectiveness
of a proposed system. More commonly known as cost-benefit analysis; the procedure is
to determine the benefits and savings that are expected from a proposed system and
compare them with costs. If benefits outweigh costs, a decision is taken to design and
implement the system.
Cost-Benefit Analysis
Since cost plays an important role in deciding the new system, it must be identified and
estimated properly. Benefits are also of different types and can be grouped on
the basis of advantages they provide to the management.
Cost-saving benefit leads to reduction in administrative and operational costs.
Cost-avoidance benefits eliminate future administrative and operational costs improved-
service-level benefits are those where the performance of the system is improved by a
new computer based method e.g. servicing a student in two minutes rather than five to
ten minutes is an example of this type of benefit.
Improved-information benefits is where computer based methods lead to better
information for decision making.
Direct Or Indirect Cost Benefit
Direct costs are those which are directly associated with a system. They are applied
directly to the operator.
Direct benefits also can be specifically attributable to a given project.
Indirect costs are not directly associated with a specific activity in the system. They are
often referred to as overhead expenses.
10
For example cost of space to install a system, maintenance of computer center, heat, light
and air-conditioning are all tangible costs but their proportion is difficult to calculate to a
specific activity like report.
Indirect benefits are realized as by-products of another system.
We can define cost-benefit analysis as: -
That method by which we can find and estimate the value of the gross benefits of a
new system specification.
That method by which we find and determine the increased operating costs associated
with the gross benefits
The subtraction of these operating costs from the associated gross benefits to arrive at
net benefits.
That method by which we find and estimate the monetary value of the development
costs that produce the benefits
Those methods by which we show the time-relationship between net benefits and
development costs as they relate to cash flow, payback on investment, and time-in
process taking into operation factors such as inflation etc.
11
4. PROJECT PROFILE
4.1 INTRODUCTION
Since the internet has become a popular place to buy and sell goods, online banking services have made their way into most homes. Easier to pay bills, manage money, and transfer money to other accounts, internet banking is a convenient way to handle money. Many employers now have direct deposit, which makes it easier to put money into one's account. No more trips to the bank every Friday. The money is in the account the night before and is available for use on Friday morning. Most banks now offer some type of banking services on the net. While not all banks have all of the options that people will need, many banks now offer more services than they have before.
Some banks will allow people to send electronic checks to credit card companies and student loan organizations instead of writing out a check each month. This saves time and paper. Some banks will allow a person to see their account at any time during the day and allow them to make changes that they see fit.
They can transfer money into a savings account, open other accounts, or buy items online. Since many people shop online, they will use their debt card to pay for the items that they purchase. This can make money management even easier. Online banks that do not have traditional branches are also beginning to open on the internet. Without a location to visit, people conduct all of their banking online.
In the future, this may become the trend. Online banking that people will do exclusively on the internet is not out of reach. These days, people can look into investing, opening up other accounts, and taking out loans without leaving their computer. There are many advantages to this form of banking. Money is transferred faster, people can check their balances within minutes, and people will no longer miss bill payments.
There are also disadvantages to operating solely on the internet. Sometimes it is necessary to talk with a banking representative in case there is a problem with the account. Being able to talk to a person face to face will help the situation. Online banking services would require that people speak through email or over the phone. Another problem is that errors concerning the amount of money that a person has in their account. Without a paper trail, the situation could be dire.
12
Online banking services still have a long way to go, but those who use them now say that it is very convenient and easy to use. People will continue visiting their bank and conducting business by talking with others. While internet banking may be more convenient, most people still feel more comfortable speaking with a person rather than typing an email or talking over the phone.
4.2 ADVANTAGES AND DISADVANTAGES OF ONLINE BANKING MANAGEMENT SYSTEM
ADVANTAGES OF ONLINE BANKING SYSTEM Convenience: Unlike your corner bank, online banking sites never close; they're available 24 hours a day, seven days a week, and they're only a mouse click away.
Ubiquity: If you're out of state or even out of the country when a money problem arises, you can log on instantly to your online bank and take care of business, 24/7.
Transaction speed: Online bank sites generally execute and confirm transactions at or quicker than ATM processing speeds.
Efficiency: You can access and manage all of your bank accounts, including IRAs, CDs, even securities, from one secure site.
Effectiveness: Many online banking sites now offer sophisticated tools, including account aggregation, stock quotes, rate alerts and portfolio managing programs to help you manage all of your assets more effectively. Most are also compatible with money managing programs such as Quicken and Microsoft Money.
DISADVANTAGES OF ONLINE BANKING SYSTEM Start-up may take time: In order to register for your bank's online program, you will probably have to provide ID and sign a form at a bank branch. If you and your spouse wish to view and manage your assets together online, one of you may have to sign a durable power of attorney before the bank will display all of your holdings together.
Learning curve: Banking sites can be difficult to navigate at first. Plan to invest some time and/or read the tutorials in order to become comfortable in your virtual lobby.
Bank site changes: Even the largest banks periodically upgrade their online programs, adding new features in unfamiliar places. In some cases, you may have to re-enter account information.
13
The trust thing: For many people, the biggest hurdle to online banking is learning to trust it. Did my transaction go through? Did I push the transfer button once or twice? Best bet: always print the transaction receipt and keep it with your bank records until it shows up on your personal site and/or your bank statement.
4.3 PURPOSE OF THE PROJECT
This software design document provides the design details of an application for online
banking management .The purpose of the project is to create a functional application to
manage the debit and credit of the cash on the basis of issued and received of cash.
This application is easy to use. It features a familiar and well through-out, an attractive
user interface, combined with insertion , searching a reporting capabilities.
• Ease and speed in the performance of your everyday banking and investment transactions, from the comfort of your home or your office, or even during your trip.• 24-hour source of knowledge and information
• Effective, high-quality and personalized coverage of your needs.
• You find the same best-of-class “personal” and high-quality service that you also enjoy at a Millennium bank branch.
• Lower cost (fees / charges) for specific transactions over the e- banking (e.g. remittances).
• No need for carrying cash
• Reduction of operational expenses and increase of availability of your company’s resources
• Full control of your accounting department
• Option for adapting e-banking to your company's needs
14
5. SOFTWARE REQUIRMENT SPECIFICATION
Software requirement specification is a document that covers all the information about
the proposed software, the requirements of the user & all the design specifications. It also
has the details of inputs & the output. The SRS is used as the backup to give the details of
the software to third party.
Requirement specification is the basic of the well challenged development process, for
the developer as well as for the customers. Software requirement specification contains
the design hints & guidelines. It is primarily concerned with functional & performance
aspects of a software product characteristics without implying how the product will
provide these characteristics. It includes externally observable characteristics of the
software product through the user display, report, formats, a summary of the user
commands, & reports option, data flow diagrams & implementing of the software. The
input for this phase of the project is study of the existing system & hours of meeting the
project office personals
5.1 EXISTING SYSTEM
The banking module of existing project is maintained in the package tally. This is one of
the banking software that is used at large scale in the industry & even in the small
organization for Banking purpose.
The project costing & budgeting modules is maintained in excel files, which contains
separate worksheets for manpower allocation, standard costs & revenues, total monthly
salary, rolling forecast. Separate files are maintained for different project according to
15
their type as well as their site allocation. The business logic involved in the evaluation of
the estimated costs & revenues of a project is also given in these worksheets.
The purpose of maintaining such sheets is to equip the decision maker at the office to
become more efficient & effective in calculating & projecting the costs & revenues of the
project concerned.
5.2 ANALYSIS OF THE EXISTING SYSTEM
Earlier existing system tally was developed for the DOS based system but the latest
version is fully suited for the windows. It does not provide the menu driven user friendly
interface.
The database used in this is file handling system. All data is stored in files. It is not so
much convenient to access the data & to maintain consistency of data. Any change at the
database level cannot be a accommodated at the lower level without affecting the user
level or higher level. Since the present system is maintained as excel files. It consumes a
lot of space on hard disk.
There is no inter relation link between the excel files & database it is using. The data to
be punched into excel file is taken from the times database & then punched manually for
each of the project for different period of time, designation wise.
There is no database as such for the project module costing & budgeting. So various
comparative studies for the project & their associated actual cost/revenues & budgeted
summaries is not easy to calculate.
The data to be punched into the manpower allocation sheet of each of the excel files, first
need a brief mapping of the roles of the employees to their designation in the company &
then accordingly their daily billing rate is to be considered.
To make the budget for a project, data is received from respective project managers in
excel file & then it is punched into the respective files.
16
5.3 DATA FLOW DIAGRAMS
Data flow diagrams for the system follow as under. These figures show how data flows in
the system. The arrows show the flow of the data from one process to another process.
Processes are shown in the ellipses & sources & sinks of the data are represented by the
rectangles & at the store in the open ended rectangles. Like flow chart, data flow
diagrams can be used at any levels of the details. They can be hierarchically decomposed
by specifying the inner working of the functional nodes using additional data flow
diagrams.
Unlike flow charts, data flow diagrams are not connected with the decision structure or
algorithm details.
The basic notation that are used to create DFD are illustrated below:-
A producer or customer of information that resides outside the bounds of the system to be
modeled.
A transformation of the information that resides within the bounds of the system to be
modeled.
17
A data item or collection of data item : The arrowhead indicates the direction of data
flow.
A respository of data that is to be stored for use by one or more process.
18
CONTEXT FLOW DIAGRAM
Architecture of Banking System
Components Of 3-Tire Architecture are :-
The 3-tiered architecture shown above has the following major components:a) Client: There will be two clients for the application. One will be a web-based user-
friendly client called bank customers. The other will be for administration purposes.
b) Application Server: It takes care of the server script, takes care of JDBC-ODBC driver, and checks for the ODBC connectivity for mapping to the database in order to fulfill client and administrator’s request.
c) Database: Database Servers will stores customer’s and bank data. Simply stated, the application works based on a request/response protocol. A client initiates a request to the server. The server responds by executing the business logic hosted inside the JSP program and if required, communicates with the Database server to fulfill a client’s request.
19
6. MODULE DESIGN
Admin
The Administrator logs in using the admin login. In this administrator has the full
authority over the software. In this System ,the administrator has the power to add or
update or delete all the details.
User
The User logs in using the User login. In this module the user can successfully enter into
the software if it is a authenticated user.
6.1 INPUT DESIGN
The design of input focuses on controlling the amount of input required, controlling the
errors, avoiding delay, avoiding extra steps and keeping the process simple. The input is
designed in such a way so that it provides security and ease of use with retaining the
privacy. Input Design considered the following things:
What data should be given as input?
How the data should be arranged or coded?
The dialog to guide the operating personnel in providing input.
Methods for preparing input validations and steps to follow when error occur.
6.2 OUTPUT DESIGN
A quality output is one, which meets the requirements of the end user and presents the
information clearly. In output design it is determined how the information is to be
displaced for immediate need and also the hard copy output. It is the most important and
direct source information to the user. Efficient and intelligent output design improves the
system’s relationship to help user decision-making.
Designing computer output should proceed in an organized, well thought out manner; the
right output must be developed while ensuring that each output element is designed so
that people will find the system can use easily and effectively. When analysis design
computer output, they should :
20
Identify the specific output that is needed to meet the requirements.
Select methods for presenting information.
Create document, report, or other formats that contain information produced by
the system.
6.3 DESIGN DOCUMENT
A database is an organized mechanism that has the capability of storing information
through which a user can retrieve stored information in an effective and efficient manner.
The data is the purpose of any database and must be protected.
The database design is a two level process. In the first step, user requirements are
gathered together and a database is designed which will meet these requirements as
clearly as possible. This step is called Information Level Design and it is taken
independent of any individual DBMS.
In the second step, this Information level design is transferred into a design for the
specific DBMS that will be used to implement the system in question. This step is called
Physical Level Design, concerned with the characteristics of the specific DBMS that will
be used. A database design runs parallel with the system design. The organization of the
data in the database is aimed to achieve the following two major objectives.
Data Integrity
Data independence
Normalization is the process of decomposing the attributes in an application, which
results in a set of tables with very simple structure. The purpose of normalization is to
make tables as simple as possible. Normalization is carried out in this system for the
following reasons.
To structure the data so that there is no repetition of data , this helps in saving.
To permit simple retrieval of data in response to query and report request.
To simplify the maintenance of the data through updates, insertions, deletions.
To reduce the need to restructure or reorganize data which new application
requirements arise.
21
6.4 RELATIONAL DATABASE MANAGEMENT SYSTEM (RDBMS)
A relational model represents the database as a collection of relations. Each relation
resembles a table of values or file of records. In formal relational model terminology, a
row is called a tuple, a column header is called an attribute and the table is called a
relation. A relational database consists of a collection of tables, each of which is assigned
a unique name. A row in a tale represents a set of related values.
6.4.1 RELATIONS, DOMAINS & ATTRIBUTES
A table is a relation. The rows in a table are called tuples. A tuple is an ordered set of n
elements. Columns are referred to as attributes. Relationships have been set between
every table in the database. This ensures both Referential and Entity Relationship
Integrity. A domain D is a set of atomic values. A common method of specifying a
domain is to specify a data type from which the data values forming the domain are
drawn. It is also useful to specify a name for the domain to help in interpreting its values.
Every value in a relation is atomic, that is not decomposable.
6.4.2- RELATIONSHIPS
Table relationships are established using Key. The two main keys of prime importance
are Primary Key & Foreign Key. Entity Integrity and Referential Integrity Relationships
can be established with these keys. Entity Integrity enforces that no Primary Key can
have null values. Referential Integrity enforces that no Primary Key can have null values.
Referential Integrity for each distinct Foreign Key value, there must exist a matching
Primary Key value in the same domain. Other key are Super Key and Candidate Keys.
Relationships have been set between every table in the database. This ensures both
Referential and Entity Relationship Integrity.
22
6.5 DATABASE TABLES
NEW ACCOUNT TABLE
Column name Data type Length Allow Null
User_name Varchar2 20 No
Password Varchar2 10 No
Re-Password Varchar2 10 No
Amount Numeric 15 No
Address Varchar2 50 No
Phone Numeric 10 No
BALANCE TABLE
Column name Data type Length Allow Null
Account no. numeric 15 No
User_name Varchar2 20 No
Password Varchar2 10 No
DEPOSIT TABLE
23
Column name Data type Length Allow Null
Account no. Numeric 15 No
User_name Varchar2 20 No
Password Varchar2 10 No
Amount Numeric 15 No
WITHDRAWN TABLE
Column name Data type Length Allow Null
Account no. numeric 10 No
User_name Varchar2 20 No
Password Varchar2 20 No
Amount Numeric 15 No
TRANSFER TABLE
24
Column name Data type Length Allow Null
Account no. numeric 15 No
User_name Varchar2 20 No
Password Varchar2 20 No
Target Account
Number
Numeric 15 No
Amount numeric 15 No
CLOSE ACCOUNT TABLE
Column name Data type Length Allow Null
Account no. Numeric 15 No
User_name Varchar2 20 No
Password Varchar2 20 No
25
INDEX FORM
26
INDEX CODING
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Global Banking ..</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function ctck()
{
var sds = document.getElementById("dum");
}
</script>
</head>
<body>
<div id="top_links">
<div id="header">
27
<h1>APANA - BANK<span class="style1"></span></h1>
<h2>ExtraOrdinary Service</h2>
<A href="index.html"><IMG SRC="images/home1.gif"></IMG></A>
</div>
<div id="navigation">
<ul>
<li><a href="create.html">NEW ACCOUNT</a></li>
<li><a href="balance1.jsp">BALANCE</a></li>
<li><a href="deposit1.jsp">DEPOSIT</a></li>
<li><a href="withdraw1.jsp">WITHDRAW</a></li>
<li><a href="transfer1.jsp">TRANSFER</a></li>
<li><a href="closeac1.jsp">CLOSE A/C</a></li>
<li><a href="about.jsp">Contact Us</a></li>
</ul>
</div>
<table style="width:897px; background:#FFFFFF; margin:0 auto;">
<tr >
<td width="300" valign="top" style="border-right:#666666 1px dotted;">
<div id="services"><h1>Services</h1><br>
<ul>
<li><a href="#">www.sbi.com</a></li>
<li><a href="#">www.indianbank.com </a></li>
<li><a href="#">www.punjabnatbank.com</a></li>
</ul>
</div>
</td>
<td width="1200" valign="top">
<%
%>
<table><%
try {
28
Connection con1=GetCon.getCon();
//PreparedStatement ps1=con1.prepareStatement("Select
max(accountno) from newaccount");
PreparedStatement ps1=con1.prepareStatement("Select
max(accountno) from newaccount");
ResultSet rs1=ps1.executeQuery();
while(rs1.next()){
int accountno=rs1.getInt(1);
request.setAttribute("accountno",accountno);
}
Integer accountno=(Integer)request.getAttribute("accountno");
Connection con=GetCon.getCon();
PreparedStatement ps=con.prepareStatement("Select * from
NEWACCOUNT where accountno='"+accountno+"'");
// ps.setInt(1,accountno);
ResultSet rs=ps.executeQuery();
out.print("<table align='left' cellspacing='5' cellpadding='5'>");
out.print("<tr><th>ACCOUNT
NO</th><th>USERNAME</th><th>PASSWORD</th><th>AMOUNT</th><th>ADDR
ESS</th><th>PHONE</th></tr>");
while(rs.next()){
session.setAttribute("accountno",accountno);
System.out.print(accountno);
out.print("<tr>");
out.print("<td>" + rs.getInt(1) + "</td>");
out.print("<td>" + rs.getString(2) + "</td>");
out.print("<td>" + rs.getString(3) + "</td>");
out.print("<td>" + rs.getInt(5) + "</td>");
out.print("<td>" + rs.getString(6) + "</td>");
29
out.print("<td>" + rs.getLong(7) + "</td>");
//out.print("<td><a href='DeleteServlet' >Delete</a></td>");
out.print("</tr>");
}
out.print("</table>");
/*out.print("<table align='right'width='40%'>");
out.print("<tr><td><a
href='Compose.html'>COMPOSE</a></td></tr>");
out.print("<tr><td><a
href='InboxServlet'>INBOX</a></td></tr>");
out.print("<tr><td><a
href='LogoutServlet'>LOGOUT</a></td></tr>");
//out.print("<tr><td><a
href='DeleteServlet'>Delete</a></td></tr>");
out.print("</table>");*/
} catch (SQLException e) {
e.printStackTrace();
}
%></table><%
%>
</table>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*" %>
<%@ page import="javax.servlet.*"%>
<%@ page import="g.*" %>
OPEN ACCOUNT FORM
30
OPEN ACCOUNT CODING
<html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Global Banking ..</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function ctck()
{
var sds = document.getElementById("dum");
}
</script>
31
</head>
<body>
<div id="top_links">
<div id="header">
<h1>APANA - BANK<span class="style1"></span></h1>
<h2>ExtraOrdinary Service</h2>
<A href="index.html"><IMG SRC="images/home1.gif"></IMG></A>
</div>
<div id="navigation">
<ul>
<li><a href="create.html">NEW ACCOUNT</a></li>
<li><a href="balance1.jsp">BALANCE</a></li>
<li><a href="deposit1.jsp">DEPOSIT</a></li>
<li><a href="withdraw1.jsp">WITHDRAW</a></li>
<li><a href="transfer1.jsp">TRANSFER</a></li>
<li><a href="closeac1.jsp">CLOSE A/C</a></li>
<li><a href="about.jsp">Contact Us</a></li>
</ul>
</div>
<table style="width:897px; background:#FFFFFF; margin:0 auto;">
<tr >
<td width="300" valign="top" style="border-right:#666666 1px dotted;">
<div id="services"><h1>Services</h1><br>
<ul>
<li><a href="#">www.javatpoint.com</a></li>
<li><a href="#">www.javacstpoint.com </a></li>
<li><a href="#">www.javatpoint.com/forum.jsp</a></li>
</ul>
</div>
</td>
32
<td width="1200" valign="top">
<%
%>
<table>
<tr>
<td align="center" valign="middle" bgcolor="red"><h4>Account
Info</h4></td>
</tr>
<tr>
<td>
<%if(request.getAttribute("balance")!=null)
{
out.print(request.getAttribute("balance"));
out.print(request.getAttribute("totaldataamount"));
}
%>
</td>
</tr</table><%
%>
</table>
</html>
BALANCE FORM
33
BALANCE CODING
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Global Banking ..</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function ctck()
{
var sds = document.getElementById("dum");
}
</script>
</head>
<body>
<div id="top_links">
34
<div id="header">
<h1>APANA - BANK<span class="style1"></span></h1>
<h2>ExtraOrdinary Service</h2>
<A href="index.html"><IMG SRC="images/home1.gif"></IMG></A>
</div>
<div id="navigation">
<ul>
<li><a href="create.html">NEW ACCOUNT</a></li>
<li><a href="balance1.jsp">BALANCE</a></li>
<li><a href="deposit1.jsp">DEPOSIT</a></li>
<li><a href="withdraw1.jsp">WITHDRAW</a></li>
<li><a href="transfer1.jsp">TRANSFER</a></li>
<li><a href="closeac1.jsp">CLOSE A/C</a></li>
<li><a href="about.jsp">Contact Us</a></li>
</ul>
</div>
<table style="width:897px; background:#FFFFFF; margin:0 auto;">
<tr >
<td width="300" valign="top" style="border-right:#666666 1px dotted;">
<div id="services"><h1>Services</h1><br>
<ul>
<li><a href="#">www.javatpoint.com</a></li>
<li><a href="#">www.javacstpoint.com </a></li>
<li><a href="#">www.javatpoint.com/forum.jsp</a></li>
</ul>
</div>
</td>
<td width="1200" valign="top">
<%
%>
35
<table><%
String num=request.getParameter("accountno");
int accountno=Integer.parseInt(num);
String username=request.getParameter("username");
String password=request.getParameter("password");
boolean status=verifyLogin1.checkLogin(accountno,username,password);
//if(status==true){
// out.print("Welcome " + username);
try {
if(status==true){
out.print("Welcome " + username);
Connection con=GetCon.getCon();
PreparedStatement ps=con.prepareStatement("Select * from
NEWACCOUNT where accountno=?");
ps.setInt(1,accountno);
ResultSet rs=ps.executeQuery();
out.print("<table align='left' cellspacing='5' cellpadding='5'>");
out.print("<tr><th>ACCOUNT
NO</th><th>USERNAME</th><th>AMOUNT</th><th>ADDRESS</th><th>PHONE
</th></tr>");
while(rs.next()){
int accountno1=rs.getInt(1);
session.setAttribute("accountno",accountno1);
System.out.print(accountno);
out.print("<tr>");
out.print("<td>" + rs.getInt(1) + "</td>");
out.print("<td>" + rs.getString(2) + "</td>");
out.print("<td>" + rs.getInt(5) + "</td>");
out.print("<td>" + rs.getString(6) + "</td>");
out.print("<td>" + rs.getInt(7) + "</td>");
out.print("</tr>");
36
}
out.print("</table>");
}
else{
out.print("Please check your username and Password");
request.setAttribute("balance","Please check your username and
Password");
%>
<jsp:forward page="balance1.jsp"></jsp:forward>
<%
}
}catch (SQLException e) {
e.printStackTrace();
}
//}
//}
%></table><%
%>
</table>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*" %>
<%@ page import="javax.servlet.*"%>
<%@ page import="g.*" %>
DEPOSIT FORM
37
DEPOSIT CODING
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Global Banking ..</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function ctck()
{
var sds = document.getElementById("dum");
}
</script>
</head>
<body>
<div id="top_links">
38
<div id="header">
<h1>APANA - BANK<span class="style1"></span></h1>
<h2>ExtraOrdinary Service</h2>
</div>
<div id="navigation">
<ul>
<li><a href="create.html">NEW ACCOUNT</a></li>
<li><a href="balance1.jsp">BALANCE</a></li>
<li><a href="deposit1.jsp">DEPOSIT</a></li>
<li><a href="withdraw1.jsp">WITHDRAW</a></li>
<li><a href="transfer1.jsp">TRANSFER</a></li>
<li><a href="closeac1.jsp">CLOSE A/C</a></li>
<li><a href="about.jsp">Contact Us</a></li>
</ul>
</div>
<table style="width:897px; background:#FFFFFF; margin:0 auto;">
<tr >
<td width="300" valign="top" style="border-right:#666666 1px dotted;">
<div id="services"><h1>Services</h1><br>
<ul>
<li><a href="#">www.javatpoint.com</a></li>
<li><a href="#">www.javacstpoint.com </a></li>
<li><a href="#">www.javatpoint.com/forum.jsp</a></li>
</ul>
</div>
</td>
<td width="1200" valign="top">
<%
%>
<table><%
39
String num=request.getParameter("accountno");
int accountno=Integer.parseInt(num);
String username=request.getParameter("username");
String password=request.getParameter("password");
String amoun=request.getParameter("amount");
int accoun=Integer.parseInt(amoun);
boolean status=verifyLogin1.checkLogin(accountno,username,password);
//if(status==true){
// out.print("Welcome " + username);
try {
if(status==true){
out.print("Welcome " + username);
Connection con=GetCon.getCon();
PreparedStatement ps=con.prepareStatement("Select * from
NEWACCOUNT where accountno=?");
ps.setInt(1,accountno);
ResultSet rs=ps.executeQuery();
int dataamount=0;
if(rs.next()){
dataamount=accoun+rs.getInt(5);
}
Connection con1=GetCon.getCon();
PreparedStatement ps1=con1.prepareStatement("update
NEWACCOUNT set amount=? where accountno='"+accountno+"'");
ps1.setInt(1,dataamount);
ps1.executeUpdate();
ResultSet rs1=ps1.executeQuery();
if(rs1.next()){
out.print("your balance has increase");
40
request.setAttribute("totaldataamount",dataamount);
request.setAttribute("balance","your balance has increase");
%>
<jsp:forward page="Totalbalance.jsp"></jsp:forward>
<%
}
}
else{
out.print("Please check your username and Password");
request.setAttribute("balance","Please check your username and
Password");
%>
<jsp:forward page="deposit1.jsp"></jsp:forward>
<%
}
}catch (SQLException e) {
e.printStackTrace();
}
%></table><%
%>
</table>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*" %>
<%@ page import="javax.servlet.*"%>
<%@ page import="g.*" %>
WITHDRAWN FORM
41
WITHDRAWN CODING
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Global Banking ..</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function ctck()
{
var sds = document.getElementById("dum");
}
</script>
42
</head>
<body>
<div id="top_links">
<div id="header">
<h1>APANA - BANK<span class="style1"></span></h1>
<h2>ExtraOrdinary Service</h2>
</div>
<div id="navigation">
<ul>
<li><a href="create.html">NEW ACCOUNT</a></li>
<li><a href="balance1.jsp">BALANCE</a></li>
<li><a href="deposit1.jsp">DEPOSIT</a></li>
<li><a href="withdraw1.jsp">WITHDRAW</a></li>
<li><a href="transfer1.jsp">TRANSFER</a></li>
<li><a href="closeac1.jsp">CLOSE A/C</a></li>
<li><a href="about.jsp">Contact Us</a></li>
</ul>
</div>
<table style="width:897px; background:#FFFFFF; margin:0 auto;">
<tr >
<td width="300" valign="top" style="border-right:#666666 1px dotted;">
<div id="services"><h1>Services</h1><br>
<ul>
<li><a href="#">www.javatpoint.com</a></li>
<li><a href="#">www.javacstpoint.com </a></li>
<li><a href="#">www.javatpoint.com/forum.jsp</a></li>
43
</ul>
</div>
</td>
<td width="1200" valign="top">
<%
%>
<table><%
String num=request.getParameter("accountno");
int accountno=Integer.parseInt(num);
String username=request.getParameter("username");
String password=request.getParameter("password");
String amoun=request.getParameter("amount");
int accoun=Integer.parseInt(amoun);
boolean status=verifyLogin1.checkLogin(accountno,username,password);
//if(status==true){
// out.print("Welcome " + username);
try {
if(status==true){
out.print("Welcome " + username);
Connection con=GetCon.getCon();
PreparedStatement ps=con.prepareStatement("Select * from
NEWACCOUNT where accountno=?");
ps.setInt(1,accountno);
ResultSet rs=ps.executeQuery();
int dataamount=0;
if(rs.next()){
dataamount=rs.getInt(5)-accoun;
44
}
Connection con1=GetCon.getCon();
PreparedStatement ps1=con1.prepareStatement("update
NEWACCOUNT set amount=? where accountno='"+accountno+"'");
ps1.setInt(1,dataamount);
ps1.executeUpdate();
ResultSet rs1=ps1.executeQuery();
if(rs1.next()){
out.print("your balance has increase");
request.setAttribute("totaldataamount",dataamount);
request.setAttribute("balance","your balance has decrease");
%>
<jsp:forward page="Totalbalance.jsp"></jsp:forward>
<%
}
/*out.print("<table align='left' width='50%' border='4'
bgcolor='###FFF'>");
out.print("<tr><th>ACCOUNT
NO</th><th>USERNAME</th><th>AMOUNT</th><th>ADDRESS</th><th>PHONE
</th></tr>");
while(rs.next()){
int accountno1=rs.getInt(1);
session.setAttribute("accountno",accountno1);
System.out.print(accountno);
out.print("<tr>");
45
out.print("<td>" + rs.getInt(1) + "</td>");
out.print("<td>" + rs.getString(2) + "</td>");
out.print("<td>" + rs.getInt(5) + "</td>");
out.print("<td>" + rs.getString(6) + "</td>");
out.print("<td>" + rs.getInt(7) + "</td>");
//out.print("<td><a href='DeleteServlet'
>Delete</a></td>");
out.print("</tr>");
}
out.print("</table>");
*/
}
else{
out.print("Please check your username and Password");
request.setAttribute("balance","Please check your username and
Password");
%>
<jsp:forward page="withdraw1.jsp"></jsp:forward>
<%
}
}catch (SQLException e) {
e.printStackTrace();
}
%></table><%
%>
46
</table>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*" %>
<%@ page import="javax.servlet.*"%>
<%@ page import="g.*" %>
TRANSFER FORM
47
TRANSFER CODING
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Global Banking ..</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function ctck()
{
var sds = document.getElementById("dum");
}
</script>
</head>
48
<body>
<div id="top_links">
<div id="header">
<h1>APANA - BANK<span class="style1"></span></h1>
<h2>ExtraOrdinary Service</h2>
</div>
<div id="navigation">
<ul>
<li><a href="create.html">NEW ACCOUNT</a></li>
<li><a href="balance1.jsp">BALANCE</a></li>
<li><a href="deposit1.jsp">DEPOSIT</a></li>
<li><a href="withdraw1.jsp">WITHDRAW</a></li>
<li><a href="transfer1.jsp">TRANSFER</a></li>
<li><a href="closeac1.jsp">CLOSE A/C</a></li>
<li><a href="about.jsp">Contact Us</a></li>
</ul>
</div>
<table style="width:897px; background:#FFFFFF; margin:0 auto;">
<tr >
<td width="300" valign="top" style="border-right:#666666 1px dotted;">
<div id="services"><h1>Services</h1><br>
<ul>
<li><a href="#">www.javatpoint.com</a></li>
<li><a href="#">www.javacstpoint.com </a></li>
<li><a href="#">www.javatpoint.com/forum.jsp</a></li>
</ul>
49
</div>
</td>
<td width="1200" valign="top">
<%
%>
<table><%
String num=request.getParameter("accountno");
int accountno=Integer.parseInt(num);
String username=request.getParameter("username");
String password=request.getParameter("password");
String num1=request.getParameter("taccountno");
int taccountno=Integer.parseInt(num1);
String amoun=request.getParameter("amount");
int accoun=Integer.parseInt(amoun);
//accountno=taccountno;
boolean status=verifyLogin1.checkLogin(accountno,username,password);
//if(status==true){
// out.print("Welcome " + username);
try {
if(status==true){
out.print("Welcome " + username);
out.print(" TARGET ACCOUNT NO DOES NOT EXSIT --> " +
taccountno);
50
%> <A
href='index.html'><IMG SRC='images/home1.gif'></IMG></A>
<%
Connection con=GetCon.getCon();
PreparedStatement ps=con.prepareStatement("Select * from
NEWACCOUNT where accountno='"+taccountno+"'");
//ps.setInt(1,accountno);
ResultSet rs=ps.executeQuery();
int dataamount=0;
if(rs.next()){
dataamount=accoun+rs.getInt(5);
}
Connection con1=GetCon.getCon();
PreparedStatement ps1=con1.prepareStatement("update
NEWACCOUNT set amount=? where accountno='"+taccountno+"'");
ps1.setInt(1,dataamount);
ps1.executeUpdate();
ResultSet rs1=ps1.executeQuery();
if(rs1.next()){}
System.out.println("data amonut"+dataamount);
request.setAttribute("target account A ",dataamount);
Connection con2=GetCon.getCon();
PreparedStatement ps2=con2.prepareStatement("Select * from
NEWACCOUNT where accountno=?");
ps2.setInt(1,accountno);
51
ResultSet rs2=ps2.executeQuery();
int dataamount1=0;
if(rs2.next()){
dataamount1=rs2.getInt(5)-accoun;
System.out.println(dataamount1);
}
Connection con3=GetCon.getCon();
PreparedStatement ps3=con3.prepareStatement("update
NEWACCOUNT set amount=? where accountno='"+accountno+"'");
ps3.setInt(1,dataamount1);
ps3.executeUpdate();
ResultSet rs3=ps3.executeQuery();
if(rs3.next()){
request.setAttribute("target account A",dataamount);
request.setAttribute("account B",dataamount1);
%>
<jsp:forward page="tbalance.jsp"></jsp:forward>
<%
}
//out.print("your balance has increase");
//request.setAttribute("totaldataamount",dataamount);
//request.setAttribute("balance","your balance has decrease");
//}
//out.print("your balance has increase");
52
//request.setAttribute("totaldataamount",dataamount);
//request.setAttribute("balance","your balance has increase");
//}
/*out.print("<table align='left' width='50%' border='4'
bgcolor='###FFF'>");
out.print("<tr><th>ACCOUNT
NO</th><th>USERNAME</th><th>AMOUNT</th><th>ADDRESS</th><th>PHONE
</th></tr>");
while(rs.next()){
int accountno1=rs.getInt(1);
session.setAttribute("accountno",accountno1);
System.out.print(accountno);
out.print("<tr>");
out.print("<td>" + rs.getInt(1) + "</td>");
out.print("<td>" + rs.getString(2) + "</td>");
out.print("<td>" + rs.getInt(5) + "</td>");
out.print("<td>" + rs.getString(6) + "</td>");
out.print("<td>" + rs.getInt(7) + "</td>");
//out.print("<td><a href='DeleteServlet'
>Delete</a></td>");
out.print("</tr>");
}
out.print("</table>");
}
else{
53
out.print("Please check your username and Password and target
accountno");
request.setAttribute("balance","Please check your username and
Password and target acountno");
%>
<jsp:forward page="transfer1.jsp"></jsp:forward>
<%
}
}catch (SQLException e) {
e.printStackTrace();
}
%></table><%
%>
</table>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*" %>
<%@ page import="javax.servlet.*"%>
<%@ page import="g.*" %>
CLOSE ACCOUNT FORM
54
CLOSE ACCOUNT CODING
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Global Banking ..</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function ctck()
{
var sds = document.getElementById("dum");
}
</script>
</head>
55
<body>
<div id="top_links">
<div id="header">
<h1>APANA - BANK<span class="style1"></span></h1>
<h2>ExtraOrdinary Service</h2>
</div>
<div id="navigation">
<ul>
<li><a href="create.html">NEW ACCOUNT</a></li>
<li><a href="balance1.jsp">BALANCE</a></li>
<li><a href="deposit1.jsp">DEPOSIT</a></li>
<li><a href="withdraw1.jsp">WITHDRAW</a></li>
<li><a href="transfer1.jsp">TRANSFER</a></li>
<li><a href="closeac1.jsp">CLOSE A/C</a></li>
<li><a href="about.jsp">Contact Us</a></li>
</ul>
</div>
<table style="width:897px; background:#FFFFFF; margin:0 auto;">
<tr >
<td width="300" valign="top" style="border-right:#666666 1px dotted;">
<div id="services"><h1>Services</h1><br>
<ul>
<li><a href="#">www.javatpoint.com</a></li>
<li><a href="#">www.javacstpoint.com </a></li>
<li><a href="#">www.javatpoint.com/forum.jsp</a></li>
</ul>
</div>
</td>
<td width="1200" valign="top">
56
<%
%>
<table><%
String num=request.getParameter("accountno");
int accountno=Integer.parseInt(num);
String username=request.getParameter("username");
String password=request.getParameter("password");
boolean status=verifyLogin1.checkLogin(accountno,username,password);
//if(status==true){
// out.print("Welcome " + username);
try {
if(status==true){
out.print("Welcome " + username);
Connection con=GetCon.getCon();
PreparedStatement ps=con.prepareStatement("delete from
NEWACCOUNT where accountno='"+accountno+"'");
//ps.setInt(1,accountno);
ps.executeUpdate();
out.print(" your account no '"+accountno+"'
has closed.");
out.print(" <A
href='index.html'><IMG SRC='images/home1.gif'></IMG></A>");
}
else{
out.print("Please check your username and Password");
57
request.setAttribute("balance","Please check your username and
Password");
%>
<jsp:forward page="closeac1.jsp"></jsp:forward>
<%
}
}catch (SQLException e) {
e.printStackTrace();
}
%></table><%
%>
</table>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*" %>
<%@ page import="javax.servlet.*"%>
<%@ page import="g.*" %>
8. TESTING METHODOLOGY
58
Software Testing is the process of executing software in a controlled manner, in order to
answer the question - Does the software behave as specified?. Software testing is often
used in association with the terms verification and validation. Validation is the checking
or testing of items, includes software, for conformance and consistency with an
associated specification. Software testing is just one kind of verification, which also uses
techniques such as reviews, analysis, inspections, and walkthroughs. Validation is the
process of checking that what has been specified is what the user actually wanted.
Validation : Are we doing the right job?
Verification : Are we doing the job right?
Software testing should not be confused with debugging. Debugging is the process of
analyzing and localizing bugs when software does not behave as expected. Although the
identification of some bugs will be obvious from playing with the software, a methodical
approach to software testing is a much more thorough means for identifying bugs.
Debugging is therefore an activity which supports testing, but cannot replace testing.
Other activities which are often associated with software testing are static analysis and
dynamic analysis. Static analysis investigates the source code of software, looking for
problems and gathering metrics without actually executing the code. Dynamic analysis
looks at the behavior of software while it is executing, to provide information such as
execution traces, timing profiles, and test coverage information.
Testing is a set of activity that can be planned in advanced and conducted systematically.
Testing begins at the module level and work towards the integration of entire computers
based system. Nothing is complete without testing, as it vital success of the system
testing objectives, there are several rules that can serve as testing objectives.
Testing is a process of executing a program with the intend of finding an error. A good
test case is one that has high possibility of finding an undiscovered error. A successful
test is one that uncovers an undiscovered error.
If a testing is conducted successfully according to the objectives as stated above, it would
uncovered errors in the software also testing demonstrate that the software function
59
appear to be working according to the specification, that performance requirement appear
to have been met.
There are three ways to test program.
For correctness
For implementation efficiency
For computational complexity
Test for correctness are supposed to verify that a program does exactly what it was
designed to do. This is much more difficult than it may at first appear, especially for large
programs.
Here the System testing involved is the most widely used testing
process consisting of five stages as shown in the figure. In general, the
sequence of testing activities is component testing, integration testing, and
then user testing. However, as defects are discovered at any one stage, they
require program modifications to correct them and this may require other
stages in the testing process to be repeated.
8.1 TEST PLAN
A test plan implies a series of desired course of action to be followed in accomplishing
various testing methods. The Test Plan acts as a blue print for the action that is to be
followed. The software engineers create a computer program, its documentation and
related data structures. The software developers is always responsible for testing the
individual units of the programs, ensuring that each performs the function for which it
was designed. There is an independent test group (ITG) which is to remove the inherent
problems associated with letting the builder to test the thing that has been built. The
specific objectives of testing should be stated in measurable terms. So that the mean time
to failure, the cost to find and fix the defects, remaining defect density or frequency of
occurrence and test work-hours per regression test all should be stated within the test
plan.
The levels of testing include:
60
Unit testing
Integration Testing
Data validation Testing
Output Testing
8.1.1 UNIT TESTING
Unit testing focuses verification effort on the smallest unit of software design – the
software component or module. Using the component level design description as a guide,
important control paths are tested to uncover errors within the boundary of the module.
The relative complexity of tests and uncovered scope established for unit testing. The unit
testing is white-box oriented, and step can be conducted in parallel for multiple
components. The modular interface is tested to ensure that information properly flows
into and out of the program unit under test. The local data structure is examined to ensure
that data stored temporarily maintains its integrity during all steps in an algorithm’s
execution. Boundary conditions are tested to ensure that all statements in a module have
been executed at least once. Finally, all error handling paths are tested.
Tests of data flow across a module interface are required before any other test is initiated.
If data do not enter and exit properly, all other tests are moot. Selective testing of
execution paths is an essential task during the unit test. Good design dictates that error
conditions be anticipated and error handling paths set up to reroute or cleanly terminate
processing when an error does occur. Boundary testing is the last task of unit testing step.
Software often fails at its boundaries.
Unit testing was done in Sell-Soft System by treating each module as separate entity and
testing each one of them with a wide spectrum of test inputs. Some flaws in the internal
logic of the modules were found and were rectified.
8.1.2 INTEGRATION TESTING
61
Integration testing is systematic technique for constructing the program structure while at
the same time conducting tests to uncover errors associated with interfacing. The
objective is to take unit tested components and build a program structure that has been
dictated by design. The entire program is tested as whole. Correction is difficult because
isolation of causes is complicated by vast expanse of entire program. Once these errors
are corrected, new ones appear and the process continues in a seemingly endless loop.
After unit testing in Sell-Soft System all the modules were integrated to test for any
inconsistencies in the interfaces. Moreover differences in program structures were
removed and a unique program structure was evolved.
8.1.3 VALIDATION TESTING OR SYSTEM TESTING
This is the final step in testing. In this the entire system was tested as a whole with all
forms, code, modules and class modules. This form of testing is popularly known as
Black Box testing or System testing.
Black Box testing method focuses on the functional requirements of the software. That
is, Black Box testing enables the software engineer to derive sets of input conditions that
will fully exercise all functional requirements for a program.
Black Box testing attempts to find errors in the following categories; incorrect or missing
functions, interface errors, errors in data structures or external data access, performance
errors and initialization errors and termination errors.
62
(Component testing) (Integration testing) (User testing)
8.1.4 OUTPUT TESTING OR USER ACCEPTANCE TESTING
The system considered is tested for user acceptance; here it should satisfy the firm’s
need. The software should keep in touch with perspective system; user at the time of
developing and making changes whenever required. This done with respect to the
following points
Input Screen Designs,
Output Screen Designs,
Online message to guide the user and the like.
The above testing is done taking various kinds of test data. Preparation of test data plays
a vital role in the system testing. After preparing the test data, the system under study is
tested using that test data. While testing the system by which test data errors are again
uncovered and corrected by using above testing steps and corrections are also noted for
future use.
63
Unit testing
Module testing
Acceptance testing
Sub-system testing
System testing
TESTING OBJECTIVES:
The main objective of testing is to uncover a host of errors, systematically and
with minimum effort and time. Stating formally, we can say,
Testing is a process of executing a program with the intent of finding an
error.
A successful test is one that uncovers an as yet undiscovered error.
A good test case is one that has a high probability of finding error, if it
exists.
The tests are inadequate to detect possibly present errors.
The software more or less confirms to the quality and reliable standards.
8.2 TRAINING
Once the system is successfully developed the next important step is to ensure that the
administrators are well trained to handle the system. This is because the success of a
system invariably depends on how they are operated and used. The implementation
depends upon the right people being at the right place at the right time. Education
involves creating the right atmosphere and motivating the user. The administrators are
familiarized with the run procedures of the system, working through the sequence of
activities on an ongoing basis.
Implementation is the state in the project where the theoretical design is turned into a
working system. By this, the users get the confidence that the system will work
effectively. The system can be implemented only after through testing.
The systems personnel check the feasibility of the system. The actual data were inputted
to the system and the working of the system was closely monitored. The master option
was selected from the main menu and the actual data were input through the
corresponding input screens. The data movement was studied and found to be correct
64
queries option was then selected and this contains various reports. Utilities provide
various data needed for inventory was input and the module was test run. Satisfactory
results were obtained. Reports related to these processes were also successfully
generated. Various input screen formats are listed in the appendix.
Implementation walkthroughs ensure that the completed system actually solves the
original problem. This walkthrough occurs just before the system goes into use, and it
should include careful review of all manuals, training materials and system
documentation. Again, users, the analyst and the members of the computer services staff
may attend this meeting.
9. LIMITATION OF PROJECT
In this world everything has its own limitations. And limitation in a project is quite
obvious. Even famous software's and operating systems have its own limitations. For
65
example win3.x does not support USB port. So it's limitation of win3x that it does not
support USB port. Due to shortage of time this project has some limitation. Some of them
are as follows: In this project a book code cannot be more than 500. So it's a limitation of
this project that this system cannot maintain more than 500books.Same with member, a
member number cannot be more than 500No checks have been made in relation to the
entry of duplicate records in book section. This limitation is also present in the function
when we create new members. And there are some other limitations, which will be faced
by USER when he/she will use this project.
10. FUTURE APPLICATION OF THE PROJECT
66
A software package should always have wide scope to be modified for future
aspects.
That is, the system should be flexible enough to accommodate changes.
The system can be made more users friendly by introducing various features into
it.
Customer information, bill generation form and installment entry form can be
further improved by introducing some more facilities in them.
Printing facilities can be added in report section also. Some more ways of query
can be added according to the need.
As the objective of the project work was to computerize the customer details,
finance agreement system as well as installment payment system, so this will help
the user easy access to the records and to maintain the director’s and accountant’s
queries in an efficient manner. This can be achieved by this software to some
extent.
11. CONCLUSION
67
At last I can believe that I have achieved the goal of successful completion of my project
to greater extent. And I can say that my commitment and hard work will not go waste.
I met some stages where I was not in the situation of even thinking but the timely
assistance from the Faculty’s inspired me a lot and I along with my hard work have
landed to a safe place.
So, the new system that we have developed will work properly as we have taken into
consideration each and every aspect of the society and the management. We hope it will
help them a lot for the proper functioning and will consume less time.
12. BIBLIOGRAPHY
BOOKS:
68
Ivor Horton (2007) ‘ Beginning java’
The complete reference (2007) ‘herbert Schildit’ Tata McGraw Hill
Ian Somerville ‘Software engineering
Elmasri Navathe ‘Fundamentals of database systems’
69