Institute For Advanced Computing AND Software Development Akurdi, Pune
Institute For Advanced Computing AND Software Development Akurdi, Pune
AND
SOFTWARE DEVELOPMENT
AKURDI, PUNE
Documentation On
Submitted By :
Group No: 91
Amol Kedar (1119)
Hanmant Chavan(1142)
1
Table of
Contents
1) Introduction -------------------------------------------------------------------3
1.1)Purpose----------------------------------------------------------------------------------------3
1.2)Scope------------------------------------------------------------------------------------------3
1.3)Definitions, Acronyms and Abbreviations-------------------------------------------4
1.4)References------------------------------------------------------------------------------------5
1.5)Technologies to be used----------------------------------------------------------------6
1.6) Overview …………………………………………………………………………… 6
2) Overall Description: ................................................................................................ 6
2.1) Product Perspective: .................................................................................................... 7
2.2) Software Interface: ...................................................................................................... 8
2.3) Hardware Interface: ..................................................................................................... 8
2.4) Communication Interface: ........................................................................................... 8
2.5) Product Features: ........................................................................................................ 8
2.6) User Characteristics: ................................................................................................... 9
2.7) Design and Implementation Constraints: .................................................................... 9
2.8) Use-Case Model Survey: ............................................................................................. 9
2.9) Architecture diagram: ................................................................................................ 14
2.10) ER-Diagram:…. ........................................................................................................ 15
2.11) Assumptions and Dependencies: ................................................................................ 15
3) Specific Requirements: ......................................................................................... 16
3.1) Use-Case Reports: ..................................................................................................... 16
3.1.1) Activity Diagram for Login------------------------------------------------------------------------- 19
3.1.2)Activity Diagram for balance enquiry--------------------------------------------------------------- 21
3.1.3)Activity Diagram for funds transfer----------------------------------------------------------------- 24
3.1.4)Activity diagram for cheque book request---------------------------------------------------------- 25
3.1.5)Activity Diagram for Mini Statements-------------------------------------------------------------- 27
3.1.6)Activity Diagram for update profile --------------------------------------------------------------- 28
3.2) Supplementary Requirements: ...................................................................................... 29
3.3)Non Functional Requirement------------------------------------------------------------------- -31
4) Supporting Information: ………………………….…………………………….32
4.1) System in context: …………………………………………………………………………….32
4.2) DFD diagram ----------------------------------------------------------------------------------------------33
4.3) Class Diagram: ………………………………………………………………………………..34
5) Appendices: ……….……………………………….………...…………………… 35
5.1) Appendix B: References ………………………………………………………………………35
2
5.1.1)Login Process sequence diagram,----------------------------------------------------------------------35
5.1.2)Balance Enquiry ------------------------------------------------------------------------------------------35
5.1.3)Fund Transfer----------------------------------------------------------------------------------------------36
5.1.4)Update Profile---------------------------------------------------------------------------------------------37
5.1.5)Check Book Request-------------------------------------------------------------------------------------38
5.1.6)Mini Statement--------------------------------------------------------------------------------------------38
6)Data Dictionary---------------------------------------------------------------------------------39
6.1)Table name User_Account -------------------------------------------------------------------------------------------39
6.2)Table name Customer------------------------------------------------------------------------------------------------- 39
6.3)Table name Primary_Account----------------------------------------------------------------------------------------39
6.4)Table name Fund_Transfer------------------------------------------------------------------------------------------- 39
7)Software Life Cycle Model -------------------------------------------------------------------40
8) Screen Shots-------------------------------------------------------------------------------------42
8.1)Login Page--------------------------------------------------------------------------------------------------------------42
8.2)Registration-------------------------------------------------------------------------------------------------------------43
8.3)Welcome page----------------------------------------------------------------------------------------------------------44
8.4)Deposit-------------------------------------------------------------------------------------------------------------------45
8.5)Withdraw----------------------------------------------------------------------------------------------------------------45
8.6)Money Transfer---------------------------------------------------------------------------------------------------------46
8.7)Check Balance-----------------------------------------------------------------------------------------------------------47
8.8)Mini Statement----------------------------------------------------------------------------------------------------------48
9)References-----------------------------------------------------------------------------------------49
10)Conclusion---------------------------------------------------------------------------------------50
3
1) Introduction
Online banking system provides is specifically developed for online banking for Balance Enquiry,
Funds Transfer to another account in the same bank, Request for cheque book/change of address/stop
payment of cheques, Mini statements (Viewing Monthly and annual statements).
1.1 Purpose
The Traditional way of maintaining details of a user in a bank was to enter the details and
record them. Every time the user need to perform some transactions he has to go to bank and perform
the necessary actions, which may not be so feasible all the time. It may be a hard-hitting task for the
users and the bankers too. The project gives real life understanding of Online banking and activities
performed by various roles in the supply chain. Here, we provide an automation for banking system
through Internet. Online banking system project captures activities performed by different roles in
real life banking which provides enhanced techniques for maintaining the required information up-
to-date, which results in efficiency. The project gives real life understanding of Online banking and
activities performed by various roles in the supply chain.
1.2 Scope
This Project investigates the entry threshold for providing a new transaction service channel
via the real options approach, where the entry threshold is established by using an Online banking
system designed for the use of normal users(individuals), Industrialists, Entrepreneurs, Educational
Institutions(Financial sections), Organizations and Academicians under transaction rate uncertainty.
Customer must have a valid User Id and password to login to the system
If a wrong password is given thrice in succession, that account will be locked and the
customer will not be able to use it. When an invalid password is entered a warning is given
to the user that his account is going to get locked.
After the valid user logs in he is shown the list of accounts he has with the bank.
On selecting the desired account he is taken to a page which shows the present balance in
that particular account number.
4
User can request for the details of the last ‘n’ number of transactions that he has performed.
A report can also be taken of this.
User can make a funds transfer to another account in the same bank. User is provided with a
transaction password which is different from the login password.
User can transfer funds from his account to any other account with this bank. If the
transaction is successful a notification should appear to the customer, in case it is
unsuccessful, a proper message should be given to the customer as to why it failed. User
can request for cheque book/change of address/stop payment of cheque’s
User can view his monthly as well as annual statements. He can also take print out of the
same.
Generate reports at every section
Administrator can take a back up of the database for every instance that is happening,
periodically.
All users are authenticated to avail the services
FAQ section is also included for end users benefit.
Team Members (Customers): After logging in he can request for balance enquiry in his
account, Funds Transfer to another account in the same bank, Request for cheque book/change of
address/stop payment of cheques, Mini statements (Viewing Monthly and annual statements).
5
HTML: Hypertext Markup Language is a markup language used to design static web
pages.
J2EE: Java 2 Enterprise Edition is a programming platform part of the Java Platform for
developing and running distributed multitier architecture Java applications, based largely on modular
software components running on an application server.
MYSQL: Mysql Database is the database management system that delivers a flexible and cost
effective database platform to build robust on demand business applications.
APACHE TOMCAT: Apache tomcat application server is an application server that runs
business applications and supports the J2EE and web services standards.
SPRING: Spring application developer is a toolkit which is designed for the creation of more
complex projects, providing fully dynamic web application utilizing EJB’s. This consist of EJB tools ,
CMP ,data mapping tools & a universal test client that is designed to aid testing of EJB’ s.
HTTP: Hypertext Transfer Protocol is a transaction oriented client/server protocol between web
browser & a Web Server.
HTTPS: Secure Hypertext Transfer Protocol is a HTTP over SSL (secure socket layer)
1.4 References
SRS (IEEE SRS Format and Format provided by TGMC)
6
1.5 Technologies to be used
J2EE – Application architecture
JAVA – Application architecture
SPRING STS – Development tool
APACHE TOMCAT - Application Server
MYSQL – Database
JSP – Design pages
1.6 Overview
SRS includes two sections overall description and specific requirements
Overall description will describe major role of the system components and interconnections.
Specific requirements will describe roles & functions of the actors.
2) Overall Description
The following sections describe the general factors that affect the product and its requirements.
Customer must have a valid User Id and password to login to the system. After the valid user logs
inhe is shown the list of accounts he has with the bank. On selecting the desired account he is taken to
a page which shows the present balance in that particular account number, user can request details of
the last ‘n’ number of transactions he has performed. User can make a funds transfer to another
account in the same bank. User is provided with a transaction password which is different from the
login password.User can transfer funds from his account to any other account with this bank. If the
transaction is successful a notification should appear to the customer, in case it is unsuccessful, a
proper message should be given to the customer as to why it failed. User can request for cheque
book/change of address/stop payment of cheque’s.User can view his monthly as well as annual
statements. He can also take print out of the same.Appropriate help to be provided as and when
requested by the user.
7
2.1 Product Perspective
The client will have client interface in which he can interact with the banking system. It is a web
based interface which will be the web page of the banking application. Starting a page is displayed asking
the type of customer he is whether ordinary or a corporate customer. Then the page is redirected to login
page where the user can enter the login details. If the login particulars are valid then the user is taken to a
home page where he has the entire transaction list that he can perform with the bank. All the above activities
come under the client interface.
The administrator will have an administrative interface which is a GUI so that he can view the entire
system. He will also have a login page where he can enter the login particulars so that he can perform all his
actions. This administrative interface provides different environment such that he can maintain database &
provide backups for the information in the database. He can register the users by providing them with
username, password & by creating account in the database. He can view the cheque book request &
perform action to issue the cheque books to the clients.
8
2.2 Software Interface
9
3) Update Profile: This module allows the customer to update profile of their account.
4) Funds Transfer: This module allows the customers to transfer funds from one account to
another within the same bank.
5) Change of Password: This module allows customers to change their password.
6) Mini Statements: This module allows customers to view their transaction details.
Customers : The normal users will have an account of fixed or savings and should have a minimum
balance of 500 Rs. He can transfer funds to another account of the same bank & may view his monthly or
annual statements.
10
Use-Case Model Survey:
Login
account list
initialises
customer
balance enquiry
start sessions
funds transfer
Data Backup
performs
administrator
update profile
Crash recovery
End sessions
corporate
ministatements
shutdowns
help
log out
11
Activity Diagram for overall system:
start
valid user no
yes
Log out
stop
12
1. Administrator: He is the super user responsible for managing system users, taking system backup,
generating reports, maintaining organization details, Starting Sessions and ending Sessions and also
manages various requests from different Types of users.
Providing UserName, Password and other information required for the users to start an account.
Starting Sessions: The Administrator creates the system users and will be assigned with the
different roles. He is also responsible to start the session when a particular user wants to use the
system every time(It is automatically managed setup).
Managing Data Backup: The Administrator is responsible for managing entire details by taking
the backup periodically. He also takes the Backup of the database in order to prevent loss of data
on system crashes or inorder to prevent malfunctioning. He can take a backup of entire database
or a particular section.
Crash Recovery: The Administrator manages the crash recovery at the time of system crash or
failure occurs.
Ending session: The administrator is responsible for ending the session when the particular user
logged out of the system(It is automatically managed setup).
2. Customer(Normal/others): Ordinary customers have a user name & password with which they can login into
their account. They can perform all the transactions such as funds transfer, balance enquiry, cheque book
request, etc by sitting at their home on internet.
Login: User can login to the system by providing appropriate username and password provided
by the administrator.
Selecting the Account: After logging in the user is provided with a screen showing the details
of accounts and he selects one of the account inorder to perform the transaction.
Balance Enquiry: He can view the balance left in his account, if once he has entered into his
account.
Funds Transfer: Upon the request the user can transfer funds from his account to other
accounts.
Request for cheque book : He can request for cheque book.
Mini statements: He also can take a mini statement print out upon his requirement.
13
3. Corporate: The corporate users include Industrialists, Entrepreneur, Organizations and Academicians etc.
They have a corporate id along with username & password. The organization will have an administrator to
maintain all the details of their employees. He deposits salaries of the employees into the accounts of the
corresponding employees. These employees can perform all the transactions that ordinary customer does.
Login: corporate can login to the system by providing appropriate username, password and along
with Corporate-ID provided by the administrator.
Selecting the Account: After logging in the user is provided with a screen showing the details of
accounts and he selects one of the account inorder to perform the transaction.
Balance Enquiry: He can view the balance left in his account, if once he has entered into his
account.
Funds Transfer: Upon the request the user can transfer funds from his account to other
accounts.
Request for cheque book : He can request for cheque book.
Mini statements: He also can take a mini statement print out upon his requirement.
Internal administrator: Every corporation will be having its own internal administrator who is
responsible for maintaining details of their employees, deposits salaries of the employees into their
accounts.
14
2.9 Architecture Diagram :
15
2.10 ER- Diagram :
16
Every user should be comfortable of working with computer and net browsing.
He should be aware of the banking system.
He must have basic knowledge of English too.
3) Specific Requirements
i) Administrator: He is the super user responsible for managing clients of the system, taking
system backup, generating reports, maintaining organization details.
Manage Clients: The Administrator assigns new users when a new client joins the
online bank. Also he can delete an account when any of the clients leave the bank
organization.
Maintain Organization Details: The Administrator maintains entire details of the
organization that includes details of the clients, entrepreneur details etc.
Take System Backup: The Administrator Backup the database in order to prevent loss
of data on system crashes. He can backup entire database or a particular section.. Generate
Reports: : Responsible for checking the logs of different system users for auditing and
maintaining the integrity of the system
Manage Clients
17
delete_account
manage clients
create_account
enterprenuar_details
details
client _details
18
Enter customer
details
Store details in
database
ii) Customer :
19
.
.
. Ordinary customers have a user name & password with which they can login into their account. They
can perform all the transactions such as funds transfer, balance enquiry, cheque book request, etc by sitting at their
home on internet.
Login: User can login to the system by providing appropriate username and password provided
by the administrator.
Selecting the Account: After logging in the user is provided with a screen showing the details
of accounts and he selects one of the account inorder to perform the transaction.
Balance Enquiry: He can view the balance left in his account, if once he has entered into his
account.
Funds Transfer: Upon the request the user can transfer funds from his account to other
accounts.
Request for cheque book: He can request for cheque book.
Mini statements: He also can take a mini statement print out upon his requirement.
+access
<<success>>
access account
+relogin <<failure>>
Login
+warning
warning message
20
3.1.1 Activity Diagram for Login:
When the user opens the web page, he is shown with a page which asks him whether he is normal
or a corporate customer. Then he is redirected to login page. Here the customer is asked to enter user name &
password (corporate id if he selects corporate). When the user enters the details & submits it goes to a validation
engine where it checks valid/not. If valid he is shown with list of accounts he has with the bank.
customer System
invalid
valid
shows accounts
list
21
Savings
Current
accounts list
fixed
Accessing view:
User after logging into his/her account a page is displayed with the basic requirements:
1) Balance Enquiry.
2) Funds Transfer (same bank).
3) Request Cheque Book.
4) Mini statements.
5) Update profile.
User can perform various actions on his/her account.
22
Customer System
display the
transactions
select balance
enquiry option
display the
balance
+wrong passwd
Payee exists enter amount transfer notify customer
in our list
+try again not valid
Enter payee
Transaction paswd
+passwd correct
23
3.1.3 Activity Diagram for funds transfer:
When the customer selects the funds transfer option in the home page. Then the system prompts for
transaction password. When the user enters the transaction password, system checks whether the password is
correct or not. If valid it prompts for payee & amount. User enters the payee details & amount, system checks
whether the balance is available. If available it transfers & updates both the accounts. Customer is notified
whether transaction is success or not.
24
Name Of Use-Case: Request cheque book.
Description: The client can request for cheque book by giving the details required.
.Preconditions:
The client has already been logged in.
Customer System
display the
transactions
prompt for
address details
Enter address
details
validation
no
yes
accept request
show success/failure
notice
25
Name Of Use-Case: Stop payments of cheques.
Description: Client can request to stop the payment of the cheque giving its details.
Preconditions:
The client has already been logged in.
Customer System
display the
transactions
prompt for
cheque details
Enter cheque
details
accept request
show success/failure
notice
26
Name Of Use-Case: Mini Statements.
Description: The client can request the mini statements i.e monthly, annual or ‘n’
number of transactions.
.Preconditions:
The client has already been logged in.
Monthly stmts
Annual stmts
When the user requests for mini statements in the home page, system asks the type of statement needed by
the customer. When the customer selects the type of statement (monthly/annual/’n’ number of transactions). The
system displays the list of transactions on the screen. If the customer wants to take print outs he can take the print
outs of the same.
27
Customer System
display the
transactions
select ministatements
option
select type of
statement
view/take print
out of list
28
Customer System
display the
transactions
select update
profile
29
manage company
accounts
internal
administrator
transfers money
to employee's account
1) Performance Requirements
System can withstand even though many no. of customers request the desired service.
Access is given to only valid users of bank who requires the services such as balance enquiry,
update profile, funds transfer, mini statements, and request for stop payments and for cheque book
2) Safety Requirements
By incorporating a robust and proven mysqlDB into the system, reliable performance and integrity of
data is ensured. There must be a power backup for server system. Since the product is of 24x7 availability
there should be power backup for server which provides the information .Every day the data should be backup
even when the operation of an user is not successful i.e., while performing the operation power failure occurs
then data should be backup.
3) Security Requirements
Sensitive data is protected from unwanted access by user’s appropriate technology and
implementing strict user-access criteria of unique user number and Password in such a way
that unauthorized user cannot log in. Operational rights for each user/ terminal can be
defined.
30
Online Banking uses the SSL (Secure Socket Layer) protocol for transferring data.
SSL is encryption that creates a secure environment for the information being transferred between
customer browser and Bank. Online Banking uses 128-bit digital certificate from VeriSign for
encryption of the Secure Sockets Layer (SSL) session. SSL is the industry standard for encrypted
communication and ensures that customer's interaction with the Bank over the Internet is secure.
Authentication ensures that you are communicating with the correct server. This
prevents another computer from impersonating Bank.
Encryption scrambles transferred data.
Data integrity verifies that the information sent by customer to Bank wasn't altered during the
transfer. The system detects if data was added or deleted after customer sent the message. If
any tampering has occurred, the connection is dropped.
3.3 Non Functional Requirements :
Those requirements which are not the functionalities of a system but are the characteristics of a system
are called the non-functionalities.
31
4) Supporting Information:
The “Online Banking System” is an independent system. In Version 1.0, the system is a Web based
application which performs various activities of banking.
32
4.2) DFD diagram:
33
4.3) Class diagram:
Customer
userId : String Funds Transfer
password : String
userId : String Balance Enquiry
firstName : String
accountType : String userId : String
lastName : String
TransId : String accountType : String
address : String
payee : String balance : Currency
mobile : String
amount : Currency
showBalance()
login()
transfer()
performTransaction()
logOut()
Mini Statements
userId : String
Update Profile transList : String
userId : String
Cheque Book password : String showTransList()
userId : String firstName : String
chequeBookDetails : String lastName : String
address : String
requestChequeBook() mobile : String
stopPayCheques()
updateProfile()
34
5) Appendices:
5.1) Appendix A: Sequence Diagrams
5.1.1)Login process:
login failed
relogin(+3)/block account
5.1.2)Balance Enquiry:
Requests BalanceEnq.
redirect
check
shows balance
view
35
5.1.3)Funds Transfer:
enter passwd
check passwd
request ok
notify
success/failure
notify customer
36
5.1.4)Update Profile:
request update
redirect
details
update
updated
notify
request details
provides details
accepts details
request processing
available numbers
send to customer
37
5.1.6)Stop payment of cheques:
redirect
validate
stop cheque
display message
notify customer
5.1.7)Mini Statements:
request ministatements
redirect
type of statement?
request printouts
38
6) Data Dictionary
39
7) Software Life Cycle Model:
In order to make this Project we are going to use Classic LIFE CYCLE MODEL .Classic life cycle
model is also known as WATER FALL MODEL. The life cycle model demands a Systematic sequential
approach to software development that begins at the system level and progress through analysis design coding,
testing and maintenance.
3) Design:
40
Software design is actually a multi-step process that focuses on distinct attributes of the program
data structure, software architecture, procedural detail and interface of the software that can be assessed or
quality before coding begins .Like requirement the design is documented and becomes part of the
software.
4) Coding:
The design must be translated into a machine readable form. The coding step performs this task. If
design is programmed in a detailed manner, coding can be accomplished mechanically.
5) Testing:
Once code has been generated programmed testing begins. The testing process focuses on the
internals of the software ensuring that all statement have been tested and on the functional externals hat is
conducting tests to uncover the errors and ensure that defined input will produce the results that agree
with the required results.
Unit testing:-
In computer programming, Unit testing is software Verification and validation method where the
programmer gains confidence that individual units of source code are fit to use A unit is the smallest
testable part of an application. In procedural programming a unit may be an individual programmed,
function, procedure, etc. while in object-oriented programming, the smallest Unit is a class, which may
belong to a base/super class abstract class or derived/child class.
Benefits:
The goal of unit testing is to isolate each part of the program and show that the individual parts are
correct. A unit test provides a strict written contract that the piece of code must satisfy.
Documentation:-
Unit testing provides a sort of living documentation of the system. Developers looking to learn
what functionality is provided by a unit and how to use it can look at the tests to gain a basic
understanding of the unit API.
41
8) Screen Shots
8.1)Login Page
42
8.2)Registeration
43
8.3)Welcome
44
8.4)Deposit
8.5)Withdraw
45
8.6)Money Transfer
46
8.7)Check balance
47
8.8)Mini-statement
48
9) Bibilography /References
49
10)Conclusion
The Online Banking suite provides a global accounting foundation that provides the all private
banks with Online banking facilities. It allows client of private banks to carry out their day to day
banking transactions.
The application illustrated or demonstrates the way to develop an online banking system by using
interactive web client by using JSP, spring mvc with safer way to access &encapsulate database by
EJB component. This suggests the application server simply deployable and accessible. This we
conclude that Online banking system is Quick, simple, authenticated access to accounts via the
desktop.
50