SlideShare a Scribd company logo
1 of 69
Download to read offline
A Guide to the SOA Galaxy:
Strategy, Design and Best Practices


               Dmitri Shiryaev
                 Java Tools
            Sun Microsystems, Inc.
Guide to the SOA Galaxy

                                  3. JBI

You are here        2. BPEL
                                 4. ESB


         1. Intro        5. Java CAPS

               6. . The Answer
               To Everything
Business-IT Context for SOA
• Creating an IT environment to support
  continuous business optimization
• Structures your IT applications in line with
  your business processes
  – Speeds business change
  – Facilitates business connections
  – Enchances business control
• Heavy focus on flexible interconnections
  with carefully managed qualities of service
  (QoS)
Why SOA?
                     Channels
Partners Customers         Internal Users       Suppliers   •   Inflexibility of IT
                                                                Infrastructure
                                                            •   Complexity of
                                                                Integration Projects
              $                        $             $
 $ $$                $ $                                    •   Integration Costs
                         $                  $   $           •   Time to Market
              $                                             •   Limited Partnering
                                                                Flexibility
                       $
                                   $                        •   Limitations of EDI
          $
          $                        $Inventory Provisioning
 Legacy       CRM       Billing
              Information Assets
SOA and Web Services
• Web services are most people's first and only
  exposure to SOA
• Only one manner of service access
   – Message-oriented middleware (MOM)
   – CORBA, RMI, DCOM, raw sockets, Email etc.
• SOA architectures tend to be best implemented
  using web services as the middleware technology
Why Services?
• SOA = an architectural principle for
  structuring systems
• SOA emphasizes the de-coupling of system
  components
• New services are created from existing
  ones in a synergistic fashion
• Strong service definitions are critical
• Services can be subsequently re-composed
  in response to changing business
  requirements
What Are Services?
• A function accessed using XML message
  exchange
• Message exchanges have well known
  exchange patterns
• Services are self-describing, using
  metadata (WSDL)
What Does a Service Do?
•   Transform data
•   Route messages
•   Query databases
•   Orchestrate conversations
•   Apply business logic
•   Apply business policy
•   Handle business exceptions
•   Solicit approvals
•   …
How Is a Service Implemented?
•   XSLT
•   Enterprise JavaBeans™ (EJB™) technology
•   BPEL
•   SQL
•   XQuery
•   Routing table
•   Business rules
•   EDI transform
•   …
Benefits of SOA
• Flexible (Agile) IT
  – Adaptable to changing business needs
• Faster time to market
  – Reuse existing code, minimize new
    development
• Business and process-driven
  – New business opportunities
• Greater ROI
  – Leverage existing IT asset
SOA Layers

 Access Layer
Process Layer
Service Layer
Resource Layer
The “Move” to SOA
        Non-
        Integrated




   Integrated
  and Shared
The Shift

• SOA is a combined effort between
  IT and the business units
             er SOA         Proc
         Lay                     ess
       e                      Defi Layer
   rvic vider
Se ro                              ner
     P

        IT                Biz Units
Pre-SOA Scenario
  Credit                                                     Mortgage
  Card




   Balance     Fraud      Credit          Credit   Balance      Interest
    Check     Detection   Check           Check     Check         Calc




             Back-End       Partner     Partner     Back-End
Customer                                                         Customer
              System      Credit Data   Credit       System
  Data                                                             Data
                                         Data
SOA-Enabled Scenario

            Auto                                                                    Mutual
           Loans Bill Pay                                                    Stocks Funds




                                   Credit Card               Mortgage

                                        Reusable      Services
  Payment                                                                                        Trade
                Credit       Fraud          Access    Interest     Balance       Customer
 Management                                                                                    Execution
                Check       Detection       Service     Calc        Check       Data Service
   Service                                                                                      Service




Internet                                                                                 Increased
                                                                                           Agility

                  Partner Credit        Back-End        Back-End        Customer Data
                      Data               System          System
SOA Architectural Big Rules
 Coarse Grained
Business Services         Document-based           Mostly Async               Conversational




    Reliable              Secure/Identity         Policy Driven        Registered and Retrieved




               WSDL Described        BPEL Orchestrated            JBI-based
n
                                                  esig ed
   SOA Architectural Big Rules                  D
                                                Focu
                                                     s

Coarse Grained Business Services   XML Document-based




         Mostly Async                Conversational
i es
                                     alit ed
SOA Architectural Big Rules       Qu us
                                   Foc

    Reliable          Secure/Identity




  Policy Driven   Registered and Retrieved
ds
                                             n d ar d
SOA Architectural Big Rules               Sta cuse
                                           Fo

  WSDL Described               BPEL Orchestrated




                   JBI-based
Guide to the SOA Galaxy
    You are here

                          3. JBI


             2. BPEL
                         4. ESB


  1. Intro         5.Java CAPS

        6. The Answer
        To Everything
Need for Business Process
• Developing the web services and exposing
  the functionality is not sufficient
• We also need a way to orchestrate these
  functionality in the right order
• Example:
  – Concert ticket purchase Web service has 3
    operations, which need to be performed in the
    following order
     • Getting a price quote
     • Purchase a ticket
     • Confirmation and cancellation
BPEL (Business Process Execution Language)
• XML-based language used to specify business
  processes based on Web Services
• BPEL processes describe
  – Long running, stateful, transactional,
    conversations between two or more partner web
    services
• BPEL is key to implementing SOA Big Rules
  – Conversational
  – Mostly Async
  – XML Document-based
  – Orchestrated
BPEL “Fixes” WSDL
• WSDL: unordered set of operations
    – Operations are message exchanges
•   Need rules for ordering
•   Support for sequencing
•   Support for concurrency
•   Choreography with external entities
BPEL Is a Web Service
      Sequencing Language
• Process defines “conversation” flow chart
  – Conversation consists of only WSDL-described
    message exchanges
  – BPEL provides and consumes WSDL defined
    services
