Sunteți pe pagina 1din 78

CHAPTER 1

INTRODUCTION
Today many banks offer Internet banking services, which enable you to manage all aspects of
your account on the web. Some banks are pure Internet banks but in this work is done by the
employee and user also can fetch their account information and can transfer the money to the
different (other) account no. When deciding on an Internet banking account, you should consider
factors such as minimum balance requirements, monthly maintenance fees.

This website is open into three modes.

1. User
2. Employee
3. Administrator

In user mode user only can access the information about the own account & transfer the money
to the other account from self account.

In employee mode

 Employee can open an account


 Employee can access all account information but can’t get the account no.
 Employee can access individual account with the help of account no.
 Employee can transfer money from one account to other account but user have to give the
account no from which money is detected & account no in which money is added.
 Employee can deposit or withdraw money from an account.

1.1 Background of the problem


The main objective of our project is to automate process of banking which covers all the
banking processes like:
1. Opening new accounts for Customers

2. Transactions.

3. Update Accounts.

4. Maintaining security password information on customers.

1
1.2Problem Statement

Online banking System allows customers of a financial institution to conduct financial


transactions on a secure website operated by the institution, which can be a retail or virtual bank,
credit union or building society.

To access a financial institution's online banking facility, a customer having personal Internet
access must register with the institution for the service, and set up some password (under various
names) for customer verification. The password for online banking is normally not the same as
for telephone banking. Financial institutions now routinely allocate customer numbers (also
under various names), whether or not customers intend to access their online banking facility.
Customer numbers are normally not the same as account numbers, because a number of accounts
can be linked to the one customer number. The customer will link to the customer number any of
those accounts which the customer controls, which may be cheque, savings, loan, credit card and
other accounts.

To access online banking, the customer would go to the financial institution's website, and enter
the online banking facility using the customer number and password. Some financial institutions
have set up additional security steps for access, but there is no consistency to the approach
adopted.

1.3Purpose of the project


The main purpose of this project is to make an online banking system where services
are provided to users at their doorsteps. In this online banking system mainly each and
every user is given an id and password. Using this id and password user can log in to
his own account. User can see details of his account as well as can perform transactions.
Such as depositing a money in his account etc.

1.4Scope of the project


Scope of this project is very wide. It aims for providing services to all the customers at
their doorsteps.

2
CHAPTER 2
REQUIREMENT ANALYSIS

2.1 Feasibility Study


Feasibility study is the determination whether or not a project is worth doing. The process
followed in making this is called feasibility study. When the developer is building any system,
he/she should make sure that the system he/she is going to build is feasible. Since the
feasibility study may lead to commitment of large resources, it becomes necessary that it
should be conducted competently and that no fundamental errors of judgment are made.
Three important test of feasibility are described below:
When complex problems and opportunities are to be defined, it is generally desirable to
conduct a preliminary investigation called feasibility study. Feasibility study involves
investigating the information needs of the prospective end users and the objectives, constraints,
basic resource requirements, costs, benefits and feasibility of a proposed project, by intent, the
feasibility study is very rough analysis of the viability of the project. It is, however, a highly
desirable checkpoint that should be completed before committing more resources.
The outcome of the feasibility study is very clear. So depending upon the aspect on which
feasibility is being done is categorized into following classes:-
 Technical feasibility
 Economical feasibility
 Operational feasibility
 Time feasibility

2.1.1 Technical Feasibility Study

This involves questions such as whether the technology needed for the system exists, how
difficult it will be to build, and whether the firm has enough experience using that technology.
The assessment is based on an outline design of system requirements in terms of Input, Output,
Fields, Programs, and Procedures. This can be qualified in terms of volumes of data, trends,
frequency of updating, etc.

3
Technical Feasibility is concerned with the availability and capability of hardware, software and
people. In Technical Feasibility Study we studied on those facts that are covering the whole
technological facts such as:
 Hardware requirement specification
 Software requirement specification
 Technology used
 Whether the required technology is available or nor?
 Whether the required resources are available-

2.1.2Economical Feasibility Study

It is the most frequently used method for evaluating the effectiveness of the system. The
procedure is to determine the benefits and savings that are expected from the system in
comparison with the cost involved. If the benefits outweigh the cost, then system is said to be
economically feasible. Economic analysis is the most frequently used technique for evaluating
the effectiveness of a proposed system.

2.1.3Operational Feasibility Study

It is mainly related to human organizational and political aspects. For operational feasibility
study we appointed a small group of people, which included the office employees. This group
worked with the new system and found that the system was very user friendly, and very
efficient. It was found that no special training was required to operate the system. The burden
of the project manager who wants to give the issue to other employees and other staff members
was reduced. It takes about 5 minutes to enter the issue details as compared to the 30-40
minute of the manual system. And the employees found that they can prepare the statistical
reports with more speed, accuracy and in very less time.

