0% found this document useful (0 votes)
5 views14 pages

Atm System

The document outlines the development of an ATM System using BOUML Software, detailing its functionalities such as cash withdrawal, balance inquiry, and deposits. It includes specifications for software, hardware, and user interfaces, as well as various diagrams like use case, class, and sequence diagrams to illustrate system interactions. The project aims to automate banking services securely and efficiently, culminating in successful code generation.
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)
5 views14 pages

Atm System

The document outlines the development of an ATM System using BOUML Software, detailing its functionalities such as cash withdrawal, balance inquiry, and deposits. It includes specifications for software, hardware, and user interfaces, as well as various diagrams like use case, class, and sequence diagrams to illustrate system interactions. The project aims to automate banking services securely and efficiently, culminating in successful code generation.
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

ATM SYSTEM

AIM

To develop a project ATM System using the BOUML Software.

PROBLEM STATEMENT

The customer should be able to perform banking operations such as


withdrawing cash, checking balance, and depositing money using an ATM
machine. The ATM system should authenticate the user, process transactions,
and provide receipts.

 Customer inserts ATM card into the machine


 Customer enters PIN for authentication
 System validates the user details
 Customer selects required transaction (withdraw, deposit, balance
inquiry)
 ATM processes the transaction
 ATM dispenses cash or shows balance
 ATM prints receipt

Software Requirement Specification (SRS) – ATM System

1. Introduction

(i) Purpose of this Document

The purpose of this document is to describe the requirements and functionalities


of the ATM System, which allows customers to perform banking transactions
such as cash withdrawal, deposit, and balance inquiry.

(ii) Scope of this Document

The ATM System is a machine-based application that enables customers to


access their bank accounts using an ATM card and PIN. It provides secure and
efficient transaction processing without requiring human assistance.
(iii) Overview

The ATM System is designed to automate banking services. It interacts with the
bank server to authenticate users and process transactions. The system ensures
secure access, fast processing, and accurate transaction handling.

2. Overall Description

The ATM System connects to a bank server to perform transactions like


withdrawal, deposit, and balance inquiry. Users authenticate using a PIN
through a simple interface. It requires network, power, and a valid card.
Security is maintained through PIN verification.

3. Specific Requirements

(i) Functional Requirements

 Accept ATM card


 Prompt and verify PIN
 Authenticate user
 Select transaction type
 Process withdrawal, deposit, balance inquiry
 Display results
 Print receipt
 Eject card
 Handle invalid PIN

(ii) Non-Functional Requirements

 Performance
 Security
 Reliability
 Usability
 Availability

(iii) Hardware Requirements

 ATM Machine
 Card Reader
 Keypad
 Display Screen
 Cash Dispenser
 Receipt Printer

(iv) Software Requirements

 Operating System (Windows/Linux)


 ATM Application Software
 Database Management System
 Network Communication Software

(v) Interface Requirements

1. User Interface
2. Hardware Interface
3. Communication Interface

4. System Features

(i) User Authentication

 User inserts card and enters PIN


 System validates credentials

(ii) Cash Withdrawal

 User selects withdrawal option


 Enters amount
 System dispenses cash

(iii) Balance Inquiry

 Displays available balance

(iv) Deposit

 Accepts cash deposit and updates account

(v) Receipt Generation

 Prints transaction details

5. External Interface Requirements

 ATM interacts with bank database


 Communication through secure network
 Hardware interaction with ATM devices

Develop data flow diagram (dfd) model (level 0 & 1) of ATM system.

Details:

1) DFD Level 0:
DFD level 0 is the entire concept of the system is demonstrated in a
single [Link] level 0 is also called as context diagram.

1) DFD Level 1:
DFD Level 1 provides a more detailed breakout of pieces of the Context
Level Diagram. You will highlight the main functions carried out by the
system, as you break down the high-level process of the Context Diagram
into its subprocesses.
USERCASE DIAGRAM

a) Use case is a sequence of transaction in a system whose task is to yield result of


measurable value to individual author of the system
b) Use case is a set of scenarios together by a common user goal
c) A scenario is a sequence of step describing as interaction between a user and a
system
Documentation of Use Case Diagram

Actors:

 Customer – Uses ATM to perform banking transactions


 ATM Machine – Interface between customer and bank system
 Bank Server – Validates and processes transactions

