Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Java Expert


Home >> Java

A successful career in software development depends on a thorough understanding of the fundamentals of object-oriented programming and best practices for software development.

Your final project for this course will require you to apply the knowledge you have obtained prior to and during this course to the development of a simple, working program and accompanying process documentation.

Professionals in software development document their process including requirements, design decisions, and defects for several different reasonsas follows:

• To track what has been accomplished
• To track when items were completed in order to maintain a schedule
• To justify why a product works the way it does (verification and validation)
• To provide resources if a new team member is added so he or she can catch up
• To see where the most defects are being injected in order to prevent them
• To review what happened during the project in order to create new ways of improving the process

For your development project, you will imagine you are in charge of managing a zoo's computer infrastructure. There are many aspects of a zoo that need to be in place to keep it running. Two of those aspects are controlling data access and monitoring animal activities in exhibits. You will select which of these key components you wish to develop. Both options require at least two classes and for the design to be broken into multiple methods. Select one of the options provided in the prompt below and create your program and process documentation based on the specified requirements.

The final project for this course is the creation of an authentication or monitoring system. The final project represents an authentic demonstration of competency because it involves application of real-world Java programming. The project is divided into one milestone and several final project journal assignments, which will be submitted at various points throughout the course to scaffold learning and ensure quality final submissions. Milestone One will be submitted in

In this assignment, you will demonstrate your mastery of the following course outcomes:

• Implement appropriate variables, operators, methods, and classes as they are used in object-oriented programming for developing successful programs

• Utilize appropriate syntax and conventions in terms of their best practice and use in programming

• Debug coding errors by testing existing code, identifying errors, and correcting errors for improved functionality

• Assemble basic, working programs that effectively integrate essential elements of object-oriented programming
Prompt

You have assumed the role of managing the technology infrastructure at a zoo. You will develop a working program (either an authentication system or a monitoring system) for the zoo designed to follow the specifications outlined in the overview. You will also provide detailed documentation describing your development process.

Option 1: Authentication System For security-minded professionals, it is important that only the appropriate people gain access to data in a computer system. This is called authentication. Once users gain entry, it is also important that they only see data related to their role in a computer system. This is called authorization. For the zoo, you will develop an authentication system that manages both authentication and authorization. You have been given a credentials file that contains credential information for authorized users.
You have also been given three files, one for each role: zookeeper: Hello, Zookeeper! As zookeeper, you have access to all of the animals' information and their daily monitoring logs. This allows you to track their feeding habits, habitat conditions, and general welfare.

Veterinarian: Hello, Veterinarian! As veterinarian, you have access to all of the animals' health records. This allows you to view each animal's medical history and current treatments/illnesses (if any), and to maintain a vaccination log.

and admin:
Hello, System Admin! As administrator, you have access to the zoo's main computer system. This allows you to monitor users in the system and their roles.

Each role file describes the data the particular role should be authorized to access.

Create an authentication system that does all of the following:
• Asks the user for a username
• Asks the user for a password
• Converts the password using a message digest five ( MD5) hash

o It is not required that you write the MD5 from scratch.

Use the code located in this document and follow the comments in it to perform this operation.

importjava.security.MessageDigest;
public class MD5Digest {
public static void main(String[] args) throws Exception {
//Copy and paste this section of code
String original = "letmein"; //Replace "password" with the actual password inputted by the user
MessageDigest md = MessageDigest.getInstance("MD5"); md.update(original.getBytes());
byte[] digest = md.digest();
StringBuffersb = new StringBuffer();
for (byte b : digest) {
sb.append(String.format("%02x", b & 0xff));
}
//End copy/paste
System.out.println("original:" + original);
System.out.println("digested:" + sb.toString()); //sb.toString() is what you'll need to compare password strings

}
}

• Checks the credentials against the valid credentials provided in the credentials file

o Use the hashed passwords in the second column; the third column contains the actual passwords for testing and the fourth row contains the role of each user.

• Limits failed attempts to three before notifying the user and exiting the program

• Gives authenticated users access to the correct role file after successful authentication

o The system information stored in the role file should be displayed. For example, if a zookeeper's credentials is successfully authenticated, then the contents from the zookeeper file will be displayed. If an admin's credentials is successfully authenticated, then the contents from the admin file will be displayed.

• Allows a user to logout

• Stays on the credential screen until a successful attempt has been made, three unsuccessful attempts have been made, or a user chooses to exit

You are allowed to add extra roles if you would like to see another type of user added to the system, but you may not remove any of the existing roles.

Specifically, the following critical elements must be addressed:

