Scenario 2: A console based account registration and login application
The program starts by prompting the user with some menu choices, asking the user if they would like to register a new account, login to the system or quit the program.
If the user selects to create a new account, the application asks the user to enter a username and a password to register an account.
The username must be unique, so the system must search through all existing usernames already registered to ensure that there won’t be any duplicates.
The application must check that the password is at least 10 characters long and that it is not in the list of the 100 most used passwords found here. The list of most used passwords should be contained in a text file and not in the application code, in case the list ever needs to be updated.
If the user successfully registers an account, they should see a message saying they are successful, and if at any point the user fails one of the requirements, a suitable message should be displayed to the user.
The successful username and password must be saved inside a text file, with the name of the text file being the username of the account.
If the user selects to login to the system, the application will prompt them for a username and password. If what the user enters matches the information stored in one of the text files, the user will be shown a message to say they have successfully logged in. If the data entered does not match anything stored in a text file, the user will be shown a message saying they are unsuccessful and to try again.
If the user selects to quit the program, the application will close.
Section 1 UML class diagram – 10%
Design and document in UML Class Diagram notation, an object oriented model to represent your proposed solution
This should include:
Data types of instance variables, parameters, and method return
values (when non-void).
Visibility modifiers
Use the following template for each class:
Class name Instance Variables
Methods
Section 2 C# program – 70%
As previously stated, you have been tasked with developing an Object Oriented console based application using C# that will satisfy the outcomes of one of the 3 given scenarios. This Object Oriented console application must demonstrate the understanding and successful use of:
• Data types and variables
• Sequence programming Conditional statements Loops and repetition Calculation
• Data persistence (Writing data to /reading data from a file)
• Data structures and arrays Validation/Error handling
• Classes and Methods (OOP)