Question Description

This coursework contributes 30% to the ENG421 unit mark. The assignment is made up of five
milestones. Each milestone is worth 20% of the grade and are due at different points throughout
Teaching Block 1 (TB1) and Teaching Block 2 (TB2). Please refer to each specific milestone for their
deadlines and requirements in the description below
Course Assignment:
The specification for this assignment is to design and program a working banking system. This bank
program is to be written for university and college students who may have some limited experience
with budgeting and managing their money.
You have authority to brand and name the bank as you wish. Your solution must provide
appropriate and informative messages to the user where necessary and use data verification
processes when required.
The following milestones will be required for the completion of this coursework:

  1. Provide a secure login process whereby the user will need to verify their identity and PIN number to access their information and accounts
  2. Display a menu system, which gives the users options to access each of their accounts or update their personal information
  3. After successful login and from the menu system, provide an option to interact with either the users current or saving account by way of displaying their balance and making payments or withdrawals
  4. Personalise the user experience by allowing the user to register a new account and to provide an option to open up a single current account and up to 2 savings accounts, whereby the customer is allowed a maximum of one type of each savings account:
    a. A ISA account, which can either be a stock and shares ISA or a cash ISA
    b. A regular savings account with a fixed interest rate
  5. After (and only after!) completing, the main features above (1-4), provide a development update that allows up to 20 users to register an account.
    To gain the full 20% for each milestone, all of the specified objectives for that milestone must be met. For each late submission for each milestone, whereby the submission is made after the
    deadline, there will be a penalty of 10% applied to that milestone. Not completing or missing milestones equals a grade of zero for each non-submission unless you submit and have a valid ECF.

Example:
Milestone 1 on time, all specifications met 20%
Milestone 2 late, all specifications met: 15% (5% penalty applied)
Milestone 3 late, half specifications met: 5% (original mark 10% for half objectives, 5%
penalty for late)
Milestone 4 on time, half specifications met 10%
Milestone 5 non-submission 0%
Final grade is 50%
Milestone 1
Upload to CW1-Milestone1 dropbox on Moodle by Friday 27th
November 15:00.
Requirement:

  1. Provide a secure login process whereby the user will need to verify their identity to access their account(s)
    Specification:
    As this project is in a development stage, you will need to set a userID and PIN yourself in order to test the login process. Therefore, your program should perform the following:
    ● You should create test variables that you will use for milestones 1-4. Declare and initialise variables called testID and testPIN. testID should be an integer variable and should be six digits long. testPIN, that should be an integer variable and four digits long
    The specifications for the login process are the following:
    ● Request the user to enter a userID. Complete a logical check to see if the inputted userID matches the stored testID you created in the previous step
    o If the IDs do not match, provide the user a further 2 attempts using a For Loop sequence
    ▪ Each time the userID does not match, display an informative message. After 3 unsuccessful attempts you should display a message to say your account has been blocked and then proceed to exit the program
    ● After a successful ID match, request the user to enter their PIN
    o Perform a length check to make sure PIN entered meets the four digit requirement
    o Perform a Do While Loop to provide the user a maximum of 3 attempts to enter
    their PIN
    ▪ As before, display informative messages where appropriate. You should countdown the number of tries left after each attempt
    ▪ If the PIN is not correct after three tries, display a message to say your account has been blocked and exit the program
    o If the PIN number is correct, display a message to say you have successfully logged in
    M21387
    2020-21 Page | 2
    Milestone 2
    Upload to CW1-Milestone2 dropbox on Moodle by Friday 11TH December 15:00. Your submission should include source code from Milestone 1 in order to fulfil the functionality of the project.
    Requirement:
    Display a menu system, which gives the users options to access each of their accounts or update their personal information
    Specification:
    Following Milestone 1, a successful login should take the user to a menu system. During this development stage, you should continue to use test variables and print messages to demonstrate functionality.
    The menu system should display the following information and make use of functions ready for the next milestones. The menu system should also use a switch-case statement and a loop sequence to
    enable the user to make a selection. Additionally the program should run until the user chooses to exit the program.
    The functions, for now, should use a print statement to state a successful function call.
  2. Update user information
    a. Ask the user if they wish to change their PIN number
    b. Update or enter their account details (e.g. name, address, DOB)
  3. View current account
    a. Function call to currentAccount()
  4. View savings account
    a. Function call to savingsAccount()
  5. Exit the program
    Milestone 3
    Upload to CW1-Milestone3 dropbox on Moodle by Friday 8
    th
    January 15:00. Your submission
    must include the code from the previous milestones to ensure continued functionality.
    Requirement:
    After successful login and from the menu system, provide an option to interact with their current or saving account by way of displaying their balance and making payments or withdrawals
    Speciation:
    M21387
    2020-21 Page | 3
    Write and complete the functionality for the currentAccount and savingsAccount functions created in the previous milestone (which is option 2 and 3 from the menu system). For testing, you should
    start the user with a balance of 500.00 in each account.
    The following functionality should be implemented for each account:
  6. Display balance
  7. Make a withdrawal
  8. Deposit money
  9. Transfer balance between the current and savings account.
    a. You must make use of at least one global variable for this component
    b. Have suitable checks to make sure the balance does not drop below 0.
    You should take the time to test all the functionality that you have written so far and to make sure that you have written appropriate methods for data verification.
    Milestone 4
    Upload to CW1-Milestone4 dropbox on Moodle by Friday 21st
    January 15:00. Your submission must include the code from the previous milestones to ensure continued functionality.
    Requirement:
    Personalise the user experience by allowing the user to register an account and to provide an option to open up a single current account and up to 2 savings accounts, whereby the customer is
    allowed a maximum of one type of each savings account:
    a. A ISA account, which can either be a stock and shares ISA or a cash ISA
    b. A regular savings account with a fixed interest rate
    Specification:
    Rename the test variables to default account – so we can continue to test functionality with the previous milestones.
    When the program is first run, you should now provide an option to either:
    ● login (using the credentials from before) or
    ● register a new account
    When registering an account, you should request the following
    ● The users first and last name, storing the information as string
    ● The users DOB, storing the information as string
    ● Set a user ID and password. It must not rewrite the default account information
    ● Ask the user what type of savings account they wish to open, you should display a brief message explaining the account and what interest rates belong to those accounts
    M21387
    2020-21 Page | 4
    Upon registering, you should now provide the user the option to login and disable the test account so only one account can be accessed.
    You should update the view savings account functionality to match the account opened.
    Additionally you should write and insert pseudocode explaining your project for milestone 1-4.
    Milestone 5:
    Upload to CW1-Milestone5 drop box on Moodle by Friday 19th February 15:00. Your submission must include the code from the previous milestones to ensure continued functionality.
    Requirement:
    Provide a development update that allows up to 20 users to register an account.
    Specification:
    Building on the success of milestones 1-4, you should enable your program to allow up to 20 users to register an account with your bank. You must make use of arrays and more advanced features
    where appropriate. You have flexibility on how to implement this feature. Marks will be given based on enabling full functionality of your bank account

Do you have a similar assignment and would want someone to complete it for you? Click on the ORDER NOW option to get instant services at essayloop.com

Do you have a similar assignment and would want someone to complete it for you? Click on the ORDER NOW option to get instant services at essayloop.com. We assure you of a well written and plagiarism free papers delivered within your specified deadline.