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 initializing fields, What is Initializing Fields ? Fields can (...

What is Initializing Fields ? Fields can (and often should) be initialized while they're declared, just like local variables. class Car { String licensePlate = ""; // e.g

What is aop(aspect oriented programming)?, Separating your business logic w...

Separating your business logic with other functionality such as services, Loggers etc, making classess more cohesive.

Terminology, what is mearnt by a variable in java

what is mearnt by a variable in java

Write a algoritm to play blackjack , Draw: loops through the list of cards ...

Draw: loops through the list of cards drawing them in a single row starting from the screen position referred to by the 'x' and 'y' fields of the Hand class. You can limit the numb

Explain the term event handler, Explain the term Event Handler? An even...

Explain the term Event Handler? An event handler is a command that calls a function while an event happens, like as the user clicking a button.

Test driven development (tdd)? , Test Driven Development (TDD) TDD pro...

Test Driven Development (TDD) TDD process gives your confidence in the delivered code for the following things. 1. TDD can remove duplication of code and also disciplines t

Write a java client by using arraylists, 1. The purpose of this problem is ...

1. The purpose of this problem is to practice using ArrayLists.Write a Java client file containing a mainmethod plus other methods as needed to solve the following problem (no clas

What is a relational database, What is a Relational Database? Give the name...

What is a Relational Database? Give the names of any three RDBMS software? Database consist of two or more then two tables are called Relational database. Oracle dabatbase S

Creating a system to keep track of computer science books, You are part of ...

You are part of a team creating a system to keep track of computer science books that a publisher is producing. Create a UML class diagram for a "computer science book". You must h

Describe even higer dimensions in java, Describe even higer dimensions in j...

Describe even higer dimensions in java? You don't have to stop along with two dimensional arrays. Java allows arrays of three, four or more dimensions. Therefore chances are pr

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