CIS622 Software Design Object-Oriented Design for a Course Registration System Consider a course registration system for a small college. After the administration makes the decision on course offerings for the coming semester, the registrar’s office enters into the registration system the information about each course offering, including course number, section, meeting time, class room, instructor, and class size, making it accessible to students. Occasionally the administration needs to make a few changes after the course schedule is published; for example, cancel a course with low enrolment or add a section to meet unexpected demand. Students can use the registration system to register for courses they want to take in the coming semester. A student must enter one’s ID and password to start a registration session. Once the input is validated, the student can register for each course one chooses to take. In most cases, the student should be able to get one’s first choice. However, if a course is closed or canceled, then the student needs to find an alternative course. Sometimes, due to time conflict or some other reason, the student has to delete one or more courses one signed up earlier and add other courses. After this session is over, the student can enter the registration system again, adding or dropping courses as needed until a certain date. In addition, the student’s registration information, that is, the number of credit hours, is made available to a billing system that handles students’ billing issues. Once the initial registration period is over, professors receive a student roster for each course they are scheduled to teach. Professors are allowed to access the registration system and find relevant information about each of the classes they teach. In this project, you will conduct object-oriented design for this registration system. Apparently, its requirements description given above is not as complete as it should be. You can make reasonable assumptions based on your knowledge of a course registration system. You need to produce the following documents for submission and also present your work in class. 1. A domain model (also known as a class diagram) that shows classes in the registration system, their attributes, and relationships between them. 2. A use case diagram for the system and a complete description for each of the use cases (i.e., an expanded user case) in which a student registers or changes courses that he/she is intended to take. You need to include login and logout so as to show a complete registration session. 3. A sequence diagram for each use case that you described above, which depicts how objects interact to carry out the use case. 4. A design class diagram for the system, which involves classes that play a role in sequence diagrams that you described above. Note that documents described in each item above is considered as a part of this project and items 3 and 4 together are one part. You will present one part of your project in class on its due day, revise it according to comments that you receive, and then submit it in the following week.