SlideShare a Scribd company logo
1 of 61
Download to read offline
ATM SIMULATOR
Pune Vidyarthi Grihas's
College of science and technology
CTS NO 218 Br. Nath Pai Nagar Ghatkopar E Mumbai 400077
PROJECT REPORT ON
ATM SIMULATOR
BY
Mr. PRATIK NITIN SARVANKAR.
GUIDED BY
Ms. Prajakta Shirke
UNIVERSITY OF MUMBAI T.Y.BSC
(COMPUTER SCIENCE)
FOR
ACADEMIC YEAR 2021-22
PRATIK SARVANKAR
ATM SIMULATOR
Pune Vidyarthi Grihas's College of science and
technology
CTS NO 218 Br. Nath Pai Nagar Ghatkopar E Mumbai 400077
Certificate
This is to certify that Mr. Pratik Nitin Sarvankar With roll no 20362 of
TYBSC (Computer Science) Sem-V has successfully completed the
project titled
“ATM SIMULATOR”
Under our guidance towards the partial fulfillment of degree of
Bachelors of Science (Computer Science) submitted to Pune Vidyarthi
Grihas's College of science and technology Ghatkopar E during the
academic year 2021-22 as specified by
UNIVERSITY OF MUMBAI
Prof.(Ms) Prajakta Shirke
Project Guide
Dept. of Computer Science
Prof.(Ms) Trupti Rongare In-
Charge
Dept. of Computer Science
PRATIK SARVANKAR
ABSTRACT
Page - 3 -
Now-a-days ATM (Automatic Teller Machines) is commonly used. It not only provides basic
transaction services (e.g.…withdraw, balance enquiry, mini statement, money transfer) but also
provide additional services like bill payments, mobile recharges, examination fees payment. But most
of these facilities are available only to the urban people and not to the rural people. The reason why
these facilities are not available to the rural people is illiteracy and the difficulty they face in
remembering the entire mechanism of handling an ATM machine. Our project aims at making the
ATM machines more user friendly (especially for rural people). And we are doing this by
constructing the simulator of real world ATM machine. As we know that simulator is a computerized
model of real world system that demonstrate the working of the real world system (on the basis of
certain assumptions) and can also be used to perform new experiments before it is deployed on the
real system. The technique by which we are going to make the simulator friendlier to rural people is
by enabling the simulator to be controlled by speech (i.e. any regional language).
So, in our project we are constructing a simulator that depicts the real world ATM machines and have
certain features which are as follows:
➢ Works in networked environment, to demonstrate the real world ATM working environment.
➢ Demonstrates the basic banking services provided by ATM machines, i.e.….withdraw,
deposit, balance enquiry, money transfer and others.
➢ Also, demonstrate the additional services provided by today‟sATM machines, i.e. electricity
bill payment, telephone bill payment.
➢ Enabling the simulator to be controlled by speech is the experiment we are going to perform
on the simulator.
Page - 4 -
INTRODUCTION
Page - 5 -
PROBLEM STATEMENT:
The real world ATM is continuously developing day by day. More and more new and exciting
features are incorporated in the machine as per customer‟s increasing needs. In the earlier times ATM
was only recognized for cash withdrawal or balance enquiry. But now a day various new features like
cash deposits, various Bill payments, Mobile recharge etc are added which are attracting more and
more customers. In spite of these advancements in the ATM world, the ATM is not successful in rural
areas. Most of the people are illiterate and even can‟t perform a simple transaction like cash
withdrawal due to language bondations. The same problem exists with the blind people. Providing
more and more language options is useless because they may not be able to read a text written on the
screen. Thus the existing system although growing day by day and fulfilling more and more needs of
customers fails in the case when simplicity and user friendliness is measured.
AIM:
The aim of this project is to simulate the real world ATM machine.
STUDY OF CURRENT SYSTEM:
A real world automated teller machine (ATM) is a computerized telecommunications device that
provides the customers of a bank with access to financial transactions in a public space without the
need for a human clerk or bank teller. On most modern ATMs, the customer is identified by inserting
a plastic ATM card with a magnetic stripe or a plastic smartcard with a chip that contains a unique
card number, Bank account number and some security information, such as an expiration date or
CVC (CVV). Security is provided by the customer entering a personal identification number (PIN).
The real world ATM provides a keypad and a touch screen. There is cash dispensing machine from
which cash out can be accomplished. The cash dispensing machine optionally owns a cash In
mechanism (if cash deposit feature is enabled in ATM machine), from which user can deposit money
into his account. For customer‟ssimplicity various language options are supported (like English,
Page - 6 -
Hindi etc). Various features provided by a real world ATM system are as follows:-
➢ Cash Withdrawal
➢ Cash Deposit
➢ Money Transfer
➢ Balance Enquiry
➢ Bill Payments
PROPOSED SYSTEM:
The proposed system “Speech controlled ATM Simulator” provides all the basic as well as advanced
features of a standard real world ATM system. Along with it to add more simplicity and to make the
machine more user friendly two new concepts are added:-
Speech Synthesis-The ATM system will now help the user by guiding him throughout the transaction
by giving speech in his or her mother language.
Speech Recognition- The ATM system will now be able to recognize spoken commands. The
customer can now give voice commands in his mother language with the help of a microphone and
the ATM machine recognizes those spoken commands and takes the appropriate action.
FEASIBILITY STUDY:
Feasibility is the determination of whether or not a project is worth doing. The process followed in
making this determination is called a feasibility study. It determines whether a project should be taken
or not. Feasibility study was undertaken within tight constraints of time and culminated in the
written and amoral feasibility reports. The constants of the reports were used as a sound basis for the
decision of proceeding, postponing or the cancellation of the project. Depending on the results of the
initial investigation the survey is expanded to a more detailed feasibility study. Feasibility study is a
test of a system proposal according to its workability, impact on the organization, ability to meet user
needs, and effective use of resources.
Page - 7 -
Various types of feasibility are studies they are:-
1) Technical feasibility: - This is concerned with the specifying equipment and the software
that successfully satisfies the user requirement. The technical need of the system very
considerably. In examining the technical feasibility the configuration of the system is
given importance than to the actual hardware. As the present system devoid of computer
assistant a complete revamping of the whole set-up will be required. Can the work for the
new system we done with current environment existing software technology & available
personnel. So we can say there are a number of technical issues. Which are generally
raised during the technical feasibility there are follows -?
➢ Does the necessary technology exist to do with what is suggested & can it required?
➢ Does the propose requirement have the technical capacity to hold the data required to use
the new system?
➢ Can the system we updated it developed?
➢ What new skill will be required to new technology do the existing staff members have
these skills if not can they we trained in due course of time?
2) Operational Feasibility: - It is mainly related to the human organizational and political
aspect. It involves the study of change to be brought about in the system, new skills
required etc. In the present system there is no use of computer. The operational staff is
having no idea about operation of the computer system. An introductory training of the
staff is needed.
3) Economic Feasibility: - It is the most frequently used technique for the evaluation of the
effectiveness of the proposed system. It involves the cost/benefit analysis. Economic
feasibility is the most frequently used method for evaluating the effectiveness system.
More commonly known is cost beneficial the procedure is to determine the benefits and
savings that are expected from a system and compare them with costs. If benefit is more
than the costs then the decision are made to design is made to design and implement the
Page - 8 -
system.
4) Social Feasibility: - It is the determination of whether a system will be accepted by the
user or not. This examines the probability of the project being accepted directed by the
user. While discussing with users it was observed that they are afraid of using a computer
system. This might be due to the fact they belong to diverse background. A computer
literacy program is very necessary before the installation and implementation of the
system failing which it may lead to rejection of the system.
5) Management Feasibility: - It determines whether the proposed system will be acceptable
to the management or not.
After studying and testing the above feasibilities we have found that our project stands firmly on
them.
OVERVIEW OF DOCUMENT:
PRIMARY GOAL OF DOCUMENT:
The primary goal of the document is to provide the entire information of the project. This includes
the need of the project, objectives of the project, and step-by-step implementation of SDLC (Software
Development Life Cycle). In case of our project the documentation describes the following details:
➢ Current System.
➢ Problem with current system
➢ Proposed system
➢ Modeling performed (Use cases analysis, sequence diagram, state chart diagram and
DFD)
➢ System Design(Class Diagrams)
➢ Testing Performed
➢ Future Enhancements
Page - 9 -
DOCUMENT CONVENTIONS:
: Times New Roman
Font
Style
Bold, Underlined
Bold, Underlined
Normal
Heading :
Sub-heading :
Text :
Font Size
Heading :
Sub-heading :
Text :
Alignment :
Line Spacing :
24
14
12
Justified
1.5 lines
Page - 10 -
LITERATURE SURVEY
Page - 11 -
WHAT IS ATM?-
Automated Teller Machine (ATM), device used by bank customers to process account transactions.
Typically, a user inserts into the ATM a special plastic card that is encoded with information on a
magnetic strip. The strip contains an identification code that is transmitted to the bank's central
computer by modem. To prevent unauthorized transactions, a personal identification number (PIN)
must also be entered by the user using a keypad. The computer then permits the ATM to complete the
transaction; most machines can dispense cash, accept deposits, transfer funds, and provide
information on account balances. Banks have formed cooperative, nationwide networks so that a
customer of one bank can use an ATM of another for cash access.
WHAT IS SPEECH RECOGNITION?-
Speech recognition (also known as automatic speech recognition or computer speech recognition)
converts spoken words to machine-readable input (for example, to key presses, using the binary code
for a string of character codes). The term "voice recognition" is sometimes incorrectly used to refer to
speech recognition, when actually referring to speaker recognition, which attempts to identify the
person speaking, as opposed to what is being said. Confusingly, journalists and manufacturers of
devices that use speech recognition for control commonly use the term Voice Recognition when they
mean Speech Recognition.
Speech recognition is the process of converting an acoustic signal, captured by a microphone or a
telephone, to a set of words. The recognized words can be the final results, as for applications such as
commands & control, data entry, and document preparation.
Speech recognition applications include voice dialing (e.g., "Call home"), call routing (e.g., "I would
like to make a collect call"), domotic appliance control and content-based spoken audio search (e.g.,
find a podcast where particular words were spoken), simple data entry (e.g., entering a credit card
number), preparation of structured documents (e.g., a radiology report), speech-to-text processing
(e.g., word processors or emails), and in aircraft cockpits (usually termed Direct Voice Input).
Page - 12 -
An isolated-word speech recognition system requires that the speaker pause briefly between words,
whereas a continuous speech recognition system does not. Spontaneous, or extemporaneously
generated, speech contains disfluencies, and is much more difficult to recognize than speech read
from script. Some systems require speaker enrollment---a user must provide samples of his or her
speech before using them, whereas other systems are said to be speaker-independent, in that no
enrollment is necessary. Some of the other parameters depend on the specific task. Recognition is
generally more difficult when vocabularies are large or have many similar-sounding words. When
speech is produced in a sequence of words, language models or artificial grammars are used to
restrict the combination of words.
WHAT IS SIMULATION?-
Simulation is the imitation of some real thing, state of affairs, or process. The act of simulating
something generally entails representing certain key characteristics or behaviours of a selected
physical or abstract system. A simulation is a representation of a situation with a similar but simpler
model that can easily be manipulated to determine experimental results. It is basically an experiment
run as a model of reality. Using a simulator or experimenting with a fictitious system can show the
eventual real effects of a givensituation.
Examples:
Physical or manual simulations: These simulations rely on the use of physical methods to
create data that mimic the types of information required. Physical simulations are used in
many contexts, including the modeling of natural systems, and manual systems. Physical
methods, such as using a dice to simulate data have the disadvantage of being too time
consuming.
Computer simulations: Computer programs based on mathematical models are used to
manipulate elements of the experiment. This type of simulation can be applied in many ways.
In telegraphic engineering, computer simulations generate system topology and traffic models
Page - 13 -
that can be used for network performance management. Some computer exercises that use a
computer program to generate data or information are TELPACK, CSIM19, and Minitab.
Physical simulation refers to simulation in which physical objects are substituted for the real thing
(some circles use the term for computer simulations modelling selected laws of physics, but this
article doesn't). These physical objects are often chosen because they are smaller or cheaper than the
actual object or system.
A computer simulation (or "sim") is an attempt to model a real-life or hypothetical situation on a
computer so that it can be studied to see how the system works. By changing variables, predictions
may be made about the behaviour of the system.
In our project we are performing computer simulation and creating a computerized model.
WHAT IS ATM SIMULATOR?:
ATM-Simulator (ATM-SIM) is a computer-based trainer used for teaching individuals with
intellectual disabilities how to use an automated teller machine (ATM) to access their personal bank
accounts. In the pilot evaluation, a prototype system was developed and used to train nine adults with
intellectual disabilities how to use a local ATM. Participants were pre-tested on their ability to use an
ATM and then were trained using the ATM-SIM prototype. After a brief training period, participants
were again tested on their capacity to operate the actual ATM. Computer simulation of ATM can be
used effectively to teach a specific independent living skill to adults with mental retardation.
Simulation has been used effectively in many settings to teach skills that require both complex
problem solving abilities (e.g., nuclear power plant operators) as well as specific rote tasks (e.g.,
switchboard operators). Recently the increased availability, decreased cost, and emerging
technological advances associated with computers have made computer simulation a viable
alternative teaching method in a variety of settings. As a result, computer simulation has been used
increasingly as a cost-effective alternative to actual hands-on training. With technology, such as
Page - 14 -
ATMs, in which simulations may need to be used in training, it is likely that computers can provide
reasonably priced and realistic simulations that might provide for transfer of skills to community
settings.
ATM-SIM is designed as a multimedia training tool that provides individuals with intellectual
disabilities step-by-step instructions for learning how to use an ATM. Each step in the process, from
entering the ATM card, keying in an access code, selecting the desired transaction and completing the
transaction was simulated on the computer and presented to the user with step-by-step visual and
audio cues. Users interacted with the ATM-SIM system using a touch screen similar to actual
operation of an ATM. Each button and displayed message from a local ATM in the PLUS system of
ATMs was incorporated into the ATM-SIM system. Users were guided through each step of a desired
transaction via computer generated audio instructions and by visually highlighting the buttons that
needed to be pressed.
WHAT IS SPEECH CONTROLLED ATM SIMULATOR?:
Despite the success and widespread use of Automatic Teller Machines (ATMs), a significant
proportion of bank customers can not or will not use them, or experience difficulties in their
interactions. Speech technology has been suggested as a means by which non-users might be
encouraged to use ATMs, while simultaneously improving usability for all. The potential advantages
of speech interfaces include hands-free and eyes-free use for physically- and visually impaired users,
and improved ease and speed of use through increased 'naturalness' of the interaction. This study
investigated user attitudes to the concepts of a speech-based ATM, via large-scale survey and a series
of focus groups. Objective performance was also considered in user trials with a prototype speech-
driven ATM. The idea of using speech for ATM transactions led to a number of concerns. Privacy (the
concern over one's personal financial details being overheard) and security (the fear of potential
attackers hearing the user withdraw cash) were the major reasons given. The user trials confirmed
that possible solutions, such as the adoption of a hood over the ATM or the use of a telephone
handset as the speech input/output device, were ineffective. Groups of impaired users, particularly
visually-impaired subjects, were more positive about the concept of speech, citing various difficulties
Page - 15 -
with current visual-manual interactions. Most non-users, however, would not be encouraged to use
ATMs with the addition of speech.
As per literature survey we have learned what an ATM is, what a simulation is and why we simulate
any real world system. So before we move further we must consider the following aspects regarding
ATM Simulator. The aspects are as follows-
➢ Security: The security is the main concern in case of ATM machines. So this point must also
be considered in ATM Simulator. So secured handling of PIN (Personal Identification
Number) and secured manipulation of other information across the network must also take
place.
➢ Functionality: The ATM Simulator must include all the possible basic and advanced features
that can be provided by a modern ATM machine.
➢ Usability: Unlike the modern ATM machines the simulator should be useful to a wide range of
users and the users must use it without any assistance. The simulator must be user friendly and
must support multiple languages.
➢ Efficiency: The simulator must be fast and easy in operation.
➢ Service Extension: The simulator must be helpful to extend the functionalities of the real
world ATM machines. It means that the banks can experiment the enhancements on the
simulator before they implement it in the real world system.
Page - 16 -
PRODUCT SPECIFICATION
Page - 17 -
PRODUCT PERSPECTIVES:
The real world ATM is continuously developing day by day. More and more new and exciting features
are incorporated in the machine as per customer‟s increasing needs. In the earlier times ATM was only
recognized for cash withdrawal or balance enquiry. But now a day various new features like cash
deposits, various Bill payments, Mobile recharge etc are added which are attracting more and more
customers. In spite of these advancements in the ATM world, the ATM is not successful in rural areas.
Most of the people are illiterate and even can‟t perform a simple transaction like cash withdrawal due
to language bondation. The same problem exists with the blind people. Providing more and more
language options is useless because they may not be able to read a text written on the screen. Thus the
existing system although growing day by day and fulfilling more and more needs of customers fails
in the case when simplicity and user friendliness is measured.
The proposed system “Speech controlled ATM” provides all the basic as well as advanced features of
a standard real world ATM system. Along with it to add more simplicity and to make the machine
more user friendly concepts like speech synthesis and speech recognition are added.
PRODUCT SCOPE:
The scope of the project are as follows:
As the project is a simulator so the new experiments can be performed on it before we implement
it on the real world machine. So here we are also performing an experiment of speech synthesis
and speech recognition. The performance of the system can be studied on the simulator and then
it can be implemented on real world machines. Similarly, we can also perform other
advancements on the simulator before deploying it on the real system.
Page - 18 -
PRODUCT FUNCTIONS:
The software to be designed will control a simulated Automated Teller Machine (ATM) having a
capablility to read a card, a customer console (keyboard and display) for interaction with the customer
and a printer for printing customer receipts. The simulator must work in a networked environment
(i.e... LAN in our case).It must also communicate with the requisite servers available in LAN. The
simulator software includes also the basic featur es of an ATM viz... Withdrawal, deposit, transaction
details, money transfer and balance queries.
Along with the above features the simulator also demonstrates the additional features like payment of
telephone and electricity bills and other services. The project also helps us to understand the Software
Engineering principles and Object Oriented Programming principles in a better way.
In our project we have pointed out a new idea regarding user friendliness by introducing the concepts
of speech synthesis and speech recognition.
USER CLASSES & CHARECTERISTICS:
The user can be both rural and urban people and possess the following characteristics:
➢Rural people are in general illiterate and would like to use the ATM through speech for
simplicity.
➢ Whereas the urban people are literate and can use speech as well as manual techniques.
➢ Rural people want the basic banking features.
➢ Urban people require both banking features and supplementary services.
Page - 19 -
OPERATING ENVIRONMENT:
As we know that the real world ATM machines work in a WAN (Wireless Area network). So it
becomes necessary for our project to work at least in a networked environment. So for this we have
implemented our project in a distributed environment which consists of a server end and multiple
client ends. The software runs on the client end and the request made by the user at the client end
goes for validation at the server end and if it has been validated then the requested transaction is
performed at the server and the appropriate message is displayed at the server.
Although the web based environment can also be used in place of distributed environment, but then
browser was needed to run the program which doesn‟t give a good look and feel, so in order to run the
application with good look and feel we have used distributed environment as our operating
environment.
USER ENVIRONMENT:
As discussed above the software will run in a distributed environment having multiple client ends and
a single server end. So the user will operate on the client end of the distributed environment from
where he will make request and that will be executed on the server end. And the server will respond
the user at client end appropriately.
ASSUMPTIONS AND DEPENDIES:
Simulation is the process of constructing a computerized model of a real world system. And to
construct this system certain assumptions are taken. So do as our project has certain assumptions
which are as follows:
Page - 20 -
➢ Real world ATM machines work in WAN whereas our simulator works in LAN (i.e.
distributed environment).
➢ Unlike real world ATM machines there is no cash dispensing.
➢ For deployment of the software all the client and server ends system must have compatible
JDK versions (i.e. JDK 1.4 onwards).
➢ Instead of touch screens in real world ATM machines our software uses mouse for selection
of options.
Page - 21 -
REQUIREMENT AND SYSTEM ANALYSIS
Page - 22 -
EXTERNAL INTERFACE REQUIREMENTS:
USER INTERFACES:
The user interfaces can be well defined by the following diagrams:
Enters card
Prompt to select language
ATM SIMULATOR
SCREEN
LANGUAGE
SCREEN
LANGUAGE
SCREEN
Select language
through speech
Page - 23 -
Prompt to perform transaction
Select a transaction
After performing the transactionthe
appropriate message is displayed
in a printed from.
HARDWARE INREFACES:
Hardware interfaces defines how hardware will be used by the user in the product. As there is no
hardware utility in our project so there is anything such as hardware interfaces.
COMMUNICATION PROTOCOLS:
As defined above the software will work in distributed environment. And in Java distributed
environment can be deployed by three techniques, which are as follows:
➢ RMI(Remote Method Invocation)
➢ CORBA(Common Object Request Broker)
➢ SOAP(Simple Object Access Protocol)
TRANASACTION
SCREEN
TRANSACTION
SCREEN
Selection through speech
MESSAGE
SCREEN
Page - 24 -
Among the above three techniques we have used RMI(Remote Method Invocation) which permits
communication between two Java objects, whereas the remaining two permits communication
between Java object and other language object.
If we have to access the remote computer then we have to call the remote method of the remote
object. The object that calls the remote object is called „client object‟. And, the remote object I known
as „server object‟. The system on which the client object runs is known as client and the other is known
as server. So, the communication protocol used in our project can be defined by the following figure.
Call Stub on local
Proxyobject Send marshaled parameters
Call server method
Return result
Marshaled return values
Response values
Whenever the client code makes a call to the method of a remote object then the call is made to an
ordinary method in the local proxy called stub. The stub packages the parameters to be passed in the
remote method and performs machine independent coding. The process of encoding of parameter is
called parameter marshaling. Parameter marshaling is done to convert the parameters into a
transmission format. When the receiver at the server side receives the format it un-marshals it and
execute the method at server. The result to be returned is marshaled and transmitted to stub of client
side, where it is un-marshaled and displayed to the client.
CLIENT
CLIENT
STUB
SERVER
STUB SERVER
Page - 25 -
INFRASTRUCTURE REQUIREMENTS:
HARDWARE REQUIREMENTS:
SERVER SITE:
➢ Processor
➢ Hard Disk
➢ RAM
: Pentium 3 onwards
: 10 GB
: 512 MB
CLIENT SITE:
: Pentium II onwards
: 5 GB
: 256 MB
➢ Processor
➢ Hard Disk
➢ RAM
➢ Good quality headphone and microphone
➢ Floppy Drive Reader
➢ Printer
SOFTWARE REQUIREMENTS:
SERVER SITE:
➢ Operating System
➢ Front End
➢ Back End
: Any Network Operating System (e.g. Windows server 2003)
: Java (JDK 1.4 onwards)
: MS-Access
CLIENT SITE:
➢ Operating System : Compatible Operating System with NOS (e.g. Widows Xp)
➢ Front End : Java (JDK 1.4 onwards)
Page - 26 -
FUNCTIONAL REQUIREMENTS:
Following are the general functional requirements of our project:
1) Entry: The model will service one customer at a time. A customer will be required to
insert a card and enter a personal identification number (PIN) - both of which will be sent
to the bank server for validation as part of each transaction. As soon as the user entry has
been authenticated then a session will be initialized for him/her which will end either
when the user finishes transactions or he/she aborts the session.
2) PIN (Personal Identification Number) Access: If the ATM Simulator determines that the
customer's PIN is invalid, the customer will be required to re-enter the PIN before a
transaction can proceed. If the customer is unable to successfully enter the PIN after three
tries, the card will be locked by the machine, and the customer will have to contact the
bank to unlock it.
3) Transactions: The customer will be able to perform one or more transactions. The ATM
Simulator will communicate each transaction to the bank and obtain verification that it
was allowed by the bank. Ordinarily, a transaction will be considered complete by the
bank once it has been approved. If a transaction fails for any reason other than an invalid
PIN, the ATM will display an explanation of the problem, and will then ask the customer
whether he/she wants to do another transaction. A customer must be able to abort a
transaction in progress anytime instead of responding to a request from the machine.
Withdrawal: This feature allows the card user for withdrawing
money.
Balance Enquiry: This helps the card user to obtain either a printed
or non-printed balance status.
Transaction Details: These features help the card user to obtain last
Page - 27 -
ten transactions details of the account in a printed way.
Money Transfer: This helps the card user to transfer the money
from his account to another account in the same branch or same
bank.
Deposit: This feature allows the card user to deposit the money in
his/her account.
4) Services: This includes the additional services which can be performed
through an ATM Simulator. The services present in the simulator are as
follows –
Bill Payment: This includes the facility of payment of electricity
bill and telephone bill through your ATM. The telephone bill can be
paid only to those providers who have coordination with the bank
.
5) Acknowledgements: The ATM Simulator will provide the customer with a printed receipt
for each successful transaction, showing the date, time, machine location, type of
transaction, account(s), amount, and ending and available balance(s) of the affected
account. It also provides the printed balance transaction details and an error message if
any error is encountered.
6) Speech Recognition & Synthesis: The ATM system will now help the user by guiding
him throughout the transaction by giving speech in his or her mother language. This is
known as speech synthesis. And, the ATM system will now be able to recognize spoken
commands. The customer can now give voice commands in his mother language with
the help of a microphone and the ATM machine recognizes those spoken commands and
takes the appropriate action. This is known as Speech recognition.
Page - 28 -
DOMAIN ANALYSIS
USE CASES ANALYSIS:
Use-case: Card Entry-PIN entry
Actor: User
➢ The user enters the card.
➢ The system checks whether the card is properly inserted or not.
➢ If, properly inserted then system prompts the user to enter PIN.
➢ User enters PIN.
➢ System validates the PIN.
➢ If valid then display the transactions that user can perform.
➢ If the PIN is invalid then the user can re-enter the PIN at a maximum of three times.
➢ If the user enters the PIN wrong at fourth time then the system will block user‟saccount.
Use-case: Performing Transaction
Actor: User
➢ System displays the available transactions that user can perform.
➢ User selects one of the transactions either through speech or manually.
➢ System prompts the user to enter the relative data for performing the selected transaction.
➢ User enters the data.
➢ System performs the transaction.
➢ System provides a printed acknowledgement depending upon the transaction.
Use-case: Withdraw
Actor: User
➢ User selects „withdraw‟either through speech or manually.
➢ System prompts user to enter the amount.
Page - 29 -
➢ User enters the amount.
➢ System performs & commits the transaction.
➢ System acknowledges user with an updated printed balance details of account.
Use-case: Deposit
Actor: User
➢ User selects „deposit‟either through speech or manually.
➢ System prompts user to enter the amount.
➢ User enters the amount.
➢ System prompts the user to enter the denominations
➢ System checks the denominations.
➢ System performs & commits the transaction.
➢ System acknowledges user with an updated printed balance details of account
Use-case: Balance Enquiry
Actor: User
➢ User selects „balance enquiry‟either through speech or manually.
➢ System prompts user whether user wants printed advice or not.
➢ User selects his choice.
➢ System displays the current balance as per the selected choice.
Use-case: Money Transfer
Actor: User
➢ User selects „transfer‟either through speech or manually.
➢ System prompts user to enter the target account number.
➢ System checks the target account number for validation
➢ System prompts the user to enter the amount to be transferred.
➢ User enters the amount.
➢ System performs & commits the transaction.
➢ System acknowledges user with an updated printed balance details of account
Page - 30 -
Use-case: Mini Statement
Actor: User
➢ User selects „mini statement‟ either through speech or manually.
➢ System displays the last 10 transactions performed on his account in a printed form.
Use-case: Telephone Bill Payment
Actor: User
➢ User selects „Telephone Bill‟either through speech or manually.
➢ System prompts user to enter the consumer number.
➢ System checks the consumer number for validation
➢ System displays the last bill details for the consumer number.
➢ System prompts the user for payment.
➢ User selects for payment.
➢ System performs & commits the transaction.
➢ System acknowledges user with an updated printed balance details of account & bill details.
Use-case: Electricity Bill Payment
Actor: User
➢ User selects „Electricity Bill‟either through speech or manually.
➢ System prompts user to enter the consumer number.
➢ System checks the consumer number for validation
➢ System displays the last bill details for the consumer number.
➢ System prompts the user for payment.
➢ User selects for payment.
➢ System performs & commits the transaction.
➢ System acknowledges user with an updated printed balance details of account & bill details.
Page - 31 -
STATE CHART DIAGRAM:
Tries<=3
Card
invalid
Valid PIN entered
Successful activation
ACTIVITY DIAGRAMS:
An activity diagram comes under “Scenario based modeling” of analysis modeling. The UML activity
diagram supplements the use-case by providing a graphical representation of the flow of interaction
within a specific scenario. An activity diagram uses rounded rectangles to imply a specific system
function, arrows to represent flow through the system, decision diamonds to depict a branching
decision and solid horizontal lines to indicate that parallel activities are occurring.
CARD READER
Do: Check Card
PIN VALIDATOR
Do: ValidatePIN
valid
INTERFACE
Do: Prompt for PIN
Tries>3
INTERFACE
Do: Display &Prompt for transaction
LOCKED
Do: Block Account
Prompt for transaction selection
TRANSACTION
Do: Perform selected transaction
Acknowledgement message
PRINT INTERFACE
Do: Display & PrintAcknowledgement
Page - 32 -
Not properlyinserted
Properly inserted
Invalid PIN Valid PIN
No. of tries<=3
No. of tries>3
Enter card
Select language Prompt for re-entry of card
Enter PIN
Select a transaction
Perform selected transaction Update databases
Acknowledgement/error message
Page - 33 -
SYSTEM DESIGN:
INTRODUCTION:
System Design is generally a collection of principles, concepts and practices that lead to the
development of a high quality system that lead to the development of a high quality product. The
main goal of design engineering is to define a model or representation that can be used to fulfill the
customer about the satisfactory of the constructed software.
In context of a software engineering it is the technical kernel. Once the software requirements are
analyzed and modeled, system design is the last work in modeling phase and it also provide a base for
construction phase.
FUNCTIONALITY:
In single word system engineering implements „quality‟ to our software. It provides a model by which
we can convince our customer for the software to be developed.
Page - 34 -
SEQUENCE DIAGRAM:
Enter card
Card details(not visible)
Details from card Relevant details from database
invalid
status
Prompt for PIN (valid)
User ready EntersPIN
Invalid (tries<=3) PIN Already stored PIN
status
Valid (Prompt for trans.)
Fig: Sequence diagram for card entry and entry of PIN
USER ATM SCREEN VALIDATOR DATABASE
Page - 35 -
Valid (Prompt for trans.)
User ready selects transaction
Selected transaction& Data from database
Requisitedata
Perform transaction
Acknowledgement
Updating of data
User session ends
Fig: Sequence diagram for performing transaction
USER SYSTEM DATABASE
ATM SCREEN
Page - 36 -
USER INTERFACE DESIGN
Page - 37 -
CLASS DIAGRAMS:
Is placed within &
Is part of
Is placed within &
Is part of
Is used to build
Playing_Sound
AudioInputStream
DataLine
File
Clip
+Playing_Sound (String)
+Play ()
+Stop ()
DateTime
DateFormat
Date
String
+Datetime ()
+getDate ()
+getTime ()
Myjframe
JPanel
JButton
JLabel
TextField
Font
Int
DateTime
Playing_Sound
Long
String
PrintPanel
PrintRequestAttributes
+Myjframe (String)
+senseCard()
+textValueChanged(TextEvent)
+actionPerformed(ActionEvent)
+userTalked(String)
+startThread ()
AtmSimulatorFloppy
+main (String [])
Page - 38 -
INTRODUCTION:
User Interface Design means the interface through which user can interact with the software and
perform it requisite operations. This interface must user friendly as much as possible. It must not
force unnecessary stress on the end user and must be easy to use. The interface must also fulfill the
requirements that had been stated at the requirement elicitation and requirement inception phase.
USER INTERFACE DESIGN:
The user interface can be defined by the following snapshots of the user interface of our project. It
defines how a user can interact efficiently with the software.
Page - 39 -
1) The above interface defines the “Welcome Screen of our project”. The software remains in
the screen until the user doesn‟t insert the card (i.e. floppy drive). As soon as the user enters the
card properly the next screen is displayed.
Page - 40 -
2) The above screen prompts the user to enter his/her 4-digit PIN (Personal Identification
Number). As soon as user will enter his PIN he/she will be guided to next screen.
Page - 41 -
3) The above screen defines the basic banking transaction features under “Banking”. In this page
any one of the options can be selected either by clicking on it or by speaking the word which
will be pronounced by the software for each of the option.
Page - 42 -
4) The above screen prompts the user to enter the amount to withdraw. After entering the amount
he can either click “Yes” or speak “Yes” which will be automatically recognized by the
software.
Page - 43 -
5) The above screen will help the user to deposit the money into his account. For this he has to
first enter the amount followed by denominations. The further steps is same as discussed in
the previous step.
Page - 44 -
) The above screen prompts the user to enter the 10 digit consumer no. for paying his telephone
bill. After entering it he may either click “Yes” or speak “Yes”. If he does so then the next
screen will be displayed. And if he selects No then he will be send to screen at step 5.
Page - 45 -
IMPLEMENTATION
Page - 46 -
INTRODUCTION:
The implementation phase of software development is concerned with design specification with
source code. The primary goal of implementation is to write source code to its specification. The
code has to be easily verified, so that debugging, testing and maintenance can be eased. The goal can
be achieved by making the source code as clear and straightforward as possible.
DEVELOPMENT ENVIRONMENT:
Regarding the development environment of our project, it has two phases – first on a stand alone
system and second on a peer-to-peer network (containing two computers). Initially we have
developed the front end of the software in modules. Then we have designed the back end (i.e.
databases and its access through Java) or we can also say server end. Then for checking the
functioning in the distributed network we have deployed the software in network discussed above,
with one system as client and other system as server.
PROTOTYPING:
RAPID PROTOTYPING:
The RAD Model is an incremental process model with a rapid development phase. It is a high speed
adaptation of waterfall model. The rapid development is achieved by component based construction
process. If the software requirement is well defined and project scope is constrained then RAD model
can develop the project in a short time duration (i.e. 60 to 90 days).
Page - 47 -
Fig: Rapid Prototyping
It requires less time and workload can be distributed. But on the other hand requires large no. of
human resources and high technical risk is associated.
INCREMENTAL PROTOTYPING:
It combines waterfall model in an iterative fashion. It uses the linear sequences in staggered form.
Each increment adds some additional functionality to software. For example consider word
processing software developed using this paradigm. Initially in the first increment only basic file
management, editing and documentation will be provided. At second increment sophisticated file
management, documentation and editing features will be available. At third increment spell check
feature will be added and so on.
Thus the first increment in an incremental model is often the core product. The core product refers to
the basic functionality and the supplementary functionality are provided at the later versions. The
core product is used by the customer. As result of used plan for next increment is produced. The next
increment must increase the functionality of the core product. This process continues till the complete
software is not provided.
Communi-
cation
Team 1
(Modeling)
Team 2
(Modeling)
Team n
(Modeling)
Team 1
(Construct)
Team n
(Construct)
Team2
(Construct)
Page - 48 -
Deployment
Planning
Functionality
Time
Fig: Incremental Prototyping
EVOLUTIONARY PROTOTYPING:
As we know that software occupies time. If during the development of software the business or
product requirement changes, then it leads to the development of software to be unrealistic. Also the
tight deadlines prevent the completion of comprehensive project. In such cases, only a limited version
product can be provided. To overcome the problem, we require a software process model, which can
accommodate a product explicitly and can modify itself with the product with the time. It is of two
types:
➢ Prototyping Model:
Often a customer defines the objective of software, but is unable to define the complete
details about input, processing and output. In such cases a prototype model is beneficial as
it guides the developer and the customer when the requirement is indistinct.
C D
M
P K
M D
C
P
K
P
C M K D
Increment 1
Page - 49 -
Increment 2
Increment n
Fig: Prototyping Model
➢ Spiral Model:
A spiral model is an evolutionary process model that couples the iterative nature of
prototype model and semantic and control aspect of waterfall model. It produces the rapid
development of increment of the software. So we can say that spiral model results in
development of software in evolutionary releases. The first release may be prototype and
further release is a sophisticated software product.
PORTABILTY:
Platform for any software is defined as the combination of processor and operating system over
which the software runs. Platform dependent software is those that will run only on that platform for
which it has been constructed. For example if we construct a program in C language which is running
on a platform (Intel + Windows Xp) and if we run the same program on a computer having LINUX
operating system then the program will not run. So C doesn‟tsupport portability.
A platform is the hardware or software environment in which a program runs. The Java platform
differs from most other platforms in that it's a software-only platform that runs on top of other,
hardware-based platforms. Most other platforms are described as a combination of hardware and
operating system.
Communication
Quick Plan
Quick Design
Construction of
Prototype
Deployment
Page - 50 -
The Java platform has two components:
The Java Virtual Machine (Java VM)
The Java Application Programming Interface (Java API)
The Java API is a large collection of ready-made software components that provide many useful
capabilities, such as graphical user interface (GUI) widgets. The Java API is grouped into libraries
(packages) of related components. The following figure depicts a Java program, such as an
application or applet, that's running on the Java platform. As the figure shows, the Java API and
Virtual Machine insulates the Java program from hardware dependencies.
Fig: Java as a programming language & a platform
As a platform-independent environment, Java can be a bit slower than native code. However, smart
compilers, well-tuned interpreters, and just-in-time byte code compilers can bring Java's performance
close to that of native code without threatening portability.
Regarding our project, it is portable. The reason for portability is the technology used i.e. JAVA. Java
itself is a portable language (supports platform independency). In the project first Java will create a
byte code (CLASS file) of our source code and after that this byte code can be made to execute on
any system irrespective of the platform. The only thing that can violate the portability of our project
is –if the version of JDK is less than 1.4.
Page - 51 -
TESTING
Page - 52 -
TESTING STRATEGIES:
UNIT TESTING:
Unit Testing is a testing mechanism that tests the modules of our software. It can be carried out after
the coding or before the coding. A component level design act as guide for testing of modules. The
unit testing tests the control paths to uncover errors within the boundaries of modules. The unit
testing mainly focuses on the internal processing level and data structure of a component. Testing of
each module can be carried out in the following parts:
➢ Module Interface
➢ Local data structure
➢ Independent paths
➢ Boundary values
➢ Error handling statements
Interface
Local Data Structures
Independent Paths
Boundary Values
Error Handling
Fig: Unit Testing
The unit testing begins with the testing of modules interface. In this the flow of information from or
to module interface is checked. After this the data stored in local data structures are checked for
Module
Test Cases
Page - 53 -
integrity. After that all independent paths are checked whether they are checked at least once. After
this the boundary values are checked against the control flow, data structures at the boundaries of
input domain. At last the tests are conducted for the error handling statements for identifying any
errors (if present) and error handling routines.
INTEGRATION TESTING:
Integration testing is a systematic technique that describes software architecture and at the same time
checks the errors encountered in the interfaces. The main objective of integration testing is to use the
unit tested modules and design architecture as depicted by design.
The normal tendency is to follow non-incremental integration testing. In which all the components
are combined and structure is obtained and afterwards testing is performed. But the best way is to
follow incremental testing in which the program is constructed and tested increments and errors can
be easily isolated and corrected. There are two types of incremental testing:
➢ Top-down incremental integration testing
➢ Bottom-up incremental integration testing
Top-Down Integration Testing:
Top-down incremental testing is a mechanism for constructing software architecture and testing at the
same time. In this approach the process of integration begins from the top where the main control is
taken first. Then as we move towards bottom each module is integrated and simultaneously tested.
The main control module act as a driver and the module sub-ordinate requires are replaced by stubs.
Depth first integration and Breadth first integration are two approaches for integration of modules.
Page - 54 -
Bottom-up Integration Testing:
In bottom-up integration the integration of module begins from the lowest level. Since the module at
the lowest level are already integrated and tested, so stubs are eliminated.
FUNCTION TESTING:
Black Box testing or Functional testing is a mechanism to check the functionality of our program. By
applying black box testing tester will be able to get a test case that checks the functionality of ones
program.
Black Box testing can be used to find the following errors:
➢ To find incorrect or missing functions.
➢ Interface errors.
➢ Data structures and data access to external database error.
➢ Behavior and performance error.
➢ Initialization and termination errors.
Black Box testing is done to check that software functions are operational i.e. input is properly
accepted & output is correctly produced & the integrity of the external information is maintained. It
is usually applied at the later phase of testing. It can be performed by following four methods:
➢ Graph Based methods.
➢ Equivalence partitioning.
➢ Boundary value analysis.
➢ Orthogonal array testing.
Page - 55 -
SYSTEM TESTING:
System testing is actually a series of different tests whose primary purpose is to fully exercise the
computer based system. Through this it is checked whether all system elements have been properly
integrated and perform allocated functions. It includes the following testing:
➢ Recovery Testing: If there is a system fault then the system must resume processing
within a certain period of time. So it allows a tester to cause faults in various cases and
look for the resume duration.
➢ Security Testing: It tests whether the security measures possessed by our software is
capable of stopping the illegal access.
➢ Stress Testing: Stress testing checks the stress that can be beard by our software. For this
the tester runs the software with abnormal quantity, frequency and volume of resources.
➢ Performance Testing: Performance testing is usually done to check the performance of
program at run time. For this hardware and software instrumentation is needed.
TESTING CONSIDERED:
In our project we have performed the following testing:
➢ White Box Testing
➢ Black Box Testing
➢ Unit Testing
➢ Integration Testing
Initially we have tested the unit modules. And within each module we have performed black box
testing to check whether the modules is accepting the input(zero or many) or not and against that
input it is producing correct output or not. If it is producing the output but it is logically wrong then
white box testing is performed to check the internal functionality of modules i.e. the logical control
flows and details.
Page - 56 -
After performing unit testing on all modules we integrate them to form big modules. Here we have
used incremental bottom-up integration testing. In this we have integrated the modules starting from
bottom and the cluster is tested. At the final step the entire system is tested.
Page - 57 -
FUTURE WORK
Page - 58 -
The future work that can be done in the project are as follows:
➢ More speech patterns can be stored to import security.
➢ The use of Bio-metric authentication (finger print) can import more security as the card and
PIN will not be used further.
Page - 59 -
CONCLUSION
Page - 60 -
As a matter of fact this project is completed in twelve months and this duration is divided into two
sections, six months of collecting information, planning and literature survey and next six months of
implementing it. First, the theoretical section where I have learned lots of things regarding ATM
machines (e.g.…functioning features and services provided), regarding simulation, simulators and
needs of simulation. Along with these we have also learned some concepts of RMI (Remote Method
Invocation) and JDBC (Java Database Connectivity) in Java. Having an ATM Simulator as a major
project helps me to better understand the concepts of Object Oriented Programming principles,
Software Engineering principles and concepts regarding simulation and modeling.
In this duration I have tried to plan the simulator in such a manner that it not only covers all the
features and facilities of modern real ATM but an enhancement is also suggested. This simulator also
provides the environment in which new enhancements can be performed on it, before they are
equipped on the real world ATM machines. The use of speech synthesis and speech recognition
helps the software more user friendly. The speech synthesis guides the user for performing the
transactions and speech recognition facilitates the user to perform the transaction through speech.
This speech mechanism thus helps the rural people to use the ATM without extra overhead of
remembering the procedure for maintaining the transactions. As speech synthesis will guide them
and speech recognition will allow them to use their speech to perform transactions.
And in these six months we have implemented the software in such a way that it fulfils all the
objectives that had been stated in the first six months. Also we have performed the different testing
strategies.
Page - 61 -

