ESB Overview

20,365 views

Published on

Enterprise Service Bus overview for those who are interested in integration solutions.
It was prepared and presented in ITS-GBS Cairo office Jan. 2011

Published in: Technology, Business
32 Comments
57 Likes
Statistics
Notes
No Downloads
Views
Total views
20,365
On SlideShare
0
From Embeds
0
Number of Embeds
99
Actions
Shares
0
Downloads
0
Comments
32
Likes
57
Embeds 0
No embeds

No notes for slide

ESB Overview

  1. 1. Knowledge Transfer ESB OverviewBahaa FaroukSenior Software Developer
  2. 2. Agenda ۞ SOA Overview ۞ Integration Challenge ۞ Setting up the Terminology ۞ Introduction to Enterprise Service Bus ۞ ESB Providers ۞ Oracle Service Bus OSB2
  3. 3. The basics: What is SOA? … service orientation? … a service? A repeatable business A way of integrating task – e.g., create new your business as subscriber, giving linked services privilege …etc and the outcomes that they bring … service oriented … a composite architecture (SOA)? application? An IT architectural A set of related & style that supports integrated services that integrating your support a business business as linked process built on an SOA services "Anything that changes can do that much better if the system is architected in SOA.”3
  4. 4. SOA Entry Points (Business and IT Focused) What is it? Value Improved productivity and flexibility by enabling Deliver role-based interaction and targeted user interactions for improved business People collaboration through services operations and collaboration Achieve business process innovation Greater innovation and flexibility through treating tasks as modular through faster deployment and Process services modification of business processes Provide trusted information in Better business operations, more informed business context by treating it as a decisions and reduced risk with informationInformation service delivered in-line and in-context Service-enable existing assets and Lower risk and faster time to market fill portfolio gaps with new reusable by leveraging proven, time-tested functionality Reuse services Connect systems, users, and Reduced maintenance costs andConnectivity business channels based on open greater reliability and consistency standards through flexible, any-to-any linkages
  5. 5. SOA Reference Architecture Business Services Supports enterprise business process and goals through businesses functional service Interaction Services Process Services Information Services Enables collaboration Orchestrate and Manages diverse data between people, processes automate business and content in a unified Development & information processes manner Management Services Services Integrated Manage and environment Enterprise Service Bus Service Registry secure for design and services, appli creation of cations & solution assets Info Assets Partner Services Business App Services Access Services resources Apps & Connect with trading partners Build on a Facilitate interactions robust, scaleable, and with existing information secure services and application assets environment Infrastructure Services Optimizes throughput, availability and utilization5 5
  6. 6. SOA and ESB To reach the full potential of SOA, should be treated as an evolving project The use of an Enterprise Service Bus (ESB) is step one of the main five steps to realize the full potential of SOA.  The Culture shift  Utilizing Enterprise Service Bus (ESB)  Adoption for (XML)  Business process Management (BPM)  Decouple the business process for the applications layer6
  7. 7. SOA with ESB Shrinks the interfaces further Turn this… …into this. Service Service Service Service Service Service Service Service Interface Interface Interface Enterprise Service Bus Interface Interface Interface Interface Service Service Service Service Service Service Service Service Decouples the point-to-point connections from the interfaces Allows for dynamic selection, substitution, and matching Enables more flexible coupling and decoupling of the applications Enables you to find both the applications and the interfaces for re-useRESULT >> Greater Business Responsiveness7
  8. 8. Agenda ۞ SOA Overview ۞ Integration Challenge ۞ Setting up the Terminology ۞ Introduction to Enterprise Service Bus ۞ ESB Providers ۞ Oracle Service Bus OSB8
  9. 9. Inflexible Integration Impacts Responsiveness & Costs “…Integration typically consumes 35% of the cost and effort of an application solution.” (in: The Importance of ROI in Business Integration Projects) “About 35% of an enterprise’s software maintenance budget is spent on maintaining the multitude of point-to-point application links already in place.”9
  10. 10. The Cost of Integration is a Major Factor of IT Budgetsand Seriously Limits the Ability to Innovate “In 2005, 76% of IT budgets where spent on maintenance, leaving only 24% for new investments.” Source: Forrester Research “Integration remains the number one IT priority; fully 60-70% of IT budgets are dedicated to it.” Source: Web Services Journal “According to analysts, over 70% of the IT budget is being spent on overcoming the limitation of current systems, while less than 30% is spent on acquiring new capabilities that can provide a competitive edge to the business.” Source: IBM Research “Various surveys tell us that the typical enterprise is devoting over 80% of its applications budget to simply supporting normal business because of the complexity of making change.” Source: CBDI The Business Case for SOA10
  11. 11. Actual Customer Mainframe apps - Blue PC/NT apps - Green DRAFT Best Buy - Application Diagram V4 DRAFT Page 1 of 2 Unix apps - Yellow Vendor Setup November 10, 1999 Depository Banks 3rd party interface - Orange Lines: Colors have no special meaning. Vendor They are to help make the diagram easier to Process Servers I17 Customer Perceived Budget Maintenance UAR - Universal Account read. (Imaging) NEW Soundscan Sterling VAN In-Stock For More Information: See the database Analysis Tool Mesa Data NPD Group Roadshow Mailbox (Value) Reconcilliation Printer S20-Sales AIG Warranty Guard containing information about each Maintenance application: Application V4.mdb Polling I13- Auto I15 Hand Scan I06 - Customer Replenishment Apps Printer PO Order Insertions S01 - Sales AIS Reports Orders AIS Calendar Corrections Due Dates Print Costing I06 Warehouse General Invoice App Management Stores & Mrkts Broadcast Maintenance E13 Filter E3 Interface Fringe PO Smart Plus Smart Plus M03 - Millennuim 3.0 Launcher S04 - Sales Posting S07 - Cell P16 - Tally Sheet Phones I03 Return to M02 - Millennium D01 Post Load Vendor S06 - Credit App Billing Equifax Stock Options I12 Entertainment S09 - Digital P15 EES Employee Software Satellite L02-Resource Change Notice A04 - Cust System Scheduling L01-Promo Refund Chks E01-EDI 1 Analysis (Campbell) P14 On-line New Hire Entry AAS V02-Price Resumix P01- Marketing Employee Washington, Support Masterfile RGIS, Ntl Bus Systems P09 - P17 Cobra Frick S11 - ISP Cyborg CTO2.Bestbuy. CTS Co I10 Cycle Physical Tracking com I04 Home Inventory ACH Deliveries V04-Sign Prodigy System U18 - CTO Banks - ACH and Pos to I02 - POS X92-X96 Pay Transfers Host to AS400 Plan Administrators Communication (401K, PCS, Life, Spec Source B01 - Stock Unicare, Solomon SKU Tracking Status I11 Price Smith Barney) I09 Cycle Counts Testing Supplier S08 - Vertex Intercept NPD, S02 - Compliance Sales E02-Employee SoundScan Layaways Tax Purchase Spec I01 PO Source SKU Scorecard - HR Receiving V03- Mkt Performance Reactions L60 MDF P09 Coop S03-Polling V01-Price Management I05 SKU Selection Bonus/HR System Inventory Info Tool I35 - CEI K02 ASIS Customer Repair Arthur Planning I35 Early Warning Tracking I18 System Rebate SKU Rep Transfer I55 SKU I07 Purchase Store Information Order ELT Ad Expense Monitor PowerSuite G02 - General Ledger Store Scorecard Texlon 3.5 Sign System NARM I14 Count Corrections Store Budget Reporting Valley Media U16-Texlon B02 Merchandise CopyWriters Analysis BMP - Bus Workspace performance Mngt EDI Coordinator Merch Mngr Approval Batch Forcasting AIMS Journal Entry Tool Kit Ad Measurement A05 - AP AIMS Admin Cellular INVENTORY CONTROL APPS - PC INVENTORY CONTROL APPS - PC ACCTS REC APPS - PC Code Alarm DPI/CPI 990COR AIMS Rollover OTHER APPS - PC Debit Receivings IC Batching Bad Debt Ad Reporting S05 - House AP - Collections/Credit Devo Sales Inventory Adj/Count Correct Benefical Fees Launcher Charges TM - Credit Card DB Display Inventory Inventory Control Reports Beneficial Reconcil In Home Inventory Levels JEAXF Junkouts Inventory Roll JEBFA Optika US Bank Recon Merchandise Withdrawl Merchandise Withdrawl JEBKA PSP File Promo Credits Open Receivings JEDVA C02 - Capital RTV Accrual PI Count Results JESOA Shrink PI Time Results from Inv JEVSA Projects Connect 3 ICMS Credit AP Research - Inv Cntrl Price Protection JEVSF SiteSeer AP Research-Addl Rpts Sales Flash Reporting NSF In-Home Book to Perpetual Inventory Shrink Reporting TeleCredit Fees Data Warehouse Repair Close Out Reporting SKU Gross Margin (Interfaces to and from the Connect 3 Connect 3 Computer Intelligence Data SKU Shrink Level Detail PDF Transfe Reports Cash Receipts/Credit Count Corrections USM Data Warehouse are not F06 - Fixed Cross Ref for VCB Dnlds VCB Downloads displayed on this diagram) Warranty Assets Misc Accounting/Finance Apps - PC/NT Damage Write Off Billing COBA (Corp office Budget Assistant) Debit Receivings Star Repair Cash Over/ PCBS(Profit Center Budget System) DFI Vendor Database System Display Inventory Reconcil Short Merchandising Budget Prepared by Michelle Mills Display Inventory Reporting11
  12. 12. Traditional Point-to-Point Integration Leads to a HighNumber of Connections and Integration Effort Appl. 1 Appl. 6  Various or no tools  Low Productivity Appl. 2 Appl. 7  Highly complex architecture Appl. 3 Appl. 8  Complex, not scalable, high implementation and on-going effort Appl. 4 Appl. 9 Ex.: 10 Applications = max. 90 Connections n*(n-1) Appl. 5 Appl. 10 Example: Effort for building an interface (days) Low Medium High Gartner* 28 47 97 IBM Experience 30 46 97 * Source: Ross Altman, Gartner Group12
  13. 13. Typical Integration Platforms Improve Productivity Appl. 1 Appl. 6  Improved productivity for building and maintaining integrations Appl. 2 Appl. 7  Low re-use  No solution to integration complexity Appl. 3 Appl. 8 challenge Appl. 4 Appl. 9 Ex.: 10 Applications = max. 90 Connectionx n*(n-1) Appl. 5 Appl. 10 Integration Layer Example: Effort for building an interface (days) Low Medium High Point-to-Point 28 47 97 % savings* 25% 32% 43% Typical Integration Platforms 21 32 55 * Source: Ross Altman, Gartner Group13
  14. 14. Integration with an ESB Reduces Complexity & EnablesFlexibility Appl. 1 Appl. 6  Modular Architecture  Componentized solution with Appl. 2 Appl. 7 standard interfaces  Integration complexity resolved Appl. 3 Appl. 8  High degree of transparency and flexibility for re-use Appl. 4 Appl. 9 10 Applications = 20 Connections Appl. 5 Appl. 10 11 Applications = 22 Connections Appl. 11 ESB Layer Example: Effort for building an interface (days) Low Medium High Point-to-Point 28 47 97 Typical Integration Platforms 21 32 55 ESB 16 25 4714
  15. 15. Agenda ۞ SOA Overview ۞ Integration Challenge ۞ Setting up the Terminology ۞ Introduction to Enterprise Service Bus ۞ ESB Providers ۞ Oracle Service Bus OSB15
  16. 16. Setting up the Terminology In the next few slides we define a number of key terms:  By using common definitions we will be able to understand each other  Experience shows that inconsistent terminology leads to misunderstanding (Critical - misunderstandings)16
  17. 17. What we mean by:- (1/5) Web Services / Services / SOA / eService / Business Process Business Service / Technical Service  Retrieve Customer Balance/ Log Message17
  18. 18. What we mean by:- (2/5) Synchronous / Asynchronous  Determining if an interaction is Synchronous / Asynchronous should be done from the client prospective, the transport protocol in not enough to do so from interaction point of view, however it can determine from a transport point of view. Online / Real-time Structured Text (Fixed Width, CSV, TAB, …)18
  19. 19. What we mean by:- (3/5) Transport Protocols  The transport protocol is usually defined to be the first layer underneath the Data Payload Two Phase Commit Protocol (2PC); Could be on two levels  Application Integration Level  API / Code Level19
  20. 20. What we mean by:- (5/5) Process Orchestration and Process Choreography Business Logic and Integration Logic Integrated System and a Tightly coupled (Black Box)20
  21. 21. What are these technologies?  EAI - Enterprise Application Integration  Message-based, transaction-oriented, point-to-point (or point-to-hub) brokering and transformation for application- to-application integration  ETL - Extract - Transform - Load  Set-oriented, point-in-time transformation for migration, consolidation, and data warehousing  EII - Enterprise Information Integration  Optimized & transparent data access and transformation layer providing a single relational interface across all enterprise data21
  22. 22. How does ETL compare to ESBs? ETL ESB ETL is a “pull” technology, works on ESB is a “push” technology. demand/on schedule. ETL cannot time-out, decay, or issue ESB is capable of timing and decaying transactions to front-office applications data in queues, escalating information during transformation processes. content to the right decision-maker on that piece of content. ETL is fully scalable, capable of loading ESB is not typically suitable for massive massive batches of data in parallel. volumes of data because of its service bus architecture (by network, and source system speed to X transactions per second) however ESBs are starting to handle large file processing which makes it easier to handle massive data ETL can hook to ESB/EAI middleware as ESB’s primary job is to integrate just another feed, if desired. applications, opposed to Data Migration, Replication, Data Warehousing, and BI.22
  23. 23. Agenda ۞ SOA Overview ۞ Integration Challenge ۞ Setting up the Terminology ۞ Introduction to Enterprise Service Bus ۞ ESB Providers ۞ Oracle Service Bus OSB23
  24. 24. What Is it ? (Enterprise Service Bus) Is it:  An architectural style.  A software product.  Group of software products. The primary advantage of such an approach is that it reduces the number of point-  A Hardware Product. to-point connections required to allow applications to communicate. This, in turn, makes impact for major applications integration changes simpler and more straightforward.How? Service location transparency Sharing of services across the enterprises Ability to separate Business Services from Services implementation24
  25. 25. Enterprise Service Bus Definition Enterprise service bus (ESB) refers to a software architecture style. An ESB generally provides an abstraction layer on top of an implementation of an enterprise messaging system. Isn’t the messaging system enough? An ESB does not implement a service-oriented architecture (SOA), but provides the features with which one may be implemented. Although it is a common belief, an ESB is not necessarily web-services based. An ESB should be standards-based and flexible, supporting many transport mediums. It tries to remove the coupling between the called service and the transport protocol.
  26. 26. Enterprise Service Bus Architecture Concept The requestor and provider do not have to agree on the message format, message transport or even the target address New Requesters can be connected, without change to providers New Providers can be exposed, without change to requesters Changes can be made to requesters without impact on providers or made to providers without impact on requesters Cross-cutting aspects of a solution such as security and management can be added, enforced, or reinforced by the ESB New levels of dynamic behavior can be achieved.26
  27. 27. Enterprise Service Bus CapabilitiesInvocationSupport for synchronous and asynchronous transport protocols.Complex Event ProcessingEvent interpretation, correlation, pattern matchingRoutingAddressability, static/deterministic routing, content-based routing, rules-basedrouting, policy-based routingMediationAdapters, protocol transformation, service mappingMessagingMessage processing, message transformation and message enhancementManagementMonitoring, audit, logging, metering, admin consoleOther Quality of ServiceSecurity (encryption and signing), reliable delivery, transaction management27
  28. 28. Routing The ability to route a request to a particular service provider based on a static or variable routing criteria Example of Types of Routine:  Static routing  Content Based Routing Complex Rules based Routing28
  29. 29. Message TransformationThe ability to convert the structure and the format of the incoming businessservice request to the structure and the format of the out going message thatwill be consumed by the service providerExamples: FIX >> Text HL7 >> XML XML >> XML SWIFT >> XMLEDR >> DB Table Record29
  30. 30. Message EnhancementThe ability to modify or/and add to the data contained in the message.Examples of Message Enhancement Date Conversion Look-ups (Database, Properties files, etc..)30
  31. 31. Message Processing The ability to manage state and perform request management by accepting an input request and ensuring delivery back to the service requestor through message synchronization. In some cases XA or messaging sync points could be required.31
  32. 32. Protocol Transformation The ability to understand one type of protocol from the consumer as input (i.e. SOAP/HTTP) and communicate to the service provider through a different protocol (i.e. FTP, IIOP)Examples: XML/HTTP >> CICS/MQ SOAP/JMS >> SOAP/HTTP XML/HTTPS >> IIOP32
  33. 33. Transaction Management  The ability to provide a single unit of work for a business service request by providing a framework for the coordination between multiple Service providers across disparate systems. Example:  X/Open XA  WS-Coordination33
  34. 34. SecurityThe ability to protect the enterprise services from unauthorized access. The 3 A’s of Security Authentication Authorization Auditing ESB should be able to provide authentication, authorization and auditing. ESB should be able to delegate the authentication, authorization and auditing to a security manger rather than owning it.34
  35. 35. Enterprise Service Bus is expected to exhibit also thefollowing characteristics:  It is usually operating-system and programming-language agnostic; for example, it should enable interoperability between Java and .NET applications.  It uses XML (eXtensible Markup Language) as the standard communication language.  It supports web-services standards.  It includes adapters for supporting integration with legacy systems, possibly based on standards such as JCA (Java Conn. Arch.).  It includes validation against schemas for sending and receiving messages.  It supports queuing, holding messages if applications are temporarily unavailable.35
  36. 36. Key Advantages / DisadvantagesKey Advantages Faster and cheaper accommodation of existing systems. Increased flexibility; easier to change as requirements change. Standards-based. Scales from point solutions to enterprise-wide deployment (distributed bus). Predefined ready-to-use service types. More configuration rather than integration coding.Key DisadvantagesNew skills needed to configure, manage, and operate an ESB.Extra overhead and increased latency caused by messages traversing theextra ESB layer, especially as compared to point to point communications.36
  37. 37. Agenda ۞ SOA Overview ۞ Integration Challenge ۞ Setting up the Terminology ۞ Introduction to Enterprise Service Bus ۞ ESB In Telco Business ۞ ESB Providers ۞ Oracle Service Bus OSB37
  38. 38. Traditional OSS/BSS Architecture38
  39. 39. Next Generation39
  40. 40. Agenda ۞ SOA Overview ۞ Integration Challenge ۞ Setting up the Terminology ۞ Introduction to Enterprise Service Bus ۞ ESB In Telco Business ۞ ESB Providers ۞ Oracle Service Bus OSB40
  41. 41. ESB Providers  Oracle Service Bus http://www.oracle.com/technology/products/soa/service- bus/collateral/ORACLE%20SERVICE%20BUS%20- %20ESSENTIAL%20CONCEPTS.pdf  IBM Websphere Service Bus ftp://ftp.software.ibm.com/software/integration/wsesb/library/WSW11278- USEN-00.pdf  SUN ESB (Open ESB &GlassFish ESB) http://developers.sun.com/docs/javacaps/tutorials/screencasts/Composite/s tart.html41
  42. 42. Oracle Service Bus OSB42
  43. 43. Oracle Service Bus  Oracle Service Bus Examples/Samples – Validate Loan – Transform Loan – Route Loan  Oracle Service Bus IDE – Read MS Excel – Use data to printout43
  44. 44. References  IBM: The Enterprise Service Bus The Evolution of Messaging  IBM: Patterns: Integrating Enterprise Service Buses  IBM: Increasing IT flexibility with IBM WebSphere ESB software  WIKI:http://en.wikipedia.org/wiki/Enterprise_service_ bus  Oracle: Oracle Service Bus Essential Concepts  Sun/Java: The Open Source ESB for SOA & Integration44
  45. 45. Discussion45
  46. 46. 46

×