Design and implement a class called Building Society that manages user accounts using an appropriate graphical user interface in Swing. Each instance of the BuildingSociety class will have a name and a maximum number of accounts that it can handle.
The BuildingSociety class should have the following methods:
openAccount ( allow a user to open a new Credit Union account)
closeAccount (allow an account holder to close an account on condition that the balance is currently zero)
makeLodgement ( allow an account holder to lodge money)
makeWithdrawal (allow an account holder to withdraw money from their account)
requestOverdraft (allow an account holder to request a new overdraft limit).
Each BuildingSociety Account should have a number, a name, a current balance and an overdraft limit. The methods for each account are:
lodgement ( make a lodgement)
withdrawal (remove a sum of money from the account on condition that there are sufficient funds available to meet the request)
balance (check current balance)
overdraftLimit ( check current overdraft limit)
setNewOverdraft ( set the overdraft limit to some given value).
The full Question and the deliverables are stated in a pdf called Software_Development_Project in the zip file. Other files and notes in the zip file can be used as a guideline to see what level of complexity the program has to be. Program has to use programming style used in the notes. Thanks.