Madeeha Shah - Online Bank Management System
Madeeha Shah - Online Bank Management System
APRIL 9, 2018
VERSION: 1.0
Revision History
Date Description Author Comments
09-04-2018 Version 1 Madeeha Shah
Document Approval
The following Software Requirements Specification has been accepted and approved by the following:
i
Online Bank Management System
Table of Contents
1. INTRODUCTION ..................................................................................................................................................... 1
1.1 Purpose ...............................................................................................................................................................1
1.2 Scope ..................................................................................................................................................................1
1.3 Overview ............................................................................................................................................................ 1
1.4 Reference Material ............................................................................................................................................. 1
1.5 Definitions and Acronyms..................................................................................................................................2
2. SYSTEM OVERVIEW 2
2.1 Technologies Used ..................................................................................................................................................2
2.2 Application Overview 2
2.4 Assumptions 2
3.2.2.2 Account 9
3.2.2.4 Supply 11
ii
Online Bank Management System
3.2.3.8 ATM 19
3.2.3.11 Loan 22
3.2.3.12 Message 23
3.2.3.19 Supply 30
3.2.4.2 Account 32
3.2.4.4 Loan 34
3.3 Design Rationale 35
4. DATA DESIGN 35
4.1 Data Description 35
4.1.1 Data Objects 35
iii
Online Bank Management System
User: 35
Admin: 35
Account: 36
Employee: 36
Bank: 36
Loan: 36
Money Transaction: 37
4.2 Data Dictionary 37
4.2.1 User 37
4.2.2 Admin 38
4.2.3 Employee 38
4.2.4 Bank 38
5.1.1 Login 40
5.1.2 User 42
5.1.3 Employee 44
5.1.4 Account 45
5.1.5 Bank 47
5.1.6 Message 49
6. HUMAN INTERFACE DESIGN 50
6.1 Overview of User Interface 50
6.2 Screen Objects and Actions 50
6.2.1 Registration Screen 50
iv
Online Bank Management System
6.2.7 Loan 53
v
Online Bank Management System
1. INTRODUCTION
1.1 Purpose
The basic idea to create this document is to illustrate the software design document of online
bank management system. That describes the functionality of proposed system and how to
operate this system. This document designs both functional and non-functional requirements for
proposed system. The intended Users of this document Includes the system users, owner,
administrator, employees.
This document is helpful for analyst, manager, designer, developer, Tester. The system analyst
uses this SDD to communicate with user. Manager assigns a task to team of developer with the
help of this document. Designer design the model of a system according to the requirements
embedded in this document. Developer develops the software that meets the requirement
mention in SDD. SDD also used by the tester to ensure that it meets requirements described in
requirement document.
1.2 Scope
Online Bank Management System is the website from which users can send or receive payment.
Online banking with the financial technology companies, e-commerce names, big data firms, and
cloud based software and service, the digital element is truly revolutionizing things, quite
quickly and effectively and it becomes even more relevant to take a moment to contemplate
where the banking sector.
Online Bank Management System Manage your cash flow more effectively. Online banking take
full advantage of discounted payment terms. Online banking Allow your employees to prepare
the transactions, Access all your accounts at any time, even outside office hours, carry out your
foreign currency transactions. Online Bank Management System simplifies your account
reconciliation and Make investments online.
1.3 Overview
First section contain introduction of the project, second section of SDD contain system overview,
in this section describe overall system in high level definition. Third section contains system
architecture of the project, main components and its sub components are define in section three.
Four sections contain data design in this section design the system using Entity Relationship
Diagram and Data Flow Diagram etc. Section five contains component design, in which different
comments are design. Section six of the SDD contains Human Interface Design and Last section
contains the Requirements Matrix.
2. SYSTEM OVERVIEW
2.1 Technologies Used
We will use MYSQL for database. CSS is used to make the front-end of the site and MY SQL
database and PHP are used for back-end. My SQL database is used to save the records of user,
products and orders, when register a new user on this site, then system save his/her record for
later used when he/she log in. PHP is used for communication between user and bank.
2.2 Application Overview
The main goal of the project is to enable user to create account online. Users can send or receive
payment online. User performs money transaction online and get loan online. This project gives
the user to an application account and by using this; user can use functionalities of the
application easily.
2.3 Design Languages
Unified Modeling Language (UML) is used during development of online bank management
system. Entity Relationship diagram, Data Flow Diagrams, Class Diagrams, Activity Diagrams,
Sequence Diagrams and State Machine Diagrams are used during development of online bank
management system and all these diagrams are types of UML (Unified Modeling Language).
2.4 Assumptions
The user of the web application will have the laptop or desktop computer and internet
connection along with a current multi‐media web browser to view the application. All these
things are important to use online bank management system.
2.5. General Constraints
The application will be completed using a MYSQL relational database. The developer of the
application requires a local web server for testing to include Apache Web Server 2.0, PHP 5.0
and MYSQL 5.1.
2.6. System environment
The application is designed to work on all operating systems that can support a current
web browser.
3. SYSTEM ARCHITECTURE
3.1 Architectural Design
Online Bank Management System contains different modules. These modules are combined to
provide services to user. Online Bank Management System includes various modules such as
Account, Money Transaction, Loan. Online Bank Management System Register a new user to
provide more rights than a simple user of the site. Registered user also open account and can
perform money transaction. Money Transaction module perform different activities such as
Deposit Money, Withdraw, Money and Transfer Money. Account module is used to create
account, Update account, Delete account. Loan module provides the loan to the user online. User
can get the information about his/her balance. All these modules are combined to achieve entire
functionality of Online Bank Management System.
3.1.1 Web Architecture
Internet, Web Application, Web Server and Database are used in Online Bank Management
System. Desktop computer or Laptop connects with internet. Using Web Application
communication with Web Server, Web Server further communicate with Database to save data
into database or get data from database.
Internet
Web
Application
Web Server
Database
Web Server
Database
User
-userName: string
-accountNumber: integer
-address: string
-dateOfBirth: integer
-cnic: integer
+createAccount()
+depositMoney()
+WithdrawMoney()
+BorrowLoan()
+purchaseItem()
+returnItem()
+accountType()
+loanType()
Administrator Employee
-id: integer -empName: string
-name: char -id: integer
-address: string -adress: string
-dateOfBirth: integer -dateOfBirth: integer
-contactNumber: integer -contactNumber: integer
-cnic: integer -cnic: integer
+addAccount() +collectMoney()
+updateAccount() +openAccount()
+deleteAccount() +closeAccount()
+provideInformation() +provideInformation()
+fulfillLoanRequest() +fullfillLoanRequest()
+addEmployee()
+updateEmployee()
+deleteEmployee()
User
-userName: string Account
-accountNumber: integer
-address: string -accountNumber: string
-phoneNumber: integer -balance: integer
-dateOfBirth: integer -userName: string
-userId: integer -userContacNumber: integer
-userCnic: integer
+createAccount()
+createAccount() +updateAccount()
*
+depositMoney() 1 +deleteAccount()
+withdrawMoney() +returnBalance()
+updateAccount() +accountType()
+deleteAccount()
+borrowLoan()
+applyForOnlineBanking()
+purchaseItem()
+returnItems()
+accoutType()
+loanType()
CurrentAccount SavingAccount
-accountNumber: Integer -accountNumber: Integer
-balance: Integer -balance: Integer
-userName: String -userName: String
-userContactNumber: Integer -userContactNumber: Integer
+transaction() +transaction()
+deposite() +deposite()
+withdraw() +withdraw()
Bank
Message
-customerDetail: String
-rulesAndRegulations: String -bankId: Integer
-transactionType: String -name: Character
-transactionDate: Integer
-transactionTime: Integer +accountBalance()
1..* +balanceDetail()
+provideLoan() 1
+updateDetail()
+collectMoney()
+moneyTransaction() 1..* User
+showBalance()
+checkBalance() -userName: String
1 -accountNumber: Integer
+issueReceipt()
-address: String
-dateOfBirth: Integer
-userId: Integer
-phoneNumber: Integer
-userCnic: Integer
+createAccount()
+depositeMoney()
+withdrawMoney()
+borrowLoan()
+accountType()
+loanType()
User
LoginDetails
-userName: string
-accountNumber: integer -emailId: string
-address: string -password: string
-phoneNumber: integer
-dateOfBirth: integer +setEmailId(email: string)
-userId: integer +getEmailId()
-userCnic: integer +setPassword(psw: string)
+getPassword()
+createAccount() +login()
+depositMoney() +logout()
+withdrawMoney() +forgetPassword()
+updateAccount() +passwordSend()
+deleteAccount()
+borrowLoan()
+applyForOnlineBanking() 1
Account
+purchaseItem()
+returnItems() -accountNumber: string
+accoutType() * -balance: integer
+loanType() -userName: string
-userContacNumber: integer
1 +createAccount()
+updateAccount()
+deleteAccount() Bank
+returnBalance()
+accountType() * -customerDetail: string
-rulesAndRegulations: string
-transactionType: string
1..* 1 +transactionDate: integer
+transactionTime: integer
Message +provideLoan()
-bankId: Integer 1 +updateDetails()
-name: String +collectMoney()
1..* +moneyTransaction()
1 +showBalance()
+accountBalance()
+balanceDetail() +checkBalance()
+issueReciept()
ChequeRequests
*
-accountNumber: string
-accountName: string
-dateRequest: string
-status: string
+sendRequest()
: User : LoginDetails
1 : Login()
2 : VerifyDetails()
3 : Successfull()
4 : ErrorMessage()
5 : ForgetPassword()
6 : GetSecretInformation()
7 : PasswordSend()
8 : WrongInformation()
3.2.2.2 Account
: Account
: User
1 : CreateAccount()
2 : Verify/TakeInformation()
3 : EnterAccountType()
4 : AccountType()
5 : SuccessfullyCreated()
6 : ReturnBalance()
7 : CheckBalance()
8 : GiveInformationAboutBalance()
9 : UpdateAccount()
10 : SuccessfullyUpdated()
11 : DeleteAccount()
12 : SuccessfullyDeleted()
: Customer : Bank
1 : password()
2 : VerifyPassword()
4 : Withdraw money()
5 : Deposit money()
6 : Issue receipt()
7 : Check balance()
8 : Show balance()
9 : BorrowLoan()
10 : LoanType()
11 : GiveInformationAboutLoan()
12 : GetLoan()
3.2.2.4 Supply
2 : Packing()
5 : Checking product()
6 : Supply product()
7 : Counting()
8 : Pay bill()
9 : Take signature()
System
Login
User User
Actor User
System
Add Account
Administrator Administrator
Actors Administrator
System
Login
<<include>>
Update Account
Administrator Administrator
<<include>>
log out
Actor Administrator
Steps 1. Administrator selects the “User Account” from the user view.
2. Then enter the new information in Update form.
3. Then click on “Update” button.
4. Account is successfully updated.
1. Now all information of account is saved
Post-Conditions 2. Account information is edited
3. Now account information form is also updated
System
Login
<<include>>
Delete Account
Administrator Administrator
<<include>>
log out
Actor Administrator
Steps 1. Administrator selects the “User Account” from the user view.
Login
<<include>>
Deposit Money
User <<include>> User
log out
Actor User
Steps 1. User select the “deposit Money” option from the menu and enter
his/her account detail.
2. Then presses the “Save” button to deposit money
System
Login
<<include>>
Withdraw Money
User <<include>> User
log out
Actor User
Steps 3. User Select the “withdraw Money” option from the menu and
enter his/her account detail.
4. Then presses the “Save” button to withdraw money
System
Login
<<include>>
Transfer Money
User <<include>> User
log out
Actor User
Description Users can transfer money online from their account to other
account.
1. System must be connected with the backend system.
Pre-Conditions 2. User should correctly transfer money by entering user name,
password, ID.
3. User must have a unique Name, Password and ID.
Steps 1. User select the “transfer Money” option from the menu and
enter his/her account detail.
3.2.3.8 ATM
System
ATM
User
Actor User
Steps 1. User Select the “ATM” option from the menu and enter
his/her password, ID, name.
System
User
User
Actor User
Steps 1. User Select the “check book” option from the menu and
enter his/her password, ID, name.
System
Login
<<include>>
log out
Actor User
Description Users can pay utility bills online without going to the bank.
1. System must be connected with the back end system.
Pre-Conditions 2. User should correctly pay utility bills by entering user
name, password, ID.
3. User must have a unique Name, Password and ID.
Steps 1. User Select the “utility bills” option from the menu.
3.2.3.11 Loan
System
Login
<<include>>
Get Loan
User <<include>> User
log out
Actor User
Description Users can get loan online without going to the bank.
1. System must be connected with the back end system.
Pre-Conditions 2. User should correctly get loan by entering user name,
password, ID.
3. User must have a unique Name, Password and ID.
3.2.3.12 Message
System
Get Message
User User
Actor User
Users can get a message about their accounts after doing any
Description changes in balance of their accounts.
1. System must be connected with the back end system.
Pre-Conditions 2. User should correctly activate message by entering user
name, password, ID.
3. User must have a unique Name, Password and ID.
4.All mandatory fields should be filled appropriately
Steps 1. User Select the “message activate” option from the menu.
System
Login
<<include>>
Add employee
Administrator <<include>> Administrator
log out
Actor Administrator
Administrator can add employee.
Description
1. System must be connected with the backend system.
Pre-Conditions 2. Administrator must be logged in to the system.
3. Administrator must have all the information about the
Employee.
1. Administrator select the “Add Employee” option from the menu
Steps and enter information of new employee..
2. Then presses the “Save” button to Add new Employee.
System
Login
<<include>>
Update employee
Administrator Administrator
<<include>>
log out
Actor Administrator
System
Login
<<include>>
Delete employee
Administrator
<<include>>
log out
Actor Administrator
System
Purchase Item
Customer Customer
Actor Customer
System
Purchase Return
Customer Customer
System
Login
<<include>>
View Reports
<<include>>
Administrator
Log out
Actor Administrator
3.2.3.19 Supply
System
Supply items
Supplier Supplier
Actor Supplier
Start
Login Successfully
3.2.4.2 Account
Start
Account Number
Valid
Balance
Check the Balance
Account
No Balance
Insert Card
Card Valid
CARD Invalid
Enter PIN
Pin Valid
PIN Invalid
Select Transaction
Option=withdraw Option=transfer
Option=deposit
Yes
Update database
Print receipt
No
No
Logout
Logout Take cash and receipt
3.2.4.4 Loan
Login User
Login
Invalid Detail
Valid Detail
Logout
4. DATA DESIGN
4.1 Data Description
In Online Bank Management System data is preserved using MYSQL database. Data about user,
employee, admin, accounts, money transaction, loan and reports are stored in MYSQL database using
PHPs script.
Id: To uniquely identify each user in database that is used to create, update, delete account of
user. ID is unique for user.
Name: Indicate the name of user that is used to create, update, and delete account of user.
Account Number: Account number is assigned to the user after creating account and it is used to
update or delete account.
Age: Indicate the age of user.
Address: Show the present address of user.
E-mail: E-mail of user used to interact with system.
Phone Number: Phone number is used for communication with user.
CNIC: Indicate the national identification number of user.
Employee:
User Details: It Indicate that Bank contains the information about its all users.
Loan Details: It indicates that Bank contains detail about loan.
Transaction Date: It indicates that Bank contains the date at which money transaction is
performed by user.
Transaction Time: Itindicates that Bank contains the time at which money transaction is
performs by the user.
Loan:
Id: Touniquely identify each user in database. It indicates that user can get loan online with the
help of ID. ID is unique for user.
Name: Indicate the name of user that is used to get loan online.
Account Number: Account number is used to send amount of loan in accounts.
Address: Show the present address of user.
E-mail: E-mail of user used to interact with system.
Phone Number: Phone number is used for communication with user.
CNIC: Indicate the national identification number of user.
Money Transaction:
Id Integer
Name String
Date of birth Integer
Address String
E Mail String
Integer
Phone Number
Integer
CNIC
4.2.2 Admin
Id Integer
Name String
Address String
Age Integer
E Mail String
Phone Number Integer
CNIC String
4.2.3 Employee
Id Integer
Name String
Address String
Age Integer
E Mail String
Phone Number Integer
CNIC String
4.2.4 Bank
5. COMPONENT DESIGN
ESIGN
5.1 Objects
5.1.1 Login
sendPassword() This method specifies that it can possible that user forget
his/her password so if user forget password then this
method send password to the user.
Pseudo Code
1. Input user ID, Name.
2. Match the ID and name of the user with the ID and
Name of the user in database.
3. If both are matched then send password to the user
4. Else
Print “Information is incorrect”.
5.1.2 User
Pseudo Code
Pseudo Code
(1) Input Account Number. Id and name from User.
(2) Match the Account Number, Id, and name of the
user with the account Number, Id and name of
the user with the Account Number, Id and name
of the user in database.
(3) If these are matched then display message “You
can withdraw money from the account”.
(4) If one of these is incorrect
Print “Invalid Information”,
(5) Store information in database.
borrowLoan() User can borrow loan online.
Pseudo Code
(1) Input Account Number, Id and name from User.
(2) Match the Account Number, Id, and name of the
user with the account Number, Id and name of
the user with the Account Number, Id and name
of the user in database.
(3) If these are matched then display message “You
can borrow loan” and then transfer the money of
loan into the account of user.
(4) If one of these is incorrect
Print “Invalid Information”,
(5) Store information in database.
5.1.3 Employee
Brief Brief Description: Employee class is responsible for controlling the actions that are
performed by employee class such as collect money, open account, close account, provide
information to the user and fulfill the loan request.
Attributes Attribute Description
Id To uniquely identify each user in database. It is unique for
employee.
Name Indicate the name of user.
Address Indicate the address of user.
Contact Number It indicates the contact number of user.
Email Email of user is used to interact with system
CNIC
Indicate the national identification number of the user.
Methods Method Description
collectMoney() Employee Collects money online.
Pseudo Code
(1) Get the all required information from the User.
(2) If information is correct then click on the option of
collect money and Display message” Money is
successfully collected and added in the account of
the user”.
(3) Else Display Information from the User is
incorrect so, Money cannot be collected or added
in the account of the user.
(4) Store information in database.
openAccount() Employee can open account of the user online.
Pseudo Code
(1) Get the all required information from the user.
(2) If information is correct then click on the option of
open account and Display message” Account is
successfully opened”.
(3) Else Display Information from the user is incorrect
so, account cannot be opened.
(4) Store information in database.
closeAccount() Employee can close account of the user online.
Pseudo Code
(1) Get the all required information from the user.
(2) If information is correct then click on the option of
close account and Display message” Account is
successfully closed”.
(3) Else Display Information from the user is incorrect
so, account cannot be closed.
(4) Store information in database.
provideInformation() Employee provides information about balance to the user.
Pseudo Code
(1) Get the all required information from the user.
(2) If information is correct then click on the option of
provide information and Display message”
Information is provided to the user successfully.”.
(3) Else Display Information from the user is incorrect
so, user cannot get information.
(4) Store information in database.
5.1.4 Account
5.1.5 Bank
5.1.6 Message
Brief Description: Message class is used to provide the information to the user, about
the current balance in the account.
Attributes Attribute Description
Bank Id Bank Id shows the id of the bank.
Bank Name Bank Name shows the name of the bank.
Methods Method Description
balanceDetail() Balance detail provides the detail about the balance in the
account of the user.
Pseudo Code
(1) Input Account Number. Id and name from User.
(2) Match the Account Number, Id, and name of the
user with the account Number, Id and name of the
user with the Account Number, Id and name of
the user in database.
(3) If these are matched then click on the option of
show balance. Balance will be showed
successfully by Message.
(4) If one of these is incorrect
Print “Invalid Information”,
(5) Store information in database.
User fills the registration form. If form is filled correctly by user then displayed message to the
user will “User Register Successfully” Otherwise “Invalid Information so, reset the information”.
Registration Form
First Name
Last Name
User Name
Password
Address
Registration Reset
Only registered user will be login. User fills the login form. If form is correctly filled by user
then display message “User login successfully” Otherwise display message “Invalid
Information”.
Login Screen
User Name
Password
Login Reset
User can also reset his/her password by putting Old Password, New Password. If the
information by the user is correct then display message “Your Password Reset Successfully”.
Old Password
New Password
Reset Cancel
Password
Enter ID
Enter Name
Enter Password
Create Reset
Account
Admin can update account of the user by entering the user ID, User Name, and Password. If the
entered information of the user is correct then admin can update the account of the user
successfully otherwise it is compulsory to the admin to enter correct information about the user.
Enter ID
Enter Name
Enter Password
Update Reset
Account
Enter ID
Enter Name
Enter Password
Delete Reset
Account
6.2.7 Loan
If the user wants to get loan then it is must to enter his/her ID, Name, and Account
Number. Then select the option of loan from database and select the type of loan. If the
information about the user will correct then user can get loan otherwise user cannot get
loan and reset the information to get loan.
Enter ID
Enter Name
If the user wants to perform money transaction then it must to the user that he/she enter
his/her ID, Name, Account Number then select the option of transaction from database
and select the type of transaction. If the information entered by the user will correct then
message will be display for the user ’’You Can Perform Transaction” Otherwise “reset
the information
Enter ID
Enter Name
Perform
Reset
Transaction
7. REQUIREMENTS MATRIX
Compon Registrati Logi Reset Ban Accou Loa Money Use Employ Admin
ents on n User k nt n Transacti r ee
Login on
Passwor
d
UC1 X X X
UC2 X
UC3 X
UC4 X
UC5 X
UC6 X
UC7 X
UC8 X
UC9 X
UC10 X
UC11 X X X
UC12 X X
UC13 X X
UC14 X X
UC15 X X
UC16 X X X
UC17 X X
UC18 X
UC19 X X