Presentation is loading. Please wait.

Presentation is loading. Please wait.

Integration Patterns Overview Christopher Baldwin Architect Microsoft EMEA

Similar presentations


Presentation on theme: "Integration Patterns Overview Christopher Baldwin Architect Microsoft EMEA"— Presentation transcript:

1 Integration Patterns Overview Christopher Baldwin Architect Microsoft EMEA cbaldwin@microsoft.com

2 Agenda  Overview of Microsoft patterns & practices  Integration patterns  Pattern based design example

3 Patterns & Practices Reference Architectures Building Blocks Lifecycle Guidance Guidance for tasks such as deployment and operations in a production environment Enterprise Solution Patterns DADI A D I DADI A D I Atomic solutions to recurring problems Sub-system-level guidance for common services System-level guidance for common customer scenarios DADI A D I

4 Scenarios Baseline Architectures (aka Skeletal Apps) Patterns and Reference Model Block Library Compositions of pattern implementations that meet requirements of scenarios Pattern implementations include blocks and tool-generated code Architecture Scenarios Ex. clients submitting one-way service requests via message queues, SOAP message, transaction spanning message queue and business action, … Tools Pattern selection Patten implementation Block inclusion Code generation Configuration Selected patterns of distributed applications Meaningful pattern compositions A library of configurable, generally applicable blocks Blocks or block compositions may implement patterns, but they don’t imply patterns directly AbstractCode-based

5 Patterns Traceable Down to Bits Pattern Implementations, Blocks, Frameworks & Logical Servers Pattern Set Patterns Bound to Platform Bits & Hardware

6 Enterprise Architecture - Patterns Business Architecture Integration Architecture Application Architecture Application Architecture Operational Architecture Development Architecture Integration Architecture Integration Architecture Architecture Design Implementation DatabaseApplication DeploymentInfrastructure Enterprise Solution Patterns Architecture Design Implementation DatabaseApplication DeploymentInfrastructure Enterprise Integration Patterns

7 Agenda  Overview of Microsoft patterns & practices  Integration patterns  Pattern based design example

8 Integration Patterns Book Available to download from http://msdn.microsoft.com/patterns

9 Patterns are  Guidance  Conceptual, platform independent  Textual  At minimum, cover  Context  Problem  Forces  Solution  Separate Implementation Pattern

10 Integration Patterns Integrating Layer System Connections Integration Topologies

11 Integration Patterns  Intent of Integration  Unified data access  Streamlined business process  Consolidated view of systems  How to Connect  Via the database  Via the business logic layer  Via the user interface  How to Interconnect  Through a central “hub”  Open communication  One-to-many communication  Integrating Layer  Entity Aggregation  Process Integration  Portal Integration  System Connection  Data Integration  Function Integration  Presentation Integration  Integration Topologies  Message Broker  Message Bus  Publish-Subscribe

12 Integrating Layer

13 Portal Integration  How can users efficiently perform tasks that require access to information that resides in multiple disparate systems?  Create a Portal Application that displays the information retrieved from multiple applications in a unified user interface

14 Entity Integration  How can enterprise data that is redundantly distributed across multiple repositories be effectively maintained by applications?  Introduce an Entity Aggregation layer that provides a logical representation of the entities at an enterprise level with physical connections that support access to the back-end repositories

15 Process Integration  How do you coordinate the execution of a long-running business function that spans multiple disparate applications?  Define a business process model that describes the individual steps that make up the complex business function; Create a separate process manager component that can interpret multiple concurrent instances of this model and that can interact with the existing applications

16 Integration Patterns Integrating Layer System Connections Integration Topologies

17 System Connections

18 Integration Topologies

19 Additional Integration Patterns

20 Agenda  Overview of Microsoft patterns & practices  Integration patterns  Pattern based design example

21 Team Scenario? Integrating Layer System Connections Integration Topologies

22 Pattern based design – team scenario  Global Bank  Mid-sized bank  Grown through acquisition  Limited and disparate online presence  Online initiative  Electronic Bill Presentment and Payment (EBPP)  Trace use of patterns throughout design  Build full baseline architecture  Discuss via the Artefacts created

23 Business Scenario: Convergence “In the Convergence pattern, competitors from previously distinct industries start competing to satisfy the requirements of a specific customer set. There are three distinct flavors of this pattern: product, in which product boundaries blur; supplier, in which suppliers become ‘one stop shops’; and complementor, in which companies combine to deliver greater value” - Profit Patterns, Adrian J. Slywotsky

24 CEO’s view – High level enterprise Arch

25 GM of Banking – EBPP view

26 EBPP Director – HL Processes view

27 EBPP Major Use Cases

28

29

30 Layers?

31 SOI?

32 Implementing Service Oriented Integration  How do you integrate information systems that were not designed to work together?  Coupling affects interoperability  Divergence in platform type systems and data structures  Machine boundaries are important  Design systems to produce and consume XML-based Web Services.  Comply with industry standards, specifically WS-I

33 Implementing Service Oriented Integration Using ASP.NET WSDL Schema Web Method Using BizTalk

34

35 [STAThread] static void Main(string[] args) { Gateway.Gateway gateway = new Gateway.Gateway(); Gateway.GetAccountInfoRequest request = new Gateway.GetAccountInfoRequest(); request.AccountID = "123"; try { Gateway.GetAccountInfoResponse response = gateway.GetAccountInfo(request); System.Console.WriteLine("{0} {1} {2}", response.AccountID, response.Name, response.Balance); } catch (SoapException se) { Console.WriteLine(se.Message); } System.Console.ReadLine(); } [STAThread] static void Main(string[] args) { Gateway.Gateway gateway = new Gateway.Gateway(); Gateway.GetAccountInfoRequest request = new Gateway.GetAccountInfoRequest(); request.AccountID = "123"; try { Gateway.GetAccountInfoResponse response = gateway.GetAccountInfo(request); System.Console.WriteLine("{0} {1} {2}", response.AccountID, response.Name, response.Balance); } catch (SoapException se) { Console.WriteLine(se.Message); } System.Console.ReadLine(); } - - Consumer Message Schema [WebMethod] [SoapDocumentMethod(ParameterStyle=SoapParameterStyle.Bare)] public GetAccountInfoResponse GetAccountInfo( [XmlElement("GetAccountInfoRequest")] GetAccountInfoRequest getAccountInfoRequest) { CedarBank.ICedarBank bank = CedarBankPlugInFactory.GetCedarBankImpl(); CedarBank.AccountInfo cedarAccountInfo = bank.GetAccountInfo(getAccountInfoRequest.AccountID); return BuildAccountInfo(getAccountInfoRequest, cedarAccountInfo); } [WebMethod] [SoapDocumentMethod(ParameterStyle=SoapParameterStyle.Bare)] public GetAccountInfoResponse GetAccountInfo( [XmlElement("GetAccountInfoRequest")] GetAccountInfoRequest getAccountInfoRequest) { CedarBank.ICedarBank bank = CedarBankPlugInFactory.GetCedarBankImpl(); CedarBank.AccountInfo cedarAccountInfo = bank.GetAccountInfo(getAccountInfoRequest.AccountID); return BuildAccountInfo(getAccountInfoRequest, cedarAccountInfo); } Provider

36 How is this Description of SOI Different?  Fits in with all integration alternatives.  Written in the context of higher and lower level decisions.  Written with separation of conceptual and implementation.

37 Baseline? Early Conversation

38 Baseline Architecture from Patterns Technology?

39 Baseline Implementation from Patterns Deployment?

40 Baseline Infrastructure from Implementation Agile?

41 Agenda Review  Overview of Microsoft patterns & practices  Integration patterns  Pattern based design example


Download ppt "Integration Patterns Overview Christopher Baldwin Architect Microsoft EMEA"

Similar presentations


Ads by Google