Export (0) Print
Expand All
0 out of 1 rated this helpful - Rate this topic

Applied Integration Baseline Reference Implementation

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.

 

Applied Integration Baseline Reference Implementation

patterns & practices Developer Center

patterns & practices Developer Center

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

August 2005

Summary

When an organization is developing enterprise applications, it's understandable to focus on the needs of the business unit that will use the solution. However, there is rarely appropriate attention given to how the application will integrate with the rest of the enterprise. Reusing common data and actions across the enterprise can result in substantial cost savings for the organization, but a solid integration strategy can be difficult to implement.

Before an organization begins an integration project, patterns should be used to establish a baseline of the intended enterprise architecture. Patterns are proven solutions to recurring problems and a baseline architecture is executable code that mitigates expected risk. Unlike a proof of concept, they serve as a foundation to build upon as the integration project is implemented.

Global Bank is fictitious organization with real-world integration challenges common to all industries—not just finance. This asset addresses these challenges by using a pattern-driven approach to create a baseline architecture for Global Bank. This is an implementation of the scenario and some of the patterns introduced in the Integration Patterns book. As a result, you'll find a lot of code, documentation, and a navigation tool that will help illustrate the concepts of a pattern-driven design and baseline architecture.

Note   The Applied Integration Baseline Reference Implementation was formerly known as Global Bank Integration (GBI).
Download
Webcast
Community
  • AIB on GotDotNet Community [Content link no longer available, original URL:http://practices.gotdotnet.com/projects/aib]
Feedback

Contents

What Is the Applied Integration Baseline?
Who Is the Applied Integration Baseline For?
What Is Included in the Download?
How Can I Use the Applied Integration Baseline?
What Are the Benefits of Creating a Baseline Architecture?
What Do I Need to Run the Sample Code?
Community
Feedback and Support
Authors and Contributors

What Is the Applied Integration Baseline?

The patterns & practices team have created a pre-packaged reference baseline architecture that provides a working skeleton of a connected system that exhibits a wide variety of design decisions. This reference implementation is a system of heterogeneous clients and servers that address a fictional integration scenario (Global Bank). The system can be understood using:

  • Full source code
  • Published patterns
  • Unit and acceptance tests
  • Animated diagrams

Who Is the Applied Integration Baseline For?

The Applied Integration Baseline is for enterprise architects and developers who:

  • Are moving from developing silo applications to connected systems.
  • Want more than abstract guidance and general principles.
  • Want to know how others have identified and solved the challenges particular to building a connected system.

What Is Included in the Download?

The download includes:

  • The Applied Integration Baseline documentation.
  • The source code for the Global Bank scenario.
  • The Narrator application, which provides several views into the running baseline system. These views include:
    • A system view. Shows how the steps in the use cases execute on different nodes in the network.
    • A services view. Shows the route the messages take between service endpoints as the use cases execute.
    • A pattern view. Shows the relationships between the different patterns that are implemented in the baseline architecture.
    • A security view. Shows the different trust zones that comprise the Global Bank application.

The Applied Integration Baseline documentation includes:

  • A detailed description of the Global Bank business problem, including significant use cases (Chapter One, "Integration and Patterns").
  • An account of the iterative design process that the team undertook in order to produce the baseline architecture (Chapter Two, "Using Patterns to Design the Baseline Architecture").
  • Three chapters describing the significant challenges that arise when integrating data, connecting systems, and designing an integration topology. These chapters show how you can use patterns to design and implement a baseline solution for connected systems that mitigates significant technical risk early in a project lifecycle (Chapter Three, "Integrating Layer"; Chapter Four, "System Connections"; Chapter Five, "Integration Topologies");
  • A catalog of integration patterns (Chapters Three, Four and Five).
  • A cookbook describing how the Global Bank team used Microsoft technologies to implement the patterns that comprise the baseline application (Chapter Six, "Building the Global Bank Portal Application"; Chapter Seven, "Building the Scheduled Payments Process").

The Applied Integration Baseline focuses on designing and implementing a baseline architecture that addresses significant technical integration challenges early in a project lifecycle. This reference implementation does not include guidance on instrumenting or managing connected systems, nor does it address wider governance issues associated with an integration scenario.

How Can I Use the Applied Integration Baseline?

If you are involved in an integration project, we strongly recommend that you identify and mitigate significant technical risks early in your project lifecycle by designing and implementing your own baseline architecture. As you do this, you should consider how others have built similar systems in the past. Patterns are a means of accessing other's experience as you design your own baseline. You can use the Applied Integration Baseline assets to:

  • See what a pattern-based design that addresses a specific scenario looks like.
  • See what a baseline architecture that addresses a specific scenario looks like.
  • Learn the patterns vocabulary that supports the approach adopted by the Global Bank team.
  • Identify and describe the challenges that you face when integrating data, connecting systems, and designing an integration topology.
  • Learn how to assemble various Microsoft server products to build a skeletal application.

The baseline source contains best practice implementations of the integration patterns described in the documentation. You can adopt and evolve these pattern implementations in your own baseline. With that said, this reference implementation is not intended to be used as a template for your architecture.

Later sections of this guide describe in more detail how you can achieve these goals using this assets.

What Are the Benefits of Creating a Baseline Architecture?

By developing your own executable baseline architecture early in the project lifecycle you will:

  • Identify significant technical risks.
  • Communicate, verify, and benefit from an executable form of your understanding of the business problem.
  • Increase your confidence that your significant use cases can be understood given your technical and non-technical constraints and quality of service goals.

An executable baseline architecture keeps the project's architecture from drifting during the development process by:

  • Providing developers with a constrained, but productive, environment to operate within as they evolve the code base into a fully featured application.
  • Validating the non-functional requirements early, reducing the likelihood of major architectural changes late in the project lifecycle.
  • Reducing ambiguity. Compared to detailed models and documents, an executable skeleton removes ambiguity at the implementation level. This ambiguity is often a root cause of drift during the project lifecycle.

What Do I Need to Run the Sample Code?

FeaturePrerequisites
Portal Web application
Narrator in standalone mode
Remote Data Center integration
Simulated HIS and CRM services and database
Windows Server 2003 or Windows XP Professional Service Pack 2
Internet Information Services (IIS)
Microsoft .NET Framework version 2.0
Microsoft Visual Studio .NET 2005
ASP.NET 2.0
Connect Narrator to running systemMicrosoft Message Queuing (also known as MSMQ)
Payments databaseMicrosoft SQL Server 2000
Partner Integration and Partner Integration Message BrokerWindows Server 2003
Internet Information Services (IIS)
Microsoft .NET Framework version 1.1
Microsoft Visual Studio .NET 2003
ASP.NET 1.1
Microsoft SQL Server 2000
ADAM Security Schema UpdatesWindows Server 2003
Active Directory Application Mode

Community

This Reference Implementation, like other patterns & practices deliverables, is associated with a community site [Content link no longer available, original URL:http://practices.gotdotnet.com/projects/aib]. On this community site, you can post questions, provide feedback, or connect with other users for sharing ideas. Community members can also help Microsoft plan and test future application blocks, and download additional content such as extensions and training materials.

Feedback and Support

Questions? Comments? Suggestions? To provide feedback about this reference implementation, or to get help with any problems, please see the AIB Community [Content link no longer available, original URL:http://practices.gotdotnet.com/projects/aib] site. The community site is the preferred feedback and support channel as it allows you to share your ideas, questions, and solutions with the entire community. Alternatively, you can send e-mail directly to the Microsoft patterns & practices team at devfdbck@microsoft.com, although we are unable to respond to every message.

The Applied Integration Baseline is a guidance offering, designed as an instrument for learning. It is not a Microsoft product. Code-based guidance is shipped "as is" and without warranties. Customers can obtain support through Microsoft Support Services for a fee, but the code is considered user-written by Microsoft support staff.

Authors and Contributors

Applied Integration Baseline Reference Implementation

Thanks to the principal authors: David Trowbridge, Jonathan Wanagel, Faisal Mohamood, Ulrich Roxburgh, Microsoft Corporation; Ian Robinson, Thoughtworks, Inc.; Darren Simmonds, Jim Morris, Sam Hughes, Ascentium Corporation.

Thanks to the following contributing author: Roberta Leibovitz, Modeled Computation, LLC.

Many thanks to the following reviewers who provided invaluable assistance and feedback: David Pallman, Wayne Clark, Kannan Iyer, Suri Narayanan, Darrell Snow, Microsoft Corporation.

Thanks also to the many contributors who assisted us in the production of this book, in particular: Ward Cunningham, Larry Brader, RoAnn Corbisier, Ed Lafferty, Per Vonge Nielsen, Microsoft Platform Architecture Guidance; Tim Osborn, Blaine Wastell, Bill McDonald, Ascentium Corporation; Manivasagam Sundaravelayutham, Saravanan Marappan, Narayanan Ramamurthy, Gokulaprakash Thilagar, Deiva Shankar Uthaya Sankaralingam, Ravi Prasad, Chandra Shekar Jatamoni, InfoSys Technologies Ltd.; Tina Burden McGrayne, Linda Werner & Associates, Inc.; Pete Coupland, VMC Consulting; Claudette Siroky, CI Design Studio.

The Integration Patterns Guide

Thanks to the principal authors: David Trowbridge and Ulrich Roxburgh, Microsoft Corporation; Gregor Hohpe and Dragos A. Manolescu, Thoughtworks, Inc.; E. G. Nadhan, EDS.

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.

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.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.