OO Design

Identify when objects in a problem definition are related by inheritance; when can you say "every A is B"?

Identify when objects are related by composition; when can you say "every A has a B"?

Aggregation is composition, but for collections of objects of another class type.

UML

Unified Modeling Language helps us visualize relationships.

UML Design of a vet clinic.

Alternative UML design.

A more complex UML diagram would have class name, data members, and method functions in each box.


UML is much more than just class diagrams.