1. Homepage
  2. Programming
  3. FIT1051 - Programming fundamentals in java - Assessment Two: User registration application

FIT1051 - Programming fundamentals in java - Assessment Two: User registration application

Engage in a Conversation
MonashFIT1051Programming fundamentals in javaJavaUser registration application

FIT1051 Assessment Two
Submission deadline:
Wednesday 11th September 11:55pm AEST (Week 8) via CourseNana.COM

Moodle
Weight: 15% of your overall mark
Late penalty: 5% mark deduction per day CourseNana.COM

Instructions: Below are the coding tasks that you need to complete for Assessment 2. Your work and your submission should be independent. Please download the IntelliJ project folder below and unzip it. This will provide you with partial code in which to program your answers. Please complete each task in the appropriate section of the partial code, and submit upon completion. CourseNana.COM

This assessment is worth 15% of the unit total. Submission of your code is worth 50% of this total, and your interview component (held later in Week 9) is worth 50%. CourseNana.COM

The programming portion of this assessment contains 50 marks and is comprised of the following components: CourseNana.COM

Code correctness is worth 42 marks: CourseNana.COM

  • Task 1 is worth 7 marks CourseNana.COM

  • Task 2 is worth 20 marks CourseNana.COM

  • Task 3 is worth 15 marks CourseNana.COM

    Writing good quality code that adheres to the FIT1051 Coding Standards is worth 8 marks. CourseNana.COM

    Academic Integrity: Please be reminded of the academic integrity standards that are expected of you at Monash, which were mentioned in Week 1. You should code alone and ask the unit staff for help if needed. Do not post your code in public forums or send your code to anyone. Do not copy/paste code from other sources and present it as your own — this includes use of generative AI tools. Breaching these academic integrity requirements can incur serious penalties. CourseNana.COM

    Scenario CourseNana.COM

    For this assignment, you need to make a simple user registration application that allows users to register for some system by entering their email address and chosen password. Once a user has registered, they can then log in to the system to change their email or password, or delete their account. CourseNana.COM

Task 1 (7 marks) CourseNana.COM

In the provided file RegisteredUser.java in the downloaded project, create a new RegisteredUser class with three appropriately typed fields, userID, email and password. (2 marks) CourseNana.COM

Keep in mind that while a user can change the email address or password associated with their account at any time, their userID should remain the same for as long as they are registered in the system. Each user’s userID should be unique, and userIDs should be assigned in increasing numerical order with each new registration, starting from 1. CourseNana.COM

Implement the following for the RegisteredUser class: CourseNana.COM

  • (2 mark) A default constructor with sensible default values, and a non-default constructor with sensible parameters. CourseNana.COM

  • (2 marks) Getter and setter methods for fields as appropriate. CourseNana.COM

  • (1 mark) A toString method that returns the details of the RegisteredUser, CourseNana.COM

    formatted appropriately. CourseNana.COM

    Task 2 (20 marks) CourseNana.COM

    In the Assignment2Driver class, write code that does the following, when the program is run: CourseNana.COM

  • (1 mark) Initialises an empty ArrayList of RegisteredUsers. CourseNana.COM

  • (2 marks) Outputs a main menu, which allows the user to select from the following options: CourseNana.COM

    1. Register a new user.
    2. Login as an existing user. 3. Quit the program.
    CourseNana.COM

    The program should continue to run until Option 3 is selected. CourseNana.COM

  • (5 marks) If Option 1 is selected, the user should be prompted to enter the email address and password they want to register with. A new RegisteredUser object containing their details should be added to the list of users. The user should be informed that they have been registered successfully, and their registration details (including userID) should be output to the screen, before returning them to the main menu. Recall that userIDs should be uniquely assigned, in increasing order starting at 1. CourseNana.COM

(12 marks) If Option 2 is selected, the user should be prompted to login by entering their email address and password. They should be allowed three attempts to enter this correctly. If after the third attempt, no match for their email/password has been found, an appropriate error message should be printed and the user should be returned to the main menu. If, on the other hand, the user logs in successfully, they should be presented with a new menu, with the following options: CourseNana.COM

  1. Print user details, which outputs all the information associated with that user in the system. CourseNana.COM

  2. Change email address, which prompts the user for a new email address and updates their details in the system. CourseNana.COM

  3. Change password, which prompts the user for a new password and updates their details in the system. CourseNana.COM

  4. Delete account, which if selected, will prompt the user for confirmation, then remove their details from the ArrayList and return them to the main menu. CourseNana.COM

  5. Log out, which returns the user to the main menu. CourseNana.COM

Task 3 (15 marks) CourseNana.COM

Upgrade your system to include the following validation checks. CourseNana.COM

  • (4 marks) Write a method called validateEmail in the Assignment2Driver class. This method should take an email address as its parameter, and return a boolean value. It should check the provided email address to ensure it contains the character ‘@’, preceded by at least one character, and followed by at least one character. If the email address meets these criteria, the method should return true. Otherwise, it should return false. For example, the strings “hello@world”, “1@1”, and “student123@monash.edu” should all return true, but the strings “helloworld”, “rebecca@”, and “@monash.edu” should all return false. CourseNana.COM

  • (4 marks) Write a method called validatePassword in the Assignment2Driver class. This method should take a password as its parameter, and return a boolean value. It should check the provided password to ensure it: CourseNana.COM

    o is at least 8 characters in length,
    o contains at least one number, and
    o contains a mix of upper and lowercase characters. CourseNana.COM

    If it meets these three conditions, it should return true, otherwise it should return false. CourseNana.COM

  • (7 marks) Update the rest of your program so these validation checks are performed when a user first registers, and when they update their email address or password. If the user gives an invalid email address or password, they should be given an appropriate error message and prompted to try again. CourseNana.COM

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
Monash代写,FIT1051代写,Programming fundamentals in java代写,Java代写,User registration application代写,Monash代编,FIT1051代编,Programming fundamentals in java代编,Java代编,User registration application代编,Monash代考,FIT1051代考,Programming fundamentals in java代考,Java代考,User registration application代考,Monashhelp,FIT1051help,Programming fundamentals in javahelp,Javahelp,User registration applicationhelp,Monash作业代写,FIT1051作业代写,Programming fundamentals in java作业代写,Java作业代写,User registration application作业代写,Monash编程代写,FIT1051编程代写,Programming fundamentals in java编程代写,Java编程代写,User registration application编程代写,Monashprogramming help,FIT1051programming help,Programming fundamentals in javaprogramming help,Javaprogramming help,User registration applicationprogramming help,Monashassignment help,FIT1051assignment help,Programming fundamentals in javaassignment help,Javaassignment help,User registration applicationassignment help,Monashsolution,FIT1051solution,Programming fundamentals in javasolution,Javasolution,User registration applicationsolution,