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 is constructors and explain with an example, What is Constructors? Exp...

What is Constructors? Explain with an example? A constructor forms a new instance of the class. It initializes all the variables and does any work essential to prepare the clas

Java developer with spring framework prerequisite, Java developer with spri...

Java developer with spring framework prerequisite from anywhere Let me know that you have proven experience in java with spring frame work. Send some sample data and provide inf

String, in java string is a

in java string is a

Differentiate between time slicing and preemptive scheduling, What is diffe...

What is difference between time slicing and preemptive scheduling? Differences between preemptive and time scheduling are: In case of Preemptive scheduling the highest prior

What are the advantages of multimedia presentations, What are the advantage...

What are the advantages of multimedia presentations? Write any five. Following are the benefits of multimedia presentations: • Great tool for efficiently communicating ideas

Create a graphical reverse polish notation calculator, In this assignment y...

In this assignment you will create a graphical reverse polish notation calculator using a stack data structure.  A reverse polish notation calculator allows you to perform chain ca

Cadence design systems, Cadence Design Systems:   Role Working ...

Cadence Design Systems:   Role Working on tickets including debugging of unix based applications Installations of unix based tools/utlity Installation

Password Generator Software, In this exercise, I want you to generate passw...

In this exercise, I want you to generate password based on random number generator. Develop an application that keeps track of the URL, username and password. I have listed few st

Simple Program in Java, Write a programme to create a webpage that prints t...

Write a programme to create a webpage that prints the name of the STUDENT database in Wide Latin font and set the subtitle with description of the STUDENT to the screen. Set the pa

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