Relationship | Description |
---|---|
Dependency | uses a |
Generalization | is a |
Association | has a |
Aggregation (Association) | has a |
Composition (Association) | has a |
Subtype Requirement: Let ϕ(x) be a property provable about objects x of type T. Then, ϕ(y) should be true for objects y of type S where S is a subtype of T. [Liskov,Wing'94]
The purpose of generalization is to solve design problems. If you don't have a design problem, don't use generalization.