In: Computer Science
Use CRC to design information system for a school. Use following classes: Professor, Class, School, Department, and Student, Identify the main responsibilities and collaborators for each class. Then draw a UML class diagram showing the relationships (and multiplicities) between the classes.
| School | |
| 
 Responsibilities: Teach children Provide education Provide Infrastructure  | 
 Collaborator: Department  | 
| Department | |
| 
 Responsibility: Assign subject teachers Assign class teachers Allocate the number of student per class Assign professors to classes  | 
 Collaborator: Class  | 
| Class | |
| 
 Responsibilities: Space for teaching and learning Blackboard Professor Furniture  | 
 Collaborator: Professor  | 
| Professor | |
| 
 Responsibilities: Teaching Testing Grading  | 
 Collaborator: Student  | 
| Student | |
| 
 Responsibilities: Learning Discussions Attend Exams  | 
 Collaborator: Class  | 
Class Diagram:

1. In the above diagram, the multiplicities 1 indicate that it is only one, corresponding to a particular scenario. For example: when we are considering a school, then it is only one, whereas all others like departments, classes, students, and professors can be many.
2. So, 1..* indicates that the school consists of more than one of those class members.