More Related Content

What's hot

Updated black book ice cream parlour TYBSCIT Final year project in PDF
Updated black book ice cream parlour TYBSCIT Final year project in PDFUpdated black book ice cream parlour TYBSCIT Final year project in PDF
Updated black book ice cream parlour TYBSCIT Final year project in PDFYogeshDhamke2
 
Online Voting System
Online Voting SystemOnline Voting System
Online Voting Systemapolama
 
C program for hnb atm machine original - updated - [pys]
C program for hnb atm machine   original - updated - [pys]C program for hnb atm machine   original - updated - [pys]
C program for hnb atm machine original - updated - [pys]Pasan Suriyaarachchi
 
BANK MANAGEMNT SYSTEM.pptx
BANK MANAGEMNT SYSTEM.pptxBANK MANAGEMNT SYSTEM.pptx
BANK MANAGEMNT SYSTEM.pptxVjVj28
 
bank transaction system
bank transaction systembank transaction system
bank transaction systemBhavika Pathak
 
54039271 atm-project-report
54039271 atm-project-report54039271 atm-project-report
54039271 atm-project-reportKalpana Reddy
 
ATM project presentation
ATM project presentationATM project presentation
ATM project presentationAbdul Rafay
 
Automated Teller Machine
Automated Teller MachineAutomated Teller Machine
Automated Teller MachineDiotima Gupta
 
54024405 project-report-banking-management-system
54024405 project-report-banking-management-system54024405 project-report-banking-management-system
54024405 project-report-banking-management-systemnancs
 
Chatbot for education
Chatbot for educationChatbot for education
Chatbot for educationArevSukiasyan
 
online bus ticket booking system
online bus ticket booking systemonline bus ticket booking system
online bus ticket booking systemUmme habiba
 
Atm flowchart
Atm flowchartAtm flowchart
Atm flowchartnakomuri
 

What's hot (20)

Updated black book ice cream parlour TYBSCIT Final year project in PDF
Updated black book ice cream parlour TYBSCIT Final year project in PDFUpdated black book ice cream parlour TYBSCIT Final year project in PDF
Updated black book ice cream parlour TYBSCIT Final year project in PDF
 
Atm
AtmAtm
Atm
 
Bank Management System
Bank Management SystemBank Management System
Bank Management System
 
Online Voting System
Online Voting SystemOnline Voting System
Online Voting System
 
C program for hnb atm machine original - updated - [pys]
C program for hnb atm machine   original - updated - [pys]C program for hnb atm machine   original - updated - [pys]
C program for hnb atm machine original - updated - [pys]
 
Blood bank report new
Blood bank report newBlood bank report new
Blood bank report new
 
