Skip to main content

Extended Enterprise: Select Application pattern

Overview

Extended Enterprise solutions exist across enterprises where an end to end shared business process initiates and controls one or more interactions with one or more applications, services, sub-processes or users.

Legend for Extended Enterprise application patterns

Extended Enterprise application patterns legend


The Business drivers for the Extended Enterprise patterns
Business Drivers Exposed Direct Connection Message Connection Variation Call Connection Variation Exposed Document Variation Exposed Broker Exposed Router Variation Exposed Serial Process Exposed Serial & Orchestrated Processes
Improve organizational efficiency yes yes yes yes yes yes yes yes
Reduce the latency of business events yes yes yes yes yes yes yes yes
Support a structured exchange with business partners yes yes yes yes yes yes yes yes
Support realtime one-way "message flows" to partners yes yes no yes yes yes yes yes
Support realtime request/reply "message flows" to partners yes no yes no yes yes yes yes
Support dynamic routing of "messages" between partners and a specific applications no no no no yes yes yes yes
Support dynamic routing of "messages" between partners to multiple applications no no no no yes no yes yes
Support automated coordination of public process flows between partners no no no no no no yes yes
Support associated long-running private processes no no no no no no no yes

The IT drivers for the Extended Enterprise patterns
IT Drivers Exposed Direct Connection Message Connection Variation Call Connection Variation Exposed Document Variation Exposed Broker Exposed Router Variation Exposed Serial Process Exposed Serial & Orchestrated Processes
Minimize total cost of ownership (TCO) yes no no yes yes yes yes yes
Leverage existing skills yes yes yes yes yes yes yes yes
Leverage the legacy investment yes yes yes yes yes yes yes yes
Enable back-end application integration yes yes yes yes yes yes yes yes
Minimize application complexity yes yes yes yes yes yes yes yes
Minimize enterprise complexity no no no no yes yes yes yes
Improve maintainability no no no no yes yes yes yes
Improve flexibility by externalizing process logic from application logic no no no no no no yes yes
Support stateful transactions that support long-running interactions no no no no no no no yes

Exposed Direct Connection

The Exposed Direct Connection application pattern represents the simplest interaction type based on a 1-to-1 topology. It allows a pair of applications to directly communicate with each other across organization boundaries. Interactions between a source and a target application can be arbitrarily complex. Generally, complexity can be addressed by breaking down interactions into more elementary interactions.

More complex point-to-point connections will have modeled connection rules such as business rules associated with them, as shown in the figure below. Connection rules are generally used to control the mode of operation of a connector depending on external factors. Examples of connection rules are:

The Exposed Direct Connection application pattern has two communication variations:

All applications of the Exposed Direct Connection application pattern will be one communication variation or the other. The communication variation required depends on whether the initiating source application needs an immediate response from the target application in order to proceed with execution.

Both communication variations may be used either with synchronous or asynchronous communication protocols. However, there are preferences for a specific protocol type depending on the variation. For example, the Call Connection variation has a more natural fit with synchronous protocols while the Message Connection variation favours asynchronous protocols.


Business and IT Drivers

The business and IT drivers for choosing the Exposed Direct Connection application pattern are to:

The primary goal is to allow an application to gain direct and real-time access to another application that is outside the organization in order to reduce the latency of business events.


Solution

Select this Application pattern
Exposed Direct Connection application pattern

For a legend, please see above.

This application pattern, as shown in the figure above, is divided into a number of logical components:


Guidelines for use

Direct integration between applications can be inflexible, in that any changes to one application may have knock-on effects on other applications. This is especially dangerous when integrating across organizational boundaries. Any changes to the exposed target application may require changes to many partner applications. Such changes can be both expensive and time consuming.

Such knock-on effects can be minimized using document-based adapters that wrapper the applications in the exposed connection. Document-based adapters are small programs that convert the mutually agreed upon messages into API calls to existing or new backend applications. This layering technique isolates the exposed applications from partner applications and increases flexibility. Any changes to these exposed applications would only impact the adapter, provided there is no need to change the mutually agreed upon messages.

