Lead and manage effective workplace relationships Develop cultural diversity and ethical practice policies and include them with
Fantastic news! We've Found the answer you've been seeking!
Question:
Transcribed Image Text:
Design, code in Java, test and document (at least) the following classes - a Student Course class, a Student Research class (both derived from the Student class) a Unit_Course class, Research class (both derived from the Unit class specified below) and a Client class. Assuming in this program, you allow multiple student objects to be created (i.e. arraylist of student objects). For course work students (Student Course class): (a) Contain enrolment type. (b) Provide a reportGrade method such that it will output "C" (to identify as course work student), the Name (first name and last name), student number, the unit ID, the overall mark, and the final grade of the student. For research students (Student Research class): (a) Contain enrolment type. (b) Provide a reportGrade method such that it will output "R" (to identify as research student), the Name (first name and last name), student number, the overall mark, and the final grade of the student. Unit class: (a) Enrolment type: "C" for course work enrolment and "R" for research enrolment. (b) A final grade reporting method for reporting the "NA" for not available. Course work unit (Unit_Course class): (a) Will have the information of the unit ID (of type string; e.g. ICT333), and the level of the unit (of type integer; e.g. 3 for third year) (b) There are two assignments, each marked out of a maximum of 100 marks and equally weighted. The marks for each assignment are recorded separately. (c) There is one final examination that is marked out of a maximum of 100 marks and recorded separately. (d) An overall mark (to be calculated within the class) (e) A final grade, which is a string (avoid code duplication for calculating this) The final grade is to be awarded on the basis of an overall mark, which is a number in the range 0 to 100 and is obtained by calculating the weighted average of the student's performance in the assessment components. The criteria for calculating the weighted average is as defined below: The two assignments together count for a total of 60% (30% each) of the final grade, and the final exam is worth 40% of the final grade. A grade is to be awarded for the students as follows: An overall mark of 80 or higher is an HD, an overall mark of 70 or higher (but less than 80) is a D, an overall mark of 60 or higher (but less than 70) is a C, an overall mark of 50 or higher (but less than 60) is a P. and an overall mark below 50 is an N. Research enrolment (Research class): (a) Enrolment type as "R" (b) There is a proposal, marked out of a maximum of 100 mark. (c) There is a final dissertation, marked out of a maximum of 100 mark. (d) An overall mark (to be calculated within the class) ICT167 Assignment 2 (e) A final grade, which is a string (avoid code duplication for calculating this) TM 2022 The final grade is to be awarded on the basis of an overall mark, which is a number in the range 0 to 100 and is obtained by calculating the weighted average of the student's performance in the assessment components. The criteria for calculating the weighted average is as defined below: The proposal is worth 40% of the final grade, and the final dissertation is worth 60% of the final grade. A grade is to be awarded for the students as follows: An overall mark of 80 or higher is an HD, an overall mark of 70 or higher (but less than 80) is a D, an overall mark of 60 or higher (but less than 70) is a C, an overall mark of 50 or higher (but less than 60) is a P, and an overall mark below 50 is an N. Client class: The client program will allow entry of these data for several different student into an ArrayList and then perform some analysis and queries. Your client class (program) will provide the user with a menu to perform the following operations. You will also need to load the information of the students from a CSV file (student.csv) before displaying the menu. You only need one ArrayList and one menu for this. For the csv file, your first item can be C or R to differentiate whether the entry is creating a Student Course object, or a Student Research object. You can then decide how you want other data to be listed in the csv file. Make sure you provide documentation to explain how your data is listed in the csv file. You should specify clearly in your documentation the data format of the CSV files used in this assignment. 1. Quit (exit the program) 1. Quit (exit the program) 2. Add (to the ArrayList) all the marks information about a course work student or a research student by reading it from another CSV file. Your program will ask for the file name. 3. Given student number (ID), remove the specified student and relevant information from the ArrayList. It is always good to ask the user to confirm again before removing the record. For confirmation, output the student number (ID) and the name to the user. Output all details currently held in the ArrayList. 4. 5. Determine and display how many course work students obtained an overall mark equal to or above the average overall mark and how many obtained an overall mark below the average overall mark. Note: You only need to perform this task on course work students only. 6. Given a student number (ID), report the grade information (using reportGrade) of the student with that number. If the student is not found in the ArrayList, an appropriate error message is to be displayed 7. Sort the ArrayList of the student objects into ascending order of the students' numbers (IDs), and output the sorted array - implement bubble sort algorithm for this, and explain how this sorting algorithm is different to the insertion sort algorithm (in external documentation). 8. Output the sorted ArrayList from (7) to a CSV file. If the ArrayList is not sorted, this option cannot be selected. Remember to include the identification of whether the student is course work student (C) or research student (R). Note that the program will loop around until the user selects the first option (Quit). Set up a student ArrayList of N student objects, and test it with N = 10 (at least). You have to store your test data in a file so that your program can read them. You should use 5 course work students and 5 research students in your test. Consider all possible enrolment types in your test. The client class should be well-structured and should have the essential methods in addition to the main method. ICT167 Assignment 2 The interaction with the user can be via the command line (i.e., no graphical user interface is expected). TM 2022 Devise suitable test data to test all sections of program code. You will need to provide all the test data used. Your client program should also include a method (e.g., StudentInfo()) to output your student details The interaction with the user can be via the command line (i.e., no graphical user interface is expected). Devise suitable test data to test all sections of program code. You will need to provide all the test data used. Your client program should also include a method (e.g., StudentInfo()) to output your student details (name, student number, mode of enrolment, tutor name, tutorial attendance day and time) at the start of program results. Note: The question requires you to use an ArrayList. Also, the sorting algorithm used must be coded within your program and not called from any Java libraries. You should not use any Java libraries for sorting algorithm and output to CSV file (e.g. File Writer). You are required to use only materials covered in the lecture notes and the textbook to complete this assignment. Design, code in Java, test and document (at least) the following classes - a Student Course class, a Student Research class (both derived from the Student class) a Unit_Course class, Research class (both derived from the Unit class specified below) and a Client class. Assuming in this program, you allow multiple student objects to be created (i.e. arraylist of student objects). For course work students (Student Course class): (a) Contain enrolment type. (b) Provide a reportGrade method such that it will output "C" (to identify as course work student), the Name (first name and last name), student number, the unit ID, the overall mark, and the final grade of the student. For research students (Student Research class): (a) Contain enrolment type. (b) Provide a reportGrade method such that it will output "R" (to identify as research student), the Name (first name and last name), student number, the overall mark, and the final grade of the student. Unit class: (a) Enrolment type: "C" for course work enrolment and "R" for research enrolment. (b) A final grade reporting method for reporting the "NA" for not available. Course work unit (Unit_Course class): (a) Will have the information of the unit ID (of type string; e.g. ICT333), and the level of the unit (of type integer; e.g. 3 for third year) (b) There are two assignments, each marked out of a maximum of 100 marks and equally weighted. The marks for each assignment are recorded separately. (c) There is one final examination that is marked out of a maximum of 100 marks and recorded separately. (d) An overall mark (to be calculated within the class) (e) A final grade, which is a string (avoid code duplication for calculating this) The final grade is to be awarded on the basis of an overall mark, which is a number in the range 0 to 100 and is obtained by calculating the weighted average of the student's performance in the assessment components. The criteria for calculating the weighted average is as defined below: The two assignments together count for a total of 60% (30% each) of the final grade, and the final exam is worth 40% of the final grade. A grade is to be awarded for the students as follows: An overall mark of 80 or higher is an HD, an overall mark of 70 or higher (but less than 80) is a D, an overall mark of 60 or higher (but less than 70) is a C, an overall mark of 50 or higher (but less than 60) is a P. and an overall mark below 50 is an N. Research enrolment (Research class): (a) Enrolment type as "R" (b) There is a proposal, marked out of a maximum of 100 mark. (c) There is a final dissertation, marked out of a maximum of 100 mark. (d) An overall mark (to be calculated within the class) ICT167 Assignment 2 (e) A final grade, which is a string (avoid code duplication for calculating this) TM 2022 The final grade is to be awarded on the basis of an overall mark, which is a number in the range 0 to 100 and is obtained by calculating the weighted average of the student's performance in the assessment components. The criteria for calculating the weighted average is as defined below: The proposal is worth 40% of the final grade, and the final dissertation is worth 60% of the final grade. A grade is to be awarded for the students as follows: An overall mark of 80 or higher is an HD, an overall mark of 70 or higher (but less than 80) is a D, an overall mark of 60 or higher (but less than 70) is a C, an overall mark of 50 or higher (but less than 60) is a P, and an overall mark below 50 is an N. Client class: The client program will allow entry of these data for several different student into an ArrayList and then perform some analysis and queries. Your client class (program) will provide the user with a menu to perform the following operations. You will also need to load the information of the students from a CSV file (student.csv) before displaying the menu. You only need one ArrayList and one menu for this. For the csv file, your first item can be C or R to differentiate whether the entry is creating a Student Course object, or a Student Research object. You can then decide how you want other data to be listed in the csv file. Make sure you provide documentation to explain how your data is listed in the csv file. You should specify clearly in your documentation the data format of the CSV files used in this assignment. 1. Quit (exit the program) 1. Quit (exit the program) 2. Add (to the ArrayList) all the marks information about a course work student or a research student by reading it from another CSV file. Your program will ask for the file name. 3. Given student number (ID), remove the specified student and relevant information from the ArrayList. It is always good to ask the user to confirm again before removing the record. For confirmation, output the student number (ID) and the name to the user. Output all details currently held in the ArrayList. 4. 5. Determine and display how many course work students obtained an overall mark equal to or above the average overall mark and how many obtained an overall mark below the average overall mark. Note: You only need to perform this task on course work students only. 6. Given a student number (ID), report the grade information (using reportGrade) of the student with that number. If the student is not found in the ArrayList, an appropriate error message is to be displayed 7. Sort the ArrayList of the student objects into ascending order of the students' numbers (IDs), and output the sorted array - implement bubble sort algorithm for this, and explain how this sorting algorithm is different to the insertion sort algorithm (in external documentation). 8. Output the sorted ArrayList from (7) to a CSV file. If the ArrayList is not sorted, this option cannot be selected. Remember to include the identification of whether the student is course work student (C) or research student (R). Note that the program will loop around until the user selects the first option (Quit). Set up a student ArrayList of N student objects, and test it with N = 10 (at least). You have to store your test data in a file so that your program can read them. You should use 5 course work students and 5 research students in your test. Consider all possible enrolment types in your test. The client class should be well-structured and should have the essential methods in addition to the main method. ICT167 Assignment 2 The interaction with the user can be via the command line (i.e., no graphical user interface is expected). TM 2022 Devise suitable test data to test all sections of program code. You will need to provide all the test data used. Your client program should also include a method (e.g., StudentInfo()) to output your student details The interaction with the user can be via the command line (i.e., no graphical user interface is expected). Devise suitable test data to test all sections of program code. You will need to provide all the test data used. Your client program should also include a method (e.g., StudentInfo()) to output your student details (name, student number, mode of enrolment, tutor name, tutorial attendance day and time) at the start of program results. Note: The question requires you to use an ArrayList. Also, the sorting algorithm used must be coded within your program and not called from any Java libraries. You should not use any Java libraries for sorting algorithm and output to CSV file (e.g. File Writer). You are required to use only materials covered in the lecture notes and the textbook to complete this assignment.
Expert Answer:
Answer rating: 100% (QA)
Cultural Diversity Policy 1 We are committed to fostering a workplace culture that values and respects diversity in all its forms including but not li... View the full answer
Related Book For
Introduction to Econometrics
ISBN: 978-0133595420
3rd edition
Authors: James H. Stock, Mark W. Watson
Posted Date:
Students also viewed these programming questions
-
A. A first name (given name) B. A last name (family name/surname) C. Student number (ID) - an integer number (of type long ) The Student class will have at least the following constructors and...
-
a. Find the probability of getting exactly 1 girl in 10 births. b. Find the probability of getting 1 or fewer girls in 10 births. c. Which probability is relevant for determining whether 1 is an...
-
What happens to the value of an option when both S0 and X change by the same factor, holding u, d, r, and r constant?
-
Approximate the sums with an error of magnitude less than 5 * 10 -6 . 1 (1)". (2n)! n=0
-
In 2016, a father of two minor children in Cuyahoga county, Ohio, filed a claim to determine custody of the children. At the pretrial, the father informed the magistrate he wanted to be named a legal...
-
Fair Value Addison Manufacturing holds a large portfolio of debt and equity securities as an investment. The fair value of the portfolio is greater than its original cost, even though some securities...
-
3. (a) Find the binary representation of /3. (b) By noting that -9.6= (-1) 23 1.2. x Use the result in (a), represent -9.6 in IEEE single precision format through rounding. (c) Represent the result...
-
Complete Form 941 for the 4th quarter for TCLH Industries (which is located at 202 Whitmore Avenue, Durham, NC 27701; Employer Identification #44-4444444). Assume that all necessary deposits were...
-
a) What type of order would an investor make if he owns some stocks and wants to ensure their sale on April 15 th ? Explain your answer. b) What type of order would an investor engage in if he took a...
-
Innovative Financial Inc. issues a bond with the following information: Par: $1,000 Time to maturity: 20 years Yield to maturity: 8 percent Current market price: $1,304.28 Quarterly payments What is...
-
where do you assess for splenic enlargement?
-
A 8% $1,000 par-value bond with quarterly coupons maturing in nine years is to be replaced by a 6% $1,200 par bond with semi-annual coupons. Both bonds are priced at an 8% nominal yield rate...
-
How do the tenets of postcolonial theory influence the representation of marginalized voices and narratives within the context of contemporary theater?
-
Consider a project with a life of 6 years with the following information: initial fixed asset investment = $390,000; straight-line depreciation to zero over the 6-year life; zero salvage value; price...
-
3.) A sequence can be represented by the formula r(n) 5n +2. a. Is this arithmetic or geometric? What would the graph look like? Describe the important points. b. What would be a recursive equation...
-
Why do CPA firms sometimes use a combination of positive and negative confirmations on the same audit?
-
Using the results in column (7): a. Akira is a man with 10 years of driving experience. What is the probability that he will pass the test? b. Jane is a woman with 2 years of driving experience. What...
-
This exercise fills in the details of the derivation of the asymptotic distribution of 1 given in Appendix 4.3. a. Use Equation (17.19) to derive the expression where vi = (Xi - X)ui. b. Use the...
-
Consider two different randomized experiments. In experiment A, oil prices are set randomly and the central bank reacts according to its usual policy rules in response to economic conditions,...
-
Cruz Manufacturing Ltds sales slumped badly in 2019. For the first time in its history, it operated at a loss. The companys income statement showed the following results from selling 600 000 units of...
-
The following are emails from various students to Dr. Destiny Sands, who is a professor in the English Department. These students are wondering if Dr. Sands would let them register for her...
-
What are some flawed assumptions about workplace communication? What is the reality for each myth?
Study smarter with the SolutionInn App