0% found this document useful (0 votes)
14 views15 pages

Synopsisfinal

The document outlines a project for a Bank Management System, detailing its structure, modules, and functionalities, developed using Java across multiple platforms. Key modules include user authentication, account management, customer management, transaction processing (deposit, withdrawal, transfer), user management, and report generation. The project aims to create a user-friendly interface for essential banking operations, serving as a practical application of Java programming and GUI development principles.

Uploaded by

vaishnavi ninawe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views15 pages

Synopsisfinal

The document outlines a project for a Bank Management System, detailing its structure, modules, and functionalities, developed using Java across multiple platforms. Key modules include user authentication, account management, customer management, transaction processing (deposit, withdrawal, transfer), user management, and report generation. The project aims to create a user-friendly interface for essential banking operations, serving as a practical application of Java programming and GUI development principles.

Uploaded by

vaishnavi ninawe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Title of the Project : Bank Management System

(2 ) Project Category:

Desktop Application

(3) Tools / Platform and Languages to be Used:

Language: Java

Platform: Windows, Linux, macOS

IDE: IntelliJ IDEA, Eclipse,

GUI: Swing, JavaFX (likely used for the mentioned pages)

Server : Xampp

Database (Optional): MySQL,

(4) Complete Structure of the System:


➢ Number of Modules and its Description (Aligned with Mentioned Pages):
1. Login Module:
o Description: Handles user authentication for bank staff/administrators to
access the system.
o Functionalities:
▪ User login with username and password.
▪ Basic input validation.
▪ Navigation to the Main Menu upon successful login.
2. Main Menu Module:
o Description: Provides a central navigation point to access other modules of the
system.
o Functionalities:
▪ Displays options to navigate to Account Management, Customer
Management, Transaction Management (Deposit, Withdraw,
Transfer), User Management, and Report Generation.
▪ Option to logout.
3. Account Management Module (Account Page, Balance Page):
o Description: Manages bank accounts and displays account balances.
o Functionalities:

1
▪ Account Page:
▪ Open new accounts (Savings, Current).
▪ Close existing accounts.
▪ View basic account information (account number, type,
customer).
▪ Balance Page:
▪ View the current balance of a specific account.
4. Customer Management Module (Customer Page, Customer Report Page):
o Description: Manages customer information and generates customer reports.
o Functionalities:
▪ Customer Page:
▪ Add new customer details.
▪ View existing customer details.
▪ Update customer information.
▪ Link/unlink accounts to customers.
▪ Customer Report Page:
▪ Generate lists of all customers.
▪ Generate reports based on specific customer criteria (if
implemented).
5. Deposit Module (Deposit Page):
o Description: Handles the process of depositing funds into bank accounts.
o Functionalities:
▪ Accept account number and deposit amount as input.
▪ Validate account and amount.
▪ Update the account balance (increase).
▪ Record the deposit transaction.
6. Withdrawal Module (Withdraw Page):
o Description: Handles the process of withdrawing funds from bank accounts.
o Functionalities:
▪ Accept account number and withdrawal amount as input.
▪ Validate account, amount (sufficient balance), and withdrawal
limits.
▪ Update the account balance (decrease).
▪ Record the withdrawal transaction.
7. Transfer Module (Transfer Page):
o Description: Handles the process of transferring funds between bank accounts.
o Functionalities:
▪ Accept source account number, destination account number,
and transfer amount as input.
▪ Validate both accounts and sufficient balance in the source
account.

2
▪ Update the balances of both accounts.
▪ Record the transfer transaction.
8. User Management Module (User Page):
o Description: Manages system users (bank staff/administrators).
o Functionalities:
▪ Add new users.
▪ View existing users.
▪ Update user roles (if applicable).
▪ Manage user passwords.

9. Report Generation Module (Customer Report Page - partially covered above,


potentially more):
o Description: Generates various reports for analysis and record-keeping.
o Functionalities:
▪ Generate account statements (likely accessible from the
Account Page or a separate option).
▪ Generate daily/monthly transaction reports (not explicitly
mentioned as a page but a likely functionality).
▪ Customer Report Page: (as mentioned above).

➢ Modular Chart / System Chart

3
➢ ER Diagram :

4
➢ Process Logic of Each Module (Mapped to Pages):
i. Login Module (Login Page):
a. User enters their Username and Password on the Login Page.
b. The system retrieves the stored user credentials from the database based on
the entered username.
c. The system securely verifies if the entered password matches the stored
password (likely using password hashing).
d. If the credentials are valid:
i. The system authenticates the user.
ii. The Main Menu Page is displayed.
iii. The user's role and permissions are potentially loaded for authorization
in subsequent modules.
e. If the credentials are invalid:
i. An error message is displayed on the Login Page prompting the user to
try again.

