This Case Study is based on an example in Computing Concepts with Java 2 by Cay Horstmann.
The purpose of this program is to simulate a simple Automatic Teller Machine (ATM).
The ATM is used by customers of a bank. Each customer has two accounts: a checking account and a savings account. Each customer has a customer number and a Personal Identification Number (PIN). Both must by typed into the simulation to gain access to the accounts. Once they have gained access, the customer can select an account (checking or savings). The balance of the selected account is displayed (initially zero). Then the customer can deposit and withdraw money and the balance will be updated accordingly. The application terminates when the user selects exit rather than an account. Since this is a simulation, the ATM does not actually communicate with the bank. It simply loads a list of customer numbers and PINs from a data file. This data file is maintained externally to this application. This application should interact with the user via a simple Swing GUI.