Skip to content

A Java-based banking system simulation implementing core banking operations and account management using UML design principles. Includes features like transactions, account types, and user authentication. Perfect for studying UML-based software modeling and Java application development.

Notifications You must be signed in to change notification settings

M-PERSIC/BankUml

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏦 BankUml: Banking System Simulation

Welcome to BankUml, a Java-based banking application designed to simulate core banking operations such as account management, transactions, and receipts.

This project demonstrates the use of Object-Oriented Programming (OOP) principles, including Inheritance, Encapsulation, Abstraction, and Polymorphism, strictly following the provided UML diagram.

πŸ“Œ Features

  • Account Management: Create and manage multiple types of bank accounts.
  • Transaction Handling: Simulate payments and generate receipts.
  • UML-Driven Design: Class structure directly follows the given UML diagram.

πŸ“Š Diagram

BankUml Hierarchical Diagram

This diagram demonstrates the classes within the BankUml project template. Inheritance relationships are shown with solid line arrows, whilst implied relationships are shown with dashed line arrows. This is only a reference for the template, and you are free to change the application architecture as you see fit!

πŸš€ How to Run

Make sure you have the following installed:

  • Java
  • Maven (if Lombok is missing or not working correctly)
  1. Clone the repository:
git clone https://github.com/M-PERSIC/BankUml.git
cd BankUml
  1. Compile the code:
javac -cp "libs/*" bank/*.java 
  1. Run the program:
# Linux/MAC
java -cp ".:libs/*" bank.Main
# Windows
java -cp ".;libs/*" bank.Main

To redownload the Lombok jar:

mvn dependency:copy-dependencies -DoutputDirectory=./libs

Originally developed by @shayanaminaei

About

A Java-based banking system simulation implementing core banking operations and account management using UML design principles. Includes features like transactions, account types, and user authentication. Perfect for studying UML-based software modeling and Java application development.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%