Вы находитесь на странице: 1из 14


Final Year Project




DATE : - 28 August, 2011 Name of Project: - Virtual ATM

ATM Software is to develop a real time Software for Automatic Teller Machine The project ATM TRANSACTION is implemented J2EE .The software to be designed will control a simulated automated teller machine (ATM) . The ATM will communicate with the bank's computer over an appropriate communication link. The project ATM TRANSACTION is implemented J2EE. It is used by a virtual bank in their ATM machine (Automatic Teller Machine).In earlier years all the transactions were to be done manually, still done but very rarely, as it is a difficult task. So now banks use this to give their customers to have easy & faster transactions. Thus, our this project is a good task to have transactions easier, faster & for emergencies. The intended project aims at building a software for the Automated Teller Machine, which is able to perform PIN authentication. The ATM will service one customer at a time. A customer will be required to enter their personal identification number (PIN) and corresponding password - both of which will be sent to the bank for validation as part of each transaction. The customer will then be able to perform one or more transactions. The card will be retained in the machine until the customer indicates that he/she desires no further transactions. A customer must be able to make a balance inquiry of their account. It will also perform money withdrawal. Money transfer from one account to another will also take place. Such methods can be used for bill payment.

The ATM 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. In the case of a deposit, a second message will be sent to the bank indicating that the customer has deposited the envelope. A customer must be able to abort a transaction in progress by pressing the Cancel key instead of responding to a request from the machine.

If the bank determines that the customer's PIN is invalid, the customer will be required to reenter the PIN before a transaction can proceed. If the customer is unable to successfully enter the PIN after three tries then a message will be sent to the customers personal number regarding his login and a security code will be provided for re-login. The major objective of the proposal is to There are many issues when automating a process, such as the developed software should have a simple and user friendly interface that will free the user from the complexities of the software. The Administrator has the rights to input & change the receipt details. The overall objective of the system is to develop user-friendly, secure, consistent and flexible software so that the effort required to prepare the cashbook can be reduced.

4: - Modules of Projects/Functions


This option is for switching on an ATM MACHINE. After switching on it will be available for customer. For this operator have to enter ATM identification number and its password. The system will show appropriate message in reply.


This is for switching off ATM machine. The system will show appropriate message in reply.


This is to supply the money to ATM for customer transaction. It is a regular process .For this operator needs operator id, operator password, bank id. From where transaction is performed ,

CUSTOMER WITHDRAWL This is to supply the money to customer for customer transaction. It is a regular process .For this operator needs amount to which he want to withdraw after the verification of transaction. PIN IDENTIFICATION number and password will show appropriate message after /failure


This is to deposit the money to bank.. It is a regular process .For this customer have to enter the amount to which he want to deposit after the verification personal id and password will show appropriate message after /failure transaction MONEY TRANSFER This is to transfer the money from one account to another account.. It is a regular process .For this customer have to enter the bank_id,branch_id ,account_no and amount for transferring account. System will show appropriate message after /failure transaction.

PIN NUMBER CHANGE This is to change the password of corresponding account. .For this customer have to enter the old password, new password, and CONFIRM new password. System will show appropriate message after /failure transaction

MINI STATEMENT This is to show the transaction currently occurred. For this customer have to click the option. System will show appropriate message after /failure transaction.

BALANCE ENQUIRY This is to show the current balance of account. For this customer have to click the option. System will show appropriate message after /failure

5. SYSTEM DESIGN Some of the important fields are as follows:DATA DICTONARY:

Table Name: customer pin_id cus_name Dob contact_no cus_add bal cust_id acc_no password varchar2 varchar2 varchar2 number varchar2 number varchar2 number varchar2

Table Name: account account_no balance depositor account_info branch_id pin_id cust_id password number number varchar2 varchar2 number number number varchar2

Table Name: bank bank_id bank_name number varchar2

Table Name: atm

a_name available_cash deposit withdrawal pin_id password asset

varchar2 number number number varchar2 varchar2 varchar2

5: Life Cycle Model


Edraw Trial Version

City name custom er

custom er_id

Line 2

depositer zero_r zero_n zero_v bankId status amount branch_id customer_secret tran_date tran_tim e card_no name account no account rsa_num rsa_sec rsa_exp c ard_no zero_x branch_id balance account_info

tran_id transaction tran_mode

Edraw Trial Version

bank branch_id branc h_name atm_id bank_id atm place password assets place branch ass ets city address

sec ret


card_id operator password block


Edraw Trial Version


Software Platform Front End Back End RAM Hard Disk Mouse Keyboard Display

J2EE,My Sql Windows XP sp2 or above J2EE My Sql 256 MB or above 2GB or above Standard two button or higher Standard 101-102 key keyboard 15 Monitor


