Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Acknowledgement
Though the words are not enough to express our gratitude to all
those who have contributed in the design of our project “Internet
Banking” . We thank Pro. Waman Parulekar, our project guide, for her
exclusive guidance on the topic we are working with there were times
seemed too vast to be done but he made us endure such times with his
words of encouragement. It was he who organized our team efforts and
explored radical solutions.
I express my sincere thanks to Mr. Vikram Chavan at Pinnacle
solutions, Andheri. For there valuable guidance in completion of
project . In spite of his busy schedule he constantly made himself
available to me whenever I have difficulties. His timely suggestion and
constant encouragement helped me in completing this project
successfully.
We should also like to express our sincere gratitude to our
honourable Head Of Department Prof. Tejas V Joshi Sir for the
encouragement and facilities provided to us.
We honourable thank our entire MCA department lab In-Charge
and assistants who have willingly co-operated with us in resolving our
queries and providing us with all the required help and favour on time.
Last but not the least , we want to thank the reviewers who
worked so hard for us. Reviewing a work in progress is not easy, but
we were lucky enough to have reviewers with broad perspectives an in-
depth knowledge. We should like to thanks the reviewers who include:
- Prof. Tejas V. Joshi (HOD)
Prof .Waman Parulekar (Project Guide)
1 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Index
Sr. No
Title Page no
1 IntroductionCompany Profie
2 Abstract3 Review Of Literature
3.1 What is internet banking3.2 Why internet banking3.3 Existing system
4 Problem definition5 Theoretical Background
5.1 Overview of front end5.2 Overview of back end5.3 Methodology5.4 Software and hardware requirement
6 System DesignUse case diagramClass diagramActivity diagramsequence diagramComponent diagramDeployment diagram
7 System analysisGantt chart
8 Input and output screenDatabase
9 System testing10 Limitations and future enhancement11 Conclusion12 Bibliography
2 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Company Profile
Pinnacle, is a software development firm specializing in staff
augmentation/staff selection, solution development, solution
outsourcing. Pinnacle, assists our clients in defining, evaluating,
selecting, and implementing solutions that advance the goal and
objectives of their company, creating a competitive advantage.
Pinnacle, consultants are highly qualified professionals whose skills
provide value, quality, and exceptional performance. Pinnacle, team
has the breadth of services and technical savvy to help our clients
conceive, execute and support integrated solutions from browser portal
all the way through to their core enterprise and legacy systems. Our
employees are driven to deliver results and are the primary way in
which customers benefit from Pinnacle, for their staff augmentation and
selection needs.
Pinnacle, strives to be the best information systems consulting,
software development and permanent placement firm in the business.
We pride ourselves on our relationships with all of our customers, and
the value we bring to each relationship.
Pinnacle Solutions is a software development firm spread across
various sectors like Banking and Financial, Manufacturing , Healthcare
and Telecom.
Pinnacle Solutions is a global services provider delivering technology-
driven business solutions that meet the strategic objectives of our
clients. Pinnacle Solutions has expertise in creating solutions around
specific needs of industries. Pinnacle Solutions delivers unmatched
business value to customers through a combination of process
excellence, quality frameworks and service delivery innovation.
3 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Introduction
The main purpose that banks have been serving since
their inception is keeping our money safe for us. While keeping our
money safe, they also let us earn a certain amount of interest on the
money deposited with them. Traditional banks have been doing this,
and internet banks continue the same function. The only difference is in
the way the transactions are made.
We all know about internet banking and most of us use it
quite often as well, but few of us actually understand about the history
of internet banking and how it all came out. Knowing the history of
internet banking can be incredibly useful, especially since it will allow
us to have more respect for the little things that we take for granted.
Computers themselves have really come an enormous way
since their initial establishment, as the earliest electronic computers
were so large that they would take up the entire area of a room, while
today some are so small that they can hardly be seen at all.
In today's world, computers play an incredibly large role in
the way the world exists in general, and the majority of tasks could
actually not be completed if not for the use of computers. Although
there are certainly some areas and jobs that cannot yet be completed
solely by computers and which thus still require actual manpower, for
the most part, computers have helped to make life significantly easier,
productive, and more convenient for us all.
Internet banking has been around for quite a few years now,
but has really only become prominent over the past year or so in
particular. Internet banking offers an array of different advantages to
the user, including: account balances and history including year-to-date
information, the ability to transfer money from one account to another
and to payees for bill payments, check history, reorders, and stop
4 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
payments, check credit card balances and statements, complete online
loan applications, secure interactive messaging with staff, and much
more.
Internet banking basically allows you to be able to do
everything that you can in your regular banking institution, only with the
benefit that you can do it all right from the convenience of your own
home. Not only is this great because you can be comfortable and have
peace of mind knowing that you can keep track yourself of all your
banking issues, but as well it allows for more ease because you never
have to worry about rushing out and making it to the bank.
PURPOSE OF THE STUDY
The aim of this project is to develop a secured online
banking system with the following objectives:
Create a banking system that is easily accessible by customers
from the comfort of their homes, offices etc.
Reduce the flow of human traffic and long queues at banks
Reduce the time wasted in going to banks to stay on queues.
Promote efficient and effective banking for the banks by
focusing on those services that still require physical presence at
the banking hall.
FEATURES OF ONLINE BANKING
Today, online banking services are quite varied. One of the
best features of online banking is putting the user in control. The user
controls all bill paying, transfers, and investments, Apply for loan from
home.
5 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
There are other features, though of online banking. One of
these is increased accessibility to your account information. Users of
online banking services can access their account information from
anywhere in the world! This is particularly helpful for businesses.
Internet business banking is becoming increasingly popular, as
businesses are becoming more global in their reach. Now business
people can access their accounts, even when on overseas business
trips. Business Internet banking is extremely popular for this reason.
A particularly popular aspect of online banking services is
the ability to make bill payments electronically. With a minimum degree
of set-up, customers can enter the amounts of their paper bills (or opt
to receive electronic bills) and process all their payments at one time,
from one screen.
SCOPE
An online banking system will be applicable everywhere,
where banking exists. It will be more efficient and easier way to have a
record on systems through which everyone can easily access it
according to his rights as compared to the traditional banking system.
Every bank will prefer the online banking system instead of the
traditional banking system as it contains many useful features and
fastest methods for the transactions.
6 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Abstract
The advent of internet and the popularity of personal computers
presented both an opportunity and a challenge for the banking industry.
For years, financial institutions have used powerful computer
networks to automate millions of daily transactions; today, often the
only paper record is the customer’s receipt at the point of sale. Now
that its customers are connected to the Internet via personal
computers, banks envision similar economic advantages by adapting
those same internal electronic processes to home use.
Banks view online banking as a powerful value added tool to
attract and retain new customers while helping to eliminate costly
paper handling and teller interactions in an increasingly competitive
banking environment.
Online banking is not out to change your money habits. Instead,
it uses today’s computer technology to give you the option of bypassing
the time-consuming, paper –based aspects of traditional banking in
order to manage your finances more quickly and efficiently.
Most of the large banks now offer fully secure, fully functional
online banking for free or small fee. Some smaller banks offer limited
access or functionality; for instance, you may be able to view your
account balance and history but not initiate transactions online. As
more banks succeed online and more customers use their sites, fully
functional online banking likely will become as common place as
automated teller machines.
7 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Advantage of online banking
Convenience:
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
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 IRA’s, CD’s, even securities, from one secure site.
Disadvantage of online banking:
Learning curve:
Banking sites can be difficult to navigate at first. Plan to invest
sometime and/or read the tutorials in order to become comfortable in
your virtual lobby.
Bank sites changes:
Even the largest bank periodically upgrade there online
programs, adding new features in unfamiliar places. In some cases,
you may have to re-enter account information.
8 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
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? 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.
Existing System:
Existing system is the traditional banking, where
customers have to go through the long queue, time wasted and still
wouldn’t have access to efficient and effective banking system.
Proposed System
Considering the stress and time taken to go to bank and
do transaction. The development of a well structure and secured online
banking system will allow customer to perform objectives like, creating
a banking system that is easily accessible by customers from the
comfort of their homes, offices 24/7. Reduce the flow of human traffic
and long queues at banks; Promote efficient and effective banking for
the banks by focusing on those services that still require physical
presence at the banking hall. Keep a detailed log of customer
transactions with the bank on his account. Generate the statement of
account of a selected period of time for customers. And Provide a
customer relationship services
9 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Theoretical background
The objective of this project is to develop an online transaction
web application. In the system the customer adds other account to his
for transferring money to others account. All that process has done
online. This process is more faster than ATM process.
The dynamic approach:
Jsp :
Java server pages is a technology for developing web pages
that include dynamic content. Unlike a plain HTML page, which
contains static content that always remains the same, a JSP page can
change its content based on any number of variable items, including
the identity of the user, the user’s browser type, information provided
by the user, and selections made by the user.
Java Server Pages (JSP) technology enables Web developers
and designers to rapidly develop and easily maintain, information-rich,
dynamic web pages that leverage existing business systems. As a part
of the java technology family, JSP technology enables rapid
development of Web-based applications that are platform independent.
JSP technology separates the user interface from content generation,
enabling designers to change the overall page layout without altering
the underlying dynamic content.
The JSP technology – which abstracts servlets to a higher level
– is an open, freely available specification developed by Sun
Microsystems as an alternative to Microsoft’s ASP technology, and a
key component of the java 2 Enterprise Edition (J2EE) specifications.
10 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
When a JSP is called, it will be compiled into a java servlet. At
this point the servlet engine, just like any other servlet, handles the
servlet. The servlet engine then loads the servlet class and executes it
to create dynamic HTML to be sent to the browser. The servlet creates
any necessary object, and writes any object as a string to an output
stream to the browser.
Servlets:
Java servlets are more efficient, easier to use, more
powerful, more portable, safer, and cheaper than traditional CGI-like
technologies. With traditional CGI, a new process is started for each
HTTP request. If the CGI program itself is relatively short.
The overhead of starting the process can dominate the
execution time. With servlets, the Java Virtual machine stays running
and handles each request with a lightweight Java thread, not a
heavyweight operating system process. Similarly, In traditional CGI, if
there are N request to the same CGI program is loaded into memory N
times. With servlets, however, there would br N threads, but only a
single copy of servlet class would be loaded. This approach reduces
server memory requirements and saves time by instantiating fewer
objects. Finally, when a CGI program finishes handling a request, the
program terminates.
The approach makes it difficult to cache computations,
keep database connection open, and perform other optimizations that
rely on persistent data. Servlets, however, remain in memory even
after they complete a response, so it is straightforward to store
arbitrarily complex data between client requests.
11 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Servlets have extensive infrastructure for automatically
parsing and decoding HTML form data, reading and setting HTTP
headers, handling cookies, tracking sessions, and many other such
high-level utilities.
My SQL server:
The My SQL database has become the world’s most popular
open source database because of its consistent fast performance, high
reliability and ease of use. It’s used in more than 10 million installations
ranging from large corporations to specialized embedded applications
on every continent in the world.
Not only is My SQL the world’s most popular open source
database, it’s also become the database of choice for a new generation
of applications built on the LAMP stack (Linux, Apache, My SQL, PHP /
Perl /Python.) My SQL runs on more than 20 platforms including Linux,
Windows, OS/X, HP-UX, AIX, Netware, giving you the kind of flexibility
that puts you in control.
Whether you’re new to database technology or an experienced
developer or DBA, MY SQL offers a comprehensive range of certified
software, support, training and consulting to make you successful.
Apache Tomcat ( Server )
Apache Tomcat is an open software implementation of the Java
Servlet and Java Server Pages technologies. The Java Servlet and
Java Server Pages specifications are developed under the Java
Community Process.
12 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Apache Tomcat is developed in an open and participatory
environment and released under the Apache License version 2.
Apache Tomcat is intended to be a collaboration of the best – of –
breed developers from around the world. We invite you to participate in
this open development project. To learn more about getting involved,
click here.
Apache Tomcat powers numerous large-scale, mission-critical
web applications across a diverse range of industries and
organizations. Some of these users and their stories are listed on the
Powered By wiki page.
Apache Tomcat, Tomcat, Apache, the Apache feather and the
Apache Tomcat project logo are trademarks of the Apache Software
Foundation.
Over the last ten years, legacy proprietary application servers
have become exceedingly complex due to the continual addition of so
many niche features. As a result, IT is challenged to meet the short
project deployment schedules their businesses demand. And while the
functionality of these application servers has increased, so has the
price even when most of the new features may have no immediate
value to the business. While a few mission-critical, enterprise-wide
deployments rely on the high-value features of expensive, proprietary
web.
13 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Highlights:
Enables rapid deployment of departmental projects with
scalability for high-volume, mission-critical applications.
Provides the most complete open-source stack for web
application platforms.
Is easy to acquire, easy to install, and easy to use.
Accommodations all levels of enterprises – large Fortune 500
companies, small and medium businesses, start-ups and small
departments within an enterprise.
Offers flexible, subscription based pricing.
My SQL Connector/J
The My SQL Connector/J is required for the JDBC
implementation for communicating with My SQL servers.
My SQL provides connectivity for client application developed in
the Java programming language via a JDBC driver, which is called My
SQL Connector/J.
My SQL Connector/J is a JDBC Type 4 driver. Different versions
are available that are compatible with the JDBC-3.0 and JDBC-4.0
specifications. The Type 4 designation means that the driver is pure-
Java implementations of the My SQL protocol and does not rely on the
My SQL client libraries.
14 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
MVC
The main aim of the MVC architecture is to separate the
business logic and application data from the presentation data to the
user.
Here are the reasons why we should use the MVC design
pattern.
1. They are reusable : When the problems recurs, there is no
need to invent a new solution, we just have to follow the
pattern and adapt it as necessary.
2. They are expressive : By using the MVC design pattern our
application becomes more expressive.
1) Model
The model object knows about all the data that
need to be displayed. It is model who is aware about all the
operations that can be applied to transform that object. It
only represents the data of an application. The model
represents enterprise data and the business rules that
govern access to and updates of this data. Model is not
aware about the presentation data and how that data will be
displayed to the browser.
2) View
The view represents the presentation of the
application. The view object refers to the model. It uses the
query methods of the model to obtain the contents and
renders it. The view is not dependant on the application
15 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
logic. It remains same if we can say that it is the
responsibility of the view’s to maintain the consistency in its
presentation when the model changes.
3) Controller :
Whenever the user sends a request for
something then it always go through the controller. The
controller is responsible for intercepting the requests from
view and passes it to the model for the appropriate action.
After the action has been taken on the data, the controller is
responsible for directing the appropriate view to the user. In
GUI’s the views and the controllers often work very closely
together.
MVC Overview
Flexibility in large component based systems raise
questions on how to organize a project for easy development and
maintenance while protecting your data and reputation, especially from
new developers and unwitting users. The answer is in using the Model,
View, Control (MVC) architecture. An architecture such as MVC is a
design pattern that describes a recurring problem and its solution
where the solution is never exactly the same for every recurrence.
To use the Model-View-Controller MVC paradigm
effectively you must understand the division of labor within the MVC
triad. You also must understand how the three parts of the triad
communicate with each other and with other active views and
controllers; the sharing of a single mouse, keyboard and display screen
among several applications demands commission and co-operation. To
make the best use of the MVC paradigm you need also to learn about
16 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
the available subclasses of view and Controller which provide ready
made starting points for your applications.
In the MVC design pattern, application flow is mediated
by a central controller. The controller delegates requests to an
appropriate handler. The controller is the means by which the user
interacts with the web application. The controller is responsible for the
input to the model. A pure GUI controller accepts input from the user
and instructs the model and viewport to perform action based on that
input. If an invalid input is sent to the controller from the view, the
model informs the controller to direct the view that error occurred and
to tell it to try again.
A web application controller can be thought of as
specialised view Since it has visual aspect . it would be actually be one
or more HTML forms in a web application and therefore the model
can also dictate what the controller should display as input the
controller should produce HTML to allow the user input query to the
web application the controller would add the necessary
parameterisation of the individual form element so that the servlet can
observe the input this is different from a GUI, actually back-to- front ,
where the controller is waiting and acting on event-driven input from
mouse or graphics tablet.
The controller adapts the request to the model. The
model represents, or encapsulates, an application’s business logic or
State. It captures not only the state of a process or system, but also
How the system works . It notifies any observer when back through the
controller to then any of the data has changed the model would
execute the database query for example.
Control is then usually forwarded back through the
controller to the appropriate view. The view is responsible for the
output of the model. A pure GUI view attaches to a model and renders
17 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
its contents to the display surface in addition when the model changes,
the viewport automatically redraws the affected part of image to reflect
this changes. A web application view just transforms the state of model
into readable HTML. The forwarding can be implemented by lookup in
a mapping in either a database or a file. These provides a loose
coupling between the model and the view, which can make an
application much easier to write and maintain.
Diagram :
By dividing the web application into a Model, View and Controller we
can therefore, separate the presentation from the business logic. If the
MVC architecture is designed purely, then a Model can have multiple
views and controller. Also note that the model does not necessary have
to be a Java servlet. In fact a single Java Servlet can offer multiple
models. The Java Servlet is when you would place security login, user
authentication and database pooling for example. After all these latter
have nothing to do with the business logic of the web application or the
presentation.
18 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
MVC in Java Server Pages
Now that we can have a convenient architecture to
separate the view, how can we leverage that? Java Server Pages
(JSP) becomes more interesting because the HTML content can be
separated from the Java business objects. JSP can also make use of
Java Beans. The business logic could be placed inside Java Beans. If
the design is architected correctly, a web Designer could work with
HTML on the JSP site without interfering the Java developer.
The Model/View/Controller architecture also works with
JSP. In fact it makes the initial implementation a little easier to write.
The controller object is master Servlet, Every request goes through the
controller who retrieves the necessary model object. The model may
interact with other business entities such as database or Enterprise
Java Beans(EJB). The model object sends the output results back to
the controller. The controller takes the result and places it inside the
web browser session and forwards a redirect request to a particular
Java Server Page.
The controller has to bind a model and a view, but it
could be any model and associated any view. There in lies the flexibility
and perhaps an insight to developing a very advanced dynamic
controller that associates models to a view.
The prior sections have concentrated on their being one
controller, one model and one view. In practice, multiple controllers
may exist – but only one controls a sections of the application at a time.
For example, the administrator’s functions may be controlled by one
controller and the main logic is controlled by another. Since only one
controller can be in control at a given time, they must communicate.
There may also be multiple models – but the controller takes the
19 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
simplified view presentation and maps it to the models appropriately
and also translates that response back to the view. The view never
needs to know how the logic is implemented.
The case for separating presentation and logic
Decoupling data presentation and the program
implementation becomes beneficial since a change to one does not
affect the other. This implies that both can be developed separately
from the other: a division of labor. The look and feel the web
application, the fronts, the colour and the layout can be revised without
having to change any java code. As it should be. Similarly if the
business logic in application changes, for instance to improve
performance and reliability, then this should not cause change in the
presentation.
A model- view – controller based web application
written with only java Servlets would give this decoupling. If the
presentation changed then the java code that generates the HTML, the
presentation in the view object only has to change.
Similarly if the business logic changed then only the
model object has to change. A web application built with MVC and
java server pages would be slightly easier if the business logic is
contained only in java beans. The presentation (JSP) should only
access these beans through custom tag libraries. This means that the
Java Beans did not have Java code that wrote HTML. Your beans
would only concern themselves with the business logic and not the
presentation. The JSP would get the data from the Beans and then
display the presentation ( the “view” ). Decoupling is therefore easy. A
change to the implementation only necessitates changes to the Java
Beans. A change to the presentation only concern changes to the
20 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
relevant Java Server Page. With Java Server Pages a web designer
who knows nothing about java can concentrate on the HTML layout,
look and feel. While a Java developer can concentrate on the Java
Beans and the core logic of the web application.
Advantages of model 2 architecture
Since there is no presentation logic in JSP, there
are no scriptlets. This means lesser nightmares. [Note that although
Model 2 is directed towards elimination of scriptlets, it does not
architecturellly prevent you from adding scriptlets. This has led to
widespread misuse of Model 2 architecture.]
With MVC you can have as many controller servlets
in your web application. In fact you can have one Controller Servlet per
module. However there are several advantages of having a single
controller servlet for the entire web application. In a typical web
application, there are several tasks that you want to do for every
incoming request. For instance, you have to check if the user
requesting an operation is authorized to do so. You also want to log
the user’s entry and exit from the web application for every request.
You might like to centralize the logic for dispatching requests to other
views. The list goes on. If you have several controller servlets, chances
are that you have to duplicate the logic for all the above logic for all the
above tasks in all those places. A single controller servlet for the web
application lets you centralize all the tasks in a single place. Elegant
code and easier to maintain.
21 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Web applications based on Model 2 architecture are
easier to maintain and extend since the views do not refer to each
other and there is no presentation logic in the views. It also allows you
to clearly define the roles and responsibilities in large projects thus
allowing better co-ordination among team members.
Diagram
Methodology
Software development Model
22 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
The Spiral Model
The Spiral model is an evolutionary software process
that couples the iterative nature of prototyping with the controlled and
systematic aspects of the linear requital model. It provides the potential
for rapid development of incremental versions of the software. Using
the spiral model, software is developed in a series of incremental
releases.
Diagram :
23 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
A process model for software engineering is chosen based on the
nature of the project and application, the methods and tools to be used
and controls and deliverables that are required.
Production Management System is developed by
adopting the spiral model. The spiral model follows the iterative
approach. A spiral is divided into number of framework activities or task
regions. Production Management System is carried out in following
phases :
1] Liaison ( Customer communication ) :
Tasks required establishing effective communication between
developer and customer.
2] Planning :
Tasks required defining resources, timelines and other projects related
information.
3] Risk Analysis :
Tasks required assessing technical, risk and cost tasks.
4] Engineering :
Tasks required to asses both technical and management tasks.
5] Construction and release :
Tasks required constructing, testing, installing and providing users
support.
6] System evalution :
Tasks required obtaining customer feedback on evalution of the
software representations created during the engineering stage and
implemented during the installation stage.
24 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
The steps in the spiral model can be generalized as follows :
The new system requirements are defined in as much detail as
possible. This usually involves interviewing a number of users
representing all the external or internal users and other aspects
of the existing system.
A preliminary design is created for the new system.
A first prototype of the new system is constructed from the
preliminary design. This is usually a scale-down system and
represents an approximation of the characteristics of the final
product.
A second prototype is evolved by fourfold procedure :
1] Evaluating the first prototype in terms of its strengths,
weaknesses and risks.
2] Defining the requirements of the second prototype.
3] Planning and designing the second prototype.
4] Constructing and testing the second prototype.
At the customer’s option, the entire project can be
aborted if the risk is deemed too great. Risk factors might
involve development cost overruns, operating cost
miscalculation, or any other factor that could in
customer’s judgment, result in ales-than-satisfactory final
product
.
The existing prototype is evaluated in the same manner
as was the previous prototype, and if necessary, another
prototype is developed from it according to the fourfold
procedure outlined above.
The preceding stepa are iterated until the customer is
satisfied that the refined prototype represents the final
product desired.
25 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
The final system is constructed, based on the refined
prototype.
The final system is thoroughly evaluated and tested.
Routine maintenance is carried out on a continuing basis
to prevent large-scale failures and to minimize downtime.
Project entry point axis :
Each square in figure placed along the axis can be used
to represent the starting point for different types of the
projects
A concept development project start at the core of
the spiral and will continue until concept
development is complete.
If the concept is to be developed into an actual
product, the process proceeds through the next
square and a new development project is initiated.
Enhancement projects can begin at the next entry
point.
Maintenance projects can begin at the next entry
point.
Advantages:
The spiral model is realistic approach to the
development of large scale systems and
software. Because software evolves as the
process progresses , the developers and
customers better understand and react to risk
at each evolutionary level.
26 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
The spiral model uses prototyping as a risk
reduction mechanism but more important
enables the developer to apply the prototyping
approach at any stage in the evolution of the
product.
It maintains the systematic stepwise approach
suggested by the classic life cycle but
incorporates it into an iterative framework that
more realistically reflects the real world.
The spiral model demands a direct
consideration of technical risk at all stages of
the project and if properly applied should
reduce the risks before they become
problematic.
Disadvantages :
It may be difficult to convince customers that the
evolutionary approach is controllable.
It demands considerable risk assessments
expertise and relies on this expertise for success.
If major risk is not uncovered and managed
problems will undoubtedly occur.
27 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Software And Hardware Requirement
Software Requirement :
Technology Used : HTML, CSS, JSP, Servlet
IDE Used : Net Beans 7.0
Database Server : My SQL Server 5.1
Web Server : Glass Fish 3.1
Operating System : Windows 7
Hardware Requirement :
256 MB RAM
10GB Storage space
2.00 GHz CPU Speed
P-III Processor
28 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
System Analysis And Design
Object Oriented Analysis and Design Diagram :
Object oriented analysis and design (OOAD) is a
software engineering approach that models a system as a group of
interacting objects. Each object represents some entity of entity in the
interest of the system being modeled, and is characterised by its class,
its state (data elements) and its behaviour. Various models can be
created to show the static structure, dynamic behaviour and runtime
deployment of these collaborating objects. There are a number of
different notations for representing these models, such as the Unified
Modeling Language (UML). Object Oriented analysis (OOA) applies
object-modeling techniques to analyze the functional requirements for
a system. Object- oriented design (OOD) elaborates the analysis
models to produce implementation specifications. OOA focuses on
what the system does, OOD on how the system does it.
Object-oriented analysis (OOA) looks at the
problem domain, with the aim of producing a conceptual model of the
information that exist in the area being analyzed. Analysis models do
not consider any implementation constraints that might exist, such as
concurrency, distribution, persistence or how the system is to be built.
Implementation constraints are dealt during object-oriented
design(OOD). Analysis is done before the Design.
Object- oriented design (OOD) transforms the
conceptual model produced in object-oriented analysis to take account
of the constraints imposed by the chosen architecture and any no-
functional – technological or environmental – constraints, such as
transaction throughput, response time, run-time platform, development
environment or programming language.
29 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Use Case Diagram :
User :
System
Create New Profile
Login
Edit Profile
Customer
View Profile
View Mini Statement
Balance Enquiry
Fund Transfer
Apply for Credit/ Debit card
Apply for Loan
Use case diagram for customer
Logout
Change Password
Forgot Password
30 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
System
Create New Profile
Login
Edit Profile
Customer
View Profile
View Mini Statement
Balance Enquiry
Fund Transfer
Apply for Credit/ Debit card
Apply for Loan
Use case diagram for customer
Logout
Change Password
Forgot Password
31 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Class diagram:
Admin
+uname+pass
+recruitemp()+view attendance emp()+view timesheet()+cust transaction()+decision loan()+view cust()+all cust transaction()
customer(id)
+Acccid+fname+mname+lname+uname+password+addr+city+gender+type+dob(date of birth)+pann no+mb no+Attribute1+email+country+acctype+sque+ans
+new user()+forgort password()+credit()+debit()+fund transfer()+balance enquiry()+apply loan()+view data()+update personal data()+mini statament()+all transaction()
Staff(st1)
+empid+fname+name+mname+address+slname+password+city+country+gender+dob+mbno+email
+cust add()+change password()+view personal data()+update personal data()+attendance()
Attendance(atdnc)
+empid+dow(day of week)+dte(date)+intimeouttime
+apply()
FeedBack
+Name+Email+Comments
+submit()
Adac
+Accid+actno
+add new account()
Deposit
+Accid+Acc_type+totalbal
+deposit money()
Transaction
+trnid+Accid+actno+fromacc+date+remark+credit+debit
+transfer money()
loan1
+lid+slt_tit+fname+mname+lname+slt_pro+slt_inc+add+city+rphone+ophone+mob+email+custid+crd+other+sta(status)
+apply()+accept()+reject()
32 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Deployment Diagram:
Computer Web server
Database Server
33 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Sequence Diagram :
Customer BankDatabase
1 : Request for New User()
2 : Verify Customer()
3 : Requested user is not registered for account()
4 : Request for New Registration accepted()
5 : Request for Login()
6 : Check For Existing Customer()
7 : Login Successful()
8 : Request for Changing Password()
9 : Enter new Password()
10 : Password entered()
11 : Password Changed()
12 : Request for forgot password()
13 : Enter Details()
14 : Details entered()15 : Check password According to details()
16 : Response()
17 : Display Password()
18 : Request to view profile()
19 : Information has been displayed()
20 : Request For Edit Profile()
21 : Response()
22 : Request For Add Account()
23 : Response()
24 : Request For Fund Transfer()
25 : Check Account has been added or not()
26 : Response()
27 : Enter Amount()28 : Amount Entered()
29 : Check for available balance()
30 : Balance Valid()
31 : Fund has been transferred to specific account()
32 : Request for mini statement()
33 : Get Fund Transfer Details()
34 : Display Details()
35 : Request for balance enquiery()
36 : Get Available balance details()
37 : Display Balance()
38 : Request for loan()
39 : Enter Details()
40 : Details Entered()
41 : Response()
34 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Activity Diagram : Create Profile
Create Profile
Enter Details
Save Details
Display Details
Close Request
Valid
InValid
35 Internet Banking
Enter Username
Enter Password
Login Success
Valid
Valid
Invalid
Invalid
Login
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Activity Diagram : Login
36 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Activity Diagram : Edit Profile
Edit Profile
Request For Profile Update
Edit Data
Save Data
Valid
InValid
37 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Activity Diagram : View Data
View Data
Request For View Data
Retrieve Account Information
Display Information
38 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Activity Diagram : Forgot Password
Request For Forgot Password
Enter Details
Display Password
Forgot Password
39 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Activity Diagram : Change Password
Change Password
Request For Change Passowrd
Enter Old Password
Enter New Password
Confirm New Password
Update Password
Valid
Valid
InValid
InValid
Valid
InValid
Activity Diagram : Money Transfer
40 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Request For Money Transfer
Verify Account
Enter Amount
Check Balance
Transfer Money Update Balance
Close Request
Valid
InValid
Valid
InValid
Money Transfer
Activity Diagram : Balance Enquiry
41 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Request Balance
Retrieve Account Information
Display Balance
Balance Enquiery
Activity Diagram : Request For Mini Statement
42 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Request Mini statement
Generate Mini Statement
Mini Statement
43 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Activity Diagram : Apply for Credit/Debit Card
Login
Apply For Credit/Debit
Fill Form Details
Applied Successfully
Verify Details
Valid
InValid
Activity Diagram : Apply For Loan
44 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Loan
Enter Details
Verify Details
Loan Approved
Valid
InValid
Main Page
45 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Customer Login
46 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Customer first time login
47 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Customer home page
48 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Fund transfer
49 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Add account for fund transfer
50 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Fund transfer by selecting account from list
51 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Account page
52 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Account summary
53 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Account statement
54 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Staff Interface:
55 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Assign Kit to customer
56 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Database
57 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
1) Table name:-admin
Field Type Key Default Privilegesuname Varchar(10) {null} select,insert,updatePass Varchar(10) {null} select,insert,update
2) Employee_info
Field Type Key Default Privilegesempid Int(7) Pri select,insert,updatefname Varchar(30) {null} select,insert,updatemname Varchar(30) {null} select,insert,updateLname Varchar(30) {null} select,insert,updateAddress Varchar(100) {null} select,insert,updateSname Varchar(30) {null} select,insert,updatePassword
Varchar(30) {null} select,insert,update
City Varchar(30) {null} select,insert,updateCountry Varchar(30) {null} select,insert,updateGender Varchar(10) {null} select,insert,updateDob Date {null} select,insert,updateMbno Int(15) {null} select,insert,updateemail Varchar(30) {null} select,insert,update
3) Table name:-customer_info
Field Type Key Default PrivilegesAccid Int(7) PRI select,insert,updateFname Varchar(20) {null} select,insert,updateMname Varchar(20) {null} select,insert,updateLname Varchar(20) {null} select,insert,updatePhoto Varchar(20) {null} select,insert,updateSign Varchar(20) {null} select,insert,updateAddr Varchar(100
){null} select,insert,update
City Varchar(20) {null} select,insert,updateGender Varchar(10) {null} select,insert,updateType Varchar(20) {null} select,insert,updateDob Date {null} select,insert,updatePanno Int(20) {null} select,insert,updateMbno Int(15) {null} select,insert,updateEmail Varchar(20) {null} select,insert,updateCountry Varchar(20) {null} select,insert,updateAcctype Varchar(20) {null} select,insert,update
58 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
sque Varchar(20) {null} select,insert,updateAns Varchar(20) {null} select,insert,update
4) Table name:-Add_account
Field Type Key Default PrivilegesAccid int(7) Frn {null} select,insert,updateactno int(15) {null} select,insert,update
5) Balance enquiery,Table name:- deposit(main table for transaction)
Field Type Key Default Privilegescid Int(7) FrnAccid Int(7) Frn select,insert,updateAcc_type Varchar(15
){null} select,insert,update
totalbal Int(20) {null} select,insert,update
6)Table name:-transaction
Field Type Key Default PrivilegesTrnid Int(7) Pri {null} select,insert,updateAccid Int(7) Frn {null} select,insert,updateActno Int(15) {null} select,insert,updateFromacc Int(15) {null} select,insert,updateDate Date {null} select,insert,updateRemark Varchar(20) {null} select,insert,updateCredit Int(10) {null} select,insert,updateDebit Int(10) {null} select,insert,update
7)Table name:-CustomerLogin
Field Type Key Default PrivilegesCid Int(7) Frn { null} select,insert,updateusername
Varchar(40) {null} select,insert,update
Password Varchar(40) {null} select,insert,update
59 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
logintime Varchar(20) {null} select,insert,updateDate Date {null} select,insert,update
8)Table name:-KitTable
Field Type Key Default PrivilegesKitid Int(7) { null} select,insert,updateKitNo Varchar(40
){null} select,insert,update
password Varchar(40)
{null} select,insert,update
Cid Int(7) {null} select,insert,updateDate Date {null} select,insert,update
9)Table name:- loan
Filed Type Key Default PrivilegesLid Int(7) PRI {null} select,insert,updateLtype Int(7) {null} select,insert,updateSlt_tit Varchar(20) {null} select,insert,updateFname Varchar(20) {null} select,insert,updateMname Varchar(20) {null} select,insert,updateLname Varchar(20) {null} select,insert,updateSlt_pro Varchar(50) {null} select,insert,updateSlt_inc Varchar(20) {null} select,insert,updateadd Varchar(100) {null} select,insert,updatecity varchar(50) {null} select,insert,updatepin Int(15) {null} select,insert,updaterphone Int(15) {null} select,insert,updateOphone Int(15) {null} select,insert,updatemob Int(15) {null} select,insert,updateEmail Varchar(30) {null} select,insert,updateAccid Int(15) 1 select,insert,updatePAN Varchar(30) {null} select,insert,updateother Varchar(50) {null} select,insert,updateSta Varchar(20) {null} select,insert,update
60 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
TESTING
Introduction:
Software testing is an investigation conducted to provide
Stakeholders with information about the quality of the product or
service under test.[1] software testing also provides an objective,
independent view of the software to allow the business to appreciate
and understand the risks at implementation of the software. The
techniques include, but are not limited to, the process of the executing
a program or application with the intent of finding software bugs.
Software testing can also be stated as the process of
validating and verifying that a software program/application/product:
Meets the business and technical requirements that guided its design
and development; Works as expected; and Can be implemented with
the same characteristics.
Software testing, depending on the testing method
employed, can be implemented at any time in the development
process. However, most of the test effort occurs after the requirements
have been defined and the coding process has been completed. As
such, the methodology of the test is governed by the software
development methodology adopted
61 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Testing Levels:
Unit Testing
Unit testing refers to tests that verify the functionality of a
specific section of code, usually at the function level. In an object-
oriented environment, this is usually at the class level, and the minimal
unit tests include the constructors and destructors.
These type of tests are usually written by developers as
they work on code (white-box style), to ensure that he specific function
is working as expected. One function might have multiple tests, to
catch corner cases or other branches in the code. Unit testing alone
cannot verify the functionality of a piece of software, but rather is used
to assure that the building blocks the software uses work independently
of each other. Unit testing is also called component testing.
Integration Testing
Integration testing is any type of software testing that
seeks to verify the interfaces between components against a software
design. Software components may be integrated in an iterative way or
all tzed more quickly and fixed.
Integration testing works to expose defects in the
interfaces and interaction between integrated components [modules].
62 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Progressively larger groups of tested software components
corresponding to elements of the architectural design are integrated
and tested until the software works as a system.
System Testing
System testing tests a completely integrated system to
verify that it meets its requirements.
Regression Testing
Regression testing focuses on finding defects after a major
code changed has occurred. Specifically, it seeks to uncover software
regressions, or old bugs that have come back. Such regressions occur
whenever software functionality that was previously working correctly
stops working as intended. Typically, regression occurs as an
unintended consequence of program changes, when the newly
developed part of the software collides with the previously existing
code. Common methods of regression testing include re-running
previously run tests and checking whether previously fixed faults have
re-emerged. The depth of testing depends on the phase in the release
process and the risk of the added features.
They can either be complete, for changes added late in
the release or deemed to be risky, to very shallow, consisting of
positive test on each feature, if the changes are early in the release or
deemed to be of low risk.
63 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Acceptance Testing
Acceptance testing can mean one of two things:
A smoke test is used as an acceptance test prior to
introducing a new build to the main testing process, i.e. before
integration or regression.
Acceptance testing performed by the customer, often in
their lab environment on their own hardware, is known as user
acceptance testing [UAT].Acceptance testing may be performed as
part of the hand-off process between any two phases of development.
[citation needed]
64 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Testing Types
White Box Testing
White box testing is when the tester has access to the
internal data structures and algorithms including the code that
implement these.
Types of white box testing
The following types of white box testing exist:
API testing [application programming interface] - Testing of the
application using public and private APIs.
Code coverage - Creating tests to satisfy some criteria of code
coverage [e.g., the test designer can create test to cause all
statements in the program to be executed at once].
Fault injection methods - Improving the coverage of a test by
introducing faults to test code paths.
Mutation testing methods
Static testing - White box testing includes all static testing
Test coverage
White box testing methods can also be used to evaluate
the completeness of a test that was created with black box testing
methods. This allows the software team to examine part of a system
65 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
that are rarely tested and ensure that the most important function
points have been tested.
Black Box Testing
Black box testing treats the software as a “black box’’-
without any knowledge of internal implementation. Black box testing
methods include: equivalence partitioning, boundary value analysis, all-
pairs testing, fuzz testing, model-based testing, traceability matrix,
exploratory testing and specification-based testing.
Specification-based testing:
Specification-based testing aims to test the functionality of
software according to the applicable requirements. [22] Thus, the tester
inputs data into, and only sees the output from, object. This level of
testing usually requires thorough test cases to be provided to the
tester, who then can simply verify that for a given input, the output
value [or behavior], ‘’is’’ or ‘’is not’’ the same as the excepted value
specified in the test case.
Specification-based testing is necessary, but it is insufficient to guard
against certain risks.
Advantages and disadvantages :
The black box tester has no ‘’bonds’’ with the code, and a
tester’s perception is very simple: a code must have bugs. Using the
principle, ‘’Ask and you shall receive,’’ black box testers find bugs
where programmers do not. But, on the other hand, black box testing
has been said to be ‘’like a walk in a dark labyrinth without a flashlight,
’’because the tester doesn’t know how the software being tested was
actually constructed. As a result, there are situations when [1] a tester
writes many test cases to check something that could have been tested
66 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
by only one test case, an /or [2] some parts of the back-end are not
tested at all.
Therefore, black box testing has the advantage of ‘’an unaffiliated
opinion, “on the one hand, and the disadvantage of “blind exploring,”
on the other.
Limitations And Future Enhancement
There are some limitations for the current system to which
solutions can be
Provided as a future development:
1) The Administrator of the web site can be given more
functionality, like looking at a specific customer’s profile, the
items that have to be reordered, etc.
2) Multiple shopping carts can be allowed.
3) In the next iteration we have thought of giving the users the
choice of having a voice chat with their respective buyer/seller if
they are online.
4) In addition to the above points, in the text iteration the user can
be provided with a feature of adding videos of their respective
products.
5) Each and every transaction will be monitored by software and
on that basic the buyers and sellers will be allotted some
enhanced offers, also the users who abuse the rules and
regulations will be black listed.
67 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
6) The content of help menu will be more elaborated so as to gain
help to the desired users.
Conclusion
The Internet has become a major resource in modern
business, thus electronic shopping has gained significance not only
from the entrepreneur’s but also from the customer’s point of view. For
the entrepreneur, electronic shopping generates new business
opportunities and for the customer, it makes comparative shopping
possible. As per a survey, most consumers of online stores are
impulsive and usually make a “Website design is like a shop interior. If
the shop looks poor or like hundreds of other shops the customer is
most likely to skip to the other site”. Hence we have designed the
project to provide the user with easy navigation, retrieval of data and
necessary feedback as much as possible.
In this project, the user is provided with an e-commerce
web site that can be used to buy or sell products online. To implement
this as a web application we used Java Server Pages and Servlet as
the Technology. JSP has several advantages such as enhanced
performance, scalability, built in security and simplicity. JSP are
translated and compiled into JAVA servlet but are easier to develop,
JSP uses simplified scripting language based syntax for embedding
68 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
HTML into JSP, JSP reps all the benefits provided by JAVA servlet and
web container environment, but they have an added advantage of
being simpler and more natural program for web enabling enterprise
developer, MYSQL was used as back-end database since it is one of
the most popular open source databases, and it provides fast data
access, easy installation and simplicity.
A good shopping cart design must be accompanied with user-
friendly shopping cart application logic. It should be convenient for the
customer to view the contents of their cart. The shopping cart
application described in this project provides a number of features that
are designed to make the customer more comfortable.
This project helps in understanding the creation of an
interactive web page and the technologies used to implement it. The
design of the project which includes Data Model and Process Model
illustrates how the database is built with different tables, how the data
is accessed and processed from the tables. The building of the project
has given me a precise knowledge about how JAVA Server Pages is
used to develop a website,how it connects to the database to access
he data and how the data and web pages are modified to provide the
user with a shopping cart application.
69 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
Bibliography
Reference Books :
JSP Beginners
Author : Ivan Bayross, Sharanam Shah, Cynthia
Bayross, Vaishali Shah
JSP Projects
Author: Sharanam Shah, Vaishali Shah
JSP 2.0 The Complete Reference, Second Edition
Author: Hanna, Philip
JSP Professional
Author: Vivek Chopra, Sing Li, Jeff Genender
JavaScript
Author: Douglas Crockford
Ebooks Referred :
Prentice – More Servlets and JSP Pages
70 Internet Banking
Finolex Academy of Management & Technology, Ratnagiri ,Department of MCA
O’Reilly – Java Servlet Programming
Websites Referred :
www.roseindia.net/java/
www.java.sun.com
www.mysql.com
www.w3schools.com
71 Internet Banking
Recommended