Question
project java oop Project #2 Description Object Oriented Programming, 14014110-3 Week #10, Monday 6 February 2023 Due Date: Week #11, Thursday 16 February 2023 Teachers-Students
project java oop Project #2 Description Object Oriented Programming, 14014110-3 Week #10, Monday 6 February 2023 Due Date: Week #11, Thursday 16 February 2023 Teachers-Students application Please follow these instructions: This is a group project. So every group must complete it in their own and by themselves. Every group could include two students at maximum. The project must be submitted before the deadline and any late projects will receive ZERO. Include a PDF document that includes UML class diagrams, assumptions and several screenshots of your Netbeans IDE application as well as the output screenshot results in cases of successes and errors. Submit your code as .zip compressed file via the online Blackboard system. Name of the compressed file should include your names, student numbers and group numbers. The project description As a programmer, you have been asked to write a Java console application, using OOP concepts, for a Teachers-Students application with the following requirements: The application will maintain information about the relationship between teachers and students in a certain university. Both teachers and students will have common information such as: unique ID (int), first name (string), last name (string), mobile phone number (string), email address (string). In addition, teachers will also have a salary (double) information while students will also have a GPA (double) information. GPA data should be in the 0.0 to 4.0 range. The ID attribute in both teachers and students should be unique and automatically incremented (starting from 1) for every new teacher or student object. You may make use of static data members to achieve that. A certain teacher could teach multiple students and a certain student could be taught by multiple teachers. The project requirements Put all Java classes of the project in a Java package called sa.edu.uqu.education At the end, you will need to create a testing class (e.g. University.java) with a static main() method with the following requirements: It must have initial fixed collections of teachers and students (at least 2 teachers and 3 students). Use classes constructors to initialize these objects. The program will print a selection screen menu where the user can choose the operation she/he wants to perform. The selection screen will be repeated after each selection until the user types the number 8 to exit the program: 1. Add a basic teacher information (by providing all her/his information) 2. Add a basic student information (by providing all her/his information) 3. Assign an existing student to an existing teacher (after reading both existing teacher ID and student ID from the user) 4. Print all teachers basic information (in a well-tabular form) 5. Print all students basic information (in a well-tabular form) 6. Display all teachers information for a certain student (in a well-tabular form including student ID and student full name after reading existing student ID from the user) 7. Display all students information for a certain teacher (in a well-tabular form including teacher ID and teacher full name after reading existing teacher ID from the user) 8. Exit the program (after printing out Exiting from the program message) You also need to create, use and print a custom exception called InvalidGPAException that should be thrown when the user tries to add a new student (i.e. through option 2) using a GPA value outside the range 0.0 to 4.0. The message of the exception should be read as Invalid student GPA. A valid GPA value should be in the 0.0 to 4.0 range!. Dont handle this exception using try-catch block and add an example of this case in the output screenshots in the report. Project deliverables You will need to create all the needed Java classes with all the required information. Your design of the classes and their relationships to each other is the main point you will be evaluated at. You have to apply the necessary OOP (Object Oriented Programming) and UML concepts that we have covered in this module (i.e. inheritance, polymorphism, interface, collections, UML class diagram, exception handling and collections using ArrayList class). Include a text file (call it as names.txt) that includes the names of the participating students, their student numbers, group numbers and email addresses (in English). Include a PDF document FILE (name it as project2_report.pdf) that includes several screenshots of your Netbeans IDE application output screenshot results (for possible success, exception and error cases) as well as a UML class diagram of all the classes including the associations and multiplicity (cardinality) among these classes. Add screenshots of the folder and files structures of the Netbeans project. In addition, write all assumptions that you have made during design and implementation. Important Note: The output screenshots should also include details about the group students: IDs, Names, Group Numbers and Email Addresses. Include the whole Netbeans Java project FOLDER with all source codes. As much as possible, dont repeat your code (DRY). Instead, use shared methods and classes if needed. Write as much comments as possible to document all your source codes. ineeded the code not Explain and Also, the information of teachers, students, and the GPA, I want it to be random
and i need code in netbeans pls (java code)
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started