Pacific Southwestern UserGroup Meeting 18 April 2007 Dieter W. Storr firstname.lastname@example.org Service-Oriented Architecture And Enterprise Service Bus
April 2007 Dieter W. Storr -- email@example.com Acronyms EAI Enterprise Application Integration SOA Service-Oriented Architecture ESB Enterprise Service Bus MDA Model Driven Architecture (OMG) Object Management Group
April 2007 Dieter W. Storr -- firstname.lastname@example.org Content What is EAI and its problems? What is ESB and why? What is SOA? Different routes to SOA Why SOA SOA principles SOA problems MDA the solution?
April 2007 Dieter W. Storr -- email@example.com Supply Chain Management Integrated Collaboration Customer Relationship Management Business Intelligence Enterprise Application Integration (EAI) The Process of Linking These and Other Applications Together
April 2007 Dieter W. Storr -- firstname.lastname@example.org EAI Technologies Bus/hub – standard middleware Appli- cation 1 Appli- cation 2 - Application server - Message bus
April 2007 Dieter W. Storr -- email@example.com EAI Technologies Application Connectivity Appli- cation 1 Appli- cation 2 Set of adapters = connectors Standard communication protocol (SOAP, SMTP) Message queues, web services, proprietary protocol JCA – vendor neutral manner
April 2007 Dieter W. Storr -- firstname.lastname@example.org EAI Technologies Data format and transformation Appli- cation 1 Appli- cation 2 Adapter converts from application format to bus format and semantic transformation (e.g. zip codes to names)
April 2007 Dieter W. Storr -- email@example.com EAI Technologies Integration modules Appli- cation 1 Appli- cation 2 EAI system can participate in multiple concurrent integration operations (= integration modules) Implemented Java-based: Web applications or EJBs or POJOs (plain old java object)
April 2007 Dieter W. Storr -- firstname.lastname@example.org EAI Technologies Support for transactions Appli- cation 1 Appli- cation 2 Process integration: transactional consistency across applications (two-phase commit protocols or compensating transactions)
April 2007 Dieter W. Storr -- email@example.com Enterprise Application Integration (EAI) Goals and challenges Realize financial and operational competitive advantages. Giving all workers complete, transparent and real-time access to information.
April 2007 Dieter W. Storr -- firstname.lastname@example.org Enterprise Application Integration (EAI) Problems Using arcane and proprietary technologies Creating information silos (lack of communication with other systems) Different systems cannot share information and create bottlenecks
April 2007 Dieter W. Storr -- email@example.com Enterprise Application Integration (EAI) Communication Architectures Centralized broker for security, access, communication Integration servers like the School Interoperability Framework (SIF) or software like Enterprise Service Bus (ESB) model Use of independent data model XML and XML style sheets
April 2007 Dieter W. Storr -- firstname.lastname@example.org Enterprise Application Integration (EAI) Communication Architectures Connector or agent model System model EAI relates to middleware technologies (MOM) data representation technologies (XML) Web services as part of SOA
April 2007 Dieter W. Storr -- email@example.com Enterprise Application Integration (EAI) Today: EAI = data centric Future: Include content integration and business processes
April 2007 Dieter W. Storr -- firstname.lastname@example.org Enterprise Application Integration (EAI) EAI Implementation Pitfalls 70% of all EAI projects fail because of management issues Systems are not documented and difficult to maintain Applications with many inter-application links Expensive support Raises serious risks to the business processes including security risks.
April 2007 Dieter W. Storr -- email@example.com graphic: aurorisoft.com EAI
April 2007 Dieter W. Storr -- firstname.lastname@example.org EAI From point-to-point to hub-and-spoke architecture Disadvantages: Centralized hub presents a single point of failure Most hub-and-spoke-based EAI products are monolithic, expensive systems regarding multiple implementations Proprietary standards
April 2007 Dieter W. Storr -- email@example.com EAI ESB ESB: Distributed services architecture based on Web services standards At the heart of the ESB architecture is the enterprise services bus, a collection of middleware services that provides integration capabilities. Applications are connected to this logical bus through smart connectors, which encapsulate system functionality and provide a layer of abstraction between bus and application.
April 2007 Dieter W. Storr -- firstname.lastname@example.org Source: infoworld.com Fast lane to SOA Legacy Systems PeopleSoft SAP Load balancing fail-over MS.NetADABAS Natural on Mainframe MOM J2EE Oracle SOAP
April 2007 Dieter W. Storr -- email@example.com Enterprise Service Bus (ESB) New integration platform in a service-oriented architecture (SOA) Delivers messaging middleware Intelligent routing / process orchestration XML transformation in conjunction with a flexible security framework Management infrastructure for configuring, deploying, and monitoring the services Developing
April 2007 Dieter W. Storr -- firstname.lastname@example.org
April 2007 Dieter W. Storr -- email@example.com
April 2007 Dieter W. Storr -- firstname.lastname@example.org Enterprise Service Bus (ESB) Dream behind the ESB: Replace proprietary integration brokers with open communication layers Business processes are readily exposed and can easily be managed
April 2007 Dieter W. Storr -- email@example.com Enterprise Service Bus (ESB) Reality of ESB: Old messaging subsystems JMS(Java Message Service) Homegrown messaging engines Proprietary message-oriented middleware J2EE servers Truly open and distributed SOA Cape Clear Software Cordys ??
April 2007 Dieter W. Storr -- firstname.lastname@example.org What is SOA? A revival of modular programming (1970s) Event-oriented design (1980s) Interface/component-based design (1990s)
April 2007 Dieter W. Storr -- email@example.com What is SOA? Software architecture that uses loosely coupled software services Resources on a network in an SOA environment are made available as independent services that can be accessed without knowledge of their underlying platform implementation
April 2007 Dieter W. Storr -- firstname.lastname@example.org SOA as Solution Actor Business Process End-to-end business process: Delivery of parts The enterprise provides a service which generates stock status reports. The deliverer sees the inventory in their IT system. The deliverer can react when the quantity falls below a min amount. Source: MakData.de
April 2007 Dieter W. Storr -- email@example.com Offices Enterprises Customer Distributor Business Processes
April 2007 Dieter W. Storr -- firstname.lastname@example.org SOA Companies, customers, supplier, and subsidiaries are connected in a process-oriented manner. Optimization of enterprise processes Horizontal processes over vertical structures
April 2007 Dieter W. Storr -- email@example.com Source: makdata.de/soa Open integration layer ? E.g. Cape Clear Software and Cordys are truly open and distributed SOA
April 2007 Dieter W. Storr -- firstname.lastname@example.org
April 2007 Dieter W. Storr -- email@example.com Different Routes to SOA Tools that streamline development Data transformation engine Basic architecture and messaging transports supported Process orchestration Intelligent message routing Real-time monitoring Deployment and management of actual services
April 2007 Dieter W. Storr -- firstname.lastname@example.org Different Routes to SOA Business activity monitoring (BAM) Monitoring business processes Quality of Service capabilities (QoS) Control mechanisms that can provide different priority to different users or data flows, or guarantee a certain level of performance to a data flow in accordance with requests from the application program. Support for enterprise management systems HP OpenView or IBM Tivoli
April 2007 Dieter W. Storr -- email@example.com What is SOA? SOA is a business-centric IT architectural approach that supports integrating your business as linked, repeatable business tasks, or services. SOA helps users build composite applications, which are applications that draw upon functionality from multiple sources within and beyond the enterprise to support horizontal business processes Source: IBM
April 2007 Dieter W. Storr -- firstname.lastname@example.org Why SOA? SOA can help businesses respond more quickly and cost-effectively to the changing market conditions This style of architecture promotes reuse at the macro (service) level rather than micro levels (e.g. objects). It can also simplify interconnection to and usage of existing IT (legacy) assets.
April 2007 Dieter W. Storr -- email@example.com SOA Principles Service EncapsulationEncapsulation Service Loose couplingLoose coupling Service contract Service abstraction Service reusability Service composability - Service autonomy Service statelessness Service discoverability
April 2007 Dieter W. Storr -- firstname.lastname@example.org SOA Selection Criteria Infrastructure style Communications backbone Transform / routing / enrichment Reporting / auditing Orchestration Process language Modeling tools (e.g. Eclipse) Activity management
April 2007 Dieter W. Storr -- email@example.com SOA Users Beijing's Chaoyang District leveraged service-oriented architecture to design and deliver an urban administration system that greatly improved municipal services to citizens, while providing a solid, extensible foundation for future service expansion and delivery.
April 2007 Dieter W. Storr -- firstname.lastname@example.org SOA Example for Financial Services
April 2007 Dieter W. Storr -- email@example.com SOA Problems From a SAG customer (SAG-L) Some of the architectures being placed in production today (especially in the SOA arena) and it drives me crazy Too many pieces Too complex for a single individual to maintain/correct Incredibly rigid without any flexibility (unreliable and prone to disruptions often)
April 2007 Dieter W. Storr -- firstname.lastname@example.org Model-Driven SOA SOA and ESB alone still can lead to spaghetti- like “service oriented architecture” Is Business Process Modeling (BPM) the rescuer? Gap between BPM and IT Is Business Process Execution language (BPEL) the solution? No! BPEL is a process orchestration language and not equal BPM! Business Process Modeling Notation (BPMN)?
April 2007 Dieter W. Storr -- email@example.com Model-Driven SOA BPMN will not necessarily help you to figure out how to map the business components you define to a set of reusable SOA services. Need a way from BPM to SOA Model Driven Architecture (MDA) can be applied to achieve enterprise-level Service Oriented Architecture (SOA) in the real world
April 2007 Dieter W. Storr -- firstname.lastname@example.org SOA and MDA Model Driven Architecture (MDA) A way to organize and manage enterprise architectures – open and vendor-neutral (Leader: IBM Rational) Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) Implementation Specific Model (ISM)
April 2007 Dieter W. Storr -- email@example.com SOA and MDA MDA provides an open, vendor- neutral approach to the challenge of business and technology change MDA separates business and application logic from underlying platform technology Built using UML and other OMG model standards Source: http://www.omg.org/mda/
April 2007 Dieter W. Storr -- firstname.lastname@example.org Conclusion EAI is out SOA and ESB are in Need BPM and MDA Open systems are in
April 2007 Dieter W. Storr -- email@example.com SOA Stacks (source: http://www.makdata.de) Oracle: From the fusion middleware environment, Oracle has put together the Oracle SOA Suite product line. SAP®: With the successor to R/3, NetWeaver, SAP® is particularly focusing on the development of a business process platform for mid-sized to larger enterprises. IBM: With well-proven Web-Sphere products and some new components IBM provides a complete SOA technology platform. SAG: Under the label "crossvision", Software AG is bundling a series of well-known technologies, primarily addressing customers from the Adabas/Natural environment. BEA: The integration specialist BEA provides a line of services in the SOA Resource Center for the implementation of SOA. Microsoft: Microsoft has announced its own SOA stack based on the.NET framework and other components, like Windows Server, BizTalk Server, Office, and Sharepoint Portal Server.