Overview of Java Java is loosely based on C++ syntax, and is meant to be Object-Oriented Structure of java is midway between an interpreted and a compiled language. The java compiler into Byte Codes, which are secure and portable across different platforms, compiles Java programs. These byte codes are essentially instructions encapsulated in single type, to what is known as a java virtual machine (JVM), which resides in standard browser. JVM verifies these byte codes when downloaded by the browser for integrity. JVM available for almost all OS. JVM converts these byte codes into machine specific instructions at runtime.

FEATURES OF JAVA Java is object-oriented language and supports encapsulation, inheritance,

polymorphism and dynamic binding, but does not support multiple inheritances. Everything in java is an object except some primitive data types. Java is portable architecture neutral that is java programs once compiled can be Java is distributed in its approach and used for Internet programming. Java is robust, secured, high performing and dynamic in nature. Java supports multithreading. There for different parts of the program can be executed on any machine that is enabled.

executed at the same time. JAVA SCRIPT & HTML JavaScript is an object based scripting language that offers cross platform operation across the span of the WWW. JavaScript provides a means of embedding interactive paths and intelligence within HTML documents. The object-based nature of JavaScript offers programmers significant power and flexibility through the ability to create functions and new objects. Performing certain processing functions at the client side such as form validation and data retrieval from local data arrays-reduces the burden imposed on the server side and can provide a sense of greater responsiveness to a viewer an HTML document enhanced with JavaScript. JavaScript is a scripting language most often used for client-side web development. Its standardized name is ECMA Script, though JavaScript is much more commonly used. JavaScript is actually Netscape Communications Corporations (and now the Mozilla Foundations) implementation of the ECMA Script standard. JavaScript is a dynamic, weakly typed, prototype-based language with first class functions. JavaScript was influenced by many languages and was designed to have a similar look to Java, but be easier for nonprogrammers to work with. The language is best known for its use in websites (as client-side JavaScript), but is also used to enable scripting access to objects embedded in other

applications. Despite the name, JavaScript is unrelated to the Java programming language; though both

HTML, short for Hypertext Markup Language, is the predominant markup language for the creation of web pages. It provides a means to describe the structure of text-based information in a document by denoting certain text as headings, paragraphs, lists, and so on and to supplement that text with interactive forms, embedded images, and other objects. HTML is written in the form of labels (known as tags), surrounded by less-than (<) and greater-than signs (>). HTML can also describe, to some degree, the appearance and semantics of a document, and can include embedded scripting language code which can affect the behavior of web browsers and other HTML processors. HTML was originally developed by Tim Berners-Lee while at CERN, and popularized by the Mosaic browser developed at NCSA. During the course of the 1990s it has blossomed with the explosive growth of the Web. During this time, HTML has been extended in a number of ways. The Web depends on Web page authors and vendors sharing the same conventions for HTML. This has motivated joint work on specifications for HTML. An HTML code is essentially a set of instructions given to a web browser for formatting and layout of web page. HTML does not actually tell a computer how the web page will look to a visitor rather that you use HTML to compose the page to specify all the elements that appear on the page-the text, graphics, horizontal rule, heading division and so on. In addition we use HTML to tell a computer what color to use where and to indicate the relative size and font of text. Overview of Apache Tomcat Apache Tomcat is a servlet container developed by the Apache Software Foundation (ASF). Tomcat implements the Java Servlet and the JavaServer Pages (JSP) specifications from Sun Microsystems, and provides a "pure Java" HTTP web server environment for Java code to run. Tomcat should not be confused with the Apache web server, which is a C implementation of an HTTP web server; these two web servers are not bundled together. Apache Tomcat includes

tools for configuration and management, but can also be configured by editing XML configuration files. Components Tomcat version 4.x was released with Jasper (a redesigned JSP engine), Catalina (a redesigned servlet container) and Coyote (an HTTP connector). Catalina Catalina is Tomcat's servlet container. Catalina implements Sun Microsystems' specifications for servlet and JavaServer Pages (JSP). The architect for Catalina was Craig McClanahan.

Application of Project: ATM is extremely robust and well understood technology used extensively in carrier network environments as well as a backbone technology for much of today's Internet traffic. The account that travels with you. This is needed in today's fast business environment with unending deadlines for fulfillment and loads of appointments to med and meetings to attend. With ATM facility, one can bank from anywhere, at anytime and in any condition or anyhow. Using an ATM, customers can access their bank accounts in order to make cash withdrawals, credit card cash advances, and check their account balances If the currency being withdrawn from the ATM is different from that which the bank account is denominated in (e.g.: Withdrawing Japanese Yen from a bank account containing US Dollars), the money will be converted at a wholesale exchange rate. Thus, ATMs often provide the best possible exchange rate for foreign travelers and are heavily used for this purpose as well.