Say we have to create a model for a company, where employees can be part of many different teams.
A team can have member members. Members can be part of many teams.
How to design database tables for this is well known, but what would be a good model for this in the world of classes? Both Team and Member have their own identity, and traversal could go both ways; i.e. equal likelihood of users getting members of a team or getting teams of a member.
Although this is an elementary example, it's hard to find good documented solutions.