2.1.4Time Feasibility Study

Time feasibility is a determination of whether a proposed project can be implemented fully


within a stipulated time frame. If a project takes too much time it is likely to be rejected.

4
2.2Software Specifications

 GUI : HTML,JSP
 Language : Ad-java
 DBMS : SQL Server 2005
 Operating System : Microsoft Windows XP
 Application : Banking
 Documentation : Microsoft Word 2007
 Image Processor : Microsoft Paint
 Software : Net beans 6.1,Jdk 1.6

2.3 Hardware Specifications


 Processor : Pentium IV
 Memory : 1GB
 Hard disk : 160 GB
 Keyboard : Multimedia(104 keys)
 Mouse : 3 Button scroll
 Monitor : 17” Color Monitor
 Screen Resolution : 800 X 600 Pixels

5
CHAPTER 3
REQUIREMENT PROCESS

The goal of requirement process is to create and maintain a system requirement document. The
overall process includes the high level requirement engineering sub process. They are some
sub process which is given below:
3.1 Requirement Specification
 Interview
 Studying the existing system
 Brain storming
3.2 Requirement Analysis
 Anomaly
 Inconsistency
 Incompleteness
3.3 Requirement Elicitation

Requirement specification is a final work product produce by software engineer.


The SRS document should clear the following aspect of system.
 Functional requirement
 Non Functional requirement
3.4 Requirement Validation
 Omission
 Incorrect fact
 Ambiguity

6
CHAPTER 4
SYSTEM DESIGN

System design take place when specification phase is completed and approved by customer .
4.1 ER Diagram
ER diagram stands for entity-relationship diagram,It is a graphical representation of entities
and their relationships to each other.
There are three basic elements in ER models:
a) Entities are the "things" about which we seek information.

b) Attributes are the data we collect about the entities.


c) Relationships provide the structure needed to draw information from multiple entities.

7
4.2DFD
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system. A DFD shows what kinds of data will be input to and output from the
system, where the data will come from and go to, and where the data will be stored. It does not
show information about the timing of processes, or information about whether processes will
operate in sequence or in parallel (which is shown on a flowchart). A Data Flow Diagram
(DFD) is also known as a Process Model. Process Modeling is an analysis technique used to
capture the flow of inputs through a system (or group of processes) to their resulting output. On
the context diagram (also known as the 'Level 0 DFD') the system's interactions with the
outside world are modeled purely in terms of data flows across the system boundary.
This context-level DFD is next "exploded", to produce a Level 1 DFD that shows some of the
detail of the system being modeled. The Level 1 DFD shows how the system is divided into
sub-systems (processes), each of which deals with one or more of the data flows to or from an
external agent, and which together provide all of the functionality of the system as a whole.

4.2.1 0-Level DFD

8
4.2.21-Level DFD

USER User _id Access Acc.


& password
Authentication

Transaction

Data base

Data base
Emp _id
EMPLOYEE & password
Banking Authentication Access Info.

Update
Data base Account

Admin _id Data base


& password
ADMINISTRATOR Authentication Access Info.

Data base

9
CHAPTER 5
DATABASE DESIGN

5.1Table name: login


TABLE NAME:login
TABLE DESCRIPTION:It keeps the customers id and password that helps the bank to
authenticate the customers.

Login table Type Constraint


Id Int Auto generated
Login_id Varchar(30) Primary key
Password Varchar(40) Not null
Type Varchar(15) Not null

5.2Table name: accounts

TABLE NAME:accounts
TABLE DESCRIPTION: It keeps the information of all the opened accounts in the bank.

Accounts Table Type Constraint


Id Integer Auto generated
Accountno Varchar(30) Unique
name Varchar(30) Not null
Address Varchar(40)
Balance Integer

10
5.3Table name: accountbyemp

TABLE NAME:accountbyemp
TABLE DESCRIPTION:It keeps the information of all the transactions in the bank.

Accounts Table Type Constraint


Tranid Integer Auto generated
Fromacc Varchar(30)
toacc Varchar(30)
Trantype Varchar(20)
Amount Integer
Date,month,year Date

11
CHAPTER 6
CODING AND WEB PAGES

6.1 Login page : index.html


It is the main starting page of this project. Note that there are three types of people who can login
into a bank account and each having a login id and password. These are
 Employee: one who is the employee of the bank.
 Administrator: one who is the owner.
 User: one who has an account in the bank.

12
CODING:
<!--
Document : index
Created on : Jul 25, 2011, 4:57:46 PM
Author : ajay
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><link rel="stylesheet" type="text/css" href="ex.css">

<title>oNLINE BANKING</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body><hr>

<table width="100%" border=0 cellpadding=0 align="center">


