An Exposed Interface is an instance of an interface that is attached to a specific component. It is a short-cut for drawing a realization from a component to an interface and provides additional modeling functionality. Exposed Interfaces come in two styles, ProvidedInterfaces and RequiredInterfaces. The former indicates that the component provides the features defined by the interface while the latter indicates that the component requires the features as provided by some other component.
(EA)<sup>2</sup> employs two categories of interfaces, App Interfaces and DB Interfaces, which are describe below. The (EA)<sup>2</sup> Application Architecture Toolbox, (EA)<sup>2</sup> Application Component Toolbox, and (EA)<sup>2</sup> Data Architecture Toolbox supply ProvidedInterfaces and Required Interfaces for these categories.
Go to the Creating and Connecting Exposed Interfaces page to read more about how to model with Exposed Interfaces.
App Interfaces
Exposed Interfaces created from App Interfaces enable application to application communication and show the dependencies among applications. They have the following types, reflective of the communication style they employ. The different types of exposed interfaces imply the integration pattern used to realize the communication.
Exposed InterfaceType
Description
Async
Asynchonous communication directly between applications or application components.
Data Flow
Data movement between two application.
ESB
Communication via an Enterprise Service Bus.
Queue
Asynchonous communication directly between applications or application components via a queue.
Shared DB
Data shared via a common database.
Sync
Synchonous communication directly between applications or application components.
UI
Communication with a user
DB Interfaces
Exposed Interfraces created from DB Interfaces enable application to database communication
and database to database communication (ETL Jobs).
Exposed Interface Type
Description
R/O
A read only connection between an application and a DB Schema.
R/W
A read/write connection between an application and a DB Schema
ETL
An ETL Job that pulls data from one or more source DB Schemas and moves it to one or more target DB Schemas.