ii. Main Menu Module (Main Menu Page):


a. Upon successful login, the Main Menu Page is displayed with various options
represented as buttons or menu items.
b. The user interacts with the Main Menu Page by clicking on a specific option
(e.g., "Open Account," "Deposit," "View Balance," "Manage Customers,"
"Manage Users," "Generate Reports," "Logout").
c. Based on the user's selection, the system navigates to the corresponding
module's page (e.g., clicking "Open Account" navigates to the Account Page for
opening a new account).
d. Clicking "Logout" initiates the logout process, clearing the user's session and
returning them to the Login Page.

iii. Account Management Module (Account Page, Balance Page):


a. Account Page (Opening New Account):
i. User navigates to the Account Page and selects the "Open Account"
option.
ii. The system displays fields for entering customer details (if not already
selected), account type (Savings, Current), and initial deposit amount.
iii. User enters the required information and clicks "Submit" or "Open
Account."
iv. The system validates the entered data (e.g., ensures a valid account
type is selected, initial deposit is a positive number).
v. The system generates a unique Account Number.
vi. The system stores the new account details (linked to the customer) in
the database.

5
vii. A confirmation message with the new account number is displayed on
the Account Page.

b. Account Page (Closing Account):


i. User navigates to the Account Page and selects the "Close Account"
option.
ii. The system prompts for the Account Number to be closed.
iii. User enters the account number and clicks "Submit" or "Close
Account."
iv. The system validates the account number and checks if the account
balance is zero and if there are any pending transactions.
v. If the conditions are met, the system marks the account as "Closed" in
the database.
vi. A confirmation message is displayed on the Account Page.

c. Balance Page (Viewing Balance):


i. User navigates to the Balance Page.
ii. The system prompts for the Account Number for which the balance is
to be viewed.
iii. User enters the account number and clicks "View Balance."
iv. The system retrieves the current balance for the specified account from
the database.
v. The account number and its corresponding balance are displayed on
the Balance Page.

iv. Customer Management Module (Customer Page, Customer Report Page):


a. Customer Page (Adding New Customer):
i. User navigates to the Customer Page and selects the "Add New
Customer" option.
ii. The system displays fields for entering customer details (Name,
Address, Contact Information, etc.).
iii. User enters the required information and clicks "Submit" or "Add
Customer."
iv. The system validates the entered data (e.g., ensures mandatory fields
are filled).
v. The system generates a unique Customer ID.
vi. The system stores the new customer details in the database.

6
vii. A confirmation message with the new Customer ID is displayed on the
Customer Page.

b. Customer Page (Viewing/Updating Customer):


i. User navigates to the Customer Page and selects "View/Update
Customer."
ii. The system prompts for the Customer ID or Account Number to search
for the customer.
iii. User enters the identifier and clicks "Search."
iv. The system retrieves the customer details from the database and
displays them on the Customer Page.
v. For updating, the user modifies the necessary fields and clicks "Update
Customer."
vi. The system validates the updated data and saves the changes to the
database.
vii. A confirmation message is displayed on the Customer Page.

c. Customer Report Page (Generating Reports):


i. User navigates to the Customer Report Page.
ii. The system may provide options to filter or select specific criteria for
the report (e.g., all customers, customers with specific account types).
iii. User selects the desired options and clicks "Generate Report."
iv. The system retrieves the relevant customer data from the database.
v. The system formats the data into a readable report (e.g., a table
displaying customer names and contact information) and displays it on
the Customer Report Page or provides an option to print or export.

v. Deposit Module (Deposit Page):


a. User navigates to the Deposit Page.
b. The system prompts for the Account Number and the Deposit Amount.
c. User enters the information and clicks "Deposit."
d. The system validates the account number and the deposit amount (should be
a positive number).
e. The system retrieves the current balance of the specified account from the
database.
f. The deposit amount is added to the current balance.
g. The account balance is updated in the database.

7
h. A new transaction record (with transaction type "Deposit," date, time, amount,
and account number) is added to the transaction history in the database.
i. A confirmation message displaying the deposit details and the updated balance
is shown on the Deposit Page.

vi. Withdrawal Module (Withdraw Page):


a. User navigates to the Withdraw Page.
b. The system prompts for the Account Number and the Withdrawal Amount.
c. User enters the information and clicks "Withdraw."
d. The system validates the account number and the withdrawal amount (should
be a positive number).
e. The system retrieves the current balance of the specified account from the
database.
f. The system checks if the withdrawal amount is less than or equal to the current
balance and if it adheres to any withdrawal limits.