<tr><td><p><img src="online-banking.jpg" height="125">
<b>Project on online banking</b></p>
</td>
</tr>
<tr><td><hr>
<table border= ><tr>
<td width="200">
<img src="banking.jpg" height=100 width=100>
<br>
<div id="coolmenu">
<a href="AboutUs.html">About Us</a>
<a href="ContactUs.html">Contact us</a>

<a href="SafeBanking.html">Safe banking</a>


</div>

13
</td>
<td width="800">
<form action="login" method="post">
<center>
<table border="1" >
<tr align="center" >
<td><p>Login:</td><td><input type="text" name="loginid" </td></tr>
<tr ><td><p>Password:</td><td><input type="password" name="password" ></td></tr>
<tr><td><p>Type:</td><td><select name="type" >

<option name="1">User</option>
<option name="2">Employee</option>
<option name="3">Administrator</option>
</select></td></tr>
</table><br><br>
<input type="submit" value="Login">
</center>
</form>
</td>
<td width="200">
<img src="First-Direct-Online-Banking-5.jpg" width="100" height="100" />
</td>
</tr></table>
</td>
</tr>
</table>

</body>
</html>

6.1.1login page: login.java

14
On clicking on login button on the page index.html it will bring you to this servlet page
login.java .

CODING

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

import java.io.*;

import java.net.*;

import java.sql.*;

import javax.servlet.*;

import javax.servlet.http.*;

import java.util.*;

/**

* @author Administrator

*/

