Share via


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

patterns & practices Developer Center

Shop for patterns and practices books online [Content link no longer available, original URL:http://shop.microsoft.com/practices]

Principal Authors: David Trowbridge, Microsoft Platform Architecture Guidance; Ulrich Roxburgh, Microsoft Service Line Architect (Australia); Gregor Hohpe, Dragos Manolescu, ThoughtWorks, Inc.; E. G. Nadhan, EDS.

Contributing Authors: Ward Cunningham, Microsoft Platform Architecture Guidance; Ramkumar Kothandaraman, Microsoft Developer and Platform Evangelism Architecture Strategy Team; Bill McDonald, Robert Miles, Ascentium Corporation; Javier Mariscal, Two Connect, Inc.; Raymond Laghaeian, Implement.Com.

Microsoft Corporation

June 2004

Summary

Integration Patterns explains how patterns were used to design and build an integration architecture within a representative customer scenario. The guide includes a catalog of 18 common integration patterns including implementations that use the Microsoft platform.

Download
Webcast
Feedback

Contents

Introduction
Who Should Read This Guide
What Is in This Guide
Feedback and SupportContributors

Introduction

This guide is the third patterns release in the pattern & practices series from Microsoft. Building on the application patterns presented in Enterprise Solution Patterns Using Microsoft .NET, this guide applies patterns to solve integration problems within the enterprise.

The design concepts in this guide include implementations on the Microsoft platform that use BizTalk Server 2004, Host Integration Server 2004, ASP.NET, Visual Studio, Visio 2003 and the .NET Framework.

The scenario is an online bill payment application in the banking industry. To meet the needs of this scenario, the team used a pattern-based approach to build and validate a baseline architecture. Because a well-designed architecture must be traceable to the needs of the business, the guide also includes a set of artifacts that trace from high-level business processes down to code.

Who Should Read This Guide

This guide is for readers in one or more of the following categories:

  • Chief technology officers, architects, designers, and developers who are new to integration patterns
  • Chief technology officers, architects, designers and developers who are already experienced in using integration patterns to integrate enterprise solutions
  • Chief information officers and IT managers responsible for integrating multiple systems

What Is in This Guide

Chapter 1: Integration and Patterns

This chapter introduces the Global Bank scenario that is used throughout this guide and briefly discusses how patterns can help development teams find workable answers to integration challenges.

Chapter 2: Using Patterns to Design the Integration Baseline Architecture

This chapter uses the language of patterns to explore the decisions and tradeoffs that the members of the Global Bank architecture team made while designing and implementing their bill payment system.

Chapter 3: Integrating Layer

This chapter describes the different strategies for designing an integration layer and the tradeoffs involved in choosing an alternative. An integration layer can automate complex business processes or provide unified access to information that is scattered across many systems.

This chapter includes the following patterns:

Chapter 4: System Connections

This chapter builds on Chapter 3 by describing how to connect individual systems. Each system allows certain types of access and restricts others. This chapter presents a series of related patterns that will help you analyze the alternative methods and the tradeoffs to consider when you choose your system connections.

This chapter includes the following patterns:

Chapter 5: Integration Topologies

This chapter builds on previous chapters by describing overall integration topologies. This chapter presents a series of related patterns that help you analyze the alternative methods and the tradeoffs to consider when you choose between integration topology alternatives.

This chapter includes the following patterns:

Chapter 6: Additional Integration Patterns

This chapter presents two important patterns: Pipes and Filters and Gateway. Many integration architectures are based on a pipe and filter approach and on gateways. Gateways are useful design elements that encapsulate access to enterprise resources such as mainframes. This chapter explains both patterns and then traces them to implementations that use the Microsoft platform.

This chapter includes the following patterns:

Chapter 7: Project Notebook

This chapter takes a broader view of the Global Bank scenario by showing the link between business and technology viewpoints. It starts with an overview of the Global Bank business environment, and then describes the viewpoints of five key business stakeholders. The chapter then presents a series of models that the Global Bank team produced as they designed the baseline architecture based on business requirements. These models trace a path from the Chief Executive Officer to the technical solution and show how the team used patterns during the design process.

Appendix: List of Patterns and Pattlets

Appendix, "List of Patterns and Pattlets," presents a list of patterns and pattlets that this guide mentions, but that it does not discuss in detail. Pattlets are actual patterns that this book refers to; however, the book does not discuss them in detail.

Bibliography

Feedback and Support

The patterns documented here are designed to jump-start the architecture and design of systems integration. Patterns are simple mechanisms that are meant to be applied to the problem at hand and are usually combined with other patterns. They are not meant to be plugged into an application. Example code is provided "as is" and is not intended for production use. It is only intended to illustrate the pattern, and therefore does not include extra code such as exception handling, logging, security, and validation. Although this deliverable has undergone testing and review by industry luminaries it is not supported like a traditional Microsoft product.

Contributors

Thanks to the following contributing authors: Ward Cunningham, Microsoft Platform Architecture Guidance; Ramkumar Kothandaraman, Microsoft Developer and Platform Evangelism Architecture Strategy Team; Bill Mc Donald, Robert Miles, Ascentium Corporation; Javier Mariscal, Two Connect, Inc.; Raymond Laghaeian, Implement.Com.

Many thanks to the following reviewers who provided invaluable assistance and feedback: John Sullivan, Thoughtworks; Ralph Johnson, University of Illinois at Urbana-Champaign; Eddie Hulme, EDS; Dave Swift, Chief Architect, Zurich Financial Services; Rupert D.E. Brown, CTO Team Reuters; United Kingdom Architect Council – Patterns Working Group; Richard Sears, Sears and Associates; Colin Bird, Conchango plc; Michael Platt, Scott Woodgate, Satish Thatte, Phil Teale, Alex Weinert, Marc Levy, Ulrich Homann, Dave Green, Paul Larsen, Jack Greenfield, Keith Short, David Lavigne, Chris Houser, Anil Balakrishnan, Shawn Henretty, Doug Carrell, Joe Sharp, Miles Ulrich, Steve Smaller, Shanku Niyogi, Wojtek Kozaczynski, Jonathan Wanagel, Jason Hogg, Jim Newkirk, Ed Lafferty, Sandy Khaund, Ken Perilman, Mauro Regio, Microsoft Corporation.

Thanks also to the many contributors who assisted us in the production of this book, in particular: Matt Evans, Larry Brader, Microsoft Platform Architecture Guidance; Abhijit Somalwar, Jude Yuvaraj, Anuradha Sathyanarayana, Infosys Technologies Ltd; Tyson Nevil, Susan Filkins, Entirenet; Claudette Iebbiano, CI Design Studio; Sanjeev Garg, Satyam Computer Services; Blaine Wastell, Ascentium Corporation

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.