Message definition should be generalized to further promote flexibility. In other words, messages should not be tightly coupled with backend application APIs. Rather the message should capture all the necessary information required for that logical interaction across business boundaries. Such generalization will help cope with changes to the backend application API without having to change the agreed upon message format.


Benefits

It typically leverages the benefits of message-oriented middleware (MOM) such as guaranteed message delivery, transactional support, encryption, high performance and high availability.

Limitations

This pattern implements a direct connection between the Exposed and Partner application. Hence, it cannot be used for intelligent routing of requests, decomposition and re-composition of requests, and for invoking complex business process workflow as a result of a request from a partner application. Under such circumstances, you should consider a more advanced application pattern, such as Exposed Broker, Exposed Router or Exposed Serial Process.


Putting the application pattern to use

The following example uses REST architectural style:

The following example uses web services architectural style:

Message Connection variation

Message Connection variation application pattern
For a legend, please see above.

The Message Connection variation, shown above, applies to solutions where the business process does not require a response from the exposed target application within the scope of the interaction.


Business and IT Drivers

The business and IT driver for choosing the Message Connection variation of the Exposed Direct Connection application pattern is to:

The main driver for selecting this variation is when the business process has no interest in the result of the operation. This variation also has the most natural fit when message-oriented middleware is used, such as IBM WebSphere MQ.


Putting the application pattern to use

With the successful integration of their internal retail and wholesale systems, ITSO Electronics has now decided to integrate with their external business partners. The goal is to integrate the external resellers with the internal wholesale system. As with the internal retail system, orders placed by the external resellers will need to update the wholesale inventory system. To meet these requirements ITSO Electronics chooses the Exposed Direct Connection application pattern. In our scenario, external business partners of the ITSO Electronics organization need to notify the ITSO wholesale department to update their inventory records when a part needs to be ordered. The external business partners do not require any acknowledgement of the request. ITSO Electronics chooses the Message Connection variation of the Exposed Direct Connection application pattern to meet this requirement.

Call Connection variation

Call Connection variation application pattern
For a legend, please see above.

The Call Connection variation, shown above, applies to solutions where the business process depends on the exposed target application to process a request and return an response within the scope of the interaction.


Business and IT Drivers

The business and IT driver for choosing the Call Connection variation of the Exposed Direct Connection application pattern is to:

The main driver for selecting this variation is when the business process requires a result message in the interaction.


Putting the application pattern to use

The final stage of the scenario is addressing any out of stock situations with the external resellers. As with the internal retail system, the external resellers require an immediate notice on any out of stock situations and a delivery date indicating when the order can be filled. To meet these requirements, ITSO Electronics chooses the Call Connection variation of the Exposed Direct Connection application pattern.

Exposed Document Variation

The Exposed Document variation application pattern helps to structure the batched electronic exchange of data using mutually agreed message formats. It is a variation of the Exposed Direct Connection application pattern which also uses the Message Connection variation.


Business and IT Drivers

The business and IT drivers for choosing the Exposed Document variation application pattern are to:

The primary business driver for choosing this Application pattern is to increase the efficiency of interactions between enterprises. Instead of exchanging paper documents, this Application pattern can be used to send and receive documents electronically. This eliminates the need for error-prone manual re-entry of data. This is the ideal Application pattern to choose if your current business needs would be satisfied by the batched exchange of electronic documents. In other words, at present your business requirements don't call for direct invocation of a business partner's systems in a real-time fashion. Large organizations often require their business partners to exchange messages electronically. For example, they may mandate the use of Electronic Data Interchange (EDI) transaction sets for certain interactions such as placing an order. Use this pattern for simple document exchange given there is no need for mediation or integration with multiple back-end resources.


Solution

Select this Application pattern
Exposed Broker application pattern

For a legend, please see above.

This application pattern, as shown in the figure above, is divided into a number of logical components:

The communication between tiers is asynchronous and status/receipt messages are optional.

The partners use a mutually-agreed message format.


Guidelines for use

If you anticipate a need to support mediation or routing in the future, it might be better to select the Exposed Broker pattern.

The pattern may include basic partner management tools to support small partner communities.

The Exposed Documents patterns may be used to support basic access to a VAN (Value Added Network).


Benefits

