Develop scenarios of how the objects interact to see if you have identified the right objects, the right operations, and the right relationships.
Develop common scenarios (this is how the thing should usually work).
Remember to also develop uncommon scenarios, "weird cases," boundary conditions.
Scenarios are similar to, but more informal than, design-based test cases.
Developing scenarios will often cause you to recognize new design requirements. Remember that design is incremental and iterative!
Example: Graphical Notation
Example: CRC Notation
Alyce Brady, Kalamazoo College