• Process instance is a particular
  conversation following the chart
  – Execution systems can support multiple
    concurrent conversations
BPEL Works With WSDL
• Web services are described in WSDL
  – Operations are message exchanges
  – Each operation represents an individual unit of
    action
• We need a way to orchestrate these
  operations with multiple web services in the
  right order to perform a Business process
  – Sequencing, conditional behavior etc.
• BPEL provides standard-based
  orchestration of these operations
BPEL: Relationship to Partners
               WSDL                       Inventory
                                       Checker Service




                                       Credit checker
                                          Service


Customer Service
               Orchestrating Process   Another Partner
                     (BPEL)                Service
BPEL Document Structure
<process>
   <!– Definition and roles of process participants -->
  <partnerLinks> ... </partnerLinks>
   <!- Data/state used within the process -->
   <variables> ... </variables>
   <!- Properties that enable conversations -->
   <correlationSets> ... </correlationSets>
   <!- Exception handling -->
   <faultHandlers> ... </faultHandlers>
   <!- Error recovery – undoing actions -->
   <compensationHandlers> ... </compensationHandlers>
   <!- Concurrent events with process itself -->
   <eventHandlers> ... </eventHandlers>
   <!- Business process flow -->
   (activities)*
</process>
BPEL Activities
Basic Activities   Structured Activities
• <invoke>         • <sequence>
• <receive>        • <while>
• <reply>          • <pick>
• <assign>         • <flow>
• <throw>          • <scope>
• <wait>           • <compensate>
• <empty>          • <switch>
                   • <link>
BPEL: Basic Activities
• <invoke>
  – To invoke a one-way or request/response
    operation on a portType offered by a partner
• <receive>
  – To do a blocking wait for a matching message to
    arrive
  – Can be the instantiator of the business process
• <reply>
  – To send a message in reply to a message that was
    received through a <receive>
  – The combination of a <receive> and a <reply>
    forms a request-response operation on the WSDL
    portType for the process
BPEL: Basic Activities
• <assign>
  – Can be used to update the values of variables with new data
• <throw>
  – Generates a fault from inside the business process
• <wait>
  – Allows you to wait for a given time period or until a certain
    time has passed
• <empty>
  – Allows you to insert a "no-op" instruction into a business
    process
  – This is useful for synchronization of concurrent activities, for
    instance
BPEL: Structured Activities
• <sequence>
  – Perform activities in sequential order
• <flow>
  – Perform activities in parallel
• <switch>
  – Conditional choice of activities
• <scope>
  – Enclose multiple activities in a single scope
Example Business Process
                      Receive <PO>                        <sequence>




Invoke <InventoryService>        Invoke <CreditService>     <flow>




                     Reply <Invoice>                      </sequence>
Authoring BPEL?

• BPEL is difficult to write
  – Programming in XML: arghhhh!
  – XML Schema
     • Real-world schemas are huge and complex
     • Run the other way if you can
  – WSDL extensions
     • As if WSDL weren’t confusing enough
• BPEL is an execution language only
  – Not a modeling notation
BPMN (Business Process Modeling Notation)
• Notation for business process diagrams
  – Based on flowcharting techniques
  – Has special considerations for Web Services
  – Readily understandable by...
    • Business users
    • Business analysts
    • Software developers
• But, BPMN and BPEL are complimentary
  – BPEL: execution language without a notation
  – BPMN: notation with a comprehensive
    mapping to BPEL
Visual Service Orchestration
Guide to the SOA Galaxy

                       3. JBI


           2. BPEL              You are here
                      4. ESB


  1. SOA        5. Java CAPS

      6. The Answer
      To Everything
SOA
  – Decouples service consumers from providers
  – Separates business logic from services
  – Enables dynamic service discovery/use
  – Appealing to large enterprises
    (flexible/scalable)
Business integration
  – Application to application (A2A)
  – Business to business (B2B)
  – Business process management (BPM)
  – Many architectures, technologies, vendors
What is JBI (JSR-208)?
●   One of the biggest motivation for SOA is to
    reduce the cost of application integration
●   Standard-based, pluggable infrastructure
    – Service Engines: Provides business logic
      and integration services
    – Binding Components: Provides
      communications protocols
• Composite, event-driven services
• Extensible administration
• Loose coupling via WSDL message exchanges
JBI (JSR-208)
  – Standardizes:
    • A Java technology-based Extensible Meta-container
    • Installable components (binding components and
      service engines)
    • Packaging/deployment (service units and service
      assemblies)
    • Normalized message routing (WSDL-2.0 based)
    • Component/deployment management (Ant and
      JMX™ API)
    • And more
Runtime: Java EE Platform
     and Java Business Integration
• Java Business Integration serves as messaging
  infrastructure
   – Java EE web services interact through Java
     Business Integration
   – Java Business Integration bindings allow
     remote consumers and providers
   – Add other service technologies as Java
     Business Integration components
• Transparent to programmer using Java EE
  technology
   – Reuse without re-coding
JBI Architecture
JBI—Service Engine

• Hosts business logic implementing services
• Exposes service endpoints
  – Agnostic of protocol and transport
• Engages in Message Exchange Patterns
  – Normalized messages—target remote service
• Is a target for deployment—a container
  – Engine-specific artifacts
  – May cause endpoint activation
JBI—Binding Component
• Handles protocol-specific message re-
  formatting
  – Deals with wire transport of messages
  – E.g. SOAP/HTTP, FTP, SMTP, JMS, ebMS,
    AS2, etc.
• Should contain no business logic
• Exposes proxy endpoints for remote
  services
• Proxies JBI services to remote consumers
• (Re)Used by multiple service engines
JBI Administration

• Standard installation of components
  – Portable archive format
• Service Assembly (SA)
  – Portable package of a composite service
• Service Unit (SU)
  – Each deployed to one component type
• Lifecycle Management
  – Start/stop/shutdown
JBI—Service Assembly
        Deployment
