Thanks to visit codestin.com
Credit goes to www.scribd.com

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

Mini Project (Atm)

Mini project java

Uploaded by

theesagargupta
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 views6 pages

Mini Project (Atm)

Mini project java

Uploaded by

theesagargupta
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/ 6

INSTITUTE OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY

TOPIC :
ATM INTERFACE SIMULATION
BCA(H) – SEMESTER 4th
BATCH – 3rd

SUBMITTED FROM: SUBMITTED TO:


Dr. LAVANYA MA’AM SHUBHANK SAINI
( PROFESSOR) ROLL NO : 171
ACKNOWLEDGEMENT

I Would like to express gratitude to


Professor Lavanya Ma’am for her
invaluable guidance and support
throughout the development of this
project. Her insightful feedback and
encouragement were instrumental
In its successful completion.
INTRODUCTION
Introduction to ATM Interface Simulation.
An ATM (Automated Teller Machine) interface simulation is a software program that mimics the
functionality and user experience of a real ATM. It provides a virtual environment where users
can interact with a simulated ATM interface to perform various banking transactions without
using actual cash or affecting their real bank accounts.

Think of it as a digital replica of the screens, buttons, and processes you encounter when
using a physical ATM.

Here's a breakdown of what an ATM interface simulation entails:

* Visual Representation: It typically displays a graphical user interface (GUI) that resembles
the physical ATM screen, often including elements like buttons, text prompts, and display
areas for transaction information.

* Simulated Functionality: The simulation allows users to perform common ATM tasks such as:

* Balance Inquiry: Checking the available balance in a simulated account.

* Cash Withdrawal: Simulating the process of withdrawing a specified amount of virtual


cash.

* Cash Deposit: Simulating the deposit of virtual funds into a simulated account.

* PIN Change: Practicing the process of changing a simulated PIN.

* Fund Transfer: Simulating the transfer of virtual funds between simulated accounts.

* Mini-Statement: Displaying a simulated recent transaction history.

* User Interaction: Users interact with the simulated interface using a keyboard, mouse, or
touch screen, mimicking the button presses and screen taps on a real ATM.

* No Real Financial Impact: Importantly, all transactions performed within the simulation are
virtual and do not affect the user's actual bank accounts or involve real money.

Purpose and Applications of ATM Interface Simulation:

ATM interface simulations serve various purposes across different domains:

* Education and Training:

* User Education: Helping new ATM users or individuals unfamiliar with the technology learn
how to operate an ATM in a safe and risk-free environment.

* Staff Training: Training bank staff on ATM functionalities, troubleshooting, and customer
support procedures. * Software Development and Testing:

* Interface Design and Usability Testing: Allowing developers to test the user-friendliness
and effectiveness of new ATM interface designs before deployment.
* Software Validation: Verifying the functionality and logic of the underlying ATM software
without needing physical hardware.

* Security Awareness:

* Phishing and Fraud Prevention: Creating simulations of fraudulent ATM interfaces to


educate users about potential scams and how to identify them.

* Research and Analysis:

* Human-Computer Interaction (HCI) Studies: Providing a platform to study user behavior and
interaction patterns with ATM interfaces.

* Accessibility Research: Evaluating the accessibility of ATM interfaces for users with
disabilities.

# SOURCE CODE.
import java.util.Scanner;
public class ATM {
private double balance;
private final String pin;

public ATM(String pin) {


this.balance = 0.0;
this.pin = pin;
}

public boolean verifyPin(String enteredPin) {


return pin.equals(enteredPin);
}

public void deposit(double amount) {


if (amount > 0) {
balance += amount;
System.out.println("Deposited: $" + amount);
} else {
System.out.println("Invalid deposit amount.");
}
}

public void withdraw(double amount) {


if (amount > 0 && amount <= balance) {
balance -= amount;
System.out.println("Withdrew: $" + amount);
} else {
System.out.println("Invalid withdrawal amount or insufficient funds.");
}
}
public void checkBalance() {
System.out.println("Current balance: $" + balance);
}

public void displayMenu() {


System.out.println("ATM Menu:");
System.out.println("1. Deposit");
System.out.println("2. Withdraw");
System.out.println("3. Check Balance");
System.out.println("4. Exit");
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);
ATM atm = new ATM("1234"); // Example PIN

System.out.print("Enter your PIN: ");


String enteredPin = scanner.nextLine();
if (atm.verifyPin(enteredPin)) {
int choice;
do {
atm.displayMenu();
System.out.print("Select an option: ");
choice = scanner.nextInt();

switch (choice) {
case 1:
System.out.print("Enter amount to deposit: ");
double depositAmount = scanner.nextDouble();
atm.deposit(depositAmount);
break;
case 2:
System.out.print("Enter amount to withdraw: ");
double withdrawAmount = scanner.nextDouble();
atm.withdraw(withdrawAmount);
break;
case 3:
atm.checkBalance();
break;
case 4:
System.out.println("Exiting...");
break;
default:
System.out.println("Invalid option. Please try again.");
}
} while (choice != 4);
} else {
System.out.println("Incorrect PIN. Access denied.");
}

scanner.close();
}
}
# SUMMARY

In summary, an ATM interface simulation is a valuable tool


that provides a virtual and interactive representation of a
real ATM, enabling learning, testing, development, and
research without the risks or limitations associated with
physical ATMs. It plays a crucial role in enhancing user
understanding, improving software quality, and promoting
security awareness in the context of automated
banking services.

You might also like