Download presentation
Presentation is loading. Please wait.
Published byMargaret York Modified over 8 years ago
1
Implementing The SOA Reference Model An ESB Developer’s Perspective David Millman Principal Architect 9/8/2008
2
© 2008 Progress Software Corporation2 Agenda The Relevant Model Components The Problem Solving the Problem Summary Implementing the SOA Reference Model
3
© 2008 Progress Software Corporation3 The Reference Model Visibility & Control Infrastructure Services Connection & Data Services Business Services Composition/Mediation Services Presentation/Consumer
4
© 2008 Progress Software Corporation4 The ESB Developer’s Perspective What We are Going to Concentrate On Connection & Data Services Business Services Composition/Mediation Services
5
© 2008 Progress Software Corporation5 Agenda The Relevant Model Components The Problem Solving the Problem Summary Implementing the SOA Reference Model
6
© 2008 Progress Software Corporation6 Sample Problem (From Cookbook) One Telco Many Different Customers CSR Customer is stored based on line of business No consolidated view of a single customer Cell Internet Home TV ESB
7
© 2008 Progress Software Corporation7 Using the Reference Model to Define the Structure of the Solution CSR
8
© 2008 Progress Software Corporation8 Agenda The Relevant Model Components The Problem Solving the Problem Summary Implementing the SOA Reference Model
9
© 2008 Progress Software Corporation9 Goal of the Implementation Breaking down the problem into manageable units Allowing each unit to be extended and reused in multiple contexts Time boxed to allow known deliverables and timeframes Therefore: consistent scoping and tasking of SOA project Providing support for top-down and bottom-up approaches Each layer defines a known set of deliverables Repeatable Pattern for Development and Reuse
10
© 2008 Progress Software Corporation10 Agenda The Relevant Model Components The Problem Solving the Problem Business Services Composition/Mediation Services Connection Services Summary Implementing the SOA Reference Model
11
© 2008 Progress Software Corporation11 What is a business Service? Use Case Diagrams Used to define operations of a specific actor or set of actors Business Level Components
12
© 2008 Progress Software Corporation12 Business Service, Who is Interested? Business Process Analyst/ Developer
13
© 2008 Progress Software Corporation13 Business Analyst/Developer Business view of the world Actors and use-cases Understands High level Requests/Responses May understand presentation technologies Understands concepts of ESB Implement ESB Processes for prototyping –E,g prototype/transformation service for top down development Minimal understanding of the IT Landscape
14
© 2008 Progress Software Corporation14 Reference Model Use-Case Implementation Project based on Actor Provides a single view of all the Actor’s logic Each use-case becomes an ESB Process named such as: Actor.CSR.ViewCustomerProfile Actor.CSR. ViewAllCustomersAccounts Actor.CSR.UpdateAnAccount Web-Service Implementation may invoke logical process Actor.CSR.ViewCustomerProfile.WS Initially implemented using the Prototype service and then replaced with actual implementation (invocation to Mediation process)
15
© 2008 Progress Software Corporation15 ESB Process Deliverable : Phase 1 Prototype service, Transformation service used to generate default response
16
© 2008 Progress Software Corporation16 ESB Process Deliverable : When Mediation Layer Defined Implement as Dynamic Transformation for a defined target using DXSI Implement as callout to Mediation Service(s) that are required to fulfill operation
17
© 2008 Progress Software Corporation17 Visibility & Control Infrastructure Services Connection & Data Services Business Services Composition/Mediation Services Presentation/Consumer What about Presentation? Presentation layer is consumer/customer of Business Services Multiple consumers may access business services e.g. Web-Service/ Portal/JMS
18
© 2008 Progress Software Corporation18 Understands how the use-cases will be consumed in the real world How to expose the service as web-service to portal etc. CSR View/Update Customer Web-Service Positioning Business Services for a Consumer Portal
19
© 2008 Progress Software Corporation19 Web Service Invocation WS Directory contains Web- Service Configuration (including required unwrap and wrap definitions) Process is named the same as the use case but has.WS suffix to denote web-service based process Web Service implementation with appropriate unwrap and wrap invoking the underlying ESB Process
20
© 2008 Progress Software Corporation20 Portal or Presentation Based Project Presentation based technology project This defines how the ESB interacts with the portal or similar, mapping requests into formats that are required by the lower layers Process invokes business process with the appropriate transformations etc on either side of the invocation.
21
© 2008 Progress Software Corporation21 Agenda The Relevant Model Components The Problem Solving the Problem Business Services Composition/Mediation Services Connection Services Summary Implementing the SOA Reference Model
22
© 2008 Progress Software Corporation22 Who is Required to Implement the Solution SOA Foundation Services Leader/ Application Service Implementer
23
© 2008 Progress Software Corporation23 SOA Architect/Developers Understands how many services work together and the various technologies Deployment –Geography/Network Optimizations and Design Tradeoffs –Code – ESB Processes – BPEL Interfaces that are to be implemented (Business/Design and Connect) Issues of using multiple technologies/Data sources –e.g.Master Name Management
24
© 2008 Progress Software Corporation24 Reference Model to UML Provides a single set of services that can be reused by Mediation essentially are components based around virtual entities and integration patterns Mediation Level Components
25
© 2008 Progress Software Corporation25 Mediation Implementation Project Based on Entity Six projects for previous diagram Each Entity and Operation becomes and ESB process: Entity.Customer.viewAllAccounts Entity.Accounts.getAllAccountInformation Entity.CellAccount.getAccountInformation Entity.InternetAccount.getAccountInformation Entity.HomePhoneAccount.getAccountInformation Entity.TVAccount.getAccountInformation
26
© 2008 Progress Software Corporation26 Mediation Implementation Single Entity e.g. Cell Account may provide Aggregation of multiple back end systems Expectation to work using Canonical Data Model Entity Collection e.g. All Accounts Implement the following Patterns –Splitter/Router –Aggregator e.g. getAllAccountInformation –Master Name Management? Canonical Model enforced at boundaries
27
© 2008 Progress Software Corporation27 Entity.Accounts.getAllAccountInformation Version 1 : Top Down Implementation Generate Appropriate Response for the request (No other services invoked)
28
© 2008 Progress Software Corporation28 Entity.Accounts.getAllAccountInformation Version 2 : Implementation calling appropriate Entity Operations Split join service used to invoke operations on individual account objects
29
© 2008 Progress Software Corporation29 Agenda The Relevant Model Components The Problem Solving the Problem Business Services Composition/Mediation Services Connection Services Summary Implementing the SOA Reference Model
30
© 2008 Progress Software Corporation30 Who is Required to Implement the Solution? Connect- Integration Expert e.g. DBA, SAP Develop
31
© 2008 Progress Software Corporation31 Connection Developer High understanding of back-end technology E.g. DBA Understands required components of ESB i.e ESB Processes, Connection Services Not Distribution, Federation and Deployment One is typically required for each back-end technology/implementation i.e. 4 required for previous picture
32
© 2008 Progress Software Corporation32 Physical Connection to UML Provides virtualized connection from the ESB to implementation technology Allows back systems to be seamlessly integrated into Mediation level Connection Level Components
33
© 2008 Progress Software Corporation33 Physical Connection Project All Appropriate connection instances e.g. Connection Service Definition defined in deploy directory, making the project complete Top level process can be used to invoke one or more versions to allow concurrent database schemas etc Versions defined under main method directory
34
© 2008 Progress Software Corporation34 Connection Implementation Single Project per backend Technology May also implement Logical Connection Each operation on the main class becomes an ESB Process e.g. Connection.DB.CellPhoneAccountsDB.getAcc ountDataForMonth Provides the ability to migrate to different versions of the implementation technology Can provide logical interface to required components
35
© 2008 Progress Software Corporation35 Agenda The Relevant Model Components Solving the Problem the required personnel Solving the Problem the approach Summary Implementing the SOA Reference Model
36
© 2008 Progress Software Corporation36 From RM – VRM Connection Svcs to enable reference data changes to be propagated as events on the ESB
37
© 2008 Progress Software Corporation37 From RM – VRM Mediation layer routes the events to the event consuming svcs and may transform the data/interaction model
38
© 2008 Progress Software Corporation38 From RM – VRM Connection Service allows pipeline apps to access cached information Connection Svc provide pipeline events to ESB
39
© 2008 Progress Software Corporation39 From RM – VRM Mediation services route and transform events to the consumer
40
© 2008 Progress Software Corporation40 From RM – VRM Connection svcs to enable Events to be consumed
41
© 2008 Progress Software Corporation41 From RM – VRM Visibility and Control of Pipeline
42
© 2008 Progress Software Corporation42 What We Have Learnt Reference Model, supports Reference Model to UML –Provides a common mapping from UML to Reference Model Defined Components –Each level defines a set of components that are required. Top Down and Bottom Up –Concurrent implementation is possible Defined naming to provide ordering in tools and search tools
43
© 2008 Progress Software Corporation43 Conclusion Reference Model provides Scoping of required Personnel –Training and knowledge requirements Formal structure for deliverables –Provides defined scoping and management Repeatable solutions ESB Provides As ESB provides the ability to cheaply connect services together e.g. Process Invocation and Intra-Container messaging it is possible to define a solution that is componentized and also performant.
44
© 2008 Progress Software Corporation44 Questions ?
45
© 2008 Progress Software Corporation45 Thank You
46
© 2008 Progress Software Corporation46
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.