This pattern is the simplest to implement and delivers a basic partner integration solution for small inter-enterprise solutions. It uses a simple protocol such as HTTP/S, FTP/FTPS.

Limitations

This pattern does not provide back-end application integration (no routing or transformation) or composition and decomposition of requests. It also comes with limited non-integrated system management and monitoring (largely manual reconciliation).


Putting the application pattern to use

Exposed Broker

The Exposed Broker application pattern shown below, is based on a M-to-N topology that separates distribution rules from the applications. It allows a single interaction from an enterprise's source application to be distributed to multiple target partner applications concurrently and vice-versa.

The Exposed Broker application pattern applies to solutions where the source application starts an interaction that is distributed to multiple target applications across organization boundaries. It separates the application logic from the distribution logic based on broker/mediation rules. The decomposition/ recomposition of the interaction is managed by the Broker Rules tier.

The Exposed Broker application pattern reuses the Exposed Direct Connection application pattern to provide connectivity between the tiers. The Broker Rules tier may support the Message variation or Call variation (or both variations) of the Exposed Direct Connection pattern.


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 partner applications or one partner application to interact with multiple exposed applications across organization boundaries. 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 (aka mediation) rules from individual source and target applications increases the maintainability and flexibility and reduces the enterprise wide integration complexity.

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

Select this Application pattern
Exposed Broker application pattern

For a legend, please see above.

This application pattern, as shown in the figure above, is divided into a number of logical components:


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 message to multiple target messages) 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. This is particularly important in an inter-enterprise solution.


Benefits

The benefits of this application pattern are:

Limitations

Logic must be implemented at the broker for routing and decomposition/ recomposition tasks.

Since the routing, transformation, etc. rules reside at (and all enterprise messages are handled at) the broker hub, the hub needs to be scalable to handle large volumes of messages. This could be managed via federated hubs.


Putting the application pattern to use

Exposed Router variation

The Exposed Router variation of the Exposed Broker application pattern, shown below, applies to solutions where the source application initiates an interaction that is forwarded to, at most, one of multiple target applications. The selection of the target application is controlled by the distribution rules that govern the execution of the connector component.


Business and IT Drivers

The requirements and their solution are less complex than those defined by the Exposed Broker application pattern in that decomposition of messages and transmission to multiple targets simultaneously is not required.

This pattern is also applicable to the 1:1 application integration scenario where source and target do not adhere to the same message and interface formats and therefore require a transformation service in the EAI Infrastructure.


Solution

Select this Application pattern
Exposed Router variation application pattern

For a legend, please see above.

This application pattern, as shown in the figure above, is divided into a number of logical components:


Guidelines for use

The guidelines for this application pattern are the same as those for the Exposed Broker application pattern.


Benefits

The benefits of this application pattern are:

Limitations

With the Exposed 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 it have decomposition / recomposition ability.


Benefits

ITSO Electronics consists of multiple Retail stores that order supplies from external Wholesale companies. The Retail stores have a need to request the delivery dates of those supplies before ordering. Currently there is no integration of the Retail and partner Wholesale applications. All interaction between the two are done over the phone or by mail. A solution must be found to allow the Retail stores to request delivery dates from the partner Wholesale companies. To eliminate the need for the Retail departments to know which Wholesale company carries which supplies, a Router is needed to take incoming requests and direct them based on part numbers to the Wholesale company that carries them.

Exposed Serial Process

The Exposed Serial Process application pattern, shown below, modifies the M:N topology provided by the Exposed Broker application pattern by facilitating the sequential execution of business services hosted by a number of target applications. It enables the orchestration of a serial business process across enterprise boundaries, in response to an interaction initiated by the source application.

This is one of the more complex of Extended Enterprise application patterns as well as the most frequently encountered patterns. It provides a partner management and mediation tier as part of the public process realization.

The Exposed Serial Process application pattern separates the process logic from the application logic that is distributed across organization boundaries. The process logic is governed by serial process rules that define execution rules for each target application, together with control flow and data flow rules. It may also include any necessary adapter rules.


Business and IT Drivers

The primary business driver for selecting this application pattern is to support the automated coordination of the business process flow between partners. From an IT perspective, the key driver for selecting this application pattern is to improve the flexibility and responsiveness of IT by externalizing the process flow logic from the application logic.

