Interface
Definition
An interface is a technical interaction contract exposed by a component for a defined purpose and usage rules.
Boundaries
An interface is not an integration: it exists as an available contract even with no consumers. An integration describes a concrete use of contracts by two parties. One interface may contain several operations if they are governed as one contract.
Minimum characteristics
- purpose;
- exposing component;
- kind and protocol;
- contract version;
- state and compatibility policy.
Relationships
A component exposes an interface. In the enterprise profile, an integration connects provider and consumer interfaces, or an interface and an explicitly identified consumer.
Example
IF-CASE-REST-V1 is the versioned REST contract exposed by the case-management component.
Common mistakes
- creating an object for every operation without an independent lifecycle;
- mixing a contract with an environment-specific network address;
- treating an interface as a directed relationship between systems.