Performing Banking on Mobile
MOBILE BANKING USING WAP
Abstract :
Now a days, the bank customer who is everything based on the bank
and can’t able to involve in the bank process. This Problem can be solved
through Mobile System. The title of the project is MOBILE BANKING. The main
aim of my project is to computerize the Bank Process, which is used to reduce
the customer transaction time as well as user can able to access from anywhere.
Mobile banking people from every corner of the world can able to view his
account details. This system also used to transact money to another client over
the mobile. The user can verify his Cheque and demand draft details if another
person may pass a demand draft or Cheque.
It provides a system for the user to access his bank account through his
Mobile. The system also enables the user to pay his bill through the Mobile as
well as pay for some other services, which he has availed. The Mobile banking
system is not just for payment but a user of the system can also transfer money
through the system. He can receive from his bank or from his business
associates or friend or other person who is also connected to the system.
INTRODUCTION
Now a days, the bank customers were depending on the net or the
bank straightly for all their account details and can’t able to involve in the bank
process directly. This Problem can be solved through Mobile Banking System.
The title of the project is MOBILE BANKING. The main aim of the project is
to mobilize the Bank Process that is used to reduce the customer transaction-
time as well as user can able to access from anywhere through mobile.
Mobile banking enable customer to access the information
from his personal mobile and can able to view his account details. This system
also used to transact money to another client through the keypad of the mobile
itself. The user can also verify his Cheque and demand draft details if another
person may pass a demand draft or Cheque.
The Mobile Banking System runs in a Mobile Browser (Nokia
Simulator). The software consists of two parts viz, the server part and the client
part. The server part is present in Mobile Banking server in the form of
Downloaded Application module. The client part is present at each client’s
mobile the server and the client are connected to each other over the Internet
using WAP technology.
Mobile Banking provides a system for the user to access his
bank account through his Mobile. The system also enables the user to pay his
EB Bill, Telephone Bill through his mobile as well as pay for some other
services, which he has availed. The Mobile banking system is not just for
payment but a user of the system can also transfer money to another account
holder through this system. He can receive from his bank or from his business
associates or friend or other person who is also connected to the system.
1.2.ABOUT THE COMPANY
SRI JAIN TECHNOLOGIES (P) LTD
established in 1995, has been actively involved in the development of
Customized Software for various clients since its inception and also has its
presence strongly felt in the areas of Training and Consulting. Market
Leadership through customer satisfaction, a commitment to excellence & high
growth rate, these have characterized HSL in its rapid climb in the information
Technology Industry.
Project description
System analysis focuses on specifying for
what the system or the application is required to do. It allows the
individuals to see the logical elements (what the system should do) apart
from the physical components it uses (computers, terminals and storage
system). It is the process of gathering and interpreting facts, diagnosing
problems and using the information to recommend improvements to the
system.
3.1 Existing System
The existing system is the manual system. The manual
system is prone to error. It is time consuming. It is very difficult for a person to
produce the report. There are chances for changing the scheme report and do
malpractice. This system involves a lot of manual entries with the applications
to perform the desired task.
I. Usage of papers in the payment process leads to less efficiency, less
accuracy and less productivity.
II. Increasing expenditure for papers shuffling and storage.
III. Increasing labors and hence errors.
IV. Less control of funds
V. Time delay between the payment and its receipt.
VI. Persons who are present in different part of the world cannot
transact efficiently.
3.2 Proposed System:
The proposed system is designed to eliminate the
drawbacks of the existing system. It is designed by keeping to eliminate
the drawbacks of the present system in order to provide a permanent
solution to the problems. The primary aim of the new system is to
speedup transactions. The report is prepared for the schemes and
implemented by the concerned officials.
Since the advent of banking services in the Middle Ages
bank customers have used paper-based instrument to move money
between accounts. In the past few years, electronics messages moving
through private networks have largely replaced paper for most of the
messages exchanged among banks each day MOBILE BANKING is the
first step in electronic replacements for traditional forms of payments in
the banks and among users.
It comes as no surprise to one that when everything is being
converted to electronics then how business and banking can be left
behind. Already the business have to global with the coming of Internet.
Now, no more the individual aims at the local market is also just a click
of button away. Dozens of companies are in the race to convince bankers
and merchants that a pot of gold awaits those who conduct their business
on the Internet. In this fast race of business and moneymaking, no
country, no company and no individual want to fall back. Everyone
wants to lead the group. Hence, everyone is trying to make the best use
of Internet.
SYSTEM REQUIREMENTS
Hardware Requirements
Processor PENTIUM III
Clock Speed 667 MHz
RAM 128 MB
Hard Disk 4 GB
Software Requirements
Web Server Apache Tomcat Server 4.1.30
Browser Nokia Simulator 4.0
Server side scripting JSP
Database MS Access
Language J2EE
Client side scripting HTML,WML,WML-Script
Required Tools
Nokia Mobile Internet Toolkit 4.0
Nokia Browser4.0
Nokia 5100 Sdk
Nokia WAP Gateway
PROJECT DESCRIPTION
INPUT DESIGN
Input design is the bridge between users
and information system. It specifies the manner in which data enters the
system for processing it can ensure the reliability of the system and
produce reports from accurate data or it may results in output of error
information.
In Net Bank, forms which has inputs in the system
is discussed below.
1 Registration
2 Login
3 Fund transfer
4 Bill payment
5 Deposit
6 Withdraw
7 Account statement inquiry
8 DD, Banker cheque requests
Registration form
New customer gives their information like,
custid, password, accbranch, name, age, sex, address, e-mail id etc.
Login form
The customer gives the inputs for their login into the
system. Inputs are customer id and password. If they are valid, he enters into
the system.
Fund transfer
The user must enter the account number to
whom he transfers the amount and the amount to be transferred is
entered.
Bill Payment
The customer must enter account no, city, consumer
no for EB, phone, cellular, insurance and amount to be paid. After giving these
inputs the amount will be subtracted from his account.
Account Statement Inquiry
This form is used to display the account details
of current or specific period. The user must enter the starting date
and ending state, then it will display the account details of that
specific period.
DD, Banker’s Cheque Request
This form is used to the customers for their
corresponding requests. The user must enter the accno, beneficiary name,
and dd or bc amount. Then Net Banking system checks the minimum
balance of the customer. If valid, it accepts the requests and provides the
dd or banker cheque.
OUTPUT DESIGN
Outputs from the computer system are rewired primary to
communicate the results of processing to the uses. They also used to
provide a permanent copy of these results for later consultation /
verification. The main points on designing an output are deciding the
media, designing layout and report to be printed. The outputs are
designed from the system, are simple to read and interpret.
According the requirements of the system, various types of
outputs are as desired and designed as follows.
1 Account Statement Inquiry which is used to display the account details
such as account holder name, accno, transdate, narration, valdate,
chddno.
2 Account Balance Inquiry, which is used to display the account balance
such as total balance, unclear funds, and overdraft and credit balance.
3 Bank account closing, which is used to display the bank details of the
current day. It displays the current date, opening balance, current date
transactions and closing balance.
4 Funds transfer, Bill payments, DD, Banker’s cheque, cheque Book
requests are used to display whether the customer’s requests are accepted
or denied after checking the validations.
REPORT DESIGN
Net Banking System supports and improves many
of the core functionality of the organization ie. Banks and also helps in
quick easy monitoring of the reports that have been automatically
generated as and when the user performs some transactions in the
system.
The appraisal reports are prepared for the customers and
bank, according to the periods like current period, specific period, day
wise, month wise and year wise.
Customer Reports
1. Current period report gives only the last 10 transactions details
from the current date to a particular customer.
2. Specific period report gives the transactions details between the
starting date and ending date, which are specified as inputs.
Bank Reports
1. Day report provides the opening balance, transactions details and
closing balance for all the customers to a specific date that is given as
input.
2. Month report provides the opening balance, transactions details
and closing
3. balance for all the customers to a specific month and year that
are given as inputs.
4. Year report provides the opening balance, transactions details and
closing balance for all the customers to a specific year that is given as
input.
DATA FLOW DIAGRAM
A DFD is a logical model of the system. The model
does not depend on the hardware, software and data structures of file
organization. It tends to be easy for even non-technical users to
understand and thus serves as an excellent communication tool.
DFD can be used to suggest automatic boundaries for
proposed system at pa very high level; the entire system is shown as a
single logical process clearly identifying the sources and destination of
data. This is often referred to as zero level DFD.
Then the processing is exploded into major processes and
the same is depicted as level one DFD.
WAP
REQUEST /RESPONSE
JSP
BEAN Tomca
t
DATABASE
SYSTEM ARCHITECTURE
LOGIN CHECK
22
Checki
Invalid Ac/N F ng
Accoun
t
Number
Routing
Custome
r&
Admin
Admin List Customer List
Admin Index
Customer Index
Create User Fund Transfer
Delete User Draft Issue
Stop Pay Cheque Issue
TR report Bill Payment
Pay Report Balance Enquiry
TR report
Stop payment
Logout
FILE DIRECTORY FLOW
JSP Mobile
HTML Mobile
DataBase Mobile
WML Mobile
LOGIN FOR BANKERS
Invalid Account Numer
Ac/No
Code
SUBMIT
JSP Mobile Menu List (Register
(Admin Login Permit) ,deposit)
DataBase Moile
DEPOSIT FOR BANKERS
Invalid Account Number
Ac/No
Code
SUBMIT
JSP Mobile Getting Account No &
(Admin Login Check) Amount
Data base mobile
REGISTER CUSTOMER FOR BANKERS
Name
Fname
Qualification
Age
Date of Birth
Account Number
Type of Account
Registers Registered
(Jsp Mobile) Successfully
Chec
Already Ac/N Exist
k
Ac.N
o
Data Base
DATA FLOW FROM HOME PAGE
ADMIN
Deposit
Register
REGISTER
DEPOSIT
JSP Mobile
INVALID
Data Base
Mobile
TRANSFER FUND
Fund Transfer
Checki
ng
Ac/No
&
Balance
Transfer Fund
Data Base
Update With
Draw
BILL PAYMENT
Bill Payment
Checking
Ac/ No &
Balance
Pay Bill
Data Base
Update With
Draw
DRAFT ISSUE
Checking
Ac/ No &
Balance
Update With Data Base
Request DRAFT
Issue
DrawDRAFT
ADMINISTRATOR
CREATING USER
USER NOT REGISTERED
JSP Mobile
Checking
Registratio
n
Data Base
ADMINISTRATOR
DELETE USER
INVALID USER
JSP Mobile
Checking
Registratio
n
Deleting form
Database
STOP PAYMENT
Operating System
Cookies
(Adding Cookies)
Tomcat server
HTML JSP Mobile
Mobile
WML Mobile Data Base
Mobile
RELESE PAYMENT
Operating System
Cookies
(Removing Cookies)
Tomcat server
HTML JSP Mobile
Mobile
WML Mobile Data Base
Mobile
CODE EFFICIENCY &OPTIMIZATION
In an ideal world, software would design itself to your specification
automatically reduce itself to the smallest possible memory footprint, compile instantly,
and always run at the fastest possible speed. In the real world developers still have to
write programs in some sort of programming language. To get the absolutely smallest,
fastest code, a programmer can work in assembly language, but that can be prohibitively
labor-intensive for all the most time-critical code.
Most programmers do most of their coding in a high-level language,
which is then compiled to an assembly language and linked into an executable program
image. During the development process, programmers are quite sensitive to built speed
and ease of debugging; when it comes time to release the code for production, run-time
speed and size become of paramount importance.
There are many ways to make code run quickly. Often the controlling factor for the
speed of a program is the algorithm used, rather than any optimization done by the
compiler. For instance, a sorting program written using the Heap sort algorithm will run
rings around a bubble sort, On the other hand, it is often important to make your code run
quickly, especially code that is executed often or in tight loop.
VALIDATION CHECKS
The process of checking whether entered data meets certain conditions or limitation.
Field- Level Validation
A validation rule associated with a field that is activated when the field
value is inserted or changed, and most often used to verify data entry and correctness.
Record-Level Validation
A validation rule, bund to record, which is activated when a record is
inserted or changed, and most often used to verify data and correctness. Validations rules
do not apply when record are deleted. Record-level rule are activated after field-level
rules and before triggers, and work during buffered updates.
Record Insertion:
New User name, account number, age, sex, Account type.
Record Deletion:
Respective codes should be entered. Details with respect to the code will be deleted
automatically. When the delete button is pressed.
IMPLEMENTATION
Once the system has been designed, the next step is to
convert the designed one in to actual code, so as to satisfy the user
requirements as excepted. If the system is approved to be error free it can be
implemented.
When the initial design was done for the system,
the department was consulted for acceptance of the design so that further
proceedings of the system development can be carried on. After the
development of the system a demonstration was given to them about working
of the system. The aim of the system illustration was to identify any
malfunctioning of the system.
Implementation includes proper training to end-
users. The implemented software should be maintained for prolonged running
of the software.
Initially the system was run parallel with manual
system. The system has been tested with data and has proved to be error-free
and user-friendly. Training was given to end -user about the software and its
features.
MAINTENANCE
The term “software maintenance” is used to describe the
software engineering activities that occur following delivery of a software product to
the customer. The maintenance phase of the software life cycle is the time period in
which a software product performs useful work.Maintenance activities involve making
enhancement to software products, adapting products to new environments and
correcting problems. Software product enhancement may involve providing new
functional capabilities, improving user display and modes of interaction, and upgrading
external documents. Adaptation of software to a new environment may involve moving
the software to a different machine. Problem correction involves modification and
revalidation of software to correct errors. The enhancement of this project can be
accomplished easily. That is, any new functional capabilities can be added to the project
by simply including the new module in the homepage and giving a hyperlink to that
module. Adaptation of this project to a new environment is also performed easily.
Corrective Maintenance
Even with the best quality assurance activities, it is likely that
they customer will uncover defects in the software. Corrective maintenance changes the
software to correct defects.
Adaptive Maintenance
An activity that modifies the software to properly interface with
a changing environment. The system has been modified so that various change include
to the new system.
In case of Fund Transfer, adoptive maintenance has been
performed, that is in earlier system (character based UNIX system) changes are fixed
and if any new changes are to be included, was a difficult task. Now provisions are
given so that the user can define various changes. Such as it designed to accommodate
the new change in further.
Enhancement Maintenance
As software is used, the customer/user will recognize
additional functions that will provide benefit. Perceptive maintenance extends
the software beyond its original functional requirements.
In the case of MOBILE BANKING ,system can be
added new functions such that the user can able to retrieve the information in a
user friendly and it will be very helpful for future development.
SYSTEM TESTING AND IMPLEMENTATION
.TESTING FUNDAMENTALS
Software testing is an important element of S/W quality assurance and represents the ultimate
review of specification, design and coding. The increasing visibility of S/W as a system element and the costs
associated with a S/W failure are motivating forces for well planned, through testing.
Though the test phase is often thought of as separate and
distinct from the development effort--first develop, and then test--testing is a
concurrent process that provides valuable information for the development
team.
There are at least three options for integrating Project
Builder into the test phase:
Testers do not install Project Builder, use Project Builder functionality to
compile and source-control the modules to be tested and hand them off to the
testers, whose process remains unchanged.
the testers import the same project or projects that the developers use.
Create a project based on the development project but customized for the
testers (for example, it does not include support documents, specs, or source),
who import it.
A combination of the second and third options works best.
Associating the application with a project can be useful during the testing
phase, as well. We can create actions to automatically run test scripts or add
script types and make them dependent on the modules to test.
TESTING OBJECTIVES
There are several rules that can serve as testing objectives.
They are
1. Testing is a process of executing a program with the intent of finding an
error.
2. A good test case is one that has a high probability of finding an
undiscovered error.
3. A successful test is one that uncovers an undiscovered error.
If testing is conducted successfully according to the
objectives stated above, it will uncover errors in the software. Also, testing
demonstrates that software functions appear to the working according to
specification, that performance requirements appear to have been met.
OBJECT ORIENTED TESTING
UNIT TESTING
Unit testing focuses the verification effort on the smallest unit of S/W design i.e., the module.
The unit testing is always white-box oriented and the step can be conducted in parallel for modules.
During unit test, testers can use the same project or
projects as the developers, if functional units organize the project, or separate
projects have been created for functional units. The project or projects can also
be exported, so unit test can take place in a variety of environments and on a
variety of platforms.
UNIT TEST CONSIDERATIONS
The tests that occur as part of unit testing. The
module ‘interface’ is tested to ensure that information properly flows into and
out of the program unit under test. The ‘local data structures’ are examined to
ensure that data stored temporarily maintains its integrity during all steps in an
algorithms execution.
‘Boundary Conditions’ are tested to ensure that the module
operates properly at boundaries established to limit or restrict processing. All
‘independent paths’ through the control structures are exercised to ensure that
all statements in a module have been executed at least once. Finally, all ‘error-
handling paths’ are tested.
UNIT TEST PROCEDURES
Unit testing is considered an equivalent to the coding step.
After the source level code has been developed, reviewed and verified for
correct syntax, unit test case design begins since a module is not a stand alone
program, ‘driver’ and/or ‘stub’ S/W must be developed for each unit test. In
most applications, a driver is nothing more than a main program that accepts
test case data, passes such data to the module to be tested, and prints the
relevant results. The stubs serve to replace modules that are
subordinates called by the modules to be tested. A stub or a dummy stub or a
dummy subprogram uses the subordinate modules interface, may do minimal
data manipulation, prints verification of entry, and returns. The drivers and
scrubs represent overhead i.e., both are S/W that must be written but that is not
delivered with the final S/W product. If the drivers and the stub are kept
simple, then the overhead is low.
The Unit Test is carried out in this project, and is found
successful. The data is flowing correctly to all part of the project.
INTEGRATION TESTING
Integration testing is a systematic technique for constructing
the program structure while at the same time conducting test to uncover errors
associated with interfacing. The objective is to take unit-tested modules and
build a program structure that has been dictated by design.
TOP-DOWN INTEGRATION
1. This method is an incremental approach
to the construction of program structure. Modules are integrated by
moving downward through the control hierarchy, beginning with the
main program module.
Importing the test project and setting up the testing environment
The process of importing a test
project and setting up a testing environment is the same as the process for
importing a project and setting up the environment for development.
Adding test scripts and test data to the project
You may need to add some items,
such as test scripts, to the project. In addition, you may need to add connection
strings to database accounts containing test data.
Remember that you can automate the running of test
scripts just as you can automate actions associated with the modules in your
application.
Modifying actions and macros to facilitate testing
If actions specifying "run with debugging" have not already
been provided, you can either modify existing actions to include a debug flag, or create
new actions.
SECURITY MEASURE TAKEN
Software integrity has become increasing important in the age of hackers and
firewalls. This attribute measures a system’s ability to withstand attacks to its
security. Attacks can be made on all three components of software.
Programs, data and document
Many security measured are to be taken whenever we deal with the project of
banking transaction in general. With this point in mind this project has been
designed with all required measures. For example account pin code in
transaction details form is generated automatically with no repetition of the
account pin. The first time user has login first to access the other process of the
system. Database cannot be viewed directly. It all gets u[dated of its own
whenever there is a transaction happing. The whole system is given in the form
of .exe file which does not show any of the coding which itself a great firewall
for the other user or hackers.
Cost Estimation of the Project
As it budgets shrink today and personal computer become more prevent in business,
many organization are now focusing attention on reducing total cost of development.
While cost unmistakably a critical component of any IT investment, it is also important
to consider the comprehensive and long-term value of the computing solution and it
will service all of your organization’s needs.
One factor that adds to the cost of owning PCs is the differing levels of operating
system versions. Dynamic-link libraries and application software that need to be
supported. Most organization deploy PCs that are pre-configured in a know, approved
configuration, Over time, however as new application get installed, device driver get
updated, and so on, it becomes difficult to know exactly what components are installed
on each machine.
Another factor is the really that users are limited to using only the machine at
their desk. Software applications are tied tightly to the machine they are installed upon,
even if the applications are installed on a network. Many companies have created
solution to try to address this issue, although these solutions are often error-prone and
not well accepted.
FUTURE SCOPE OF TH PROJECT
In the present situation where the technology is the
buzzword and has revolutionized the way we work and live, we would be the
losers if we do not keep up with the changing world. Moreover, it makes a world
of difference and a whole of sense to break-up from the age old work culture and
embrace the effective, cost, and time saving ways of looking and working at
things.
This is precisely where theE-MONEY SYSTEM fit into
place.E-MONEY SYSTEM supports and improves many of the core
functionality of the organization i.e. Banks and also helps in quick easy
monitoring of the reports that have been automatically generated as and when
the user performs some transactions in the system. Using such a system helps
the organization in minimizing the time consumed in fulfilling the day-to-day
functionality’s and cutting down the expenses incurred on the same.
This project really helps a lot for all type of Banks. User can easy to access
through mobiles.
BIBLIOGRAPHY
1. JAVA2 The Complete Reference - Herbert Schildt
2. An Introduction to HTML - J.Arnold
3. Mastering JavaScript - James Jaworski
4. HTML 3.2 UNLEASED - John December
and
Mark Gins
5. JAVA handbook - TATA InfoTech
6. Credit Card Banking - P.C. Nanda