Business Drivers:

IT Drivers

All the business and IT drivers listed under the Exposed Broker application pattern apply here as well.


Solution

Select this Application pattern
Exposed Serial Process application pattern

For a legend, please see above.

The Exposed Serial Process application pattern is broken down into three logical tiers:


Guidelines for use

The flexibility and responsiveness provided by this application pattern heavily depend on the externalization of process execution logic from individual partner applications. Applications that are designed, based on a service-oriented architecture (SOA) approach, which have well-defined and coarsegrained business services that represent a unit of work, are better suited for participation in this application pattern. You must be able to compose these business services into an end-to-end process flow. A given service may need to participate in more than one end-to-end process.

Standards should be used where possible to minimize future changes required to the source and target applications. This is particularly important in an inter-enterprise solution.

Security is a primary concern when opening business processes to external organizations. The solution should include robust security mechanisms to protect resources.


Benefits

The Exposed Serial Process application pattern improves the flexibility and responsiveness of an organization. It does this by implementing end-to-end process flows across organization boundaries and by externalizing process logic from individual applications. In addition, it provides a foundation for automated support for Business Process Management that enables the monitoring and measurement of the effectiveness of business processes.

Limitations

There is no complex back-end application integration, no (content based) routing and/or mediation.

The composition/decomposition of requests is limited to transformation/translation specific events.

The public communication process support is basically limited to industry-driven B2B document and communication protocols (RosettaNet, ebMS, EDIINT etc.).


Putting the application pattern to use

With the successful integration of their internal retail and wholesale systems, ITSO Electronics has now decided to integrate with their external business partners. The goal is to integrate the external resellers with the internal wholesale systems. As with the internal retail system, orders are typically placed with Wholesaler A. However, when the Wholesaler A is unable to guarantee delivery within seven days, Wholesaler B is contacted to check the anticipated delivery date. Then, the order is placed with departments that guarantee the shortest delivery date.

To meet these business process automation requirements, ITSO Electronics chooses the Exposed Serial Process application pattern. The primary driver for this selection is the need for externalization of process logic from the business partner's application. This promotes flexibility and responsiveness to changing business needs.

Exposed Serial & Orchestrated Processes

This pattern provides a partner management and mediation tier as part of the public process realization as well as a private process tier to support long-running process-oriented requirements.


Business and IT Drivers

Business Drivers

IT Drivers

All the business and IT drivers listed under the Exposed Serial Process application pattern apply here as well.


Solution

Select this Application pattern
Exposed Serial Workflow variation application pattern

For a legend, please see above.

This is one of the more complex of the Extended Enterprise patterns as well as one of the most frequently encountered patterns.

The application is divided into logical tiers, Communication, Process and Application.

Communication is asynchronous between tiers and status/receipt messages are optional.


Guidelines for use

The Application pattern should support a variety of industry standards and protocols including XML, EDI, ebXML, and SOAP.

Router/Broker support is required for the mediation/routing.

This pattern requires Partner management to support trading partner (physical) communications.


Benefits

The Exposed Serial & Orchestrated Processes application pattern improves the flexibility and responsiveness of an organization. It implements end-to-end process flows across organization boundaries that externalize process logic from the individual application. Further flexibility is introduced by the externalization of task resource resolution rules.

In addition, it provides a foundation for automated support for Business Process Management. This enables monitoring and measurements of the effectiveness of business processes.

Limitations

This pattern may require customization of the B2B gateway and inter-enterprise integration tools.. It also may require additional development for human work-flow components. The Back-end application integration may increase in complexity. The pattern is limited to non-integrated system management and monitoring.


Putting the application pattern to use

A producer of computer parts wants to integrate with the supply chains of several PC manufacturers. This computer parts producer may have a large number of business processes controlling production, parts inventory management, procurement, and other critical activities that need to be integrated with the supply chain. They would recognize that this B2B integration requires more than simple application mapping. Long-running inter-business workflow must be managed and mapped into private processes. In order to meet these requirements they could choose the Exposed Serial & Orchestrated Processes application pattern.

Content navigation