SA=Proxy Service
                             BPEL
                             Engine
     JBI.xml


    SU     activity.xml
    1                        XSLT
                             Engine

          transform.xslt
    SU
    2
                           SOAP/HTTP
          endpoint.xml       Binding
    SU
    3
Guide to the SOA Galaxy

                         3. JBI
                                  You are here

             2. BPEL
                        4. ESB


  1. Intro        5. Java CAPS

        6. The Answer
        to Everything
Enterprise Service Bus
• Distributed services architecture
• Enterprise-grade communications
  backbone for reliable messaging
• Intelligent routing and content-based
  routing
• Process coordination
• Flexible security framework
• XML transformation
• Management
Project Open ESB
• Open source, based on the JSR-208 RI
• + Multiple JBI instances (+ synchronization)
• + Distributed normalized message
  routing/proxying
• + Central administration (+ CLI and Web
  Console)
• And more
JBI and Project Open ESB
• Java Business Integration
  – Service Unit
  – Component
  – Service Assembly
  – Standardized MBeans

• Project Open ESB
  – Distributed JBI
  – Centralized Management
Guide to the SOA Galaxy

                         3. JBI


             2. BPEL
                        4. ESB
                                  You are here

  1. Intro        5 Java CAPS.

        6. Answer
        to Everything
Composite Applications
• A composite application is a collection of existing
  and independently developed applications and
  new business logic, orchestrated together into a
  brand new solution of a business problem that
  none alone can solve
• Such an application looks to the user like a
  regular new interactive application, yet in reality it
  may be only 10 percent new and 90 percent an
  assembly of pre-existing components or data; the
  “glue” that brings a composite application
  together is integration technology
Sun's Vision for the SOA Platform
Sun's SOA Platform
Java ES and Suites
                                                                               Over 1 Million
                                   TM
                      Java Enterprise System                                     Java ES
                                                                                Subscribers

                       Composite




                                                           Communications
                                              Management
                   Application Platform




                                                                            Availability

                                                                                           Management Tools
                                                Identity
Developer Tools




                   Application
                    Platform            B2B

                       Web              ESB
                  Infrastructure




                                                                  Storage + STK
Java Composite Application Platform Suite
Positioning
   Java CAPS

Unique Combination of:
   ●   Unified
   ●   Comprehensive
   ●   Agile

Value Proposition:

   The industry's most complete, secure, unified and scalable
   platform for the development, deployment and management
   of enterprise integration and composite applications
Open ESB and Java CAPS
        Open ESB                    Java CAPS Suites
Entry Level, Standards-Based ESB   Fifth-generation, ESB-based
         JBI Architecture            Integration Suite with full
        Available: 1H 2006                 functionality
                                          Available NOW




      Use: For                     Use: Run Your
      Develop                      Enterprise on
        ers                             this.
Guide to the SOA Galaxy

                         3. JBI


             2. BPEL
                        4. ESB


  1. Intro        5 Java CAPS.
                            You are here
        6. The Answer         (finally)
        To Everything
The Answer to Everything...



            Tools
SOA Tool
NetBeans Enterprise
Pack 5.5
Rapid Architecture and Design of Services
Overview
• Will focus on higher level features that are
  important to building enterprise
  applications..for example....
  – SOA
     •   Composite Application Building
     •   Business Process Orchestration
     •   Integration
     •   Rich Visual XML Tools
  – Application Lifecycle Management
     • UML Modeling
     • Project Management
     • Automatic Project Wiki Documentation
Enterprise Customer Need
Design of Composite Services
Rapid Architecture and Design of Services
                                                   SOA
•

                  Enterprise
                   Platform           J2EE
                                       1.5
                               Sun Java System
                              Application Server




                       XML            Data
                     web Services
                                    Portability
    Application       Sun Web Services
    Portability        Developer Pack
Visual Service Orchestration
• Service Orchestrations
  – Model Business process in the Orchestration
    Designer
  – Generate deployable BPEL based
    orchestrations
  – Round trip engineering between visual Web
    service model and BPEL process
  – Import and export BPEL
Visual Service Orchestration
Summary
• SOA enables flexible and agile enterprise
  application architecture
• JBI provides standard based SOA
  framework
• BPEL enables standard based
  orchestration of services
• NetBeans Enterprise Pack is the tool to
  use for building SOA-enabled enterprise
  applications
Call For Action
• Try “free” Java Studio Enterprise for
  building industry strength Web services
• Try Technology Preview version of
  NetBeans Enterprise Pack 5.5 for
  integrating SOA-enabled services
• Join Sun Developer Network (SDN) for up-
  to-date SOA information
Resources
• SDN (Sun Developer Network)
  SOA/WebServices
  – http://java.sun.com/reference/soawebservices/
• Java Studio Enterprise
  – http://developers.sun.com/prodtech/javatools/j
    senterprise/
• NetBeans Enterprise Pack 5.5
  – http://enterprise.netbeans.org
Sun Developer Network
Empowering the Developer

Increasing developer
productivity with:
    Technical articles
   Tutorials and sample codes
    Monitored forum
    support
   Community involvement
   through user groups, events,
   and conferences
   And more...                    http://developer.sun.com

More Related Content

What's hot

Scaling MySQL: Benefits of Automatic Data Distribution
Scaling MySQL: Benefits of Automatic Data DistributionScaling MySQL: Benefits of Automatic Data Distribution
Scaling MySQL: Benefits of Automatic Data DistributionScaleBase
 
SOA an architecture on the Desktop
SOA an architecture on the DesktopSOA an architecture on the Desktop
SOA an architecture on the DesktopVincent Perrin
 
Business Process Optimization with Enterprise SOA and AIA
Business Process Optimization with Enterprise SOA and AIABusiness Process Optimization with Enterprise SOA and AIA
Business Process Optimization with Enterprise SOA and AIABob Rhubart
 
