Software Engineering
Software Engineering
BACHELOR OF TECHNOLOGY
IN
Submitted To:
Submitted by:
This project report about the development of Banking Management System using Java
Programming Environment that involves GUI including the Swing and AWT. This system
will eliminate the need for human intervention in the specified operations with the aim of
increasing efficiency of the banking operations and customer experience. Some of the
identified features are account control, operation, and identification of customers.
The idea for the project helps to overcome the shortcomings of banking systems that are
currently in use, with such disadvantages; unsuitable graphical user interface and lack of
sophisticated features. Java is used to provide the strong platform as a framework while
making use of both Swing and AWT to help the user interface run smoothly on the backend
and presenting a well-designed and easy to understand user interface for the user. This
approach included identification of the customer’s needs as well as formulating and preparing
a detailed outline of the software development life cycle that consists of the planning, design,
coding, as well as testing phase to produce a high standard software.
The project has the following strengths: offers a convenient tool for tracking finances, helps
improve the customer’s financial condition, and allows for generating detailed reports, which
is a valuable ability nowadays. The project also has the following limitations: lacks some
additional options that could be included into the online banking function and use more
secure protection to prevent fraudsters.
CHAPTER 1
INTRODUCTION
1.1 Background
The banking indeed has a key position in the world economy as it offers a set of services that
are needed for proper financial activity of individuals and companies. Advanced and efficient
management systems are mandatory since banks undertake a turbulent and voluminous
operation every day. The existing traditional banking systems have several drawbacks, such
as low efficiency in processing targeted operations, undesirable layouts of interfaces, and
various security risks. These problems may cause difficulties in the execution of transactions,
customers’ dissatisfaction, and excessive costs, under which the competitive advantage of a
bank can be questioned.
The advancement of technology in the modern world also increased the need for better and
efficient banking platforms. Customers also want convenient experience, fast completion of
the transactions and efficient security measures. As a result, banks are forced to upgrade their
management systems in a bid to meet these expectations together with the strict regulatory
frameworks now in place. An effective Banking Management System (BMS) offer a solution
to these challenges through improving the efficiency of banking operations, customer
experience as well as security in storage and sharing of information.
Problem Statement: Most current banking management systems are characterized with low
functional capability, inconvenient and flooded interface as well as low speed of processing.
Such limitations may lead to customer dissatisfaction and operational disadvantages thus
creating a competitive reliable issue for banks’ customer loyalty.
1.2 Objective
● Account Management: Enable users to create, modify, and delete accounts with
● Customer Service: Provide robust customer service features, allowing users to raise
queries, report issues, and receive timely assistance from bank representatives.
● Data Security: To ensure the integrity and security of all banking data processed and
1.3 Scope
The scope of the Banking Management System encompasses the following key areas:
(RDBMS) to store and retrieve customer information, account details, and transaction
records securely.
1.4 Limitation
Though, the Banking Management System was designed to be quite all-encompassing and to
enjoy several strong characteristics, this project has certain drawbacks as follows: It is
important also to point out these weaknesses and names them clearly for expectations setting
as well as for further improvement and advancement of the strategy.
● Scope Constraints: This is because this project is just an attempt at emulating some
of the functions of the commercial banking software, and because of the level of
complication that banking operations involves, and the regulatory requirements
involved that will not allow a student to develop an all-encompassing banking
software.
● Compatibility Issues: Developing for different operating systems, web browsers, and
hardware platforms may cause certain issues at times. Though the app is developed to
work well on any platform or operating system, some compatibility problems may
occur from time to time.
● User Interface Design: Even after the attempt has been made to make the design and
layout of the system as natural and easy to use as possible, it is still possible for one
specific user to have personal preferences or special usability issues.
CHAPTER 2
Literature Review
A few past research works established that there is need for financial institutions to adopt
improved banking management systems worldwide. These systems are different in terms of
intricate design, purposes, and the technologies they use. Some general modules present in
many modern banking software applications are accounts and transactions, customer
relationship management, and compliance management.
This study found out that in the current world, the advanced technologies and best practices
have continued to emerge regarding the management of banking systems. This
correspondingly reflects the growing trend in the use of cloud computing, microservices, and
APIs to facilitate scalability, flexibility, and interoperability. Also, emerging technologies
such as artificial intelligence, machine learning, and other data analytical systems are
gradually influencing the operations of banks by introducing the possibility of predictive
analysis, recommendation of products and services, and fraud preventive measures.
Banking management systems should also apply other essential rules and regulation set for a
banking firm to perform to enhance efficiency in service. Joyce, CEL and Gillian, JO 2007: It
is important that the banking management systems are following the set standards and
regulation governing a banking firm to operate effectively. As research have suggested,
incorporating compliances management modules in the banking software solutions will be
able to meet the compliance requirements like AML, KYC, and data protection laws.
Basically, regarding the security requirement of banks, such networks must have policies,
controls on security features, encryption procedures, and trail checking.
Of these, four cutting-edge technologies which has garnered interest in banking include;
Blockchain, Distributed Ledger Technology (DLT), and Decentralized Finance (DeFi).
Studied cases on the applicability of such technologies for instance cross-border payments,
trade finance and identity have revealed how disruptive and more transcendent such
technology usages are, implying that more research and development is still possible and
needed.
As any other software application, the User experience (UX) design is critical in determining
the levels of success within the banking management systems. Research has pointed out the
need for first, simplistic interface designs, second, efficient workflows, and third,
accessibilities to satisfy the user and improve usability. Feedback mechanisms such as
usability testing, and constant iteration play a significant role in enhancing the user
satisfaction of Banking software Applications.
CHAPTER 3
Methodology
The Software Development Life Cycle (SDLC) is a method used to plan, develop, test, and
implement information systems. It follows a process to create software that fulfils customer
needs and expectations. The SDLC generally includes the following stages:
1. Requirement Analysis
Objective: Gather and analyse the requirements to understand the functionalities needed
for the Banking Management System.
Activities: Analyse user needs and document the functional and non-functional
requirements. Define use cases and user stories to capture specific scenarios and
interactions.
2. System Design
Objective: Define the architecture, components, interfaces, and data for the system.
Activities:
● Define the overall structure of the system including major components and their
interactions.
● Design detailed class diagrams, sequence diagrams, and other UML diagrams using
● Design the database schema using SQL database, defining tables, relationships, and
constraints.
● Design the user interface (UI) components using Java Swing and AWT.
3. Implementation (Coding)
Objective: Translate the design into executable code using Java, Swing, AWT, and SQL.
Activities:
● Set up the development environment including IDE (e.g., IntelliJ IDEA, Eclipse).
● Integrate the application with the SQL database for data storage and retrieval.
4. Testing
Objective: Verify that the system meets the specified requirements and identify defects.
Activities:
works as intended.
● System Testing: Test the complete system to ensure it meets the requirements.
5. Deployment
Objective: Deliver the final product to the users and ensure it operates in the production
environment.
Activities:
6. Maintenance
● The process of creating the Banking Management System combines the aspects of
diagrams, database schema design and crafting user interfaces utilizing Java Swing
and AWT. The implementation phase involves development with code reviews
integrating backend logic, with SQL database interactions.
● Testing encompasses unit, integration, system, and user acceptance testing to verify
that the system meets specifications and operates flawlessly. Deployment entails
preparing and launching the system into the production environment followed by user
training sessions. The maintenance stage offers support by fixing bugs implementing
improvements and conducting updates to ensure smooth functioning and ongoing
enhancement of the system.
+-------------------+
User Interaction |
+---------+---------+
+---------+---------+
| User Login |
+---------+---------+
+---------+---------+
| Home Screen |
+---------+---------+
+---------+---------+
| Account Management|
+---------+---------+
+---------+---------+ +------------------+
+---------+---------+ +------------------+
+---------+---------+
+---------+---------+
v
+---------+---------+
| Edit Account |
+---------+---------+
+---------+---------+
| Delete Account |
+---------+---------+
+---------+---------+
| Transaction |
+---------+---------+
+---------+---------+ +------------------+
+---------+---------+ +------------------+
+---------+---------+
| Withdraw |
+---------+---------+
|
v
+---------+---------+
| Transfer |
+---------+---------+
+---------+---------+
| View Transactions |
+---------+---------+
+---------+---------+
| Generate Reports |
+---------+---------+
+---------+---------+
| Logout |
+-------------------+
3.3.2 E-R Diagram: An Entity Relationship (ER) Diagram visually displays how data is
structured in an information system.
3.3.3 Data Flow Diagram
Login_Info Table
UserPassword Varchar(15)
Branch_Info Table
Branch_Name Varchar(50)
Account_Info Table
Deposit_Info Table
Branch_No Varchar(7)
Depositor_Name Varchar(150)
Account_H_Type Varchar(15)
Deposit_Amt Varchar(10)
Deposit_Date DateTime
Withdraw_Info Table
Branch_No Varchar(7)
Withdrawee_Name Varchar(150)
Account_H_Type Varchar(15)
Withdrawl_Amt Varchar(10)
Withdrawl_Date DateTime
3.3.5 System Design
● Login Page
4.1 Conclusion
The Banking Management System developed using Java, Swing, AWT, and SQL provides a
robust and user-friendly platform for managing various banking operations. Through the
project, we have successfully designed and implemented key functionalities such as user
authentication, account management, and transaction processing. The use of Java's Swing and
AWT libraries allowed for the creation of a rich and interactive graphical user interface,
while SQL ensured reliable and efficient data storage and retrieval.
There are several areas for future enhancement and development to further improve the
Banking Management System:
● Develop a mobile version of the application to provide users with convenient access
● Ensure seamless integration and synchronization between the desktop and mobile
platforms.
real-time.
References
● https://www.researchgate.net/publication/
380214416_Online_banking_management_system
● https://www.javatpoint.com/online-banking-project