Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Your task is to program all the following points in three phases: Phase 1: Coding the structural part of your program (1) Create a
Your task is to program all the following points in three phases: Phase 1: Coding the structural part of your program (1) Create a UML class diagram that models at least three classes (vou can add more classes as you see necessary) as follows: a class called Course with courseCode, courseName, and creditHours; a superclass called FacultyMember with FacultylD, firstNome, lastName, academicRank, and academicSpecialization; a course Convener subclass inherits from the FacultyMember class with specific member variables representing the courses and members (Lecturers and TAs) whom he/she is responsible of; Lecturers and TAs are also subclasses that inherit from FacultyMember class with some specific member variables (i.e., maximumNumberOfCourses, quotaOfCreditHours they can take, and assignedCourses). (2) Create a project called TaibahCS and implement your class diagram that must include: Course, FacultyMember, Convener, Lecturers, and TAs. (3) Declare some overloaded constructors with parameters for all classes, and some appropriate methods as you suggest. Phase 2: Executing your implementation using Console Application (4) Write a main(.) method, and populate the TaibahCS with 16 Courses, 5 Conveners, 6 Lecturers and 7 TAs. Here, you should provide a mechanism to initialize all object instances by asking the user to enter their info. (5) Declare and implement two methods called allocateCourse( .) and dropCourse( .) for assigning/dropping courses to/from Lecturers and TAs. (6) When allocating a course (e.g. to a Lecturer), maximum number of courses and quota of credit-hours must not be exceeded. Use the exception handling mechanism to handle such situations. (7) Declare and implement methods to display the faculty members information, including the details of their courses (override toString( )). (8) Declare and implement a method to generate a report about all the details in the system such as lists of courses and members (based on their types), unallocated courses, member loads and the names of their courses, etc. Phase 3: Executing your implementation using Javafx/Swing | (9) Design and implement some suitable GUI interfaces that allow to manage the functionality of your project (i.e. inserting data, displaying information mentioned in points (6, 7 and 8). Note: the work will be assessed NOT on the quantity but on the quality of the design and implementation. Most generally, you will be assessed in accordance with the following criteria: o meeting the project requirements; o mastery and the use of some advanced 0OP features such as overloading/overriding methods and classes that implement reference-type interfaces; o clear understanding; and o cooperation between the team.
Step by Step Solution
★★★★★
3.39 Rating (152 Votes )
There are 3 Steps involved in it
Step: 1
I have made the UML class diagram using lucid chart here I have declared 5 classes o...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