IBSolution Bulgaria at SAP World tour 2011
IBSolution Bulgaria at SAP World tour 2011IBSolution Bulgaria at SAP World tour 2011
IBSolution Bulgaria at SAP World tour 2011ivanparvanov
 
Session 1928 Semantic SOA Gvernance Deck
Session 1928 Semantic SOA Gvernance DeckSession 1928 Semantic SOA Gvernance Deck
Session 1928 Semantic SOA Gvernance Deckarivolit
 
Enterprise Security Architecture: From Access to Audit
Enterprise Security Architecture: From Access to AuditEnterprise Security Architecture: From Access to Audit
Enterprise Security Architecture: From Access to AuditBob Rhubart
 
SAP Explorer Visual Intelligence
SAP Explorer Visual IntelligenceSAP Explorer Visual Intelligence
SAP Explorer Visual IntelligenceEric Molner
 
Reporting _ Paul Vella _ OBI Analytics for JDE.pdf
Reporting _ Paul Vella _ OBI Analytics for JDE.pdfReporting _ Paul Vella _ OBI Analytics for JDE.pdf
Reporting _ Paul Vella _ OBI Analytics for JDE.pdfInSync2011
 
Make Your Business More Flexible with Scalable Business Process Management So...
Make Your Business More Flexible with Scalable Business Process Management So...Make Your Business More Flexible with Scalable Business Process Management So...
Make Your Business More Flexible with Scalable Business Process Management So...Perficient, Inc.
 
Endava Career Days Jan 2012 - Customer profile - large investment bank
Endava Career Days Jan 2012  - Customer profile - large investment bankEndava Career Days Jan 2012  - Customer profile - large investment bank
Endava Career Days Jan 2012 - Customer profile - large investment bankEndava
 
Sematic SOA Governance Demo screen shots
Sematic SOA Governance Demo screen shotsSematic SOA Governance Demo screen shots
Sematic SOA Governance Demo screen shotsarivolit
 
Function Point Analysis: Size Matters - No Matter What You Have Been Told!
Function Point Analysis: Size Matters - No Matter What You Have Been Told!Function Point Analysis: Size Matters - No Matter What You Have Been Told!
Function Point Analysis: Size Matters - No Matter What You Have Been Told!DCG Software Value
 
Experience This... Counting an Apple iPhone Application
Experience This... Counting an Apple iPhone ApplicationExperience This... Counting an Apple iPhone Application
Experience This... Counting an Apple iPhone ApplicationDCG Software Value
 
OW2 Petals Dragon SOA Linuxtag09
OW2 Petals Dragon SOA Linuxtag09OW2 Petals Dragon SOA Linuxtag09
OW2 Petals Dragon SOA Linuxtag09Catherine Nuel
 
Moving Beyond Project Level SOA
Moving Beyond Project Level SOAMoving Beyond Project Level SOA
Moving Beyond Project Level SOAguest0d8992
 
2008 11 18_contracts _oaug-sig
2008 11 18_contracts _oaug-sig2008 11 18_contracts _oaug-sig
2008 11 18_contracts _oaug-sigDZee Solutions
 
Tagging Up - MMS and Taxonomy In SharePoint 2010
Tagging Up - MMS and Taxonomy In SharePoint 2010Tagging Up - MMS and Taxonomy In SharePoint 2010
Tagging Up - MMS and Taxonomy In SharePoint 2010Chris McNulty
 
Innovative Marriage of Security and Performance in SOA Based Dynamic Enterprises
Innovative Marriage of Security and Performance in SOA Based Dynamic EnterprisesInnovative Marriage of Security and Performance in SOA Based Dynamic Enterprises
Innovative Marriage of Security and Performance in SOA Based Dynamic EnterprisesDr. Mehmet Yildiz
 
Anthony Carrato S O A Business Architecture
Anthony  Carrato    S O A  Business  ArchitectureAnthony  Carrato    S O A  Business  Architecture
Anthony Carrato S O A Business ArchitectureSOA Symposium
 

What's hot (20)

Scaling MySQL: Benefits of Automatic Data Distribution
Scaling MySQL: Benefits of Automatic Data DistributionScaling MySQL: Benefits of Automatic Data Distribution
Scaling MySQL: Benefits of Automatic Data Distribution
 
SOA an architecture on the Desktop
SOA an architecture on the DesktopSOA an architecture on the Desktop
SOA an architecture on the Desktop
 
Business Process Optimization with Enterprise SOA and AIA
Business Process Optimization with Enterprise SOA and AIABusiness Process Optimization with Enterprise SOA and AIA
Business Process Optimization with Enterprise SOA and AIA
 
IBSolution Bulgaria at SAP World tour 2011
IBSolution Bulgaria at SAP World tour 2011IBSolution Bulgaria at SAP World tour 2011
IBSolution Bulgaria at SAP World tour 2011
 
Session 1928 Semantic SOA Gvernance Deck
Session 1928 Semantic SOA Gvernance DeckSession 1928 Semantic SOA Gvernance Deck
Session 1928 Semantic SOA Gvernance Deck
 
Enterprise Security Architecture: From Access to Audit
Enterprise Security Architecture: From Access to AuditEnterprise Security Architecture: From Access to Audit
Enterprise Security Architecture: From Access to Audit
 
SAP Explorer Visual Intelligence
SAP Explorer Visual IntelligenceSAP Explorer Visual Intelligence
SAP Explorer Visual Intelligence
 
Reporting _ Paul Vella _ OBI Analytics for JDE.pdf
Reporting _ Paul Vella _ OBI Analytics for JDE.pdfReporting _ Paul Vella _ OBI Analytics for JDE.pdf
Reporting _ Paul Vella _ OBI Analytics for JDE.pdf
 
Make Your Business More Flexible with Scalable Business Process Management So...
Make Your Business More Flexible with Scalable Business Process Management So...Make Your Business More Flexible with Scalable Business Process Management So...
Make Your Business More Flexible with Scalable Business Process Management So...
 
