An object family is a set of related objects designed to be created together as a compatible product group. Keeping family members together prevents incompatible combinations. section 9.2 section 9.2.1
A family-based design makes compatibility explicit:
- VarsityFactory creates varsity players and venues. section 9.2.2
- IntramuralFactory creates intramural players and venues. section 9.2.2
- Departments select the appropriate factory instead of constructing family members themselves. section 9.2.2
Sports provisions
A varsity baseball sport receives varsity baseball players and a sports stadium; an intramural baseball sport receives intramural players and an open field. The factory prevents those families from being mixed. section 9.2.1

