There was some confusion in the workshop answers about what aspects of the problem
to include in class diagrams.
For example, can multiple classes be associated with a single class?
One way you typically have many classes linked to one is with “is-a” associations.
These are shown with triangle arrows in class diagrams (attached)
Student is-a Person and Professor is-a Person.
You can also have multiple “has-a” associations (open arrow)
Person lives-at Address and Person teaches Unit.
But it is a good idea NOT to include every possible association between classes in
a diagram (think transitive closure) – just focus on the important ones.
Similarly with classes - what is the most important data to be used in the system.
Don't use a class diagram to detail the implementation.
Relationships to do with sequences of operations or changes over time belong in
dynamic diagrams (statecharts and sequence diagrams) not in a class diagram.
I will add these points to the sample solutions and should be able to get those out
to you next week.