g. If sufficient funds and within limits:


i. The withdrawal amount is subtracted from the current balance.
ii. The account balance is updated in the database.
iii. A new transaction record (with transaction type "Withdrawal," date,
time, amount, and account number) is added to the transaction history.
iv. A confirmation message displaying the withdrawal details and the
updated balance is shown on the Withdraw Page.
h. If insufficient funds or exceeds limits:
i. An appropriate error message is displayed on the Withdraw Page.

vii. Transfer Module (Transfer Page):


a. User navigates to the Transfer Page.
b. The system prompts for the Source Account Number, Destination Account
Number, and the Transfer Amount.
c. User enters the information and clicks "Transfer."
d. The system validates both account numbers and the transfer amount (should
be a positive number).
e. The system checks if the source account has sufficient balance for the transfer.
f. If sufficient funds:
i. The transfer amount is subtracted from the balance of the source
account in the database.
ii. The transfer amount is added to the balance of the destination account
in the database.

8
iii. Two new transaction records are added to the transaction history: one
for the debit from the source account (transaction type "Transfer Out")
and one for the credit to the destination account (transaction type
"Transfer In"), both including date, time, amount, and the respective
account numbers.
iv. A confirmation message displaying the transfer details is shown on the
Transfer Page.
g. If insufficient funds or invalid account numbers:
i. An appropriate error message is displayed on the Transfer Page.

viii. User Management Module (User Page):


a. User navigates to the User Page (likely accessible only to administrators).
b. The system may display a list of existing users with options to "Add New User,"
"View User Details," or "Update User Roles."
c. Adding New User:
i. The system displays fields for entering new user credentials (Username,
Password, Role).
ii. User enters the information and clicks "Add User."
iii. The system validates the data (e.g., ensures a unique username).
iv. The new user credentials (with password hashed) are stored in the
database.
v. A confirmation message is displayed on the User Page.
d. Viewing User Details:
i. The system prompts for a username to search for.
ii. The system retrieves and displays the user's details (excluding the
actual password for security reasons).
e. Updating User Roles:
i. The system allows administrators to select a user and modify their
assigned role (which determines their access permissions within the
system).
ii. The updated role is saved in the database.

ix. Report Generation Module (Customer Report Page - and potentially background
processes):
a. Customer Report Page: (Process logic described under Customer Management
Module).
b. Account Statements: This functionality might be triggered from the Account
Page (e.g., a "Generate Statement" button) or a separate "Report Generation"
section in the Main Menu. The process involves:
i. Prompting for the Account Number and Date Range.

9
ii. Retrieving all transactions for that account within the specified date
range from the database.
iii. Retrieving the account's opening balance (if needed for the statement).
iv. Formatting the transactions and account information into a readable
statement.
v. Displaying the statement or providing an option to print or export.

c. Daily/Monthly Transaction Reports: These reports are likely generated by


administrators through a dedicated "Report Generation" section in the Main
Menu. The process involves:
i. Selecting the desired report type (Daily, Monthly).
ii. Selecting the specific date or month for the report.
iii. Retrieving all transaction records within the specified period from the
database.
iv. Filtering and aggregating the data as needed for the report.
v. Formatting the data into a readable report (e.g., showing total deposits,
total withdrawals) and displaying it or providing options to print or
export.

10
➢ Web Page ScreenShot :

Login Page :

Customer Page :

11
Account Page :

Withdraw Page :

Deposit Page :

12
Transfer Page :

Customer Report :

13
Balance Information :

User Information :

14
➢ Types of Report Generation:

Account Statements (accessible via Account Page or separate option)

Daily Transaction Report (likely a separate option)

Monthly Transaction Report (likely a separate option)

Customer List (Customer Report Page)

Potentially other reports as needed (e.g., list of open accounts, closed accounts).

(5) References:

https://www.apachefriends.org/index.html

http://www.jdbc-tutorial.com

https://docs.oracle.com/javase/tutorial/uiswing/

https://refactoring.guru/design-patterns

(6) Objective of the Project:

The primary objective of this project is to develop a user-friendly Bank Management


System in Java with a graphical user interface, enabling users to perform essential banking
operations such as account creation, balance inquiry, deposits, withdrawals, fund
transfers, customer management, and basic user administration through dedicated pages.

This project aims to provide a practical application of Java programming and GUI
development principles while simulating the core functionalities of a banking system.

15

You might also like