50 Broker Interactions for Intra- and Inter-enterprise
Figure 3-5 Broker application pattern
The Broker application pattern applies to solutions where the source application
starts an interaction that is distributed to multiple target applications that are
within the organization. It separates the application logic from the distribution
logic based on broker rules. The decomposition/ recomposition of the interaction
is managed by the broker rules tier.
The Broker pattern reuses the Direct Connection pattern to provide connectivity
between the tiers. The Broker Rules may support Message variation or Call
variation (or both variations) of the Direct Connection pattern.
The Broker application pattern was previously known as the Aggregator
application pattern for read intent calls and the Broker application pattern for
Messages and update intent calls. However, this distinction was found to be of
insufficient value to warrant a separate pattern — and so it has been dropped
from the revised PI patterns.
Business and IT drivers
The primary business driver for selecting this Application pattern is to allow one
application to interact with one or more of multiple target applications. Using a
hub-and-spoke architecture instead of a point-to-point architecture allows for the
seamless integration of applications while minimizing the complexity. A request
for information can be routed to one of many targets or simultaneously to multiple
targets. The resulting request message can be decomposed into multiple request
messages, and the reply messages then recomposed into a single reply
message using appropriate recomposition rules.
This externalization of routing, decomposition, and recomposition rules from
individual source and target applications increases the maintainability and
flexibility and reduces the enterprise wide integration complexity.
Source
Application
Broker
Rules
Target
Application
Target
Application
Targ e t
Application
Broker Rules
& WIP Results
WIP
Chapter 3. Application Integration pattern 51
This Application pattern is particularly important when a processing request
requires execution of multiple interactions concurrently, or where the source
application should be relieved of the need to know anything about its targets.
The primary IT driver for selecting this Application pattern is to allow loose
coupling of clients and services with minimum modification to each. The solution
should allow for multiple transmission protocols to be used and for
transformation of protocols between client and service.
Solution
This Application pattern, as shown in Figure 3-6 on page 53, is divided into a
number of logical components:
? The Source Application tier represents one or more applications that are
interested in interacting with the target applications.
? The Broker Rules tier reduces the proliferation of direct connections. In
addition, it supports message routing, decomposition and recomposition,
message enhancement and transformation. These rules are often captured
as business rules that govern the behavior of the broker tier. This tier also
uses a work-in-progress data store to retain the intermediate results from the
responses coming back from target applications until all the necessary
responses are received.
? The Target Application tier represents new, modified existing, or unmodified
existing applications. These applications are responsible for implementing the
necessary business services.
Guidelines for use
To increase the flexibility of the solution and responsiveness to changing
business requirements, it is recommended that particular attention is paid to
definition of reusable messages/services that pass through the Broker tier.
Robust transaction processing systems should be used to implement the
back-end applications to ensure availability, scalability, and performance.
A decomposition implementation (one source call to multiple target calls)
requires state persistence and re-composition of the response messages.
Standards should be used where possible to minimize future changes required to
the source and target applications.
Benefits
The benefits of this Application pattern are:
? It allows the integration of multiple, diverse applications.
52 Broker Interactions for Intra- and Inter-enterprise
? It minimizes the impact to existing applications.
? The Broker tier provides routing services, relieving the source application
from being aware of the target application.
? The Broker tier can provide transformation services that allow the source and
target to use different communication protocols.
? The Broker tier can provide decomposition/recomposition of messages,
allowing one request from the source to be satisfied using multiple target
applications. The fact that the response is a composite of multiple requests
and responses is hidden from the source application.
? The Broker tier minimizes the impact of changes in location of the target
application.
Limitations
Logic must be implemented at the broker for routing and
decomposition/recomposition tasks.
Putting the Application pattern to use
ITSO Electronics consists of multiple Retail stores and Wholesale departments.
The Retail stores get their supplies from the Wholesale departments and have a
need to request the delivery dates of those supplies before ordering. Currently
there is no integration of the Retail and Wholesale applications. All interaction
between the two are done over the phone or by mail. A solution must be found to
allow Retail stores to request delivery dates from the Wholesale departments.
To eliminate the need for the Retail departments to know which Wholesale
department carries which supplies, a Broker is needed to take incoming requests
and direct them based on part numbers to the Wholesale department that carries
them. In the event that a part is carried by multiple Wholesale departments, the
broker must get delivery dates from each and return the best date and the
Wholesale department that can supply it to the Retail department.
3.4.5 Broker: Router variation
The Router variation of the Broker application pattern, shown in Figure 3-6,
applies to solutions where the source application initiates an interaction that is
forwarded to at most one of multiple target applications.
Chapter 3. Application Integration pattern 53
Figure 3-6 Router variation
Where the Broker application pattern enables 1:N connectivity, the Router
application pattern enables 1:1 connectivity where the Router Rules tier selects
the target.
The Router variation of the Broker application pattern was previously known as
the Router variation of the
Aggregator application pattern.
Business and IT drivers
The primary business driver for selecting this Application pattern is similar to that
of the Broker application pattern. The difference lies in the fact that the Router
tier routes the request to only one of multiple target applications. The
requirement for transformation of message and interface format still applies.
Externalizing the routing from individual source and target applications increases
the maintainability and flexibility and reduces the enterprise wide integration
complexity.
This Application pattern is particularly important when a processing request
requires the source application to be relieved of the need to know anything about
its targets.
The primary IT driver for selecting this Application pattern is to allow loose
coupling of clients and services with minimum modification to each. The solution
should allow for multiple transmission protocols to be used and for
transformation of protocols between client and service.
Source
Application
Router
Rules
Targ et
Application
Ta rg e t
Application
Ta rg et
Application
R/O
Router Rules
54 Broker Interactions for Intra- and Inter-enterprise
Solution
This Application pattern provides a routing function to allow any attached
(initiating) application using a single router link to connect to one of multiple
target applications. While access to multiple applications is supported, at any
given time an application is connected to only one other application.
This Application pattern, as shown in Figure 3-6 on page 53, is divided into a
number of logical components:
? The Source Application tier represents one or more applications that are
interested in interacting with the target applications, one target at a time.
? The Router Rules tier represents any business rules associated with the
message handling, such as routing and transformation. It receives requests
from multiple source applications and routes them intelligently to the
appropriate target applications. The resulting integration is essentially a
point-to-point connection between source and target. This tier implements
minimal business logic.
? The Target Application tier represents new, modified existing, or unmodified
existing applications. These applications are responsible for implementing the
necessary business services.
Guidelines for use
The guidelines for this application pattern are the same as those for the Broker
application pattern.
Benefits
The benefits of this Application pattern are:
? It allows the integration of multiple, diverse applications
? It minimizes the impact to existing applications
? It provides routing services, relieving the source application from being aware
of the target application.
? It provides transformation services that allow the source and target to use
different communication protocols.
? The use of a router minimizes the impact of changes in location of the target
application.
Limitations
With the Router variation, there is limited ability in the router to manipulate the
requests. It performs intelligent routing and protocol transformation, but does not
have the ability to send simultaneous requests to the target applications based
on one incoming request, nor does decomposition / recomposition ability.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.140.196.244