Hints: For each class, it is required to implement constructors, setters, getters, toString() me and any other necessary method If the user tries to do an operation that could violate the state of objects, the operatic should be ignored and the application should display an error message (e.g. creating a account for the same holder twice, etc.) • Checking equality of any 2 objects should be done via the equals() method • There is a class that will do the main job of the bank as follows: o It has a collection to store the accounts and another one to store the transactions It has static methods, one for each operation happens frequently For each operation, a message should be displayed to the user to explain the statu the operation (i.e. if it was successful or not)

Programming with Microsoft Visual Basic 2017
8th Edition
ISBN:9781337102124
Author:Diane Zak
Publisher:Diane Zak
Chapter8: Arrays
Section: Chapter Questions
Problem 3E
icon
Related questions
Question
Hints:
For each class, it is required to implement constructors, setters, getters, toString() method,
and any other necessary method
If the user tries to do an operation that could violate the state of objects, the operation
should be ignored and the application should display an error message (e.g. creating an
account for the same holder twice, etc.)
Checking equality of any 2 objects should be done via the equals() method
There is a class that will do the main job of the bank as follows:
It has a collection to store the accounts and another one to store the transactions
It has static methods, one for each operation happens frequently
For each operation, a message should be displayed to the user to explain the status of
the operation (i.e. if it was successful or not)
Testing:
After implementing the required classes, design and implement a testing class to test them as
follows:
Create at least 3 bank accounts and do some transactions on them
Try to violate the state of the objects and show that your code prevents all violations
Show that the other operations that happen frequently are working fine
At the end, the required data should be stored into a text file and this file should be saved
automatically inside the folder contains your Java project
Transcribed Image Text:Hints: For each class, it is required to implement constructors, setters, getters, toString() method, and any other necessary method If the user tries to do an operation that could violate the state of objects, the operation should be ignored and the application should display an error message (e.g. creating an account for the same holder twice, etc.) Checking equality of any 2 objects should be done via the equals() method There is a class that will do the main job of the bank as follows: It has a collection to store the accounts and another one to store the transactions It has static methods, one for each operation happens frequently For each operation, a message should be displayed to the user to explain the status of the operation (i.e. if it was successful or not) Testing: After implementing the required classes, design and implement a testing class to test them as follows: Create at least 3 bank accounts and do some transactions on them Try to violate the state of the objects and show that your code prevents all violations Show that the other operations that happen frequently are working fine At the end, the required data should be stored into a text file and this file should be saved automatically inside the folder contains your Java project
Overview:
A new bank wants to make a simple application to keep track of all accounts and transactions.
In this TMA, it is required to help the bank manager implement the required application.
Requirements:
After a quick meeting with the bank manager, you got the following information:
It is required to store all bank accounts in one collection and all the transactions happened
in another collection.
Each account has a unique account number, a holder and balance. There is a specific prefix
(common for all accounts) that should be added to the holder's civil id to create the unique
account number. In addition, it is not allowed for a holder to have more than one account.
Furthermore, only three transactions are allowed on any account: deposit, withdrawal and
transfer money to another account.
Each holder has a unique civil ID (national id), a name and other attributes (add at least 2
attributes from your choice).
For each transaction, it is required to store the account(s) affected, amount of money, date,
and if they are successful. There are 3 types of transactions: deposit, withdrawal and
transfer.
Moreover, you have been informed that the following operations happen frequently:
Creating a new account
• Deposit money into a specified account
Withdrawal money from a specified account
Transfer money between two specified accounts
Printing details of the transaction where the maximum amount of money has been
transferred between 2 accounts
• Saving all accounts and transactions into a text file.
For accounts, they should be sorted in ascending order (according to the civil id)
Analysis:
There are common attributes and methods between the three types of transactions. What
is the best choice for designing and writing their codes? Explain your answer.
Draw a simple class diagram showing only relationships between the classes.
Implementation:
After analysing the given requirements, implement the required application:
with Object Oriented Programming style
following the rules of good programming style (e.g. adding comments, etc.)
using only the material covered in M251 (and its prerequisites)
Transcribed Image Text:Overview: A new bank wants to make a simple application to keep track of all accounts and transactions. In this TMA, it is required to help the bank manager implement the required application. Requirements: After a quick meeting with the bank manager, you got the following information: It is required to store all bank accounts in one collection and all the transactions happened in another collection. Each account has a unique account number, a holder and balance. There is a specific prefix (common for all accounts) that should be added to the holder's civil id to create the unique account number. In addition, it is not allowed for a holder to have more than one account. Furthermore, only three transactions are allowed on any account: deposit, withdrawal and transfer money to another account. Each holder has a unique civil ID (national id), a name and other attributes (add at least 2 attributes from your choice). For each transaction, it is required to store the account(s) affected, amount of money, date, and if they are successful. There are 3 types of transactions: deposit, withdrawal and transfer. Moreover, you have been informed that the following operations happen frequently: Creating a new account • Deposit money into a specified account Withdrawal money from a specified account Transfer money between two specified accounts Printing details of the transaction where the maximum amount of money has been transferred between 2 accounts • Saving all accounts and transactions into a text file. For accounts, they should be sorted in ascending order (according to the civil id) Analysis: There are common attributes and methods between the three types of transactions. What is the best choice for designing and writing their codes? Explain your answer. Draw a simple class diagram showing only relationships between the classes. Implementation: After analysing the given requirements, implement the required application: with Object Oriented Programming style following the rules of good programming style (e.g. adding comments, etc.) using only the material covered in M251 (and its prerequisites)
Expert Solution
steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Knowledge Booster
Unreferenced Objects
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Programming with Microsoft Visual Basic 2017
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:
9781337102124
Author:
Diane Zak
Publisher:
Cengage Learning
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage