350 likes | 484 Views
Service Oriented Architecture and Oracle. Aleksander Stanev Bankservice Plc. Agenda. Definition Explanation Broader picture - Integration SOA and BPEL Oracle implementation of SOA and BPEL. Background on Service Oriented Architecture. CORBA MS COM EJB component model Web Services.
E N D
Service Oriented Architectureand Oracle Aleksander Stanev Bankservice Plc.
Agenda • Definition • Explanation • Broader picture - Integration • SOA and BPEL • Oracle implementation of SOA and BPEL
Background on Service Oriented Architecture • CORBA • MS COM • EJB component model • Web Services
SOA Definition Service Oriented Architecture is: An Application Architecture that is designed to achieve loose coupling among interacting software applications. SOA provides greater flexibility in developing, integrating, and managing Enterprise Applications
SOA Definition 2 Service-Oriented Architecture is: An application architecture in which all functions, or services, are defined using a description language and have invokable interfaces that are called to perform business processes. Each interaction is independent of each and every other interaction and the interconnect protocols of the communicating devices. Because interfaces are platform-independent, a client from any device using any operating system in any language can use the service.
SOA Definition 3 Service-Oriented Architecture is: A set of components which can be invoked, and whose interface descriptions can be published and discovered World Wide Web Consortium (W3C)
Service Definition Service is: A unit of work done by a service provider to achieve desired end results for a service consumer. Both provider and consumer are roles played by software components Service Request Service Consumer Service Provider Service Response
Properties of a Service • Invokable Over a Network • Transport Type • Payload Format • Interoperable • Discovery and Lookup
Agenda • Definition • Explanation • Broader picture - Integration • SOA and BPEL • Oracle implementation of SOA and BPEL
Services and SOA A service in SOA is an exposed piece of functionality with three major properties: • The interface contract to the service is platform-independent. • The service can be dynamically located and invoked. • The service is self-contained. That is, the service maintains its own state.
The Service-Oriented Approach • SOA is a design and a way of thinking about building software components. • Use-Based Solely Published Contract • Network Addressable Interface • Stresses Interoperability • Dynamically Discovered and Used
The Benefits of a SOA • Better Return on Investment • Code Mobility • Focused Developer Roles • More Security • Better Testing/Fewer Defects • Support for Multiple Client Types
The Benefits of a SOA (2) • Service Assembly • Better Maintainability • More Reuse • Better Parallelism in Development • Better Scalability • Higher Availability
Integrate Orchestrate Develop Analyze Deploy Access Manage SOA Lifecycle
Agenda • Definition • Explanation • Broader picture - Integration • SOA and BPEL • Oracle implementation of SOA and BPEL
“Integration accounts for 35% of Application Implementation and Maintenance Costs” - Gartner Group
Today Integration • Point-to-Point Integration is difficult to manage and maintain over time • Proprietary Integration Brokers and Messaging Solutions means customers are ‘locked in’ to vendors • Integrating Integration products is commonplace • License and Consulting costs are too prohibitive for mainstream adoption
Industry Progress • Traditional EAI • Message Oriented Middleware • Proprietary and Vendor Specific • Composite Applications • SOA approach to Integration • Comprehensive Standards Service Oriented Technology Process Integration • EAI merging with BPM • Distinct Integration Patterns • Some Standards but mainly Proprietary Data Integration Time
Visibility Key: Time to Plateau Less than two years Two to five years Five to 10 years More than 10 years Advanced Web Services Open Source J2EE Service-Oriented Architecture Enterprise Architecture Tools BPM Suites Enterprise Service Bus Application Platform Suites Programmatic Integration Servers Metadata Management Business Activity Monitoring Composite Applications J2EE Portal Products Business ProcessExecutionLanguage Business Process Management Message-Oriented Middleware XML Data Integration Servers Basic Web Services Mobile Middleware Enterprise Information Integration Business Process Analysis Web Services Controllers Web Services Application Management Integration Suites Peak of Inflated Expectations Trough of Disillusionment Slope of Enlightenment Plateau of Productivity Technology Trigger Presentation Integration Servers Complex Business Events J2EE Connector Architecture B2B Gateways Maturity Business Rule Engines Integration Registries Vocabulary-Based Transformation Microsoft .NET Application Platform Distributed Shared Memory Platforms Integration Metadata Management Integration Service Providers As of June 2004 Business Process Networks GartnerThe 2004 Application Integration, Application Platform and Architecture Hype Cycle Agent-Based Integration
Agenda • Definition • Explanation • Broader picture - Integration • SOA and BPEL • Oracle implementation of SOA and BPEL
BPEL • Cornerstone of Service Oriented Architecture • Business Process Execution Language • OASIS Specification – current version is 1.1 • Origins in Web Services Flow (WSFL) and XLANG • Standard XML representation of a business process • Strong Support by Oracle, Microsoft, IBM, BEA, SAP, SUN and others
Why BPEL? • Complements Web Services Integration • Eliminates Vendor Lock-in • Accelerates the time to deploy new services • Maximizes re-use and interoperability • Future proofs your business processdefinitions
Agenda • Definition • Explanation • Broader picture - Integration • SOA and BPEL • Oracle implementation of SOA and BPEL
Oracle BPEL Process Manager • Result of the acquisition of Collaxa – offered the leading BPEL Implementation in the market • Oracle becomes the first and only platform vendor to provide a robust, proven native BPEL runtime in production • Available for download today at OTN: http://otn.oracle.com/bpel
Oracle BPEL – Orchestrating Web Services • Open standards (Java/J2EE, JMS, XML, SOAP, WSDL) • State and context management • Loosely-Coupled Services • Parallel Processing • Exception Management • Events/Notifications
Oracle BPEL – Orchestrating Web Services (2) • Open Nested Transactions • Scalability and Reliability • Management, Administration and Business Visibility • Version Control • Audit Trailing • Support for Existing Infrastructure
Eclipse, JDeveloper BPEL Designer BPEL DEHYDRATE BPEL Process Manager Built-in Integration Services WSDL Binding Web Service Oracle DB Oracle Database User Tasks JMS XQuery XSLT BPELJ JCA Core BPEL Engine Email BPEL Console MANAGE J2EE Application Server (WebLogic, Oracle AS, JBoss, WebSphere) Oracle BPEL Process Manager Enterprise-strength infrastructure for designing, deploying and managing BPEL business processes. • Comprehensive and native BPEL implementation • Easy-to-use modeling tool • Scalable and reliable engine • Flexible binding framework • Rich management and monitoring • Support for Oracle AS, WebLogic and WebSphere • Get up and running in less than 15 minutes!
Oracle BPEL Key Components • BPEL Designer • CoreBPEL engine • Built-in integration services • ExtensibleWSDL binding framework • BPEL Console
BPEL Design Time • Open support for BPEL. Multi-view supportallows modification at both the graphical andXML representations. • Simple, easy to use, effective for developingboth simple and complex businessprocesses • Extensible through code or custom functions– Transformation and Activities
BPEL Runtime • Supports Tier One J2EE ApplicationsServers (OracleAS, Weblogic, Webshpereand JBoss) • Context Dehydration provides scalability,high availability and leverages the featuresof the Oracle Database • Partition BPEL Server into multiple domainsfor more efficient development and testingenvironments
BPEL Console • Version and Manage Processes in Flight • Advanced Debugging Capabilities • Out of the Box Performance & StressTesting • Simple Deployment and Monitoring • Features which resulted from Customersdeploying in production environments
WSDL BINDINGS BPEL DESIGNER BPEL CONSOLE BPEL ENGINE MODELING CONNECTIVITY EXECUTION RUN-TIME MANAGEMENT MANAGEMENT • Comprehensive BPEL 1.1 • Visual Modeling Tool • Native Java Embedding • XML Facade • XQuery Transformation • Detailed Error Reporting • Ant-based build and deployment framework • Versioning • Bindings to 100+ backend systems (JCA) • JMS Bridge • .NET, Axis, Workshop, Glue, Systinet, interop • User Tasks/Workflow • Email with Attachment • Comprehensive BPEL 1.1 • Sync. Messaging • Async. Messaging • Context Dehydration • Reliability • Side-by-side versioning • Compensating Transactions • Clustering • Large XML documents • Visual Monitoring • Auditing • BPEL Debugging • In-flight Administration • Performance Tuninng • Task Management • Partitioning/Domains BPEL, XQuery, XSLT, WS-ADDRESSING Oracle BPEL Process Manager - Key Features