Page: (Bot) (Prev) (Next)   Class: (Outline) (Assign) (Answer)   Course: (Content)

To: (Issues) (Styles) (Technology) (Questions)

Issues (Top)

Connectors look deceptively simple in a graphical architecture. But, there are a large number of issues that must be addressed to establish and successfully use a connection. Some of these are:

Connection Styles (Top)
Figure 1: Producer-Consumer Data Flow

The two components in a connection often play specific roles with respect to data flow and control flow. If the primary data flow is in one direction, the component roles are the producer of the data and the consumer of the data. This relationship is shown in Figure 2.

If the consumer of the data initiates the connection, the consumer pulls the data from the producer. The producer must be prepared to accept the connection at a time of the consumer's choosing.

If the producer of the data initiates the connection, the producer pushes the data to the consumer. The consumer must be prepared to accept the connection at a time of the producer's choosing.

These two connection styles are illustrated in Figure 3:

Figure 3: Connection Style

The most common example of the pull style is the internet. The browser is a consumer that opens an HTTP connection to send a small packet of data (the control flow) that describes the location of the server and the type of request. The server is the producer that accepts the connection, processes the request, and returns the resulting data to the client.

This type of connection is a synchronous connection because the consumer waits for the producer to return the response.

An example of the push style is sending email. The sender is a producer that opens a connection to push the email message to the receiver. The difficulty with pushing email to the receiver is that the receiver may not be available to accept the connection. That is, the receiver would prefer to pull the email message at a time that is convenient for the receiver which often is not the time that the email was sent. The architecture that is used to convert email from a push connection to a push-pull connection is shown in Figure 4:

Figure 4: Email System Architecture

This architecture illustrates the general pattern that allows both sides of the connection to control the transfer of data.

Connector Technology (Top)

The following is a list of frequently used technologies to implement connectors in enterprise applications:

Questions (Top)

  1. When is a file a connector and when is a file a component?

  2. Since a browser can display forms that capture data that is "pushed" to the server, is a browser internet connection always label as a pull connection style?

Page: (Top) (Prev) (Next)   Class: (Outline) (Assign) (Answer)   Course: (Content)

Prepared by David L. March -- Last Revised on April 11, 2003