BANK MANAGEMNT SYSTEM.pptx
BANK MANAGEMNT SYSTEM.pptxBANK MANAGEMNT SYSTEM.pptx
BANK MANAGEMNT SYSTEM.pptx
 
bank transaction system
bank transaction systembank transaction system
bank transaction system
 
Atm transaction
Atm transactionAtm transaction
Atm transaction
 
54039271 atm-project-report
54039271 atm-project-report54039271 atm-project-report
54039271 atm-project-report
 
ATM project presentation
ATM project presentationATM project presentation
ATM project presentation
 
Atm software ppt
Atm software pptAtm software ppt
Atm software ppt
 
Automated Teller Machine
Automated Teller MachineAutomated Teller Machine
Automated Teller Machine
 
54024405 project-report-banking-management-system
54024405 project-report-banking-management-system54024405 project-report-banking-management-system
54024405 project-report-banking-management-system
 
Chatbot for education
Chatbot for educationChatbot for education
Chatbot for education
 
Atm software
Atm softwareAtm software
Atm software
 
online bus ticket booking system
online bus ticket booking systemonline bus ticket booking system
online bus ticket booking system
 
ATM
ATMATM
ATM
 
Atm flowchart
Atm flowchartAtm flowchart
Atm flowchart
 
Atm Simulator
Atm SimulatorAtm Simulator
Atm Simulator
 

Similar to Black book converted

IRJET - Anti-Fraud ATM Security System
IRJET  - Anti-Fraud ATM Security SystemIRJET  - Anti-Fraud ATM Security System
IRJET - Anti-Fraud ATM Security SystemIRJET Journal
 
Document Atm machine using c language mini project.pdf
Document  Atm machine using c language mini project.pdfDocument  Atm machine using c language mini project.pdf
Document Atm machine using c language mini project.pdfNEERAJRAJPUT81
 
Online movie booking synopsis
Online movie booking  synopsisOnline movie booking  synopsis
Online movie booking synopsismca projects
 
Smart Traffic Monitoring System Report
Smart Traffic Monitoring System ReportSmart Traffic Monitoring System Report
Smart Traffic Monitoring System ReportALi Baker
 
Online Tours and travel
Online Tours and travelOnline Tours and travel
Online Tours and travelAmit Patil
 