Endava Career Days Jan 2012 - Customer profile - large investment bank
Endava Career Days Jan 2012  - Customer profile - large investment bankEndava Career Days Jan 2012  - Customer profile - large investment bank
Endava Career Days Jan 2012 - Customer profile - large investment bank
 
Sematic SOA Governance Demo screen shots
Sematic SOA Governance Demo screen shotsSematic SOA Governance Demo screen shots
Sematic SOA Governance Demo screen shots
 
Function Point Analysis: Size Matters - No Matter What You Have Been Told!
Function Point Analysis: Size Matters - No Matter What You Have Been Told!Function Point Analysis: Size Matters - No Matter What You Have Been Told!
Function Point Analysis: Size Matters - No Matter What You Have Been Told!
 
Experience This... Counting an Apple iPhone Application
Experience This... Counting an Apple iPhone ApplicationExperience This... Counting an Apple iPhone Application
Experience This... Counting an Apple iPhone Application
 
Kuali OLE @ LITA Forum 2012
Kuali OLE @ LITA Forum 2012Kuali OLE @ LITA Forum 2012
Kuali OLE @ LITA Forum 2012
 
OW2 Petals Dragon SOA Linuxtag09
OW2 Petals Dragon SOA Linuxtag09OW2 Petals Dragon SOA Linuxtag09
OW2 Petals Dragon SOA Linuxtag09
 
Moving Beyond Project Level SOA
Moving Beyond Project Level SOAMoving Beyond Project Level SOA
Moving Beyond Project Level SOA
 
2008 11 18_contracts _oaug-sig
2008 11 18_contracts _oaug-sig2008 11 18_contracts _oaug-sig
2008 11 18_contracts _oaug-sig
 
Tagging Up - MMS and Taxonomy In SharePoint 2010
Tagging Up - MMS and Taxonomy In SharePoint 2010Tagging Up - MMS and Taxonomy In SharePoint 2010
Tagging Up - MMS and Taxonomy In SharePoint 2010
 
Innovative Marriage of Security and Performance in SOA Based Dynamic Enterprises
Innovative Marriage of Security and Performance in SOA Based Dynamic EnterprisesInnovative Marriage of Security and Performance in SOA Based Dynamic Enterprises
Innovative Marriage of Security and Performance in SOA Based Dynamic Enterprises
 
Anthony Carrato S O A Business Architecture
Anthony  Carrato    S O A  Business  ArchitectureAnthony  Carrato    S O A  Business  Architecture
Anthony Carrato S O A Business Architecture
 

Similar to A Guide to the SOA Galaxy: Strategy, Design and Best Practices

TH e-GIF on SOA Using Open Enterprise Architecture
TH e-GIF on SOA Using Open Enterprise ArchitectureTH e-GIF on SOA Using Open Enterprise Architecture
TH e-GIF on SOA Using Open Enterprise ArchitectureThanachart Numnonda
 
"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middleware
"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middleware"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middleware
"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middlewareinvestorrelation
 
TechEd Preconference
TechEd PreconferenceTechEd Preconference
TechEd PreconferenceSimon Guest
 
Concepts integrationandbiztalksoa andbpm
Concepts integrationandbiztalksoa andbpm Concepts integrationandbiztalksoa andbpm
Concepts integrationandbiztalksoa andbpm Sandro Pereira
 
2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...
2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...
2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...rchopra13
 
Refactoring J2EE Application for a JBI-based ESB
Refactoring J2EE Application for a JBI-based ESBRefactoring J2EE Application for a JBI-based ESB
Refactoring J2EE Application for a JBI-based ESBWen Zhu
 
Soa role in telco industry
Soa   role in telco industrySoa   role in telco industry
Soa role in telco industryPavan K
 
Security, Governance & Integration in a Cloud Connected World
Security, Governance & Integration in a Cloud Connected WorldSecurity, Governance & Integration in a Cloud Connected World
Security, Governance & Integration in a Cloud Connected WorldCA API Management
 
Oracle SOA Suite Overview - Integration in a Service-Oriented World
Oracle SOA Suite Overview - Integration in a Service-Oriented WorldOracle SOA Suite Overview - Integration in a Service-Oriented World
Oracle SOA Suite Overview - Integration in a Service-Oriented WorldOracleContractors
 
Envision IT Seminar Presentation - Microsoft Office 365
Envision IT Seminar Presentation - Microsoft Office 365 Envision IT Seminar Presentation - Microsoft Office 365
Envision IT Seminar Presentation - Microsoft Office 365 Envision IT
 
21st Century Service Oriented Architecture
21st Century Service Oriented Architecture21st Century Service Oriented Architecture
21st Century Service Oriented ArchitectureBob Rhubart
 
4.4.2013 Software, System, & IT Architecture - Good Design is Good Business:...
4.4.2013  Software, System, & IT Architecture - Good Design is Good Business:...4.4.2013  Software, System, & IT Architecture - Good Design is Good Business:...
4.4.2013 Software, System, & IT Architecture - Good Design is Good Business:...IBM Rational
 
Building a Hybrid Platform as a Service
Building a Hybrid Platform as a ServiceBuilding a Hybrid Platform as a Service
Building a Hybrid Platform as a ServiceWSO2
 
O Dell Secure360 Presentation5 12 10b
O Dell Secure360 Presentation5 12 10bO Dell Secure360 Presentation5 12 10b
O Dell Secure360 Presentation5 12 10bBruce O'Dell
 
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...CloudOps Summit
 
OreDev 2008: Software + Services
OreDev 2008: Software + ServicesOreDev 2008: Software + Services
OreDev 2008: Software + Servicesukdpe
 
Keynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your businessKeynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your businessWSO2
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services PlatformDavid Chou
 

Similar to A Guide to the SOA Galaxy: Strategy, Design and Best Practices (20)

