Lab 3

Bank Part 2

Use the bank classes to create a complete banking system. Start with the following repl.

https://replit.com/team/smcp218-data-structures-skon/Lab-3-Complete-Bank

This project is a program includes the code from lab 2 to reads JSON bank data (accounts and customers) from two files, and displays them. You are going to use a C++ array of objects to store a list accounts and customers. You will move your Account class from project 2 into this. As before the data for this lab was generated with this python repl: link. You can learn more about JSON here: Link. Note the that accounts are created so that each account has a at customer associated to it through the ownerid. Some customers do not have an owner.

relationship between Customers and Accounts
(Accounts is incomplete)

link.

Step 1

You will create the two arrayListType container objects to store all the customers and the accounts. You can model you code after this project:

Step 2

Once you have code to load in all the customers and account, create a test suite to test the functions code so far. This includes finding, adding, removing customers and accounts. Test what happens if you try to overfill at container.

Step 3

Once you have testing the code above, create a user interface with the following features:

  1. Add a new customer of any type.
  2. Look up a customer by customer number. Display the customer and all accounts.
  3. Look up customers by (partial or full) customer name, business name, or org name. You will need to scan through all the customers and find all matches. Display a number list of matches (name only. The user can then enter a number to display the customer and all accounts (as above).
  4. Once a customer and it accounts are displayed (in either 2 or 3) allow new account of any type to be added.
  5. Once a customer and it accounts are displayed (in either 2 or 3) allow an account to be selected
  6. Once an account is selected ( 5), display it and allow:
    • A months interest to be added or subtracted for whichever the account type.
    • Money to be deposited or withdrawn if it is a deposit. The classes will enforce all rules.
    • A payment to be made if it is a loan.
  7. Once an account is is selected (5), allow it to be deleted if the balance is zero:
  8. Once a customer is displayed (in either 2 or 3) that has no account, allow it to be deleted.
  9. Display the total number of accounts.
  10. Display the total number of customers.
  11. Exit the program

Step 4

Create a plan for how to test this program. Since this is a user interface you do cannot exactly automate it (though it is possible with scripts). But you should just write up a test plan of things you should do, and then do it.

Step 5

Turn in the output of all your tests, and your test plan from step 4.

Grading

RequirementsGrading CommentsPointsScore
Good Code Design30
Test suite for all functions including common and boundry cases.20
All required function implemented20
Quality User Interface for editing system information20
Comments10
Total100

Scroll to Top