Use Cases:

 Insert Card – Customer inserts ATM card


 Enter PIN – Customer enters PIN for authentication
 Authenticate User – Bank server validates credentials
 Select Transaction – Choose withdrawal, deposit, or balance inquiry
 Withdraw Cash – ATM dispenses cash
 Deposit Cash – Customer deposits money
 Check Balance – Displays account balance
 Print Receipt – ATM prints transaction details
 Eject Card – ATM returns card
CLASS DIAGRAM:

A class diagram describes the type of objectors in the system the various kinds of
static relationship that exist among them.

Documentation of Class Diagram

Classes Used:

 Customer

o Attributes: name, accountNumber, PIN


o Operations: insertCard(), enterPIN(), selectTransaction()

 ATM Machine

o Attributes: machineID, location


o Operations: authenticateUser(), processTransaction(),
dispenseCash(), printReceipt()

 Bank Server

o Attributes: bankName, database


o Operations: validatePIN(), updateAccount(), checkBalance()

 Account

o Attributes: accountNumber, balance


o Operations: debit(), credit(), getBalance()
SEQUENCE DIAGRAM

 A sequence diagram is one that includes the object of the projects and tells the
lifetimes and also various action performed between objects.

Documentation of Sequence Diagram

Customer inserts the card into ATM. ATM requests PIN and sends it to the
bank server for validation. After successful validation, the customer selects a
transaction. The ATM communicates with the bank server to process it. Finally,
ATM displays results, prints receipt, and ejects the card.
COLLOBORATIION DIAGRAM

It is same as the sequence diagram that involved the project with the only difference
that we give the project with the only difference that we give sequence number to each
process.

Documentation of Collaboration Diagram

The collaboration diagram shows interaction between Customer, ATM


Machine, and Bank Server. The sequence includes inserting card,
authentication, selecting transaction, processing transaction, and displaying
results.
STATE DIAGRAM

It is a technique to describe the behavior of the system. It describes all the possible
states that a particular object gets into theobject oriented technique. State diagram are
drawn for a single class to show to the lifetime behaviour of a single objects
Documentation of Statechart Diagram

The ATM system moves through states such as:

 Idle State
 Card Inserted
 PIN Entered
 Authentication
 Transaction Selection
 Processing Transaction
 Printing Receipt
 Card Ejected

ACTIVIY DIAGRAM

 It includes all the activities of particular project and various steps using join
and forks.
Documentation of Activity Diagram

The activity starts when the customer inserts the ATM card. The system asks
for a PIN and validates it. If authentication is successful, the customer selects
a transaction. Based on the selection, the system performs withdrawal,
deposit, or balance inquiry. Finally, the ATM prints the receipt and ejects the
card.
COMPONENT DIAGRAM

The component diagram is represented by figure dependency and it is a graph of


design of figure dependency. The component diagram's main purpose is to show the
structural relationships between the components of a systems. It is represented by
boxed figure. Dependencies are represented by communication association

Documentation of Component Diagram

The ATM system consists of components such as:

 User Interface
 Transaction Processing Module
 Authentication Module
 Database

All components interact to perform ATM operations.

DEPLOYMENT DIAGRAM

It is a graph of nodes connected by communication association. It is represented by a


three dimensional box. A deployment diagram in the unified modeling language
serves to model the physical deployment of artifacts on deployment targets.

Dependencies are represented by communication association. The basic element of a


deployment diagram is a node of two types

DEVICE NODE – A physical computing resource with processing and memory


service to execute software, such as a typical computer or a mobile phone.
EXECUTION ENVIRONMENT NODE-- This is a software computing resource
that runs within an outer node and which itself provides a service to host an execute
other executable software element.

CODE GENERATION – ATM SYSTEM

PROCEDURE:

1. Open the BOUML tool.


2. Create or open the project.
3. Set the programming language to Java
4. Go to Tools → Languages → Java
5. Select Java as the default language.
6. Open the Class Diagram that we created earlier.
7. Assign Java language to classes
8. Right click on each class.
9. Click Edit → Set Language = Java.
10. Check attributes and operations
11. Ensure each class contains attributes and methods with correct visibility
(+ public, – private).
12. Generate Java code from classes
13. Right click on the Class Diagram.
14. Select Generate Code.
15. Choose the folder to store code
16. Select the project folder location.
17. Click OK.
18. BOUML automatically generates .java files for all classes.
19. Open the generated files in any IDE (Eclipse / IntelliJ / VS Code).
20. Compile and run the Main class to test the program.

RESULT

Thus the project to develop an ATM System using BOUML Software is


completed successfully.

You might also like