TH e-GIF on SOA Using Open Enterprise Architecture
TH e-GIF on SOA Using Open Enterprise ArchitectureTH e-GIF on SOA Using Open Enterprise Architecture
TH e-GIF on SOA Using Open Enterprise Architecture
 
"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middleware
"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middleware"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middleware
"Oracle Insight for Investors" Educational Webcast - Oracle Fusion Middleware
 
TechEd Preconference
TechEd PreconferenceTechEd Preconference
TechEd Preconference
 
Concepts integrationandbiztalksoa andbpm
Concepts integrationandbiztalksoa andbpm Concepts integrationandbiztalksoa andbpm
Concepts integrationandbiztalksoa andbpm
 
2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...
2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...
2007: Achieving Interoperability In Systems Architecture - SOA Vision And Rea...
 
Refactoring J2EE Application for a JBI-based ESB
Refactoring J2EE Application for a JBI-based ESBRefactoring J2EE Application for a JBI-based ESB
Refactoring J2EE Application for a JBI-based ESB
 
Soa role in telco industry
Soa   role in telco industrySoa   role in telco industry
Soa role in telco industry
 
Security, Governance & Integration in a Cloud Connected World
Security, Governance & Integration in a Cloud Connected WorldSecurity, Governance & Integration in a Cloud Connected World
Security, Governance & Integration in a Cloud Connected World
 
Oracle SOA Suite Overview - Integration in a Service-Oriented World
Oracle SOA Suite Overview - Integration in a Service-Oriented WorldOracle SOA Suite Overview - Integration in a Service-Oriented World
Oracle SOA Suite Overview - Integration in a Service-Oriented World
 
soa ppt v7.ppt
soa ppt v7.pptsoa ppt v7.ppt
soa ppt v7.ppt
 
SOA
SOASOA
SOA
 
Envision IT Seminar Presentation - Microsoft Office 365
Envision IT Seminar Presentation - Microsoft Office 365 Envision IT Seminar Presentation - Microsoft Office 365
Envision IT Seminar Presentation - Microsoft Office 365
 
21st Century Service Oriented Architecture
21st Century Service Oriented Architecture21st Century Service Oriented Architecture
21st Century Service Oriented Architecture
 
4.4.2013 Software, System, & IT Architecture - Good Design is Good Business:...
4.4.2013  Software, System, & IT Architecture - Good Design is Good Business:...4.4.2013  Software, System, & IT Architecture - Good Design is Good Business:...
4.4.2013 Software, System, & IT Architecture - Good Design is Good Business:...
 
Building a Hybrid Platform as a Service
Building a Hybrid Platform as a ServiceBuilding a Hybrid Platform as a Service
Building a Hybrid Platform as a Service
 
O Dell Secure360 Presentation5 12 10b
O Dell Secure360 Presentation5 12 10bO Dell Secure360 Presentation5 12 10b
O Dell Secure360 Presentation5 12 10b
 
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
 
OreDev 2008: Software + Services
OreDev 2008: Software + ServicesOreDev 2008: Software + Services
OreDev 2008: Software + Services
 
Keynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your businessKeynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your business
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services Platform
 