I. Process Documentation: Create process documentation to accompany your program that addresses all of the following elements:

A. Problem Statement/Scenario: Identify the program you plan to develop and analyze the scenario to determine necessary consideration for building your program.

B. Overall Process: Provide a short narrative that shows your progression from problem statement to breakdown to implementation strategies. In other words, describe the process you took to work from problem statement (your starting point) to the final product. Your process description should align to your end resulting program and include sufficient detail to show the step-by-step progress from your problem statement analysis.

C. Pseudocode : Break down the problem statement into programming terms through creation of pseudocode. The pseudocode should demonstrate your breakdown of the program from the problem statement into programming terms. Explain whether the pseudocode differs from the submitted program and document any differences and the reason for changes.

D. Methods and Classes: Your pseudocode reflects distinct methods and classes that will be called within the final program. If the pseudocodediffers from the submitted program, document the differences and reason for changes.

E. Error Documentation: Accurately document major errors that you encountered while developing your program.

F. Solution Documentation: Document how you solved the errors and what you learned from them.

II.

Program: Your working program should include all of the specified requirements. The comments within your program will count toward the assessment of the documentation aspects of your submission.

A. Functionality

1.Input/Output: Your program reads input from the user and uses system output.

2.Control Structures: Your program utilizes appropriate control structures for program logic.

3.Libraries: Your program utilizes standard libraries to pull in predefined functionality.

4.Classes Breakdown: Your program is broken down into at least two appropriate classes.

5.Methods: Your program utilizes all included methods correctly within the classes.

6.Error Free: Your program has been debugged to minimize errors in the final product. (Your program will be run to determine functionality.)

B. Best Practices: These best practices should be evident within your working program and process documentation.

1. Formatting Best Practices: Provide program code that is easy to read and follows formatting best practices as defined by the industry, such as with indentation.

2. Documentation Best Practices: Include comments where needed within the program in appropriate detail for communicating purpose, function, and necessary information to other information technology (IT)professionals.

3. Coding Best Practices: Ensure your program supports clean code through descriptive variable names

Attachment:- AuthenticationSystem.rar

Java, Programming

  • Category:- Java
  • Reference No.:- M92411299
  • Price:- $20

Priced at Now at $20, Verified Solution

Have any Question?


Related Questions in Java

Overviewyou are required to use java se 80 and javafx to

Overview You are required to use Java SE 8.0 and JavaFX to develop a Graphical User Interface (GUI) for the FlexiRent rental property management program created in Assignment 1. This assignment is designed to help you: 1 ...

Can someone please help me with the following java

can someone please help me with the following java question The input is an N by N matrix of nonnegative integers. Each individual row is a decreasing sequence from left to right. Each individual column is a decreasing s ...

Fundamentals of operating systems and java

Fundamentals of Operating Systems and Java Programming Purpose of the assessment (with ULO Mapping) This assignment assesses the following Unit Learning Outcomes; students should be able to demonstrate their achievements ...

Overviewyou are required to use java se 80 and javafx to

Overview You are required to use Java SE 8.0 and JavaFX to develop a Graphical User Interface (GUI) for the FlexiRent rental property management program created in Assignment 1. This assignment is designed to help you: 1 ...

Assessment socket programmingtaskwrite a java gui program

Assessment: Socket Programming Task Write a JAVA GUI program that would facilitate text chatting/exchanging between two or multiple computers over the network/internet, using the concept of JAVA socket programming. If yo ...

Assessment database and multithread programmingtasktask 1

Assessment: Database and Multithread Programming Task Task 1: Grade Processing University grading system maintains a database called "GradeProcessing" that contains number of tables to store, retrieve and manipulate stud ...

Assessment instructionsin this assessment you will design

Assessment Instructions In this assessment, you will design and code a simple Java application that defines a class, instantiate the class into a number of objects, and prints out the attributes of these objects in a spe ...

Assessment -java program using array of Assessment -JAVA Program using array of objects

Assessment -JAVA Program using array of objects Objectives This assessment item relates to the course learning outcomes as stated in the Unit Profile. Details For this assignment, you are required to develop a Windowed G ...

Assessment database and multithread programmingtasktask 1

Assessment: Database and Multithread Programming Task Task 1: Grade Processing University grading system maintains a database called "GradeProcessing" that contains number of tables to store, retrieve and manipulate stud ...

Project descriptionwrite a java program to traverse a

Project Description: Write a java program to traverse a directory structure (DirWalker.java) of csv files that contain csv files with customer info. A simple sample in provided in with the sample code but you MUST will r ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As