BHARATI VIDYAPEETH
Institute of Technology (Polytechnic ), Navi Mumbai
ACADEMIC YEAR: 2023-2024
MICRO PROJECT
Software Engineering
CLASS: - SYCM COURSE AND CODE: - SEN (22413)
Under the guidance of:-
Mrs.Kalyani Kapade.
TOPIC:- FINGERPRINT BASED ATM MANAGEMENT SYSTEM
SUBMITTED BY:-
2233- Siddhi Londhe.
2234- Ritika Kamble.
TABLE OF CONTENT:
Introduction
Scope
Objective
Language Used
Various types of diagrams used in the
project
Program Code
Output
Conclusion
Introduction
A fingerprint is the feature pattern of one finger (Figure 1.2.1). It
is believed with strong evidence that each fingerprint is unique.
Each person has his own fingerprints with permanent uniqueness.
So, fingerprints have being used for identification and forensic
investigation for a long time. A fingerprint is composed of many
ridges and furrows. These ridges and furrows present good
similarities in each small local window, like parallelism and
average width. However, shown by intensive research on
fingerprint recognition, fingerprints are not distinguished by their
ridges and furrows, but by Minutia, which are some abnormal
points on the ridges (Figure 1.1.2). Among the variety of minutia
types reported in literatures, two are mostly significant and in
heavy usage one is called termination, which is the immediate
ending of a ridge the other is called bifurcation, which is the point
on the ridge from which two Branches derive.
The fingerprint is arguably a person’s most unique physical
characteristic. While humans have had the innate ability to
recognize and distinguish different fingerprints for millions of
years, computers are just now catching up… The twist of this
software is that it can pick someone's fingerprint out of a crowd,
extract that fingerprint for the rest of the scene and compare it
with a database full of stored images. In order for this software to
work, it has to know what a basic fingerprint looks like.
Fingerprint recognition software is based on the ability to first
recognize fingerprints, which is a technological feat in itself, and
then measure the various features of each fingerprint.
Scope
There is no worry of losing an ATM card and no need to carry
an ATM card in your wallet. You just have to use your
fingerprint to do any banking transaction. The user has to log
in using his fingerprint and he has to enter the PIN code to do
further transactions. The user can withdraw money from his
account. Users can transfer money to various accounts by
mentioning the account number. To withdraw money user has
to enter the amount he wants to withdraw and has to mention
from which account he wants to withdraw (i.e. saving account,
current account). The user must have an appropriate balance
in his ATM account to do transactions. Users can view the
balance available in their respective accounts. The system will
allow the user to view the last 5 transactions.
Objective
The objective of our project is to provide biometric security
through fingerprint authentication in ATM applications. Also,
the experiments illustrate the key issues of fingerprint
recognition that are consistent with what the available kinds of
literature says. The underlying principle is the phenomenon of
biometrics “AUTHENTICATION”, in this project, we propose
a method for fingerprint matching based on minutiae
matching.
Language Used
Java
Various types of diagrams used in the
project
Use Case Diagram
A use case diagram at its simplest is a representation of
a user's interaction with the system and depicting the
specifications of a use case. A use case diagram can
portray the different types of users of a system and the
various ways that they interact with the system. This
type of diagram is typically used in conjunction with
the textual use case and will often be accompanied by
other types of diagrams as well.
E-R Diagram
Entity–The relationship model (ER model) is a data model for
abstractly describing a database. In the case of a relational
database, which stores data in tables, some of the data in these
tables point to data in other tables - for instance, your entry in
the database could point to several entries for each of the
phone numbers that are yours. The ER model would say that
you are an entity, and each phone number is an entity, and the
relationship between you and the phone numbers is 'has a
phone number'. Diagrams created to design these entities and
relationships are called entity–relationship diagrams or ER
diagrams.
Sequence Diagram
A sequence diagram in a Unified Modelling Language
(UML) is a kind of interaction diagram that shows how
processes operate with one another and in what order. It is a
construct of a Message Sequence Chart. A sequence diagram
shows object interactions arranged in time sequence. It
depicts the objects and classes involved in the scenario and
the sequence of messages exchanged between the objects
needed to carry out the functionality of the scenario.
Sequence diagrams typically are associated with use case
realizations in the Logical View of the system under
development
Activity diagram
Activity diagrams are graphical representations of
workflows of stepwise activities and actions with support for
choice, iteration, and concurrency. In the Unified Modelling
Language, activity diagrams can be used to describe the
business and operational step-by-step workflows of
components in a system. An activity diagram shows the
overall flow of control.
Data Flow Diagram
Data Flow Diagram Level 0
Data Flow Diagram Level 1
Data Flow Diagram Level 2
Class Diagram
CPM and PERT model
Program Code
//import required classes and packages
import java.util.Scanner;
//create ATMExample class to implement the ATM
functionality
public class ATM_Machine
{
//main method starts
public static void main(String args[] )
{
//declare and initialize balance, withdraw, and deposit
int balance = 0, withdraw, deposit;
//create scanner class object to get choice of user
Scanner sc = new Scanner(System.in);
while(true)
{
System.out.println("ATM Machine\n");
System.out.println("Choose 1 for Withdraw");
System.out.println("Choose 2 for Deposit");
System.out.println("Choose 3 for Check Balance");
System.out.println("Choose 4 for EXIT\n");
System.out.print("Choose the operation:");
//get choice from user
int choice = sc.nextInt();
switch(choice)
{
case 1:
System.out.print("Enter money to be withdrawn:");
//get the withdrawl money from user
withdraw = sc.nextInt();
//check whether the balance is greater than or equal to the
withdrawal amount
if(balance >= withdraw)
{
//remove the withdrawl amount from the total balance
balance = balance - withdraw;
System.out.println("Please collect your money");
}
else
{
//show custom error message
System.out.println("Insufficient Balance");
}
System.out.println("");
break;
case 2:
System.out.print("Enter money to be deposited:");
//get deposite amount from te user
deposit = sc.nextInt();
//add the deposit amount to the total balanace
balance = balance + deposit;
System.out.println("Your Money has been successfully
depsited");
System.out.println("");
break;
case 3:
//displaying the total balance of the user
System.out.println("Balance : "+balance);
System.out.println("");
break;
case 4:
//exit from the menu
System.exit(0);
}
}
}
}
Output
Conclusion
The execution of ATM protection by availing
fingerprint also has the traditional verifying
methods that were inputting the client's fingerprints,
that is sent by the administrator and checked
correctly. The protection feature was improved
highly for the firmness and solidity of the client's
identity. The complete system was constructed on a
fingerprint system that makes the mechanism safe,
dependable, and effortless. This shall be the most
favorable technology in electronic or digital money
transactions.