A required interface is a type of classifier that specifies services that another classifier needs (requires) to carry out its work. A required interface is an external view of the classifier and does not indicate how the classifier will actually perform its work, just an aspect of what it requires to do so. A required interface is an expression of a contract that the classifier has with other parts of the system.
The parts of a system do not exist in isolation but typically work together to perform the overall function of the system. A required interface is a way for a classifier (typically a class or component) to express what it needs (requires) to carry out its own work and meet the obligations it has to other parts of the system. These obligations (services) are expressed as provided interfaces. The classifier may in turn provide services to other classifiers via other required interfaces. In this way a system can be modeled as a series of classifiers, which interlock with each other via, required and provided interfaces. Modeling a system in this way allows parts of the model to be replaced easily.