Recently uploaded

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Recently uploaded (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

A Guide to the SOA Galaxy: Strategy, Design and Best Practices

  • 1. A Guide to the SOA Galaxy: Strategy, Design and Best Practices Dmitri Shiryaev Java Tools Sun Microsystems, Inc.
  • 2. Guide to the SOA Galaxy 3. JBI You are here 2. BPEL 4. ESB 1. Intro 5. Java CAPS 6. . The Answer To Everything
  • 3. Business-IT Context for SOA • Creating an IT environment to support continuous business optimization • Structures your IT applications in line with your business processes – Speeds business change – Facilitates business connections – Enchances business control • Heavy focus on flexible interconnections with carefully managed qualities of service (QoS)
  • 4. Why SOA? Channels Partners Customers Internal Users Suppliers • Inflexibility of IT Infrastructure • Complexity of Integration Projects $ $ $ $ $$ $ $ • Integration Costs $ $ $ • Time to Market $ • Limited Partnering Flexibility $ $ • Limitations of EDI $ $ $Inventory Provisioning Legacy CRM Billing Information Assets
  • 5. SOA and Web Services • Web services are most people's first and only exposure to SOA • Only one manner of service access – Message-oriented middleware (MOM) – CORBA, RMI, DCOM, raw sockets, Email etc. • SOA architectures tend to be best implemented using web services as the middleware technology
  • 6. Why Services? • SOA = an architectural principle for structuring systems • SOA emphasizes the de-coupling of system components • New services are created from existing ones in a synergistic fashion • Strong service definitions are critical • Services can be subsequently re-composed in response to changing business requirements
  • 7. What Are Services? • A function accessed using XML message exchange • Message exchanges have well known exchange patterns • Services are self-describing, using metadata (WSDL)
  • 8. What Does a Service Do? • Transform data • Route messages • Query databases • Orchestrate conversations • Apply business logic • Apply business policy • Handle business exceptions • Solicit approvals • …
  • 9. How Is a Service Implemented? • XSLT • Enterprise JavaBeans™ (EJB™) technology • BPEL • SQL • XQuery • Routing table • Business rules • EDI transform • …
  • 10. Benefits of SOA • Flexible (Agile) IT – Adaptable to changing business needs • Faster time to market – Reuse existing code, minimize new development • Business and process-driven – New business opportunities • Greater ROI – Leverage existing IT asset
  • 11. SOA Layers Access Layer Process Layer Service Layer Resource Layer
  • 12. The “Move” to SOA Non- Integrated Integrated and Shared
  • 13. The Shift • SOA is a combined effort between IT and the business units er SOA Proc Lay ess e Defi Layer rvic vider Se ro ner P IT Biz Units
  • 14. Pre-SOA Scenario Credit Mortgage Card Balance Fraud Credit Credit Balance Interest Check Detection Check Check Check Calc Back-End Partner Partner Back-End Customer Customer System Credit Data Credit System Data Data Data
  • 15. SOA-Enabled Scenario Auto Mutual Loans Bill Pay Stocks Funds Credit Card Mortgage Reusable Services Payment Trade Credit Fraud Access Interest Balance Customer Management Execution Check Detection Service Calc Check Data Service Service Service Internet Increased Agility Partner Credit Back-End Back-End Customer Data Data System System
  • 16. SOA Architectural Big Rules Coarse Grained Business Services Document-based Mostly Async Conversational Reliable Secure/Identity Policy Driven Registered and Retrieved WSDL Described BPEL Orchestrated JBI-based
  • 17. n esig ed SOA Architectural Big Rules D Focu s Coarse Grained Business Services XML Document-based Mostly Async Conversational
  • 18. i es alit ed SOA Architectural Big Rules Qu us Foc Reliable Secure/Identity Policy Driven Registered and Retrieved
  • 19. ds n d ar d SOA Architectural Big Rules Sta cuse Fo WSDL Described BPEL Orchestrated JBI-based
  • 20. Guide to the SOA Galaxy You are here 3. JBI 2. BPEL 4. ESB 1. Intro 5.Java CAPS 6. The Answer To Everything
  • 21. Need for Business Process • Developing the web services and exposing the functionality is not sufficient • We also need a way to orchestrate these functionality in the right order • Example: – Concert ticket purchase Web service has 3 operations, which need to be performed in the following order • Getting a price quote • Purchase a ticket • Confirmation and cancellation
  • 22. BPEL (Business Process Execution Language) • XML-based language used to specify business processes based on Web Services • BPEL processes describe – Long running, stateful, transactional, conversations between two or more partner web services • BPEL is key to implementing SOA Big Rules – Conversational – Mostly Async – XML Document-based – Orchestrated
  • 23. BPEL “Fixes” WSDL • WSDL: unordered set of operations – Operations are message exchanges • Need rules for ordering • Support for sequencing • Support for concurrency • Choreography with external entities
  • 24. BPEL Is a Web Service Sequencing Language • Process defines “conversation” flow chart – Conversation consists of only WSDL-described message exchanges – BPEL provides and consumes WSDL defined services • Process instance is a particular conversation following the chart – Execution systems can support multiple concurrent conversations
  • 25. BPEL Works With WSDL • Web services are described in WSDL – Operations are message exchanges – Each operation represents an individual unit of action • We need a way to orchestrate these operations with multiple web services in the right order to perform a Business process – Sequencing, conditional behavior etc. • BPEL provides standard-based orchestration of these operations
  • 26. BPEL: Relationship to Partners WSDL Inventory Checker Service Credit checker Service Customer Service Orchestrating Process Another Partner (BPEL) Service
  • 27. BPEL Document Structure <process> <!– Definition and roles of process participants --> <partnerLinks> ... </partnerLinks> <!- Data/state used within the process --> <variables> ... </variables> <!- Properties that enable conversations --> <correlationSets> ... </correlationSets> <!- Exception handling --> <faultHandlers> ... </faultHandlers> <!- Error recovery – undoing actions --> <compensationHandlers> ... </compensationHandlers> <!- Concurrent events with process itself --> <eventHandlers> ... </eventHandlers> <!- Business process flow --> (activities)* </process>
  • 28. BPEL Activities Basic Activities Structured Activities • <invoke> • <sequence> • <receive> • <while> • <reply> • <pick> • <assign> • <flow> • <throw> • <scope> • <wait> • <compensate> • <empty> • <switch> • <link>
  • 29. BPEL: Basic Activities • <invoke> – To invoke a one-way or request/response operation on a portType offered by a partner • <receive> – To do a blocking wait for a matching message to arrive – Can be the instantiator of the business process • <reply> – To send a message in reply to a message that was received through a <receive> – The combination of a <receive> and a <reply> forms a request-response operation on the WSDL portType for the process
  • 30. BPEL: Basic Activities • <assign> – Can be used to update the values of variables with new data • <throw> – Generates a fault from inside the business process • <wait> – Allows you to wait for a given time period or until a certain time has passed • <empty> – Allows you to insert a "no-op" instruction into a business process – This is useful for synchronization of concurrent activities, for instance
  • 31. BPEL: Structured Activities • <sequence> – Perform activities in sequential order • <flow> – Perform activities in parallel • <switch> – Conditional choice of activities • <scope> – Enclose multiple activities in a single scope
  • 32. Example Business Process Receive <PO> <sequence> Invoke <InventoryService> Invoke <CreditService> <flow> Reply <Invoice> </sequence>
  • 33. Authoring BPEL? • BPEL is difficult to write – Programming in XML: arghhhh! – XML Schema • Real-world schemas are huge and complex • Run the other way if you can – WSDL extensions • As if WSDL weren’t confusing enough • BPEL is an execution language only – Not a modeling notation
  • 34. BPMN (Business Process Modeling Notation) • Notation for business process diagrams – Based on flowcharting techniques – Has special considerations for Web Services – Readily understandable by... • Business users • Business analysts • Software developers • But, BPMN and BPEL are complimentary – BPEL: execution language without a notation – BPMN: notation with a comprehensive mapping to BPEL
  • 36. Guide to the SOA Galaxy 3. JBI 2. BPEL You are here 4. ESB 1. SOA 5. Java CAPS 6. The Answer To Everything
  • 37. SOA – Decouples service consumers from providers – Separates business logic from services – Enables dynamic service discovery/use – Appealing to large enterprises (flexible/scalable) Business integration – Application to application (A2A) – Business to business (B2B) – Business process management (BPM) – Many architectures, technologies, vendors
  • 38. What is JBI (JSR-208)? ● One of the biggest motivation for SOA is to reduce the cost of application integration ● Standard-based, pluggable infrastructure – Service Engines: Provides business logic and integration services – Binding Components: Provides communications protocols • Composite, event-driven services • Extensible administration • Loose coupling via WSDL message exchanges
  • 39. JBI (JSR-208) – Standardizes: • A Java technology-based Extensible Meta-container • Installable components (binding components and service engines) • Packaging/deployment (service units and service assemblies) • Normalized message routing (WSDL-2.0 based) • Component/deployment management (Ant and JMX™ API) • And more
  • 40. Runtime: Java EE Platform and Java Business Integration • Java Business Integration serves as messaging infrastructure – Java EE web services interact through Java Business Integration – Java Business Integration bindings allow remote consumers and providers – Add other service technologies as Java Business Integration components • Transparent to programmer using Java EE technology – Reuse without re-coding
  • 42. JBI—Service Engine • Hosts business logic implementing services • Exposes service endpoints – Agnostic of protocol and transport • Engages in Message Exchange Patterns – Normalized messages—target remote service • Is a target for deployment—a container – Engine-specific artifacts – May cause endpoint activation
  • 43. JBI—Binding Component • Handles protocol-specific message re- formatting – Deals with wire transport of messages – E.g. SOAP/HTTP, FTP, SMTP, JMS, ebMS, AS2, etc. • Should contain no business logic • Exposes proxy endpoints for remote services • Proxies JBI services to remote consumers • (Re)Used by multiple service engines
  • 44. JBI Administration • Standard installation of components – Portable archive format • Service Assembly (SA) – Portable package of a composite service • Service Unit (SU) – Each deployed to one component type • Lifecycle Management – Start/stop/shutdown
  • 45. JBI—Service Assembly Deployment SA=Proxy Service BPEL Engine JBI.xml SU activity.xml 1 XSLT Engine transform.xslt SU 2 SOAP/HTTP endpoint.xml Binding SU 3
  • 46. Guide to the SOA Galaxy 3. JBI You are here 2. BPEL 4. ESB 1. Intro 5. Java CAPS 6. The Answer to Everything
  • 47. Enterprise Service Bus • Distributed services architecture • Enterprise-grade communications backbone for reliable messaging • Intelligent routing and content-based routing • Process coordination • Flexible security framework • XML transformation • Management
  • 48. Project Open ESB • Open source, based on the JSR-208 RI • + Multiple JBI instances (+ synchronization) • + Distributed normalized message routing/proxying • + Central administration (+ CLI and Web Console) • And more
  • 49. JBI and Project Open ESB • Java Business Integration – Service Unit – Component – Service Assembly – Standardized MBeans • Project Open ESB – Distributed JBI – Centralized Management
  • 50. Guide to the SOA Galaxy 3. JBI 2. BPEL 4. ESB You are here 1. Intro 5 Java CAPS. 6. Answer to Everything
  • 51. Composite Applications • A composite application is a collection of existing and independently developed applications and new business logic, orchestrated together into a brand new solution of a business problem that none alone can solve • Such an application looks to the user like a regular new interactive application, yet in reality it may be only 10 percent new and 90 percent an assembly of pre-existing components or data; the “glue” that brings a composite application together is integration technology
  • 52. Sun's Vision for the SOA Platform
  • 54. Java ES and Suites Over 1 Million TM Java Enterprise System Java ES Subscribers Composite Communications Management Application Platform Availability Management Tools Identity Developer Tools Application Platform B2B Web ESB Infrastructure Storage + STK
  • 55. Java Composite Application Platform Suite
  • 56. Positioning Java CAPS Unique Combination of: ● Unified ● Comprehensive ● Agile Value Proposition: The industry's most complete, secure, unified and scalable platform for the development, deployment and management of enterprise integration and composite applications
  • 57. Open ESB and Java CAPS Open ESB Java CAPS Suites Entry Level, Standards-Based ESB Fifth-generation, ESB-based JBI Architecture Integration Suite with full Available: 1H 2006 functionality Available NOW Use: For Use: Run Your Develop Enterprise on ers this.
  • 58. Guide to the SOA Galaxy 3. JBI 2. BPEL 4. ESB 1. Intro 5 Java CAPS. You are here 6. The Answer (finally) To Everything
  • 59. The Answer to Everything... Tools
  • 60. SOA Tool NetBeans Enterprise Pack 5.5 Rapid Architecture and Design of Services
  • 61. Overview • Will focus on higher level features that are important to building enterprise applications..for example.... – SOA • Composite Application Building • Business Process Orchestration • Integration • Rich Visual XML Tools – Application Lifecycle Management • UML Modeling • Project Management • Automatic Project Wiki Documentation
  • 62. Enterprise Customer Need Design of Composite Services
  • 63. Rapid Architecture and Design of Services SOA • Enterprise Platform J2EE 1.5 Sun Java System Application Server XML Data web Services Portability Application Sun Web Services Portability Developer Pack
  • 64. Visual Service Orchestration • Service Orchestrations – Model Business process in the Orchestration Designer – Generate deployable BPEL based orchestrations – Round trip engineering between visual Web service model and BPEL process – Import and export BPEL
  • 66. Summary • SOA enables flexible and agile enterprise application architecture • JBI provides standard based SOA framework • BPEL enables standard based orchestration of services • NetBeans Enterprise Pack is the tool to use for building SOA-enabled enterprise applications
  • 67. Call For Action • Try “free” Java Studio Enterprise for building industry strength Web services • Try Technology Preview version of NetBeans Enterprise Pack 5.5 for integrating SOA-enabled services • Join Sun Developer Network (SDN) for up- to-date SOA information
  • 68. Resources • SDN (Sun Developer Network) SOA/WebServices – http://java.sun.com/reference/soawebservices/ • Java Studio Enterprise – http://developers.sun.com/prodtech/javatools/j senterprise/ • NetBeans Enterprise Pack 5.5 – http://enterprise.netbeans.org
  • 69. Sun Developer Network Empowering the Developer Increasing developer productivity with: Technical articles Tutorials and sample codes Monitored forum support Community involvement through user groups, events, and conferences And more... http://developer.sun.com