Name and describe the five criteria used to analyze the quality of an
interface to a class.
- Cohesion: all operations provided by the interface revolve around a common purpose
- Completeness: all operations that make sense for the class are
supported by the interface
- Convenience: the interface makes common tasks simple
- Clarity: the interface does not confuse programmers
- Consistency: the operations for an interface have matching names,
parameters, return values, and behavior