1. A Group Assignment On......
BANK MANAGEMENT SYSTEM
SUBMITTED TO
DEPARTMENT OF COMPUTER SCIENCE
ACHARYA PRAFULLA CHANDRA COLLEGE
BY
ARINDAM ROY
Roll no:
Registration No: 011911401745
DIPMALYA SARKAR
Roll no:
Registration No: 1011911101744
SUMANADAS
Roll no:
Registration No: 1011621301682
SUBJECT: SOFTWARE ENGINEERING LAB
SUBJECT CODE: CMSPCOR15P
UNDER THE GUIDENCE OF
GOBINDA KARMAKAR
(ASSISTANT PROFESSOR)
DEPARTMENT OF COMPUTER SCIENCE
ACHARYA PRAFULLA CHANDRA COLLEGE
NEW BARRACKPORE, NORTH 24 PARGANAS
3. [Type text] Page 2
ASSIGNMENT 01
[Preparation of software reaquirment document in standard format (SRS)]
1. Introduction:
Online Banking System is a web application that ensures a registered user to
enjoy banking online.
This section gives a scope description and overview of everything included in this
SRS document.
This document gives detailed functional and non-functional requirements for the
“BANK MANAGEMENT SYSTEM”.
1.1. Purpose:
The purpose for this document is described and a list of abbreviations and
definitions is provided and the requirements mentioned in it should be utilized by
software developer to implement the system.
This Online Banking project is a web application whereyou can transfer money
to other users and can have a close watch on all your transactions.
Also we have added extra security features to our Online Banking System project.
1.2. Scope:
A new user needs to verify his email id once before logging in to Online Banking
System.
Also when a registered user adds another user as his beneficiary, he gets a
verification mail. And, he has to verify the beneficiary before making any
transactions.
So this bank management system project allows user to safely meet your all
banking requirements like transfer money, view your transaction history and
request bank for money for the use of normal users(individuals), Industrialists,
Entrepreneurs, Educational Institutions(Financial sections), Organizations and
Academicians under transaction rate uncertainty.
4. [Type text] Page 3
1.3. Definitions, acronyms, and abbreviations:
Admin: A person that will be responsible for the addition and
deletion of the staff members from the general database of the
system.
Visitors: Anyone visiting the site.
Bank features: All the benefits and characteristics that bank provide.
These features will be explained to the new comer visiting the
website without an account.
SRS: A document that completely describes all of the functions of a
proposed system and the constraints under which it must operate.
1.4. Assumptions and Dependencies:
Every system requires some certain parameters to work, to work as per the
requirement, our system also requires some parameters.
Following are the assumptions and dependencies which are related to this online
banking project that we assume them as fulfilled before using this system, which
are as:
1. This project is a stand-alone project so it will not affect the
system where it will be embedded.
2. For balance checking, user will be having his/ her own user name, account
number registered for logged in before entire a process else, they’ll have to
register themselves on our website.
3. This software needs log in user to have some complete knowledge of
banking system and its working.
Software is dependent on access of Internet, as it is a remote application,
it is necessary to have internet access.
4. As this project contains valuable and new features so it will probably
remove the previous online banking systems embedded in some banks.
5. [Type text] Page 4
1.5. References:
This web application has been prepared on the basis of discussion with Team
members, faculty members and also taken information from following books &
website.
Websites:
1. www.google.com
2. www.wikipedia.org
Books:
1. Fundamental of Software Engineering by Rajiv Mall.
2. Software Engineering : A practitioner’s approach Ed. by Pressman, Roger.
3. Software Engineering Ed.2 by Jalota & Pankaj.
2.OVERALL DESCRIPTION:
2.1. Product Perspective:
Before making this a real time running online banking system, old system suffered
from many of the drawbacks.
The Traditional way of maintaining details of a user in a bank was to enter the
details and record them. Every time the user needs 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.
After a hectic day, the last thing you want to do is spend time waiting in line at
the bank, or even the post office. That's where Online Banking comes in. Many of
the benefits of doing our banking online are obvious:
You don't have to wait in line.
You don't have to plan your day around the bank's hours.
You can look at your balance whenever you want, not just when you get a
statement.
6. [Type text] Page 5
The project gives real life understanding of Online Banking System and activities
performed by various roles in the supply chain. Here, we provide 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 System and activities performed by various
roles in the supply chain.
o Online banking with key bank is fast, secure, convenient and free.
o Quick, simple, authenticated access to accounts via the web application.
o Online banking allows you to watch your money on a daily basis if you want to.
By keeping close tabs on your funds, you'llalways be aware of what's happening
in your bank account.
o It's also helpful to watch how much interest you're gathering on investments
and savings or what service charges you have incurred.
2.2. Product Functions:
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 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.
With this in mind, an important feature of this software is that it can be relatively
simple to use. The scope of this project encompasses:
Create New Account: A customer who having the account in the world can create
a virtual account through this module. This module receives the customer profile
7. [Type text] Page 6
details and the bank account details with the proof of the ownership of the bank
account.
Login: Virtual account holders can login in to the system using this module. Thus
this is the secured login page for the customers in the website.
Beneficiary: Beneficiary is a person who receives money. Here the customer can
add the beneficiaries to make fund transfer in the future.
View balances: Firstly login your account with your account number and
password. Then checking your balance. You simply select Account balances and
take a look at your balance and past transactions.
Transfer funds: When you select Transfer Funds, you'llbe asked where to transfer
the money to and from, when, and the amount.
Pay bills: To pay your bills online, you just need to add to your account the names
of the companies you wish to pay bills to.
Administrative Control: This module contains the administrative functions such
as view all virtual account, transactions, approve bank accounts, approve virtual
accounts etc.
2.3. User Characteristics:
Bank Frontend Employees: The Bank Employees would be the main users of the
Bank Management Systems. They may perform banking functions using EWS or
may facilitate customer in using ATM, as per bank's policy.
Bank Customers:Thecustomers would be able to use ATM Login, if bank wants to
provideuser with direct access, otherwise they may use ATM via. Bank Employee.
As working on this website will require some basic computer knowledge, we
classify knowledge required by the users in two basic categories:
Educational Level: At least the user of this system should be comfortable with
English Language.
Technical Expertise: User should be comfortable using general-purpose
applications on the computer system.
2.4. General Constraints:
1) The information of all the users must be stored in a database that is accessible
by the Online Banking System.
2) The Online Banking System is connected to the computer and is running all
24hours a day.
3) The users access the Online Banking System from any computer that has
Internet browsing capabilities and an Internet connection.
4) The users must have their correct usernames and passwords to enter into
the Online Banking System.
8. [Type text] Page 7
3.Specific Requirements:
3.1. User Interfaces:
For the efficient working of the User Interface, i.e. the Front End of the
system, the OS must be having at least Internet Explorer 8 installed.To login
to the website.
3.1.1. Hardware Interfaces:
For the hardware requirements, the SRS specifies the logical characteristics
of each interface b/w the software product and the hardware components.
It specifies the hardware requirements like memory restriction, cache size,
processor, RAM etc. those are required for software to run.
3.1.2. Software Interfaces:
For Hosting: Any Windows Operations System with DOS Support for
development. Primarily Windows 7/8/10 or Linux , installed Mysql, JAVA
16.0.1 , Eclipse with a working LAN connection to be mandatory.
3.1.3. Communication Interfaces:
The Customer mustconnect to the Internetto access the Website:
a) WiFi Connection.
b) Broadband Connection with an InternetProvider.
3.2. Functional Requirements:
1. Customer Registration
2. Login
3. Validation
4. Balance enquiry
5. Deposit
6. Withdrawal
7. Transfer money
1. Customer Registration: Customer must provide their necessary information’s for
registration in our system. Manager can also verify customer’s registration and
he/she can register himself/herself.
2. Login: Customer may login by entering customer name & password.
9. [Type text] Page 8
3. Validation: When a customer enters the ATM card, its validity must be ensured.
Then customer is allowed to enter the valid PIN.
Validation for PIN: After validating the card, the PIN must be ensured. If he/she fails
to enter valid code for three times then the card will not be returned to him. That
means the account can be locked.
4. Balance enquiry: This system must be networked to the bank’s computer. The
updated database of each every customer is maintained with the bank. Hence,
the balance information of every customer is available in the database and can
displayed to the customer.
5. Deposit: The customer can deposit the desired amount of money.
6. Withdrawal: A customer is allowed to enter the amount which he/she wishes to
withdraw. If the amount that is entered is less than the available amount and if
after withdraw if the minimum required balance is maintained then allow the
transaction.
7. Transfer Money: The customer can transfer the desired amount of money in
other’s account.
3.2.1. Some other sub-requirements:
Fill form: New comer should have to fill the form to register him/her self
with the bank.
Create account: A new visitor the Bank’s website would be interested in
opening a new accountin the Bank. So he mustbe provided an easy path to
create a new account in the bank.
Update balance: After every transaction like deposit, withdrawal, or fund
transfer, balance is updated of this account.
3.3. Performance Requirement:
This system helps in increasing the overall performance of the Bank Management
functionality by shifting a large chunk of load online causing in less hassle in
transactions like balance enquiry, deposit money, withdrawal money, etc. This
System is 18 hours Live per day (6.00am-11.59pm) giving us greater availability
time as compared to that of 9 hours offline activity.
10. [Type text] Page 9
3.4. Design Constraints:
This System will run on windows Xp ,windows 7, unix, and higher
platform/operating system with at least Internet Explorer 8 installed.
For Using: Any type of Operating System with at Least Internet Explorer Installed
and having minimum of 512 kbps working LAN compulsorily.
Minimum Hardware Requirements: Processor Pentium IVHDD 40 GBRAM 128
MB Cache 512 kb.
3.5. Software System Attributes:
3.5.1. Non-Functional Requirements:
1. Reliability
2. Security
3. Maintainability
4. Usability
5. Efficiency
6. Availability
Reliability: The Reliability of the overall project depends on the reliability of the
separate components. The main pillar of reliability of the system is the backup of
the database which is continuously maintained and updated to reflect the most
recent changes. Also, the system will be functioning inside a container. Thus, the
overall stability of the system depends on the stability of container and its
underlying operating system.
Security: Security is one of the most quality attribute of the software system.
Suppose a case where your entire bank data can be accessed by anyone, if they
had information about it, then withdrawal of cash from your account is possible.
Maintainability: Maintainability refers to those requirements that an end user
might be least affected even during the course of a maintenance activity.
Usability: Requirements on how difficult it will be to learn and operate the
system.
Efficiency: It means how and how much the system works efficiently. This refers
to addressing to capture if the proposed solution can deliver an acceptance
performance taking into account the time to perform activities and resource
utilisation levels.
11. [Type text] Page 10
Availability: The system should be available at all times, meaning the user can
access it using a web browser, only restricted by the down time of the server on
which the system runs. A customer friendly system which is in access of people
around the world should work 24 hours. In case of a hardware failure or database
corruption, a replacement page will be shown. Also, in case of a hardware failure
or database corruption, backup of the database should be retrieved from the
server and saved by the Organizer. Then the service will be restarted. It means
24x7 availability.
12. [Type text] Page 11
ASSIGNMENT 02
[ Preparation of Project ManagementPlanin standard format(SRS data dictionary) ]
Gantt Chart:
Fig: Gantt chart of Bank Management System
13. [Type text] Page 12
PERT Chart:
A PERT abbreviated as Project Evaluation and Review Technique.
It illustrates the project as a network diagram consisting of number of nodes
representing events.
It consists of network boxes and arrows.
M (Most likely Time) is the best estimate of the time in days required to
accomplish a task, assuming everything proceeds as normal. FT (Finishing Time) is
the actual finishing time in days.
14. [Type text] Page 13
ASSIGNMENT 03
[ Design documents ]
Use Case Diagram :
Class Diagram:
23. [Type text] Page 22
ASSIGNMENT 04
[Estimate Project Size Using Function Point (FP)]
Decomposition for FP-based estimation focuses on information domain values rather
than software functions. Here we estimate external inputs external outputs, external
inquiries internal logical files, and external interface files for the software. For the
purposes of this estimate, the complexity weighting factor is assumed to be average.
Estimation Information Domain Values:
Information Domain Est. count Weight FP count
Number of external inputs 22 4 88
Number of external outputs 12 5 60
Number of external inquiries 7 5 35
Number of internal logical files 2 10 20
Number of external interface files 1 7 7
Count Total 210
Value Adjust Factor:
SL. No. Factor Value
01 Backup and recovery 0
02 Data communication 5
03 Distributed processing 0
04 Performance critical 0
05 Existing operating environment 4
06 On-line data entry 5
07 Input transaction over multiple screens 0
08 IIFs Updated online 4
09 Information domain values complex 0
10 Internal processing complex 2
11 Code designed for reuse 2
12 Conversion / installation in design 3
13 Multiple installation 0
14 Application designed change 4
Total factor ∑(Fi) 29
24. [Type text] Page 23
The estimated number of FP is derived
FP = (total count) x [0.65 + 0.01 x ∑(Fi)]
= 210 x [0.65 + 0.01 x 29]
= 210 x 0.94
= 197
The cost per FP approximately = Rs. 300/-
The total estimated project cost = Rs. 59,100/-
The Labor Rate = Rs. 2,000/- per month
The Estimated effort = 30 person-month
The organizational average productivity of system = 6.5 FP / pm
25. [Type text] Page 24
ASSIGNMENT 05
[ Develop Code for an application using java swing]
Source Code Outputs:
(01) For LOGIN:
Next we enter the UserName & Password click on Login button
26. [Type text] Page 25
(02) For BankSystem Page:
Here we can see the Menu’s such as- File, Edit, View,
Window , Help- with their respective Popup Menus’
29. [Type text] Page 28
(03) For CREATE NEW ACCOUNT PAGE:
Here we create a new account with Account NO. 54321,
Account Holder- SUMANA DAS along with other details &
save it
Next we can check whether the new Account we previously
created appeared in our Database or not in - View All
Account Holders... Window
30. [Type text] Page 29
(04) For Delete an Account Page:
Next we can check whether the Account we previously
deleted appeared in our Database or not in - View All
Account Holders... Window:
31. [Type text] Page 30
(05) For SEARCH AN ACCOUNT PAGE:
Next we Search the Account with Account No. 8172 &
Account Holder name- bobby:
(06) For DEPOSIT MONEY PAGE:
Here we Deposit Rs. 500/- in the Account with Account No.
8172 & Account Holder name- bobby
32. [Type text] Page 31
Next we can see whether changes are successfully updated
in the Account with Account No. 8172 & Account Holder
name- bobby which had previously total Rs- 4500/- .After
Updating it should be now Rs- 5000/-
(07) For WITHDRAW MONEY PAGE:
Here we Withdraw Rs. 2000/- from the Account with
Account No. 8172 & Account Holder name- bobby
Next we can see whether changes are successfully updated
in the Account with Account No. 8172 & Account Holder
33. [Type text] Page 32
name- bobby which had previously total Rs- 5000/- .After
Updating it should be now Rs- 3000/-
(08) For PRINT ACCOUNT RECORD PAGE:
Previously in the Source code of Bank System Page we can
see the methods namely – findRec() & makeRecordPrint().
These two methods are needed to Print the Record. We are
trying to print the record of Account No.-8172
34. [Type text] Page 33
We can see the Customer Balance Report of Account No.-
8172 in PDF file format is generated to make ease to our
worries
(09) About HELP MENU:
35. [Type text] Page 34
(10) For LOG OUT or EXIT FROM THE BANK SYSTEM:
36. [Type text] Page 35
ASSIGNMENT 06
[Design Test Script/Test Plan for a small component of the Project]
Data Dictionary:
Table Name: USER_DETAILS
Field Name Integrity/Constraint Type & Size Description
Person_name Not null Varchar(50) This is the user name.
Account_no Primary key, Not null Number(20) This is the user bank
account number.
Date Not null Date This is the Date user
create an account.
Bank_balance Not null Number(15) The amount in user
account.
Password Not null Number(10) The password to login
account info.
Test Case Design: Login Page
Sl.No Test Case ID Do Expected Result
01 QT01-01 Enter user name in the
text box specified. User
name must not be more
than 50 characters and it
should not contain any
special characters and no
spaces including in the
start.
Enter password in the
text box specified.
Password must not be
more than 10 characters.
Clickon the Loginbutton.
If some entry is wrong
then click cancel.
Successful login in the
system if the values are
found in the database.
02 QT01-02 Clickon the Login button. Successfully open Bank
System page.
37. [Type text] Page 36
Test Case Design: Bank System Page
Sl.no Test Case ID Do Expected Result
01 QT02-01 View the home page of
Bank system.
Successfully show all
options of operation on
Bank system.
Test Case Design: Create New Account Page
Sl.no Test Case ID Do Expected Result
01 QT03-01 Fill all data field in
database.
Successfully created
the new account.
02 QT03-02 Click on Save button. Successfully saved all
details.
03 QT03-03 Click on Cancel button
if any insertion is
wrong.
Successfully cancel all
data in database.
Test Case Design: Delete an Account Page
Sl.no Test Case ID Do Expected Result
01 QT04-01 Insert account no and
person name to which
account to be deleted.
Show the account info
which should be
deleted.
02 QT04-02 Click on Delete button. Successfully delete the
account.
03 QT04-03 Click on Cancel button
if not to be deleted.
Successfully cancel the
Delete operation.
Test Case Design: Search an Account Page
Sl.no Test Case ID Do Expected Result
01 QT05-01 Insert account no and
person name to which
account to be
searched.
Show the data to be
filled.
02 QT05-02 Click on Search button. Successfully show the
searched account.
03 QT05-03 Click on Cancel button
if not to be searched.
Successfully cancel the
Search operation.
38. [Type text] Page 37
Test Case Design: Deposit Money Page
Sl.no Test Case ID Do Expected Result
01 QT06-01 Insert account no and
person name and
transaction date and
amount of money.
Show the data to be
filled.
02 QT06-02 Click on Save button. Successfully deposit
money and saved to
database.
03 QT06-03 Click on Cancel button
if some wrong entry or
not to be deposit.
Successfully cancel the
Deposit operation.
Test Case Design: Withdraw Money Page
Sl.no Test Case ID Do Expected Result
01 QT07-01 Insert account no and
person name and
transaction date and
amount of money.
Show the data to be
filled.
02 QT07-02 Click on Save button. Successfully withdraw
money and saved to
database.
03 QT07-03 Click on Cancel button
if some wrong entry or
not to be withdrawal.
Successfully cancel the
Withdraw operation.
Test Case Design: Print Account Record Page
Sl.no Test Case ID Do Expected Result
01 QT08-01 Insert account no. of
user.
Successfully show the
record.
02 QT08-02 Click on Ok button. Successfully print out
the record of that
account.
03 QT08-03 Click on Cancel button
if some wrong entry or
not to be printed.
Successfully cancel the
Print Account Record
operation.
39. [Type text] Page 38
Test Case Design: Help Page
Sl.no Test Case ID Do Expected Result
01 QT09-01 Click on Help menu if
any query.
Successfully show the
details of all
operations.
02 QT09-02 Click on Ok button. Successfully back to
previous page.
Test Case Design: Log Out Page
Sl.no Test Case ID Do Expected Result
01 QT10-01 Click on Log out
option.
Successfully show the
message box.
02 QT10-02 Click on Yes button. Successfully exit from
Bank System.
03 QT10-03 Click on No button. Successfully cancel the
log out operation.
Test Report:
Function Purpose of set of
test cases per area
Test case ID’s No. of Test cases
run
Number of Test
cases
Insert Data The verification of
username and
password.
QT1-01 8 100%
Log in Click on the log in
button.
QT1-02 8 100%
Bank system Open the home
page of the system.
QT2-0 8 100%
Create account Entry the data in all
field in database.
QT3-0 8 100%
Delete Remove data on
database.
QT4-0 8 100%
Search Search account by
account no. and
user name.
QT5-0 8 100%
Deposit Deposit money to
account.
QT6-0 8 100%
Withdraw Money withdrawal
from account.
QT7-0 8 100%
Print record View and print the
record of user
account info.
QT8-0 8 100%
Help Any questions you
may have.
QT9-0 8 100%
Log out Safelyremove from
website.
QT10- 8 100%
40. [Type text] Page 39
Following Message Boxes are some examples to display
when there is a violation of field validation……
When the User Name field is empty or incorrect
When the Password field is empty or incorrect
41. [Type text] Page 40
When the User Name & Password both fields are empty or
incorrect
42. [Type text] Page 41
When the searched Account doesn’t exists
When the Withdrawing Amount is greater than the actual
amount existing in an Account