0% found this document useful (0 votes)
66 views8 pages

ATM System Using Java

Micro project for your ups and health and you iur in the future uu in hindi uy

Uploaded by

Apurv Musandi
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)
66 views8 pages

ATM System Using Java

Micro project for your ups and health and you iur in the future uu in hindi uy

Uploaded by

Apurv Musandi
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/ 8

ATM System Using Java

Diploma Project Report

Submitted by: Your Name


Enrollment No.: 123456789
Diploma in Computer Engineering
Sharad Institute of Technology
April 29, 2025

Abstract
This project report describes the development of an ATM (Automated Teller
Machine) system using Java programming language. The purpose is to simulate
basic ATM operations such as login authentication, balance inquiry, deposit, with-
drawal, and transaction history. The system uses Java’s object-oriented features
and graphical user interface capabilities to create a simple, modular, and user-
friendly application.

1
Java Programming ATM Using Java

Contents

1 Introduction 3

2 Objectives 3

3 Scope of the Project 3

4 Software and Hardware Requirements 3


4.1 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

5 System Design 3
5.1 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

6 Class Diagram 4

7 Activity Diagram 5

8 Data Flow Diagram 6

9 Code Implementation 6
9.1 ATM.java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
9.2 Main.java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

10 Testing and Validation 7

11 GUI Design (Optional) 7

12 Limitations 8

13 Future Enhancements 8

14 Conclusion 8

15 References 8

2
Java Programming ATM Using Java

1 Introduction
An Automated Teller Machine (ATM) enables customers to perform financial transactions
without visiting a bank. This project simulates an ATM interface in Java to perform
essential tasks like balance inquiry, deposit, withdrawal, and transaction tracking.

2 Objectives
• Simulate ATM operations using Java.

• Implement GUI using Java Swing.

• Use object-oriented principles for design.

• Secure and validate user operations.

3 Scope of the Project


This project provides a basic simulation and does not connect to real-time banking servers.
It uses local storage and hardcoded credentials for learning purposes.

4 Software and Hardware Requirements


4.1 Software
• Operating System: Windows/Linux

• Java JDK 8 or above

• IDE: Eclipse or NetBeans

4.2 Hardware
• Intel i3 processor or above

• 4GB RAM minimum

• 500GB Hard Drive

5 System Design
5.1 Modules
1. Login Module – Authenticates users.

2. Transaction Module – Handles deposit, withdrawal, balance check.

3. History Module – Displays last transactions.

3
Java Programming ATM Using Java

6 Class Diagram
(You can include a diagram here by uploading ‘classd iagram.png‘inOverleaf )

class_diagram.png

Figure 1: Class Diagram

4
Java Programming ATM Using Java

7 Activity Diagram

activity_diagram.png

Figure 2: Activity Diagram

5
Java Programming ATM Using Java

8 Data Flow Diagram

dfd.png

Figure 3: Data Flow Diagram

9 Code Implementation
9.1 ATM.java
public class ATM {
private double balance ;

public ATM () {
balance = 1000.0;
}

public void deposit ( double amount ) {


balance += amount ;
}

public void withdraw ( double amount ) {


if ( amount <= balance ) {
balance -= amount ;
} else {
System . out . println ( " Insufficient Balance " ) ;

6
Java Programming ATM Using Java

}
}

public double getBalance () {


return balance ;
}
}

Listing 1: ATM.java

9.2 Main.java
import java . util . Scanner ;

public class Main {


public static void main ( String [] args ) {
ATM atm = new ATM () ;
Scanner sc = new Scanner ( System . in ) ;
int choice ;

do {
System . out . println ( " 1. Deposit \\ n2 . Withdraw \\ n3 . Check
Balance \\ n4 . Exit " ) ;
choice = sc . nextInt () ;

switch ( choice ) {
case 1:
System . out . print ( " Enter amount : " ) ;
atm . deposit ( sc . nextDouble () ) ;
break ;
case 2:
System . out . print ( " Enter amount : " ) ;
atm . withdraw ( sc . nextDouble () ) ;
break ;
case 3:
System . out . println ( " Balance : " + atm . getBalance () ) ;
break ;
}
} while ( choice != 4) ;
}
}

Listing 2: Main.java

10 Testing and Validation


The system was tested with valid and invalid inputs to ensure accurate handling of
deposits, withdrawals, and balance checks. Edge cases such as overdrawing or negative
values were tested for robustness.

11 GUI Design (Optional)


Add screenshots of Swing GUI if available.

7
Java Programming ATM Using Java

12 Limitations
• No real bank connection.

• Hardcoded credentials.

• No encryption used.

13 Future Enhancements
• Connect to a database.

• Add biometric or PIN authentication.

• Implement encryption for data storage.

14 Conclusion
The Java-based ATM simulation successfully demonstrates basic banking operations us-
ing object-oriented programming. It is an educational project to understand Java logic
and design.

15 References
• Java The Complete Reference – Herbert Schildt

• Oracle Java Docs: https://docs.oracle.com/en/java

• TutorialsPoint Java: https://www.tutorialspoint.com/java/

You might also like