Please follow the steps attached to the file to write the code please.thanks

1 Final Project This assignment demonstrates your understanding of the concepts from the CMIS 141 class. Before attempting this project, be sure you have completed all of the reading assignments, hands -on labs, discussions, and assignments to date. Design a Java application that will read a file containing data related to the US. Crime statistics from 1994 -2013. The description of the file is at the end of this file. The application should provide statistical results on the data including: a. Population growth in percentages from each consecutive year (e.g. 1994 -1995 calculation is ((262803276 - 260327021)/2603 27021)*100 = 0.9512%, 1995 -1996 would be ((265228572 - 262803276)/262803276)*100 = 0.9229%) b. Years where the maximum and minimum Murder rates occurred. c. Years where the maximum and minimum Robbery rates occurred. The following are some design criteria and specific requirements that need to be addressed: a. Use command line arguments to send in the name of the US Crime Data file. b. You should also use Java classes to their full extent to include multiple methods and at least two classes in addition to a third class containing main. c. You are not allowed to modify the Crime.csv Statistic data file included in this assignment. d. Use arrays and Java classes to store the data. (Hint: You can and should create a USCrimeClass to store fields with the year, and murder an d robbery rates for that year . You should also have a different class that is an Array of US Crime Class objects.) e. The constructor for the class with the array of USCrineClass objects should have a single argument that is the name of the file with the crime data f. You should create separate methods for each of required functionality. (e.g. getMaxMurderYear() will return the Year where the Murder rate was highest. ) g. A user -friendly and well -organized menu should be used for users to select which data to return. A sample menu is shown below in the run example. You are free to enhance your design and you should add additional menu items and functionality. h. The menu system should be displaye d at the command prompt, and continue to redisplay after results are returned or until Q is selected. i. If a user enters an invalid menu item, the system should display an error message, then redisplay the menu with a prompt asking them to enter a valid menu selection j. The application should keep track of the elapsed time (in seconds) between when the application starts and when the user quits the program. After the program is exited, the application should provide a prompt thanking the user for trying the US Crime Statistics program and providing the total time elapsed. k. Hint: When reading the Crime file, read one line at a time (See ReadEmail.java) and then within the loop parse each line into the USCrimeClass fields and then store that USCrimeClass Object into an array. Note you can use String.split(“,”) to split the CSV line into the fields for setting the USCrimeClass object. 2 Here is a sample run: java TestUSCrime Crime.csv ********** Welcome to the US Crime Statistical Application ************************** Enter the number of the question you want answered. Enter ‘Q’ to quit the program: 1. What were the percentages in population growth for each consecutive year from 1994 – 2013? 2. What year was the Murder rate the highest? 3. What year was the Murder rate the lowest? 4. What year was the Robbery rate the highest? 5. What year was the Robbery rate the lowest? Q. Quit the program Enter your selection: 2 The Murder rate was highes t in 1994 Enter the number of the question you want answered. Enter ‘Q’ to quit the program: 6. What were the percentages in population growth for each consecutive year from 1994 – 2013? 7. What year was the Murder rate the highest? 8. What year was the Murder rate the lowest? 9. What year was the Robbery rate the highest? 10. What year was the Robbery rate the lowest? Q. Quit the program Enter your selection: 5 The Robbery rate was lowest in 2013 Enter the number of the question you want answered. Enter ‘Q’ to q uit the program: 1. What were the percentages in population growth for each consecutive year from 1994 – 2013? 2. What year was the Murder rate the highest? 3. What year was the Murder rate the lowest? 4. What year was the Robbery rate the highest? 5. What year was the Robbery rate the lowest? Q. Quit the program Enter your selection: Q Thank you for trying the US Crimes Statistics Program. Elapsed time in seconds was: 32 3 The google recommended Java st yle guide, provided as link in the week 2 content, should be used to format and document your code. Specifically, the following style guide attributes should be addressed: • Header comments include filename, author, date and brief purpose of the program. • In-line comments used to describe major functionality of the code. • Meaningful variable names and prompts applied. • Class names are written in UpperCamelCase. • Variable names are written in lowerCamelCase. • Constant names are in written in All Capitals. • Braces use K&R style. Submission requirements Deliverables include all Java files (.java) and a single word (or PDF) document. The Java files should be named appropriately for your applications. The word (or PDF) document should include screen captures sho wing the successful compiling and running of each of the test cases. Each screen capture should be properly labeled clearly indicated what the screen capture represents. The test cases table should be included in your word or PDF document and properly labe led as well. Submit your files to the Final Project area no later than the due date listed in your LEO classroom. You should include your name and FP in your word (or PDF) file submitted (e.g. firstnamelastnameFP.docx or firstnamelastnameFP.pdf) Grading Rubric: The following grading rubric will be used to determine your grade: Attribute Meets Does not meet Java Code 15 points Java classes used to their full extent to include multiple methods and at least three clas ses (two for crime data and one for main) were used. Population growth in percentages is calculated from each consecutive year Years where the maximum and minimum Murder rates occurred are calculated. Years where the maximum and minimum Robbery rates occurred are calculated. 0 points Java classes are not used to their full extent to include multiple methods and at least two classes for the crime data and one for main . Population growth in percentages is not calculated from each consecutive year Years where the maximum and minimum Murder rates occurred are not calculated. Years where the maximum and minimum Robbery rat es occurred are not calculated. 4 Command line arguments to send in the name of the US Crime Data file were used. Crime.csv Statistic data file was not modified. Arrays and Java classes used to store the data. Separate methods for each required functionality. A user -friendly and well - organized menu used. The menu system is displayed at the command prompt. The menu system continues to redisplay after results are returned or until Q is selected. If a user enters an invalid menu item, the system redisplays the menu with a prompt asking them to enter a valid menu selection. The application keeps track of the elapsed time (in seconds) between the application start and when the user quits the program. After the program is exited, the application provides a prompt thanking the user for trying the US Crime Statistics program and prov iding the total time elapsed in seconds. Command line arguments to send in the name of the US Crime Data file are not used. Crime.csv Statistic data file was modi fied. Arrays and Java classes are not used to store the data. Does not create separate methods for each of the required functionality. A user -friendly and well - organized menu was not used. The menu system is not displayed at the command prompt. The men u system does not continue to redisplay after results are returned or until Q is selected. If a user enters an invalid menu item, the system does not redisplay the menu with a prompt asking them to enter a valid menu selection. The application does not kee p track of the elapsed time (in seconds) between the application start and when the user quits the program. After the program is exited, the application does not provides a prompt thanking the user for trying the US Crime Statistics program and providing t he total time elapsed in seconds. 5 Test Cases 5 points Test data supplied in the form of a table with columns indicating the input values, expected output, actual output and if the test case passed or failed. The table contains 4 columns with appropriate labels and a row for each test case. Each test case includes several of the menu items and includes a Q to end the p rogram . Test dat a fully tests the program checking that each functionality works correctly, that the program works with diffe ring n umbers of user menu selections, and the p rogram correctly handles a n ivalid menu selection Test cases were included in the supporting word or PDF documentation. 0 points No test cases were provided. Test data do es not fully test all aspects of the program ’s functionality Documentation and Style guide 5 points Screen captures were provided and labeled for compiling your code, and running each of your test cases . Header comments include filename, author, date and brief purpose of the program. In-line comments used to describe major functionality of the code. Meaningful variable names and prompts applied. Class names are written in UpperCamelCase. 0 points No documentation included Java style guide was not used to prepare the Java code. 6 Variable names are written in lowerCamelCase. Constant names are in written in All Capitals. Braces use K&R style. US Crimes Data Description: The attached C omma delimited file, named Crime.csv contains US Crime data from 1994 – 2013. The first line in the file contains the field names. (Note: Do not modify this file in anyway. You should use it as is for input for your application) The US Crime data were obt ained from this Web Site: https://www.fbi.gov/about -us/cjis/ucr/crime -in-the -u.s/2013/crime -in-the -u.s. - 2013/tables/1tabledatadecoverviewpdf/table_1_crime_in_the_united_states_by_volume_and_rate_pe r_100000_inhabitants_1994 -2013.xls#overview