Etaxi Documentation
Etaxi DocumentationEtaxi Documentation
Etaxi DocumentationM.Saber
 
A CASE Lab Report - Project File on "ATM - Banking System"
A CASE Lab Report - Project File on  "ATM - Banking System"A CASE Lab Report - Project File on  "ATM - Banking System"
A CASE Lab Report - Project File on "ATM - Banking System"joyousbharat
 
TY CS Black book Construction - Dinesh48
TY CS Black book Construction - Dinesh48TY CS Black book Construction - Dinesh48
TY CS Black book Construction - Dinesh48Dinesh Jogdand
 
IRJET- A Survey on Cardless Automated Teller Machine(ATM)
IRJET- A Survey on Cardless Automated Teller Machine(ATM)IRJET- A Survey on Cardless Automated Teller Machine(ATM)
IRJET- A Survey on Cardless Automated Teller Machine(ATM)IRJET Journal
 
Online car parking reservation system 9160262550 dinesh
Online car parking reservation system   9160262550 dineshOnline car parking reservation system   9160262550 dinesh
Online car parking reservation system 9160262550 dineshDinesh Nalluri
 
Bank Management System.docx
Bank Management System.docxBank Management System.docx
Bank Management System.docxNikhil Patil
 
Automatic fee collection & receipt printing system
Automatic fee collection & receipt printing systemAutomatic fee collection & receipt printing system
Automatic fee collection & receipt printing systemApurv Modi
 
TechaaService LLC.Records Management SolutionKai ChiuImran.docx
TechaaService LLC.Records Management SolutionKai ChiuImran.docxTechaaService LLC.Records Management SolutionKai ChiuImran.docx
TechaaService LLC.Records Management SolutionKai ChiuImran.docxerlindaw
 
IRJET - Anti-Fraud ATM Security System
IRJET -  	  Anti-Fraud ATM Security SystemIRJET -  	  Anti-Fraud ATM Security System
IRJET - Anti-Fraud ATM Security SystemIRJET Journal
 
46393833 e banking
46393833 e banking46393833 e banking
46393833 e bankingdipali2009
 
M829_Chinmayy_Purohit_Executive_Summary
M829_Chinmayy_Purohit_Executive_SummaryM829_Chinmayy_Purohit_Executive_Summary
M829_Chinmayy_Purohit_Executive_SummaryChinmayy Purohit
 
End of year project report on remote sms based voting system by fomagha tatou...
End of year project report on remote sms based voting system by fomagha tatou...End of year project report on remote sms based voting system by fomagha tatou...
End of year project report on remote sms based voting system by fomagha tatou...Mohamed Fomagha Tatou
 

Similar to Black book converted (20)

IRJET - Anti-Fraud ATM Security System
IRJET  - Anti-Fraud ATM Security SystemIRJET  - Anti-Fraud ATM Security System
IRJET - Anti-Fraud ATM Security System
 
Document Atm machine using c language mini project.pdf
Document  Atm machine using c language mini project.pdfDocument  Atm machine using c language mini project.pdf
Document Atm machine using c language mini project.pdf
 
Online movie booking synopsis
Online movie booking  synopsisOnline movie booking  synopsis
Online movie booking synopsis
 
Smart Traffic Monitoring System Report
Smart Traffic Monitoring System ReportSmart Traffic Monitoring System Report
Smart Traffic Monitoring System Report
 
Project synopsis.
Project synopsis.Project synopsis.
Project synopsis.
 
Online Tours and travel
Online Tours and travelOnline Tours and travel
Online Tours and travel
 
Etaxi Documentation
Etaxi DocumentationEtaxi Documentation
Etaxi Documentation
 
A CASE Lab Report - Project File on "ATM - Banking System"
A CASE Lab Report - Project File on  "ATM - Banking System"A CASE Lab Report - Project File on  "ATM - Banking System"
A CASE Lab Report - Project File on "ATM - Banking System"
 
TY CS Black book Construction - Dinesh48
TY CS Black book Construction - Dinesh48TY CS Black book Construction - Dinesh48
TY CS Black book Construction - Dinesh48
 
Online bus ticket booking
Online bus ticket bookingOnline bus ticket booking
Online bus ticket booking
 
IRJET- A Survey on Cardless Automated Teller Machine(ATM)
IRJET- A Survey on Cardless Automated Teller Machine(ATM)IRJET- A Survey on Cardless Automated Teller Machine(ATM)
IRJET- A Survey on Cardless Automated Teller Machine(ATM)
 
Online car parking reservation system 9160262550 dinesh
Online car parking reservation system   9160262550 dineshOnline car parking reservation system   9160262550 dinesh
Online car parking reservation system 9160262550 dinesh
 
Bank Management System.docx
Bank Management System.docxBank Management System.docx
Bank Management System.docx
 
Automatic fee collection & receipt printing system
Automatic fee collection & receipt printing systemAutomatic fee collection & receipt printing system
Automatic fee collection & receipt printing system
 
Billing project
Billing projectBilling project
Billing project
 
TechaaService LLC.Records Management SolutionKai ChiuImran.docx
TechaaService LLC.Records Management SolutionKai ChiuImran.docxTechaaService LLC.Records Management SolutionKai ChiuImran.docx
TechaaService LLC.Records Management SolutionKai ChiuImran.docx
 
IRJET - Anti-Fraud ATM Security System
IRJET -  	  Anti-Fraud ATM Security SystemIRJET -  	  Anti-Fraud ATM Security System
IRJET - Anti-Fraud ATM Security System
 
46393833 e banking
46393833 e banking46393833 e banking
46393833 e banking
 
M829_Chinmayy_Purohit_Executive_Summary
M829_Chinmayy_Purohit_Executive_SummaryM829_Chinmayy_Purohit_Executive_Summary
M829_Chinmayy_Purohit_Executive_Summary
 
End of year project report on remote sms based voting system by fomagha tatou...
End of year project report on remote sms based voting system by fomagha tatou...End of year project report on remote sms based voting system by fomagha tatou...
End of year project report on remote sms based voting system by fomagha tatou...
 

Recently uploaded

Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024eCommerce Institute
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Pooja Nehwal
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Hasting Chen
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfhenrik385807
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...NETWAYS
 
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStrSaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStrsaastr
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AITatiana Gurgel
 
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...NETWAYS
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Salam Al-Karadaghi
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@vikas rana
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...NETWAYS
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxFamilyWorshipCenterD
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptssuser319dad
 
Motivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfMotivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfakankshagupta7348026
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxmohammadalnahdi22
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...NETWAYS
 
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Kayode Fayemi
 
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
 
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStrSaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.ppt
 
Motivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfMotivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdf
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
 
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
 
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
 

