Object Oriented Programming Project O4
Object Oriented Programming Project O4
Term Project
Code deadline
17=06-2023
Time 11:59 pm
In the first phase of the OOP project, you have to create a UML diagram that
shows all the relationships between the classes.
Phase 2 is due on 16th June 2023 submit on portal marks(50%)
In the second phase, you have to submit your complete project code.
Phase 3rd is due on 19 June 2023 present in class marks(30%)
And in the third phase, you have to present your project in class
Problem Statement:
You have been assigned to develop a University Management System. The system should allow the
management of departments, students, and teachers within the university. The system should
provide functionality to add departments, enroll students in courses, hire teachers, and display the
overall university information.
Requirements:
1. Department Management:
- The system should allow the addition of new departments with their respective courses.
- Each department should be able to display its name and the list of courses it offers.
2. Student Management:
- Each student should be able to display their name, age, student ID, and the courses they have
enrolled in.
3. Teacher Management:
- Each teacher should be able to display their name, age, teacher ID, and the courses they teach.
4. University Management:
- The university system should be able to manage multiple departments, students, and teachers.
- The system should provide functionality to add departments, students, and teachers to the
university.
- The system should be able to display the overall university information, including the list of
departments, students, and teachers.
Design Considerations:
- Each course should have a name and credit hours associated with it.
- The system should handle dynamic memory allocation for storing course details, enrolled courses,
and taught courses.
- The system should ensure proper deallocation of memory to avoid memory leaks.
Proposed Solution:
3. `Person` class: An abstract base class representing a person with a name and age. Derived classes
will be `Student` and `Teacher`.
4. `Student` class: Represents a student with a student ID and a list of enrolled courses.
5. `Teacher` class: Represents a teacher with a teacher ID and a list of taught courses.
6. `University` class: Represents the overall university system, composed of departments, students,
and teachers. It provides functions to manage and display university information.
In the main function, you are required to create a university object and utilize it to call all the
necessary functionalities. Make sure to use all the functions that you have implemented in your
project