Additional Integration Patterns

 

Retired Content

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

patterns & practices Developer Center

Integration Patterns

June 2004

Summary: This chapter presents two important patterns: Pipes and Filters and Gateway. This chapter explains both patterns and then traces them to implementations that use the Microsoft platform.

Contents

Pipes and Filters

Gateway

Additional Integration Patterns

This chapter completes this investigation of integration patterns by exploring the Pipes and Filters pattern and the Gateway pattern. Both patterns are simple but valuable for resolving integration problems.

Even though this chapter completes this discussion, you can obtain information about additional integration patterns in the Appendix.

Pipes and Filters

Pipes and Filters provides a solution for moving the output of one system into another system. The pipe is the portion of the code that is connected to the source system and to the sink or the receiving system. The filter is the portion of the code that transforms the data so that the sink program can process it.

This pattern is useful when you need to transform the data from one system into a different format to integrate that data into another system. A simple example is the conversion of data from ASCII to Extended Binary Coded Decimal Interchange Code (EBCDIC) that occurs when data moves from a desktop computer to a mainframe.

Figure 1 shows a source system integrated with a sink system. The source system uses multiple filters to transform the data to the format that the sink system requires.

Ff647960.f06intpatt01(en-us,PandP.10).gif

Figure 1. A source system integrated with the sink system through Pipes and Filters

In the Global Bank scenario, the Pipes and Filters pattern is used to handle the communication between Microsoft BizTalk Server 2004 and external payment channels.

Gateway

The Gateway pattern abstracts the access to an external system to a single interface. The pattern eliminates the need for multiple systems to understand how to connect to the external system. Therefore, the Gateway pattern simplifies the development and maintenance processes that are related to accessing external systems.

Common uses for the Gateway pattern include accessing mainframe programs and processing credit card transactions. For each of these common uses, the gateway replaces direct access to the external resource or system, as shown in Figure 2.

Ff647960.f06intpatt02(en-us,PandP.10).gif

Figure 2. Gateway replaces direct access to the external resource

In the Global Bank scenario, the Gateway pattern is implemented by using Microsoft Host Integration Server 2004. Host Integration Server 2004 provides the solution for integrating the mainframe to the enterprise.

Additional Integration Patterns

The following table summarizes the two patterns just discussed and shows the corresponding implementation patterns.

Table 1: Additional Integration Patterns

Pattern Problem Associated implementations
Gateway How can you make the applications of an integration solution access an external system without introducing many-to-one coupling between the applications and the external system? Implementing Gateway with Host Integration Server 2004
Pipes and Filters How do you implement a sequence of transformations so that you can combine and reuse them independently? Implementing Pipes and Filters with BizTalk Server 2004

Start | Previous | Next

patterns & practices Developer Center

Retired Content

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

© Microsoft Corporation. All rights reserved.