Black book converted

  • 1. ATM SIMULATOR Pune Vidyarthi Grihas's College of science and technology CTS NO 218 Br. Nath Pai Nagar Ghatkopar E Mumbai 400077 PROJECT REPORT ON ATM SIMULATOR BY Mr. PRATIK NITIN SARVANKAR. GUIDED BY Ms. Prajakta Shirke UNIVERSITY OF MUMBAI T.Y.BSC (COMPUTER SCIENCE) FOR ACADEMIC YEAR 2021-22 PRATIK SARVANKAR
  • 2. ATM SIMULATOR Pune Vidyarthi Grihas's College of science and technology CTS NO 218 Br. Nath Pai Nagar Ghatkopar E Mumbai 400077 Certificate This is to certify that Mr. Pratik Nitin Sarvankar With roll no 20362 of TYBSC (Computer Science) Sem-V has successfully completed the project titled “ATM SIMULATOR” Under our guidance towards the partial fulfillment of degree of Bachelors of Science (Computer Science) submitted to Pune Vidyarthi Grihas's College of science and technology Ghatkopar E during the academic year 2021-22 as specified by UNIVERSITY OF MUMBAI Prof.(Ms) Prajakta Shirke Project Guide Dept. of Computer Science Prof.(Ms) Trupti Rongare In- Charge Dept. of Computer Science PRATIK SARVANKAR
  • 4. Now-a-days ATM (Automatic Teller Machines) is commonly used. It not only provides basic transaction services (e.g.…withdraw, balance enquiry, mini statement, money transfer) but also provide additional services like bill payments, mobile recharges, examination fees payment. But most of these facilities are available only to the urban people and not to the rural people. The reason why these facilities are not available to the rural people is illiteracy and the difficulty they face in remembering the entire mechanism of handling an ATM machine. Our project aims at making the ATM machines more user friendly (especially for rural people). And we are doing this by constructing the simulator of real world ATM machine. As we know that simulator is a computerized model of real world system that demonstrate the working of the real world system (on the basis of certain assumptions) and can also be used to perform new experiments before it is deployed on the real system. The technique by which we are going to make the simulator friendlier to rural people is by enabling the simulator to be controlled by speech (i.e. any regional language). So, in our project we are constructing a simulator that depicts the real world ATM machines and have certain features which are as follows: ➢ Works in networked environment, to demonstrate the real world ATM working environment. ➢ Demonstrates the basic banking services provided by ATM machines, i.e.….withdraw, deposit, balance enquiry, money transfer and others. ➢ Also, demonstrate the additional services provided by today‟sATM machines, i.e. electricity bill payment, telephone bill payment. ➢ Enabling the simulator to be controlled by speech is the experiment we are going to perform on the simulator. Page - 4 -
  • 6. PROBLEM STATEMENT: The real world ATM is continuously developing day by day. More and more new and exciting features are incorporated in the machine as per customer‟s increasing needs. In the earlier times ATM was only recognized for cash withdrawal or balance enquiry. But now a day various new features like cash deposits, various Bill payments, Mobile recharge etc are added which are attracting more and more customers. In spite of these advancements in the ATM world, the ATM is not successful in rural areas. Most of the people are illiterate and even can‟t perform a simple transaction like cash withdrawal due to language bondations. The same problem exists with the blind people. Providing more and more language options is useless because they may not be able to read a text written on the screen. Thus the existing system although growing day by day and fulfilling more and more needs of customers fails in the case when simplicity and user friendliness is measured. AIM: The aim of this project is to simulate the real world ATM machine. STUDY OF CURRENT SYSTEM: A real world automated teller machine (ATM) is a computerized telecommunications device that provides the customers of a bank with access to financial transactions in a public space without the need for a human clerk or bank teller. On most modern ATMs, the customer is identified by inserting a plastic ATM card with a magnetic stripe or a plastic smartcard with a chip that contains a unique card number, Bank account number and some security information, such as an expiration date or CVC (CVV). Security is provided by the customer entering a personal identification number (PIN). The real world ATM provides a keypad and a touch screen. There is cash dispensing machine from which cash out can be accomplished. The cash dispensing machine optionally owns a cash In mechanism (if cash deposit feature is enabled in ATM machine), from which user can deposit money into his account. For customer‟ssimplicity various language options are supported (like English, Page - 6 -
  • 7. Hindi etc). Various features provided by a real world ATM system are as follows:- ➢ Cash Withdrawal ➢ Cash Deposit ➢ Money Transfer ➢ Balance Enquiry ➢ Bill Payments PROPOSED SYSTEM: The proposed system “Speech controlled ATM Simulator” provides all the basic as well as advanced features of a standard real world ATM system. Along with it to add more simplicity and to make the machine more user friendly two new concepts are added:- Speech Synthesis-The ATM system will now help the user by guiding him throughout the transaction by giving speech in his or her mother language. Speech Recognition- The ATM system will now be able to recognize spoken commands. The customer can now give voice commands in his mother language with the help of a microphone and the ATM machine recognizes those spoken commands and takes the appropriate action. FEASIBILITY STUDY: Feasibility is the determination of whether or not a project is worth doing. The process followed in making this determination is called a feasibility study. It determines whether a project should be taken or not. Feasibility study was undertaken within tight constraints of time and culminated in the written and amoral feasibility reports. The constants of the reports were used as a sound basis for the decision of proceeding, postponing or the cancellation of the project. Depending on the results of the initial investigation the survey is expanded to a more detailed feasibility study. Feasibility study is a test of a system proposal according to its workability, impact on the organization, ability to meet user needs, and effective use of resources. Page - 7 -
  • 8. Various types of feasibility are studies they are:- 1) Technical feasibility: - This is concerned with the specifying equipment and the software that successfully satisfies the user requirement. The technical need of the system very considerably. In examining the technical feasibility the configuration of the system is given importance than to the actual hardware. As the present system devoid of computer assistant a complete revamping of the whole set-up will be required. Can the work for the new system we done with current environment existing software technology & available personnel. So we can say there are a number of technical issues. Which are generally raised during the technical feasibility there are follows -? ➢ Does the necessary technology exist to do with what is suggested & can it required? ➢ Does the propose requirement have the technical capacity to hold the data required to use the new system? ➢ Can the system we updated it developed? ➢ What new skill will be required to new technology do the existing staff members have these skills if not can they we trained in due course of time? 2) Operational Feasibility: - It is mainly related to the human organizational and political aspect. It involves the study of change to be brought about in the system, new skills required etc. In the present system there is no use of computer. The operational staff is having no idea about operation of the computer system. An introductory training of the staff is needed. 3) Economic Feasibility: - It is the most frequently used technique for the evaluation of the effectiveness of the proposed system. It involves the cost/benefit analysis. Economic feasibility is the most frequently used method for evaluating the effectiveness system. More commonly known is cost beneficial the procedure is to determine the benefits and savings that are expected from a system and compare them with costs. If benefit is more than the costs then the decision are made to design is made to design and implement the Page - 8 -
  • 9. system. 4) Social Feasibility: - It is the determination of whether a system will be accepted by the user or not. This examines the probability of the project being accepted directed by the user. While discussing with users it was observed that they are afraid of using a computer system. This might be due to the fact they belong to diverse background. A computer literacy program is very necessary before the installation and implementation of the system failing which it may lead to rejection of the system. 5) Management Feasibility: - It determines whether the proposed system will be acceptable to the management or not. After studying and testing the above feasibilities we have found that our project stands firmly on them. OVERVIEW OF DOCUMENT: PRIMARY GOAL OF DOCUMENT: The primary goal of the document is to provide the entire information of the project. This includes the need of the project, objectives of the project, and step-by-step implementation of SDLC (Software Development Life Cycle). In case of our project the documentation describes the following details: ➢ Current System. ➢ Problem with current system ➢ Proposed system ➢ Modeling performed (Use cases analysis, sequence diagram, state chart diagram and DFD) ➢ System Design(Class Diagrams) ➢ Testing Performed ➢ Future Enhancements Page - 9 -
  • 10. DOCUMENT CONVENTIONS: : Times New Roman Font Style Bold, Underlined Bold, Underlined Normal Heading : Sub-heading : Text : Font Size Heading : Sub-heading : Text : Alignment : Line Spacing : 24 14 12 Justified 1.5 lines Page - 10 -
  • 12. WHAT IS ATM?- Automated Teller Machine (ATM), device used by bank customers to process account transactions. Typically, a user inserts into the ATM a special plastic card that is encoded with information on a magnetic strip. The strip contains an identification code that is transmitted to the bank's central computer by modem. To prevent unauthorized transactions, a personal identification number (PIN) must also be entered by the user using a keypad. The computer then permits the ATM to complete the transaction; most machines can dispense cash, accept deposits, transfer funds, and provide information on account balances. Banks have formed cooperative, nationwide networks so that a customer of one bank can use an ATM of another for cash access. WHAT IS SPEECH RECOGNITION?- Speech recognition (also known as automatic speech recognition or computer speech recognition) converts spoken words to machine-readable input (for example, to key presses, using the binary code for a string of character codes). The term "voice recognition" is sometimes incorrectly used to refer to speech recognition, when actually referring to speaker recognition, which attempts to identify the person speaking, as opposed to what is being said. Confusingly, journalists and manufacturers of devices that use speech recognition for control commonly use the term Voice Recognition when they mean Speech Recognition. Speech recognition is the process of converting an acoustic signal, captured by a microphone or a telephone, to a set of words. The recognized words can be the final results, as for applications such as commands & control, data entry, and document preparation. Speech recognition applications include voice dialing (e.g., "Call home"), call routing (e.g., "I would like to make a collect call"), domotic appliance control and content-based spoken audio search (e.g., find a podcast where particular words were spoken), simple data entry (e.g., entering a credit card number), preparation of structured documents (e.g., a radiology report), speech-to-text processing (e.g., word processors or emails), and in aircraft cockpits (usually termed Direct Voice Input). Page - 12 -
  • 13. An isolated-word speech recognition system requires that the speaker pause briefly between words, whereas a continuous speech recognition system does not. Spontaneous, or extemporaneously generated, speech contains disfluencies, and is much more difficult to recognize than speech read from script. Some systems require speaker enrollment---a user must provide samples of his or her speech before using them, whereas other systems are said to be speaker-independent, in that no enrollment is necessary. Some of the other parameters depend on the specific task. Recognition is generally more difficult when vocabularies are large or have many similar-sounding words. When speech is produced in a sequence of words, language models or artificial grammars are used to restrict the combination of words. WHAT IS SIMULATION?- Simulation is the imitation of some real thing, state of affairs, or process. The act of simulating something generally entails representing certain key characteristics or behaviours of a selected physical or abstract system. A simulation is a representation of a situation with a similar but simpler model that can easily be manipulated to determine experimental results. It is basically an experiment run as a model of reality. Using a simulator or experimenting with a fictitious system can show the eventual real effects of a givensituation. Examples: Physical or manual simulations: These simulations rely on the use of physical methods to create data that mimic the types of information required. Physical simulations are used in many contexts, including the modeling of natural systems, and manual systems. Physical methods, such as using a dice to simulate data have the disadvantage of being too time consuming. Computer simulations: Computer programs based on mathematical models are used to manipulate elements of the experiment. This type of simulation can be applied in many ways. In telegraphic engineering, computer simulations generate system topology and traffic models Page - 13 -
  • 14. that can be used for network performance management. Some computer exercises that use a computer program to generate data or information are TELPACK, CSIM19, and Minitab. Physical simulation refers to simulation in which physical objects are substituted for the real thing (some circles use the term for computer simulations modelling selected laws of physics, but this article doesn't). These physical objects are often chosen because they are smaller or cheaper than the actual object or system. A computer simulation (or "sim") is an attempt to model a real-life or hypothetical situation on a computer so that it can be studied to see how the system works. By changing variables, predictions may be made about the behaviour of the system. In our project we are performing computer simulation and creating a computerized model. WHAT IS ATM SIMULATOR?: ATM-Simulator (ATM-SIM) is a computer-based trainer used for teaching individuals with intellectual disabilities how to use an automated teller machine (ATM) to access their personal bank accounts. In the pilot evaluation, a prototype system was developed and used to train nine adults with intellectual disabilities how to use a local ATM. Participants were pre-tested on their ability to use an ATM and then were trained using the ATM-SIM prototype. After a brief training period, participants were again tested on their capacity to operate the actual ATM. Computer simulation of ATM can be used effectively to teach a specific independent living skill to adults with mental retardation. Simulation has been used effectively in many settings to teach skills that require both complex problem solving abilities (e.g., nuclear power plant operators) as well as specific rote tasks (e.g., switchboard operators). Recently the increased availability, decreased cost, and emerging technological advances associated with computers have made computer simulation a viable alternative teaching method in a variety of settings. As a result, computer simulation has been used increasingly as a cost-effective alternative to actual hands-on training. With technology, such as Page - 14 -
  • 15. ATMs, in which simulations may need to be used in training, it is likely that computers can provide reasonably priced and realistic simulations that might provide for transfer of skills to community settings. ATM-SIM is designed as a multimedia training tool that provides individuals with intellectual disabilities step-by-step instructions for learning how to use an ATM. Each step in the process, from entering the ATM card, keying in an access code, selecting the desired transaction and completing the transaction was simulated on the computer and presented to the user with step-by-step visual and audio cues. Users interacted with the ATM-SIM system using a touch screen similar to actual operation of an ATM. Each button and displayed message from a local ATM in the PLUS system of ATMs was incorporated into the ATM-SIM system. Users were guided through each step of a desired transaction via computer generated audio instructions and by visually highlighting the buttons that needed to be pressed. WHAT IS SPEECH CONTROLLED ATM SIMULATOR?: Despite the success and widespread use of Automatic Teller Machines (ATMs), a significant proportion of bank customers can not or will not use them, or experience difficulties in their interactions. Speech technology has been suggested as a means by which non-users might be encouraged to use ATMs, while simultaneously improving usability for all. The potential advantages of speech interfaces include hands-free and eyes-free use for physically- and visually impaired users, and improved ease and speed of use through increased 'naturalness' of the interaction. This study investigated user attitudes to the concepts of a speech-based ATM, via large-scale survey and a series of focus groups. Objective performance was also considered in user trials with a prototype speech- driven ATM. The idea of using speech for ATM transactions led to a number of concerns. Privacy (the concern over one's personal financial details being overheard) and security (the fear of potential attackers hearing the user withdraw cash) were the major reasons given. The user trials confirmed that possible solutions, such as the adoption of a hood over the ATM or the use of a telephone handset as the speech input/output device, were ineffective. Groups of impaired users, particularly visually-impaired subjects, were more positive about the concept of speech, citing various difficulties Page - 15 -
  • 16. with current visual-manual interactions. Most non-users, however, would not be encouraged to use ATMs with the addition of speech. As per literature survey we have learned what an ATM is, what a simulation is and why we simulate any real world system. So before we move further we must consider the following aspects regarding ATM Simulator. The aspects are as follows- ➢ Security: The security is the main concern in case of ATM machines. So this point must also be considered in ATM Simulator. So secured handling of PIN (Personal Identification Number) and secured manipulation of other information across the network must also take place. ➢ Functionality: The ATM Simulator must include all the possible basic and advanced features that can be provided by a modern ATM machine. ➢ Usability: Unlike the modern ATM machines the simulator should be useful to a wide range of users and the users must use it without any assistance. The simulator must be user friendly and must support multiple languages. ➢ Efficiency: The simulator must be fast and easy in operation. ➢ Service Extension: The simulator must be helpful to extend the functionalities of the real world ATM machines. It means that the banks can experiment the enhancements on the simulator before they implement it in the real world system. Page - 16 -
  • 18. PRODUCT PERSPECTIVES: The real world ATM is continuously developing day by day. More and more new and exciting features are incorporated in the machine as per customer‟s increasing needs. In the earlier times ATM was only recognized for cash withdrawal or balance enquiry. But now a day various new features like cash deposits, various Bill payments, Mobile recharge etc are added which are attracting more and more customers. In spite of these advancements in the ATM world, the ATM is not successful in rural areas. Most of the people are illiterate and even can‟t perform a simple transaction like cash withdrawal due to language bondation. The same problem exists with the blind people. Providing more and more language options is useless because they may not be able to read a text written on the screen. Thus the existing system although growing day by day and fulfilling more and more needs of customers fails in the case when simplicity and user friendliness is measured. The proposed system “Speech controlled ATM” provides all the basic as well as advanced features of a standard real world ATM system. Along with it to add more simplicity and to make the machine more user friendly concepts like speech synthesis and speech recognition are added. PRODUCT SCOPE: The scope of the project are as follows: As the project is a simulator so the new experiments can be performed on it before we implement it on the real world machine. So here we are also performing an experiment of speech synthesis and speech recognition. The performance of the system can be studied on the simulator and then it can be implemented on real world machines. Similarly, we can also perform other advancements on the simulator before deploying it on the real system. Page - 18 -
  • 19. PRODUCT FUNCTIONS: The software to be designed will control a simulated Automated Teller Machine (ATM) having a capablility to read a card, a customer console (keyboard and display) for interaction with the customer and a printer for printing customer receipts. The simulator must work in a networked environment (i.e... LAN in our case).It must also communicate with the requisite servers available in LAN. The simulator software includes also the basic featur es of an ATM viz... Withdrawal, deposit, transaction details, money transfer and balance queries. Along with the above features the simulator also demonstrates the additional features like payment of telephone and electricity bills and other services. The project also helps us to understand the Software Engineering principles and Object Oriented Programming principles in a better way. In our project we have pointed out a new idea regarding user friendliness by introducing the concepts of speech synthesis and speech recognition. USER CLASSES & CHARECTERISTICS: The user can be both rural and urban people and possess the following characteristics: ➢Rural people are in general illiterate and would like to use the ATM through speech for simplicity. ➢ Whereas the urban people are literate and can use speech as well as manual techniques. ➢ Rural people want the basic banking features. ➢ Urban people require both banking features and supplementary services. Page - 19 -
  • 20. OPERATING ENVIRONMENT: As we know that the real world ATM machines work in a WAN (Wireless Area network). So it becomes necessary for our project to work at least in a networked environment. So for this we have implemented our project in a distributed environment which consists of a server end and multiple client ends. The software runs on the client end and the request made by the user at the client end goes for validation at the server end and if it has been validated then the requested transaction is performed at the server and the appropriate message is displayed at the server. Although the web based environment can also be used in place of distributed environment, but then browser was needed to run the program which doesn‟t give a good look and feel, so in order to run the application with good look and feel we have used distributed environment as our operating environment. USER ENVIRONMENT: As discussed above the software will run in a distributed environment having multiple client ends and a single server end. So the user will operate on the client end of the distributed environment from where he will make request and that will be executed on the server end. And the server will respond the user at client end appropriately. ASSUMPTIONS AND DEPENDIES: Simulation is the process of constructing a computerized model of a real world system. And to construct this system certain assumptions are taken. So do as our project has certain assumptions which are as follows: Page - 20 -
  • 21. ➢ Real world ATM machines work in WAN whereas our simulator works in LAN (i.e. distributed environment). ➢ Unlike real world ATM machines there is no cash dispensing. ➢ For deployment of the software all the client and server ends system must have compatible JDK versions (i.e. JDK 1.4 onwards). ➢ Instead of touch screens in real world ATM machines our software uses mouse for selection of options. Page - 21 -
  • 22. REQUIREMENT AND SYSTEM ANALYSIS Page - 22 -
  • 23. EXTERNAL INTERFACE REQUIREMENTS: USER INTERFACES: The user interfaces can be well defined by the following diagrams: Enters card Prompt to select language ATM SIMULATOR SCREEN LANGUAGE SCREEN LANGUAGE SCREEN Select language through speech Page - 23 -
  • 24. Prompt to perform transaction Select a transaction After performing the transactionthe appropriate message is displayed in a printed from. HARDWARE INREFACES: Hardware interfaces defines how hardware will be used by the user in the product. As there is no hardware utility in our project so there is anything such as hardware interfaces. COMMUNICATION PROTOCOLS: As defined above the software will work in distributed environment. And in Java distributed environment can be deployed by three techniques, which are as follows: ➢ RMI(Remote Method Invocation) ➢ CORBA(Common Object Request Broker) ➢ SOAP(Simple Object Access Protocol) TRANASACTION SCREEN TRANSACTION SCREEN Selection through speech MESSAGE SCREEN Page - 24 -
  • 25. Among the above three techniques we have used RMI(Remote Method Invocation) which permits communication between two Java objects, whereas the remaining two permits communication between Java object and other language object. If we have to access the remote computer then we have to call the remote method of the remote object. The object that calls the remote object is called „client object‟. And, the remote object I known as „server object‟. The system on which the client object runs is known as client and the other is known as server. So, the communication protocol used in our project can be defined by the following figure. Call Stub on local Proxyobject Send marshaled parameters Call server method Return result Marshaled return values Response values Whenever the client code makes a call to the method of a remote object then the call is made to an ordinary method in the local proxy called stub. The stub packages the parameters to be passed in the remote method and performs machine independent coding. The process of encoding of parameter is called parameter marshaling. Parameter marshaling is done to convert the parameters into a transmission format. When the receiver at the server side receives the format it un-marshals it and execute the method at server. The result to be returned is marshaled and transmitted to stub of client side, where it is un-marshaled and displayed to the client. CLIENT CLIENT STUB SERVER STUB SERVER Page - 25 -
  • 26. INFRASTRUCTURE REQUIREMENTS: HARDWARE REQUIREMENTS: SERVER SITE: ➢ Processor ➢ Hard Disk ➢ RAM : Pentium 3 onwards : 10 GB : 512 MB CLIENT SITE: : Pentium II onwards : 5 GB : 256 MB ➢ Processor ➢ Hard Disk ➢ RAM ➢ Good quality headphone and microphone ➢ Floppy Drive Reader ➢ Printer SOFTWARE REQUIREMENTS: SERVER SITE: ➢ Operating System ➢ Front End ➢ Back End : Any Network Operating System (e.g. Windows server 2003) : Java (JDK 1.4 onwards) : MS-Access CLIENT SITE: ➢ Operating System : Compatible Operating System with NOS (e.g. Widows Xp) ➢ Front End : Java (JDK 1.4 onwards) Page - 26 -
  • 27. FUNCTIONAL REQUIREMENTS: Following are the general functional requirements of our project: 1) Entry: The model will service one customer at a time. A customer will be required to insert a card and enter a personal identification number (PIN) - both of which will be sent to the bank server for validation as part of each transaction. As soon as the user entry has been authenticated then a session will be initialized for him/her which will end either when the user finishes transactions or he/she aborts the session. 2) PIN (Personal Identification Number) Access: If the ATM Simulator determines that the customer's PIN is invalid, the customer will be required to re-enter the PIN before a transaction can proceed. If the customer is unable to successfully enter the PIN after three tries, the card will be locked by the machine, and the customer will have to contact the bank to unlock it. 3) Transactions: The customer will be able to perform one or more transactions. The ATM Simulator will communicate each transaction to the bank and obtain verification that it was allowed by the bank. Ordinarily, a transaction will be considered complete by the bank once it has been approved. If a transaction fails for any reason other than an invalid PIN, the ATM will display an explanation of the problem, and will then ask the customer whether he/she wants to do another transaction. A customer must be able to abort a transaction in progress anytime instead of responding to a request from the machine. Withdrawal: This feature allows the card user for withdrawing money. Balance Enquiry: This helps the card user to obtain either a printed or non-printed balance status. Transaction Details: These features help the card user to obtain last Page - 27 -
  • 28. ten transactions details of the account in a printed way. Money Transfer: This helps the card user to transfer the money from his account to another account in the same branch or same bank. Deposit: This feature allows the card user to deposit the money in his/her account. 4) Services: This includes the additional services which can be performed through an ATM Simulator. The services present in the simulator are as follows – Bill Payment: This includes the facility of payment of electricity bill and telephone bill through your ATM. The telephone bill can be paid only to those providers who have coordination with the bank . 5) Acknowledgements: The ATM Simulator will provide the customer with a printed receipt for each successful transaction, showing the date, time, machine location, type of transaction, account(s), amount, and ending and available balance(s) of the affected account. It also provides the printed balance transaction details and an error message if any error is encountered. 6) Speech Recognition & Synthesis: The ATM system will now help the user by guiding him throughout the transaction by giving speech in his or her mother language. This is known as speech synthesis. And, the ATM system will now be able to recognize spoken commands. The customer can now give voice commands in his mother language with the help of a microphone and the ATM machine recognizes those spoken commands and takes the appropriate action. This is known as Speech recognition. Page - 28 -
  • 29. DOMAIN ANALYSIS USE CASES ANALYSIS: Use-case: Card Entry-PIN entry Actor: User ➢ The user enters the card. ➢ The system checks whether the card is properly inserted or not. ➢ If, properly inserted then system prompts the user to enter PIN. ➢ User enters PIN. ➢ System validates the PIN. ➢ If valid then display the transactions that user can perform. ➢ If the PIN is invalid then the user can re-enter the PIN at a maximum of three times. ➢ If the user enters the PIN wrong at fourth time then the system will block user‟saccount. Use-case: Performing Transaction Actor: User ➢ System displays the available transactions that user can perform. ➢ User selects one of the transactions either through speech or manually. ➢ System prompts the user to enter the relative data for performing the selected transaction. ➢ User enters the data. ➢ System performs the transaction. ➢ System provides a printed acknowledgement depending upon the transaction. Use-case: Withdraw Actor: User ➢ User selects „withdraw‟either through speech or manually. ➢ System prompts user to enter the amount. Page - 29 -
  • 30. ➢ User enters the amount. ➢ System performs & commits the transaction. ➢ System acknowledges user with an updated printed balance details of account. Use-case: Deposit Actor: User ➢ User selects „deposit‟either through speech or manually. ➢ System prompts user to enter the amount. ➢ User enters the amount. ➢ System prompts the user to enter the denominations ➢ System checks the denominations. ➢ System performs & commits the transaction. ➢ System acknowledges user with an updated printed balance details of account Use-case: Balance Enquiry Actor: User ➢ User selects „balance enquiry‟either through speech or manually. ➢ System prompts user whether user wants printed advice or not. ➢ User selects his choice. ➢ System displays the current balance as per the selected choice. Use-case: Money Transfer Actor: User ➢ User selects „transfer‟either through speech or manually. ➢ System prompts user to enter the target account number. ➢ System checks the target account number for validation ➢ System prompts the user to enter the amount to be transferred. ➢ User enters the amount. ➢ System performs & commits the transaction. ➢ System acknowledges user with an updated printed balance details of account Page - 30 -
  • 31. Use-case: Mini Statement Actor: User ➢ User selects „mini statement‟ either through speech or manually. ➢ System displays the last 10 transactions performed on his account in a printed form. Use-case: Telephone Bill Payment Actor: User ➢ User selects „Telephone Bill‟either through speech or manually. ➢ System prompts user to enter the consumer number. ➢ System checks the consumer number for validation ➢ System displays the last bill details for the consumer number. ➢ System prompts the user for payment. ➢ User selects for payment. ➢ System performs & commits the transaction. ➢ System acknowledges user with an updated printed balance details of account & bill details. Use-case: Electricity Bill Payment Actor: User ➢ User selects „Electricity Bill‟either through speech or manually. ➢ System prompts user to enter the consumer number. ➢ System checks the consumer number for validation ➢ System displays the last bill details for the consumer number. ➢ System prompts the user for payment. ➢ User selects for payment. ➢ System performs & commits the transaction. ➢ System acknowledges user with an updated printed balance details of account & bill details. Page - 31 -
  • 32. STATE CHART DIAGRAM: Tries<=3 Card invalid Valid PIN entered Successful activation ACTIVITY DIAGRAMS: An activity diagram comes under “Scenario based modeling” of analysis modeling. The UML activity diagram supplements the use-case by providing a graphical representation of the flow of interaction within a specific scenario. An activity diagram uses rounded rectangles to imply a specific system function, arrows to represent flow through the system, decision diamonds to depict a branching decision and solid horizontal lines to indicate that parallel activities are occurring. CARD READER Do: Check Card PIN VALIDATOR Do: ValidatePIN valid INTERFACE Do: Prompt for PIN Tries>3 INTERFACE Do: Display &Prompt for transaction LOCKED Do: Block Account Prompt for transaction selection TRANSACTION Do: Perform selected transaction Acknowledgement message PRINT INTERFACE Do: Display & PrintAcknowledgement Page - 32 -
  • 33. Not properlyinserted Properly inserted Invalid PIN Valid PIN No. of tries<=3 No. of tries>3 Enter card Select language Prompt for re-entry of card Enter PIN Select a transaction Perform selected transaction Update databases Acknowledgement/error message Page - 33 -
  • 34. SYSTEM DESIGN: INTRODUCTION: System Design is generally a collection of principles, concepts and practices that lead to the development of a high quality system that lead to the development of a high quality product. The main goal of design engineering is to define a model or representation that can be used to fulfill the customer about the satisfactory of the constructed software. In context of a software engineering it is the technical kernel. Once the software requirements are analyzed and modeled, system design is the last work in modeling phase and it also provide a base for construction phase. FUNCTIONALITY: In single word system engineering implements „quality‟ to our software. It provides a model by which we can convince our customer for the software to be developed. Page - 34 -
  • 35. SEQUENCE DIAGRAM: Enter card Card details(not visible) Details from card Relevant details from database invalid status Prompt for PIN (valid) User ready EntersPIN Invalid (tries<=3) PIN Already stored PIN status Valid (Prompt for trans.) Fig: Sequence diagram for card entry and entry of PIN USER ATM SCREEN VALIDATOR DATABASE Page - 35 -
  • 36. Valid (Prompt for trans.) User ready selects transaction Selected transaction& Data from database Requisitedata Perform transaction Acknowledgement Updating of data User session ends Fig: Sequence diagram for performing transaction USER SYSTEM DATABASE ATM SCREEN Page - 36 -
  • 38. CLASS DIAGRAMS: Is placed within & Is part of Is placed within & Is part of Is used to build Playing_Sound AudioInputStream DataLine File Clip +Playing_Sound (String) +Play () +Stop () DateTime DateFormat Date String +Datetime () +getDate () +getTime () Myjframe JPanel JButton JLabel TextField Font Int DateTime Playing_Sound Long String PrintPanel PrintRequestAttributes +Myjframe (String) +senseCard() +textValueChanged(TextEvent) +actionPerformed(ActionEvent) +userTalked(String) +startThread () AtmSimulatorFloppy +main (String []) Page - 38 -
  • 39. INTRODUCTION: User Interface Design means the interface through which user can interact with the software and perform it requisite operations. This interface must user friendly as much as possible. It must not force unnecessary stress on the end user and must be easy to use. The interface must also fulfill the requirements that had been stated at the requirement elicitation and requirement inception phase. USER INTERFACE DESIGN: The user interface can be defined by the following snapshots of the user interface of our project. It defines how a user can interact efficiently with the software. Page - 39 -
  • 40. 1) The above interface defines the “Welcome Screen of our project”. The software remains in the screen until the user doesn‟t insert the card (i.e. floppy drive). As soon as the user enters the card properly the next screen is displayed. Page - 40 -
  • 41. 2) The above screen prompts the user to enter his/her 4-digit PIN (Personal Identification Number). As soon as user will enter his PIN he/she will be guided to next screen. Page - 41 -
  • 42. 3) The above screen defines the basic banking transaction features under “Banking”. In this page any one of the options can be selected either by clicking on it or by speaking the word which will be pronounced by the software for each of the option. Page - 42 -
  • 43. 4) The above screen prompts the user to enter the amount to withdraw. After entering the amount he can either click “Yes” or speak “Yes” which will be automatically recognized by the software. Page - 43 -
  • 44. 5) The above screen will help the user to deposit the money into his account. For this he has to first enter the amount followed by denominations. The further steps is same as discussed in the previous step. Page - 44 -
  • 45. ) The above screen prompts the user to enter the 10 digit consumer no. for paying his telephone bill. After entering it he may either click “Yes” or speak “Yes”. If he does so then the next screen will be displayed. And if he selects No then he will be send to screen at step 5. Page - 45 -
  • 47. INTRODUCTION: The implementation phase of software development is concerned with design specification with source code. The primary goal of implementation is to write source code to its specification. The code has to be easily verified, so that debugging, testing and maintenance can be eased. The goal can be achieved by making the source code as clear and straightforward as possible. DEVELOPMENT ENVIRONMENT: Regarding the development environment of our project, it has two phases – first on a stand alone system and second on a peer-to-peer network (containing two computers). Initially we have developed the front end of the software in modules. Then we have designed the back end (i.e. databases and its access through Java) or we can also say server end. Then for checking the functioning in the distributed network we have deployed the software in network discussed above, with one system as client and other system as server. PROTOTYPING: RAPID PROTOTYPING: The RAD Model is an incremental process model with a rapid development phase. It is a high speed adaptation of waterfall model. The rapid development is achieved by component based construction process. If the software requirement is well defined and project scope is constrained then RAD model can develop the project in a short time duration (i.e. 60 to 90 days). Page - 47 -
  • 48. Fig: Rapid Prototyping It requires less time and workload can be distributed. But on the other hand requires large no. of human resources and high technical risk is associated. INCREMENTAL PROTOTYPING: It combines waterfall model in an iterative fashion. It uses the linear sequences in staggered form. Each increment adds some additional functionality to software. For example consider word processing software developed using this paradigm. Initially in the first increment only basic file management, editing and documentation will be provided. At second increment sophisticated file management, documentation and editing features will be available. At third increment spell check feature will be added and so on. Thus the first increment in an incremental model is often the core product. The core product refers to the basic functionality and the supplementary functionality are provided at the later versions. The core product is used by the customer. As result of used plan for next increment is produced. The next increment must increase the functionality of the core product. This process continues till the complete software is not provided. Communi- cation Team 1 (Modeling) Team 2 (Modeling) Team n (Modeling) Team 1 (Construct) Team n (Construct) Team2 (Construct) Page - 48 - Deployment Planning
  • 49. Functionality Time Fig: Incremental Prototyping EVOLUTIONARY PROTOTYPING: As we know that software occupies time. If during the development of software the business or product requirement changes, then it leads to the development of software to be unrealistic. Also the tight deadlines prevent the completion of comprehensive project. In such cases, only a limited version product can be provided. To overcome the problem, we require a software process model, which can accommodate a product explicitly and can modify itself with the product with the time. It is of two types: ➢ Prototyping Model: Often a customer defines the objective of software, but is unable to define the complete details about input, processing and output. In such cases a prototype model is beneficial as it guides the developer and the customer when the requirement is indistinct. C D M P K M D C P K P C M K D Increment 1 Page - 49 - Increment 2 Increment n
  • 50. Fig: Prototyping Model ➢ Spiral Model: A spiral model is an evolutionary process model that couples the iterative nature of prototype model and semantic and control aspect of waterfall model. It produces the rapid development of increment of the software. So we can say that spiral model results in development of software in evolutionary releases. The first release may be prototype and further release is a sophisticated software product. PORTABILTY: Platform for any software is defined as the combination of processor and operating system over which the software runs. Platform dependent software is those that will run only on that platform for which it has been constructed. For example if we construct a program in C language which is running on a platform (Intel + Windows Xp) and if we run the same program on a computer having LINUX operating system then the program will not run. So C doesn‟tsupport portability. A platform is the hardware or software environment in which a program runs. The Java platform differs from most other platforms in that it's a software-only platform that runs on top of other, hardware-based platforms. Most other platforms are described as a combination of hardware and operating system. Communication Quick Plan Quick Design Construction of Prototype Deployment Page - 50 -
  • 51. The Java platform has two components: The Java Virtual Machine (Java VM) The Java Application Programming Interface (Java API) The Java API is a large collection of ready-made software components that provide many useful capabilities, such as graphical user interface (GUI) widgets. The Java API is grouped into libraries (packages) of related components. The following figure depicts a Java program, such as an application or applet, that's running on the Java platform. As the figure shows, the Java API and Virtual Machine insulates the Java program from hardware dependencies. Fig: Java as a programming language & a platform As a platform-independent environment, Java can be a bit slower than native code. However, smart compilers, well-tuned interpreters, and just-in-time byte code compilers can bring Java's performance close to that of native code without threatening portability. Regarding our project, it is portable. The reason for portability is the technology used i.e. JAVA. Java itself is a portable language (supports platform independency). In the project first Java will create a byte code (CLASS file) of our source code and after that this byte code can be made to execute on any system irrespective of the platform. The only thing that can violate the portability of our project is –if the version of JDK is less than 1.4. Page - 51 -
  • 53. TESTING STRATEGIES: UNIT TESTING: Unit Testing is a testing mechanism that tests the modules of our software. It can be carried out after the coding or before the coding. A component level design act as guide for testing of modules. The unit testing tests the control paths to uncover errors within the boundaries of modules. The unit testing mainly focuses on the internal processing level and data structure of a component. Testing of each module can be carried out in the following parts: ➢ Module Interface ➢ Local data structure ➢ Independent paths ➢ Boundary values ➢ Error handling statements Interface Local Data Structures Independent Paths Boundary Values Error Handling Fig: Unit Testing The unit testing begins with the testing of modules interface. In this the flow of information from or to module interface is checked. After this the data stored in local data structures are checked for Module Test Cases Page - 53 -
  • 54. integrity. After that all independent paths are checked whether they are checked at least once. After this the boundary values are checked against the control flow, data structures at the boundaries of input domain. At last the tests are conducted for the error handling statements for identifying any errors (if present) and error handling routines. INTEGRATION TESTING: Integration testing is a systematic technique that describes software architecture and at the same time checks the errors encountered in the interfaces. The main objective of integration testing is to use the unit tested modules and design architecture as depicted by design. The normal tendency is to follow non-incremental integration testing. In which all the components are combined and structure is obtained and afterwards testing is performed. But the best way is to follow incremental testing in which the program is constructed and tested increments and errors can be easily isolated and corrected. There are two types of incremental testing: ➢ Top-down incremental integration testing ➢ Bottom-up incremental integration testing Top-Down Integration Testing: Top-down incremental testing is a mechanism for constructing software architecture and testing at the same time. In this approach the process of integration begins from the top where the main control is taken first. Then as we move towards bottom each module is integrated and simultaneously tested. The main control module act as a driver and the module sub-ordinate requires are replaced by stubs. Depth first integration and Breadth first integration are two approaches for integration of modules. Page - 54 -
  • 55. Bottom-up Integration Testing: In bottom-up integration the integration of module begins from the lowest level. Since the module at the lowest level are already integrated and tested, so stubs are eliminated. FUNCTION TESTING: Black Box testing or Functional testing is a mechanism to check the functionality of our program. By applying black box testing tester will be able to get a test case that checks the functionality of ones program. Black Box testing can be used to find the following errors: ➢ To find incorrect or missing functions. ➢ Interface errors. ➢ Data structures and data access to external database error. ➢ Behavior and performance error. ➢ Initialization and termination errors. Black Box testing is done to check that software functions are operational i.e. input is properly accepted & output is correctly produced & the integrity of the external information is maintained. It is usually applied at the later phase of testing. It can be performed by following four methods: ➢ Graph Based methods. ➢ Equivalence partitioning. ➢ Boundary value analysis. ➢ Orthogonal array testing. Page - 55 -
  • 56. SYSTEM TESTING: System testing is actually a series of different tests whose primary purpose is to fully exercise the computer based system. Through this it is checked whether all system elements have been properly integrated and perform allocated functions. It includes the following testing: ➢ Recovery Testing: If there is a system fault then the system must resume processing within a certain period of time. So it allows a tester to cause faults in various cases and look for the resume duration. ➢ Security Testing: It tests whether the security measures possessed by our software is capable of stopping the illegal access. ➢ Stress Testing: Stress testing checks the stress that can be beard by our software. For this the tester runs the software with abnormal quantity, frequency and volume of resources. ➢ Performance Testing: Performance testing is usually done to check the performance of program at run time. For this hardware and software instrumentation is needed. TESTING CONSIDERED: In our project we have performed the following testing: ➢ White Box Testing ➢ Black Box Testing ➢ Unit Testing ➢ Integration Testing Initially we have tested the unit modules. And within each module we have performed black box testing to check whether the modules is accepting the input(zero or many) or not and against that input it is producing correct output or not. If it is producing the output but it is logically wrong then white box testing is performed to check the internal functionality of modules i.e. the logical control flows and details. Page - 56 -
  • 57. After performing unit testing on all modules we integrate them to form big modules. Here we have used incremental bottom-up integration testing. In this we have integrated the modules starting from bottom and the cluster is tested. At the final step the entire system is tested. Page - 57 -
  • 59. The future work that can be done in the project are as follows: ➢ More speech patterns can be stored to import security. ➢ The use of Bio-metric authentication (finger print) can import more security as the card and PIN will not be used further. Page - 59 -
  • 61. As a matter of fact this project is completed in twelve months and this duration is divided into two sections, six months of collecting information, planning and literature survey and next six months of implementing it. First, the theoretical section where I have learned lots of things regarding ATM machines (e.g.…functioning features and services provided), regarding simulation, simulators and needs of simulation. Along with these we have also learned some concepts of RMI (Remote Method Invocation) and JDBC (Java Database Connectivity) in Java. Having an ATM Simulator as a major project helps me to better understand the concepts of Object Oriented Programming principles, Software Engineering principles and concepts regarding simulation and modeling. In this duration I have tried to plan the simulator in such a manner that it not only covers all the features and facilities of modern real ATM but an enhancement is also suggested. This simulator also provides the environment in which new enhancements can be performed on it, before they are equipped on the real world ATM machines. The use of speech synthesis and speech recognition helps the software more user friendly. The speech synthesis guides the user for performing the transactions and speech recognition facilitates the user to perform the transaction through speech. This speech mechanism thus helps the rural people to use the ATM without extra overhead of remembering the procedure for maintaining the transactions. As speech synthesis will guide them and speech recognition will allow them to use their speech to perform transactions. And in these six months we have implemented the software in such a way that it fulfils all the objectives that had been stated in the first six months. Also we have performed the different testing strategies. Page - 61 -