public class login extends HttpServlet {

/**

15
* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.

* @param request servlet request

* @param response servlet response

*/

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

String loginid=request.getParameter("loginid");

String password=request.getParameter("password");

String type=request.getParameter("type");

LinkedList abc=new LinkedList();

request.setAttribute("abc",abc);

response.setContentType("text/html;charset=UTF-8");

PrintWriter out = response.getWriter();

try

{ out.println("<html><input type=hidden name=loginname value="+loginid.toString()+">");

16
out.println("<link rel=stylesheet type=text/css href=ex.css> ");

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con= DriverManager.getConnection("jdbc:odbc:onlinebank");

PreparedStatement stmt=con.prepareStatement("select * from login where loginid=? and


password=? and type=?");

stmt.setString(1,loginid);

stmt.setString(2,password);

stmt.setString(3,type.toLowerCase());

ResultSet rs=stmt.executeQuery();

if(rs.next())

{abc.add("<input type=hidden name=loginname value="+loginid+">");

if(type.contentEquals("Employee"))

abc.add("<CENTER><H2>WELCOME EMPLOYEE!!<H2><BR></CENTER>");

RequestDispatcher view= request.getRequestDispatcher("employee");

view.forward(request, response);

if(type.contentEquals("User"))

17
abc.add("<CENTER><H2>WELCOME USER!!<H2><BR></CENTER>");

RequestDispatcher view2= request.getRequestDispatcher("user");

view2.forward(request, response);

if(type.contentEquals("Administrator"))

abc.add("<CENTER><H2>WELCOME ADMINISTRATOR!!<H2><BR></CENTER>");

RequestDispatcher view1= request.getRequestDispatcher("administrator");

view1.forward(request, response);

out.println("</html>");

if(!rs.next())

{out.println("<p>invalid login id and password!!!!");}

catch(Exception e)

finally {

18
out.close();

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the


left to edit the code.">

/**

* Handles the HTTP <code>GET</code> method.

* @param request servlet request

* @param response servlet response

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

* Handles the HTTP <code>POST</code> method.

* @param request servlet request

* @param response servlet response

19
*/

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

* Returns a short description of the servlet.

*/

public String getServletInfo() {

return "Short description";

// </editor-fold>

20
6.1.1.1Administrator page: administrator.java

When you choose ‘administrator’ option in the drop down menu, login button will bring you to
this page administrator.java .

CODING

21
/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

import java.io.*;

import java.net.*;

import java.util.*;

import javax.servlet.*;

import javax.servlet.http.*;

/**

* @author Administrator

*/

public class administrator extends HttpServlet {

/**

* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.

* @param request servlet request

* @param response servlet response

*/

22
protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

String loginname=request.getParameter("loginid");

LinkedList e =(LinkedList)request.getAttribute("abc");

Iterator iter=e.iterator();

response.setContentType("text/html;charset=UTF-8");

PrintWriter out = response.getWriter();

try {

while(iter.hasNext())

out.println(iter.next());

out.println("<html>");

out.println("<head>");

out.println("<title>Administrator</title>");

out.println("<link rel=stylesheet type=text/css href=ex.css>");

out.println("</head>");

23
out.println("<body>");

out.println("welcome "+loginname);

out.println("<div id=coolmenu><a href=open_account.html> open new account</a>");

out.println("<a href=List_of_acc>List of accounts</a>");

out.println("<a href=individual.html>Individual account</a>");

out.println("<a href=transactn.html>Daily transcation</a>");

out.println("<a href=edit_acc.html>Edit account</a>");

out.println("<a href=show >Show all userid and password</a>");

out.println("<a href=index.html>Exit</a>");

out.println("</div></body>");

out.println("</html>");

} finally {

out.close();

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the


left to edit the code.">

/**

24
* Handles the HTTP <code>GET</code> method.

* @param request servlet request

* @param response servlet response

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

* Handles the HTTP <code>POST</code> method.

* @param request servlet request

* @param response servlet response

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

* Returns a short description of the servlet.

25
*/

public String getServletInfo() {

return "Short description";

// </editor-fold>

6.1.1.2Employee page: employee.java

When you choose ‘employee’ option in the drop down menu, login button will bring you to this
page employee.java .

26
CODING
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import java.io.*;
import java.net.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

27
/**
*
* @author Administrator
*/
public class employee extends HttpServlet {
/**

6.1.1.3User page: user.java

When you chose ‘user’ option in the drop down menu login button will bring you to this page
user.java .

CODING
28
/*

* To change this template, choose Tools | Templates

* and

6.1.2 : Open Account: open_account.html

After getting into one of the three accounts,

 Employee
29
 Administrator
 User

On clicking open account link you will get above page for creating a new account.

CODING

<!--

Document : open new account

Created on : Jul 12, 2011, 5:59:11 PM

Author : Administrator

-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>Open page of User</title>

<link rel="stylesheet" type="text/css" href="ex.css">

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>

<body>

<form action="open_acc" method="post">

30
<center><p>

<table>

<tr>

<

CODING

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

31
*/

import java.io.*;

import java.net.*;

import java.sql.*;

out.println("<td>");out.println("balance");

out.println("</td>");

out.println("</tr>");

while(rs.next())

out.println("<tr>");

out.println("<td>");

out.println(rs.getString(2).toString());

out.println("</td>");

out.println("<td>");

* Handles the HTTP <code>POST</code> method.

* @param

// </editor-fold>

32
}

6.1.4 : Individual Account Information: individual.html

On clicking individual account link you will get this page individual.html , which shows the
transactions done by each account individually.

CODING

<!--

Document : individual

Created on : Aug 2, 2011, 8:58:20 AM

Author : apeksha

-->

33
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>individual account details</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<link rel="stylesheet" type="text/css" href="ex.css">

</head>

<body>

<form action="individual" method="post">

Enter accountno:<input type="text" name="accountno" onfocus></input><br><br>

Enter date from:

<center>

Enter date:<input type="text" name="fromdate" value="1" ></input>

Enter month

34
CODING

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

import java.io.*;

import java.net.*;

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the


left to edit the code.">

/**

* Handles the HTTP <code>GET</code> method.

35
* @param request servlet request

* @param response servlet response

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

// </editor-fold>

6.1.5 : Daily Transaction: transactn.html

What type of transaction you want to do on your account out of these

 Deposit money
 Withdraw money
 Transfer money

36
CODING

<!--

Document : transactn

Created on : Aug 8, 2011, 3:52:11 PM

Author : apeksha

-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head><link rel="stylesheet" type="text/css" href="ex.css">

<title>Transaction</title>

37
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>

<body><p><form action="Transaction" method="post"><br><br><center>

<p> From account no: <input type="text" name="accountno"><br>

<p>enter your name: <input type="text" name="nm">

<p>Enter Transaction type:<select name=type>

<option>Deposit</option><option>Transfer</option><option>Withdraw</option></select>

<input type=submit value=ok name=ok>

<p>

</center></form></body>

</html>

6.1.5.1 : transaction.java

Servlet page for processing of actual transfer of money.

38
CODING

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

import java.io.*;

import java.net.*;

import java.sql.*;

import javax.servlet.*;

import javax.servlet.http.*;

39
/**

* @author apeksha

*/

public class Transaction extends HttpServlet {

/**

* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.

* @param request servlet request

* @param response servlet response

*/

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

String type=request.getParameter("type");

String accountno=request.getParameter("accountno");

String nm=request.getParameter("nm");

response.setContentType("text/html;charset=UTF-8");

PrintWriter out = response.getWriter();

//String action;

try {

40
if(accountno.isEmpty()){out.println("<p>Please enter account no!!");}

if(nm.isEmpty()){out.println("<p>Please enter your name!!");}

out.println("<html>");

out.println("<head><link rel=stylesheet type=text/css href=ex.css>");

out.println("<title>welcome "+ nm+"</title>");

out.println("</head>");

out.println("<body>");

out.println("<h1>account no :"+accountno+"</h1>");

out.println("<form action=TransactionS method=post>");

out.println("<p>to Accountno :" +

" <input type=text name=toacc> "+

"<p>from account no<input type=text name=accountno value="+accountno+" disabled=true >


"+

"<input type=hidden name=type value="+type+"> "+

"<input type=hidden name=fromacc value="+accountno+"> "+

"<input type=hidden name=nm value="+nm+"> "+

"<p>enter amount: <input type=text name=amount > "+

" <input type=submit name=ok value=ok> ");

out.println("</form>");

41
out.println("</body>");

out.println("</html>");

} finally {

out.close();

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the


left to edit the code.">

/**

* Handles the HTTP <code>GET</code> method.

* @param request servlet request

* @param response servlet response

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

* Handles the HTTP <code>POST</code> method.

42
* @param request servlet request

* @param response servlet response

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

* Returns a short description of the servlet.

*/

public String getServletInfo() {

return "Short description";

// </editor-fold>

43
6.1.6 : Edit Account: edit_acc.html

For editing account information.

CODING

<!--

Document : edit_acc

Created on : Aug 2, 2011, 9:18:27 AM

Author : apeksha

-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head><link rel="stylesheet" type="text/css" href="ex.css">

44
<title>edit account</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>

<body><form action="edit_account.html" method="post">

<input type="submit" value="edit account information">

</form><form action="closeacc" method="post">

<input type="submit" value="disable account ">

</form>

<form action="OpenAccountInfo" method="post" >

<input type="submit" value="open account information">

</form>

<form action="index.html" method="post">

<input type="submit" value="exit ">

</form>

</body>

</html>

45
6.1.6.1 : Edit Account Information: edit_account.html

Name of the account whose information you want to edit.

CODING

<!--

Document : edit_acc

Created on : Aug 2, 2011, 9:18:27 AM

Author : apeksha

-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

46
<head><link rel="stylesheet" type="text/css" href="ex.css">

<title>edit account</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>

<body><form action="edit_account.html" method="post">

<input type="submit" value="edit account information">

</form><form action="closeacc" method="post">

<input type="submit" value="disable account ">

</form>

<form action="OpenAccountInfo" method="post" >

<input type="submit" value="open account information">

</form>

<form action="index.html" method="post">

<input type="submit" value="exit ">

</form>

</body>

</html>

47
6.1.6.1.1 : edit_acc.java

Servlet page for processing information editing of any account.

CODING

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

import java.io.*;

import java.net.*;

import java.sql.*;

import javax.servlet.*;

48
import javax.servlet.http.*;

/**

* @author apeksha

*/

public class edit_acc extends HttpServlet {

/**

* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.

* @param request servlet request

* @param response servlet response

*/

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

String accountno=request.getParameter("accountno");

response.setContentType("text/html;charset=UTF-8");

PrintWriter out = response.getWriter();

try { //coding of inserting into table

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con= DriverManager.getConnection("jdbc:odbc:onlinebank");

49
PreparedStatement stmt=con.prepareStatement("select name,address,balance from accounts
where accountno=?");

stmt.setString(1,accountno);

ResultSet rs=stmt.executeQuery();

out.println("<html>");

out.println("<head>");

out.println("<link rel=stylesheet type=text/css href=ex.css>");

out.println("<title>Servlet edit_acc</title>");

out.println("</head>");

out.println("<body>");

if(rs.next()){

out.println("<form action=edit method=post>");

out.println("accoutno:");

out.println("<input type= text name=account value="+accountno+"


disabled=true><br>");

out.println("name:");

out.println("<input type= text name=nm value="+rs.getString(1)+"><br>");

out.println("address:");

out.println("<input type= text name=address value="+rs.getString(2)+"><br>");

out.println("balance:");

50
out.println("<input type=text name=balance value="+rs.getInt(3) +" disabled=true><br>"

+" <input type=hidden name=accountno value="+accountno+">");

out.println("<input type=submit value=ok>");

out.println("</form>");

}else{

out.println("<p>Invalid accoutno!!");

out.println("<form action=edit_account.html>");

out.println("<input type=submit value=cancel>");

out.println("</form>");

out.println("</body>");

out.println("</html>");

} catch(Exception e){}

finally {

out.close();

51
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the
left to edit the code.">

/**

* Handles the HTTP <code>GET</code> method.

* @param request servlet request

* @param response servlet response

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

/**

* Handles the HTTP <code>POST</code> method.

* @param request servlet request

* @param response servlet response

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

52
}

/**

* Returns a short description of the servlet.

*/

public String getServletInfo() {

return "Short description";

// </editor-fold>

6.1.6.2 : Delete/disable Account: closeacc.java

For closing any account.

53
CODING

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

import java.io.*;

import java.net.*;

import javax.servlet.*;

import javax.servlet.http.*;

/**

* @author apeksha

*/

public class closeacc extends HttpServlet {

/**

* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.

* @param request servlet request

* @param response servlet response

54
*/

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html;charset=UTF-8");

PrintWriter out = response.getWriter();

try {out.println("<html>");

out.println("<head>");

out.println("<title>Servlet Close_acc</title>");

out.println("<link rel=stylesheet type=text/css href=ex.css>");

out.println("</head>");

out.println("<body>");

out.println("<form action=deleteacc method=post>");

out.println(" enter accountno: <input type=text name=accountno > ");

out.println("<input type=submit value=ok >");

out.println("</form>");

out.println("</body>");

out.println("</html>");

} finally {

out.close();

55
}

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the


left to edit the code.">

/**

* Handles the HTTP <code>GET</code> method.

6.1.7 : Show All user id and passwords: show.java

CODING

/*

* To change this template, choose Tools | Templates

56
* and open the template in the editor.

*/import java.io.*;

import java.net.*;

import java.sql.*;

import javax.servlet.*;

import javax.servlet.http.*;

/**

* @author apeksha

*/

public class show extends HttpServlet {

/**

* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.

* @param request servlet request

* @param response servlet response

*/

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

57
throws ServletException, IOException {

response.setContentType("text/html;charset=UTF-8");

PrintWriter out = response.getWriter();

try {

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con= DriverManager.getConnection("jdbc:odbc:onlinebank");

PreparedStatement stmt=con.prepareStatement("select * from login ");

ResultSet rs=stmt.executeQuery();

out.println("<html>");

out.println("<head>");

out.println("<link rel=stylesheet type=text/css href=ex.css>");

out.println("<title>account info</title>");

out.println("</head>");

out.println("<body>");

out.println("<table border=1 bgcolor=pink>");

out.println("<tr>");

out.println("<td>loginid");

out.println("</td>");

out.println("<td>password");

58
out.println("</td>");

out.println("<td>type");

out.println("</td>");

out.println("</tr>");

while(rs.next())

out.println("<tr>");

out.println("<td>");

out.println(rs.getString(2));

out.println("</td>");

out.println("<td>");

out.println(rs.getString(3));

out.println("</td>");

out.println("<td>");

out.println(rs.getString(4));

out.println("</td>");

out.println("</tr>");

out.println("</table>");

59
out.println("</body>");

out.println("</html>");

/* TODO output your page here

out.println("<html>");

out.println("<head>");

out.println("<title>Servlet show</title>");

out.println("</head>");

out.println("<body>");

out.println("<h1>Servlet show at " + request.getContextPath () + "</h1>");

out.println("</body>");

out.println("</html>");

*/

} catch(Exception e){}finally {

out.close();

} // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign


on the left to edit the code.">

/**

* Handles the HTTP <code>GET</code> method.

60
* @param request servlet request

* @param response servlet response

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

} /**

* Handles the HTTP <code>POST</code> method.

* @param request servlet request

* @param response servlet response

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

processRequest(request, response);

} /**

* Returns a short description of the servlet.

*/

public String getServletInfo() {

return "Short description";

61
}

// </editor-fold>

6.1.8 : Exit

Leads to finally login page.

6.2 About Us

62
CODING

<!--

Document : AboutUs

Created on : Jul 31, 2011, 1:26:20 PM

Author : apeksha

-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<link rel="stylesheet" type="text/css" href="ex.css">

<title>About Us</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>

<body>

<h1 align="center" >Online Bank</h1>

<h2 align="center" >ABOUT US</h2>

<hr>

<p align="justify" title="about us" > This online Bank is one of the India's most popular bank
with total assets of Rs. 4,062.34 billion (US$ 91 billion) at March 31, 2011 and profit after tax
Rs. 51.51 billion (US$ 1,155 million) for the year ended March 31, 2011.

63
<hr>

<p>The Bank has a network of 2,533 branches and 6,503 ATMs in India, and has a presence in
19 countries, including India.

<hr>

<p> Bank offers a wide range of banking products and financial services to corporate and retail
customers through a variety of delivery channels and through its specialised subsidiaries in the
areas of investment banking, venture capital and asset management.

<hr>

<p>The Bank currently has subsidiaries in the United Kingdom, Russia and Canada, branches in
United States, Singapore, Bahrain, Hong Kong, Sri Lanka, Qatar and Dubai International
Finance Centre and representative offices in United Arab Emirates, China, South Africa,
Bangladesh, Thailand, Malaysia and Indonesia. Our UK subsidiary has established branches in
Belgium and Germany.

Its equity shares are listed in India on Bombay Stock Exchange and the National Stock Exchange
of India Limited and its American Depositary Receipts (ADRs) are listed on the New York Stock
Exchange (NYSE).

<h5>Board of Directors</h5>

ICICI Bank's Board members include eminent individuals with a wealth of experience in
international business, management consulting, banking and financial services.

.........................................................

<h5>Career Opportunities</h5>

Explore diverse openings with India's most popular bank.

64
Learn moreAwards

Time and again our innovative banking services has been recognized and rewarded world over.

.........................................................

</body>

</html>

6.3 Contact Us

CODING

65
<!--

Document : ContactUs

Created on : Aug 1, 2011, 8:13:45 PM

Author : apeksha

-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head><link rel="stylesheet" type="text/css" href="ex.css">

<title>Safe Banking</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>

<body>

<h1 align="center" >Online Bank</h1>

<h2 align="center" >CONTACT US</h2>

<hr>

<p>You can contact us on any of our email id given below

<h3>Our email id is :</h3>

<h5>help@onlinebank.com</h5>

<h5>customerCare@onlinebank.com</h5>

66
<p> you can contact us by phone nos...

<hr>

<h3>Our phone nos is(for India only) :</h3>

<h5>09312693459</h5>

<h5>09312693458</h5>

</body>

</html>

6.4 Safe Banking

67
CODING
<!--
Document : SafeBanking
Created on : Aug 1, 2011, 8:19:22 PM
Author : apeksha
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="ex.css">
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>

68
<body>

<h1 align="center" >Online Bank</h1>


<h2 align="center" >SAFE BANKING</h2>
<hr>
<H6>How to link your Bank account</H6>

<H4>Steps to Login</H4>
<P>You will receive two pin mailers from this Online Bank<BR>
Internet Banking User id, <BR>
Login password and Transaction password.<BR>
<UL>
<LI>Check that the pin mailers arrive in a sealed condition, else please contact our 24 hour
Customer Care Centre.</LI>
<LI>After you get the Key,enter it in the user id and password on the website and press
LOGIN.</LI>
<li>After you request for a new password, the system would prompt for change in passwords.
</li>
<li>Your password should be atleast 8 characters long.</li>
<li>We recommend you to change both transaction and login password.</li>
<li>Passwords are case sensitive. <li>
<LI>Your internet banking account is locked in case you enter wrong user id and password 3
times. </LI>
<LI>Always log out of ONLINEBANK.COM when you have finished your
activities.</LI></UL>
<A HREF="index.html">Login</A>

<h3>Maximise Internet Banking Security</h3>


The following information is provided as a guide to assist you in protecting the information on
your computer. It is not an exhaustive list and is intended for information purposes only.
<ul>

69
<li>You need to enter your Internet Banking User id and password each time you access your
internet banking account. Since your access is protected by this password it is very important that
you protect your password, by making it known ONLY to you.
</li>
<li>The system prompts you to change the password on first time login. We recommend that you
change both login and transaction password.
</li>
<li>Your password should be atleast 8 characters long. Passwords are case sensitive.
</li>
<li>Do not use your date of birth, telephone number, address, your name or the name of a friend
or relative in your password.
</li>
<li>Your internet banking account is locked in case you enter wrong user id and password 3
times.
</li>
<li>Passwords are case sensitive.
</li>
<li>Change your password regularly.
</li>
<li>Ensure that you are not observed while entering the password.
</li>
<li>Never leave your computer unattended while you are logged in to onlineBank.com
</li>
<li>Always logoff from Internet Banking upon completion of your session. Use the Logout
button for closing the session. It is preferable not to shut the window to log off.
</li>
<li>Disable the option on browsers for storing user names and passwords. You can refer to the
help section available on your browser for instructions</li>
</ul>

</body>

70
</html>

71
CHAPTER 7
TEST PLAN
Software testing is an activity performs to uncover the error and it is a critical element of
software quality assurance and represents the ultimate review of software specification, design
and coding. Hence the importance of software testing and its implications with respect to
software quality can’t be overemphasized. It is used to detect errors. Testing is a dynamic
method for verification and validation, where the system to be tested is executed and the
behavior of the system is observed

7.1 Objectives of Testing


 Minimum cost in the maintenance because error may be reduces in testing.
 Minimum chance of failure.
 Testing is a process of executing a program with the intent of finding an error.
 A good test case is one that has a high probability of finding an as-yet-
undiscovered error.
7.2Types of Testing
7.2.1 Unit Testing
Unit testing focuses verification effort on the smallest unit of software design module. Using
the detailed description as a guide, important control paths are tested to uncover errors within
the boundary of the module. The various modules that have undergone types of input data were
given to ensure the consistency of the module and to ensure that information properly flows
into and out of the program unit under test. The database integrity is validated during all steps
in the execution.

7.2.2Integration Testing

Integration testing is a 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 modules and build a program structure that has been detected by design. There
are two types of integration testing namely, Top-Down Integration and Bottom-Up

72
Integration. For the system a combination of both the types known as Sandwich Testing has
been used. The Top-Down Integration was used during the integration of the various Masters
and the Bottom-up Integration method was used during the integration of the various modules
of the process generation and the report generation.

7.2.3Validation Testing

Once the software was completely assembled as a package; interface errors uncovered and
corrected, final series of software tests for validity of the software was carried out. Module
interfaces (Graphical User Interfaces developed in a Visual Environment) were also tested for
proper working of the windows, pull-down menus, mouse operations, data entry using these
interfaces, and the report formats. At the end of this testing phase, it was ensured that the
function or performance characteristics of the software conform to the specifications provided
by the management and hence are accepted.
A series of these acceptance tests of the system were carried out at the place
where this software system was developed (Alpha Testing) in a natural setting
and in a controlled environment. The client was called over for testing the
software and “by looking over the shoulder” of the client/user of the system, all
the errors and usage problems were recorded and corrected. Later this software application
was put on live testing (Beta Testing) for the client in its original environment. (i.e., at the
office of the company).During this phase, it was ensured that all elements of the software
configuration have been properly developed, are catalogued, and have the necessary detail to
support the maintenance phase of the software life cycle (Configuration Review).

7.2.4Black Box 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 conditions 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 methodsBlack-Box Testing attempts to find errors in the following
categories:

73
 Incorrect or missing functions.
 Interface errors.
 Errors in data structures or external data base access.
 Performance errors.
 Initialization and termination errors.

Unlike White Box Testing, which is performed early in the testing process, Black Box Testing
tends to be applied during later stages of testing. Because Black Box Testing purposely
disregards control structure, attention is focused on the information domain

7.2.5White Box Testing

White Box Testing knowing the internal workings of a product tests can be conducted to
ensure that internal operations are performed according to specifications and all internal
components have been adequately exercised.Using white box testing methods the test cases
that can derived are:

 All independent paths with in a module have been exercised at least once.

 Exercise all logical decisions on their true and false sides.

 Execute all loops at their boundaries and within their operational bounds.

 Exercise internal data structures to ensure their validity.

74
CHAPTER 8
MAINTAINANCE
7.1 Need of Maintenance

For correct fact


 Improve the quality of project.
 User satisfaction.
 To add new feature.

7.1 Types of Maintainance


There are four categories of maintenance: corrective, adaptive, perfective & preventive.

2.2.1 Corrective Maintainance

Reactive modification of a software product performed after delivery to correct discovered


problems.

2.2.1 Adaptive Maintainance

Modification of a software product performed after delivery to keep a software product usable
in a changed or changing environment.

2.2.1 Perfective Maintainance

Modification of a software product after delivery to improve performance or maintainability.

2.2.1 Preventive Maintainance

Modification of a software product after delivery to detect and correct latent faults in the
software product before them become effective faults.

75
CHAPTER 9
CONCLUSION

In final project we will try to expand the scope of the project as much as we can. In
addition to providing all necessary features of a browser we will also try to add some new
features to this so that we can make it more preferable to others. In spite of having a short period
of time and a challenging environment to cope with, we are concentrating on building a efficient
and preferable proxy server application, that can suitably meet its requirements, what it meant
for. Now a day’s all banks are moving towards E-banking solution.

76
BIBLIOGRAPHY
 Executive editors: Alain Abran, James W. Moore; editors Pierre Bourque, Robert Dupuis,
ed (March 2005). "Chapter 2: Software Requirements". Guide to the software
engineering body of knowledge (2004 ed.). Los Alamitos, CA: IEEE Computer Society
Press. ISBN 0-7695-2330-7. Retrieved 2007-02-08. "It is widely acknowledged within
the software industry that software engineering projects are critically vulnerable when
these activities are performed poorly."
 Wiegers, Karl E. (2003). Software Requirements (2nd ed.). Redmond, WA: Microsoft
Press. ISBN 0-7356-1879-8.
 Phillip A. Laplante (2007) What Every Engineer Should Know about Software
Engineering. Page 44.^SYSTEMS ANALYSIS
 Requirements Engineering A good practice guide, Ian Sommerville and Pete Sawyer,
John Wiley and Sons, 1997
 Company, People's Computer (1987). "Dr. Dobb's journal of software tools for the
professional programmer". Dr. Dobb's journal of software tools for the professional
programmer (M&T Pub) 12 (1–6): 116.
 Kolawa, Adam; Huizinga, Dorota (2007). Automated Defect Prevention: Best Practices
in Software Management. Wiley-IEEE Computer Society Press. pp. 41–43.
 Laycock, G. T. (1993) (PostScript). The Theory and Practice of Specification Based
Software Testing. Dept of Computer Science, Sheffield University, UK. Retrieved 2008-
02-13

77
References:

 Systems Analysis, Modelling and Prediction (SAMP), University of Oxford


 Software Requirement Analysis using UML article by Dhiraj Shetty.
 Introduction to Social Macrodynamics
 A useful set of guides and a case study about the practical application of business and
systems analysis methods
 Complete online tutorial for system analysis and design
 A comprehensive description of the discipline of systems analysis from Simmons
College, Boston, MA, USA (www.simmons.edu)
 Systems Analysis: An Executive Summary (www.systemsanalyst.com)
 http://en.wikipedia.org/wiki/Requirements_elicitation
 http://en.wikipedia.org/wiki/Requirements_analysis

78

S-ar putea să vă placă și