Java application to simulate a bank system, JAVA Programming

Assignment Help:

Write a Java application to simulate a bank system. In the system, customers can open new bank accounts with the bank, and register/use an online account to manage their bank accounts. Some of the requirements on the functions implemented in this application are listed as follows:

1) A customer can open multiple bank accounts. When a new bank account is opened, it needs the information of the customer's SSN, an account number and an initial deposit. The account number must be unique. If the account number is used by another account, the creation of the new account fails.

2) A customer can register only ONE online account ID to manage his/her bank accounts by providing his selected online ID, password and SSN. If a customer tries to register another online account ID under his/her SSN, the registration fails. Also, the online account ID must be unique. If the ID is used by someone else, the registration fails.

3) A customer can use his/her online account to manage the bank accounts after the customer successfully signs in. When the customer tries to login his/her online account, it needs to check the password.

4) After the user signs in, a welcome page will be shown. The welcome page has a menu to allow the user make a selection from those in 5).

5) The customer can perform the following operations in his/her online account:

  • See activities statement and current balance of a selected online bank account.

 The activities include the date, time and type of the operation.

  • Reset password

 The process consists of entering a new password, confirming the new password and entering the correct old password.

  •  Account Transfer

 Transfer money online from one of the customer's account to another

6) Please use at least the following six classes. Feel free to add any more classes, variables and methods. However, your design needs to follow the Object-Oriented approach.

  • BankSystem: this is the main class.
  • BankAccount: this is the class for bank accounts.
  • OnlineSystem: this is the class for the online account system.
  • Banker: this is the class for bankers. In this class, we define a static method to open new bank accounts.
  • OnlineAccount: this is the class for online accounts for customers. A customer can register one online account to manage his/her own bank accounts.
  • DateAndTime: This is the class defined by the instructor. This class provides a static method to get the current date and time. The date and time are used to keep a statement of the activities of a bank account.

7) Use ArrayList to keep the bank account and online account objects in memory when the program is running.

8) The program should run in a continuous way until the user enters "x" in the main menu to exit the program.


Related Discussions:- Java application to simulate a bank system

What are the advantages of jms, One of the principal benefits of JMS messag...

One of the principal benefits of JMS messaging is that it's asynchronous. Thus not all the pieces require to be up all the time for the application to function as a whole.

Difference among microprocessors and microcontrollers, What is the differen...

What is the difference among microprocessors and microcontrollers? Give one example of both? The microprocessor is electronic equipment that can perform various functions and a

Multitreading, what is multithreading in Java? Explain with example.

what is multithreading in Java? Explain with example.

What is numeric promotion, What is numeric promotion? Numeric promotion...

What is numeric promotion? Numeric promotion is the conversion of a smaller numeric type to a larger numeric type, so that integer and floating-point operations may take place.

Rest client, Modify both of the above clients (to write separate clients) t...

Modify both of the above clients (to write separate clients) to extract the exchange rate from a live web service that performs currency conversion. You can choose a Java or a .NET

Java Gui, Does the java applet using swing components, JAVA Programming on ...

Does the java applet using swing components, JAVA Programming on this contain all the source codes for download?

Elliptic curve, In this project you need to write a program called "ECC.jav...

In this project you need to write a program called "ECC.java"to implement Elliptic Curve encryption/decryption. Specifically, your program will read parameters, plaintext and ciph

Program using a data structure to represent a set, * Using a data structure...

* Using a data structure to represent a set * Writing and using a checked exception * Extending the Exception class What should you upload via Blackboard? The files,

What is javaserver faces validation model, A device for validating the data...

A device for validating the data a user inputs to a JavaServer Faces UI component.

Need software to print bills on a4 pape, Need software to print bills on A4...

Need software to print bills on A4 paper in the format provided. The details are shown below - 1. Serially generated Invoice Number. 2. Appropriate fields in the invoice have

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd