bpel hw br indicthreads raghukodali

Upload: rajianagh

Post on 10-Apr-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    1/44

    Integrating BPEL, Workflow

    &

    Business Rules

    Raghu R Kodali

    Consulting Product Manager, & Evangelist

    Oracle Fusion Middleware

    Oracle USA

    Author Beginning EJB 3 Application Development (Apress)

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    2/44

    Agenda

    Why SOA ? Business Process Orchestration using WS-BPEL

    Business Process Agility with Business Rules Implementing Business Rules

    Integrating Business Processes and Rules Business Process & Human Workflow

    Best Practices

    Whats new ?

    WS-BPEL 2.0

    BPEL4People

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    3/44

    Agenda

    Why SOA ? Business Process Orchestration using WS-BPEL

    Business Process Agility with Business Rules Implementing Business Rules

    Integrating Business Processes and Rules Business Process & Human Workflow

    Best Practices

    Whats new ?

    WS-BPEL 2.0

    BPEL4People

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    4/44

    Why SOA ? - Customer Needs

    Increasingly Complex Infrastructure

    Increasingly Demanding UsersEnd-to-End ProcessesShorter Change CyclesBetter Insight and Auditing

    IT

    Heterogeneous SystemsSilos

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    5/44

    Why SOA ? - The Reality Of ModernBusiness

    HeterogeneousEnvironments

    Mergers & Acquisitions

    Multi Channel Businesses

    Data Dispersion

    Hard coding

    Lack of Standards

    The Result:Inflexible business processesUninformed business ownersCostly development and

    maintenance

    Web

    Services

    E-BusinessSuite

    Siebel

    LegacySAP

    Suppliers

    PeopleSoft

    BusinessIntelligence

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    6/44

    Why SOA ?

    Web Solution SOA Solution

    More Interoperable

    More Modular Business Processes

    Richer Clients

    PackagedApplications

    FulfillmentCenter

    CustomerService

    BusinessPartners

    1

    2

    3

    1

    2

    3

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    7/44

    ERP/Legacy Apps

    Custom Apps& Services

    Web services

    WSDL/WSIF

    XML/XML Schema

    SOAP JCA JMS

    BUSINESSSERVICES

    More Interoperable

    Why SOA ? - Standards

    Process FlowLogic

    XSLT/XQuery

    BPEL

    More Adaptable

    PROCESSORCHESTRATION

    PORTAL JSR-168

    USERINTERFACE

    Struts/JSF

    Portal

    Web Application

    API

    WS

    Richer Experience

    PKIDashboards

    BAM

    MONITORING

    JMX

    Fusion Effect

    WS-Security

    SERVICE BUS

    SecurityReliabilityLoggingFailover

    Dynamic Routing

    WS-Policy, SAML

    Web Services Mgmt

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    8/44

    Agenda

    Why SOA ? Business Process Orchestration using WS-BPEL

    Business Process Agility with Business Rules Implementing Business Rules

    Integrating Business Processes and Rules Business Process & Human Workflow

    Best Practices

    Whats new ?

    WS-BPEL 2.0 BPEL4People

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    9/44

    Composite Applicationrequirements

    PaymentProcessing

    Schedule Delivery of Modem

    InventoryMgt

    ManualIT Setup

    Customer

    Exception Mgt

    .NET

    Portal

    Web

    SAP

    Mainframe

    Switches

    ManagementConsoleReporting

    Goals Compress the total processing time

    (Real Time)

    Connectivity to systems, services andpeople

    Better visibility (Auditing, Reporting)

    Ability to easily change the process

    Incremental roll out

    There is a continuous need for enterprises to tie disparate applications andservices into end-to-end process flows.

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    10/44

    Example of composite application

    DSL Activation Processing

    BPEL

    submit

    OrderJSF

    Validate

    Customer Profile

    Setup 1 Setup 2

    ?

    ACTIVATION FLOW

    CREATE

    B

    AM

    6000 Devices

    Customer(DataHub)

    BPEL

    Exception Management

    Portal Order Hospital

    (Human Workflow)

    Promotion Management

    (Business Rules)

    Exception Rate

    SLA Management?

    Order Validation

    (EJB 3.0)

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    11/44

    Example: DSL Provisioning atBelgacom

    Application for the provisioning and activation of DSL lines. Belgacom is processing up to15,000 DSL provisions / day through SOA and BPEL processes which link their customer

    interfaces and OSS layer, managing activation and repair.

    Struts

    BPEL

    Telco Activation Services

    DSL Activation Manager

    6000+ network equipment endpoints (SLEEgateway)

    SDSL Activation Manager

    Sales/Customer ServiceInterfaces and Order Review

    Exception Management

    Billing Services

    Account Management Services

    Reporting Services

    Register for NewServiceSelf-service web appCall Center

    ApplicationServer

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    12/44

    What is BPEL?

    BadCredit !

    start

    end

    Markup language for composing a set of discreteservices into an end-to-end process flow

    10+ years of R&D fromMSFT and IBM

    SOAP but also Java, JCA

    Rich Flow Semantics

    Optimized Bindings

    XPATH+XSLT+XQuery

    WS-Security

    A Process is a Service

    Star LoanStar LoanUnited LoanUnited Loan

    Credit CheckCredit Check

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    13/44

    BPELHistory

    2000/05

    XLang(Microsoft)

    2001/03

    BPML(Intallio et al)

    2001/05

    WSFL(IBM)

    2001/06

    BPSS(ebXML)

    2002/03

    BPEL4WS 1.0(IBM, Microsoft)

    BPEL4WS1.1(OASIS)

    2002/06 2003/04

    WSCI(Sun et al)

    WSCL(HP)

    2002/08

    Proprietary Standard

    2006

    WS-BPEL 2.0(OASIS)

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    14/44

    DEMO

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    15/44

    Agenda

    Why SOA? Business Process Orchestration using WS-BPEL

    Business Process Agility with Business Rules Implementing Business Rules

    Integrating Business Processes and Rules Business Process & Human Workflow

    Best Practices

    Whats new ?

    WS-BPEL 2.0 BPEL4People

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    16/44

    Rules are a way to specify conditional actions orpolicies

    If salary is less than $10,000 then deny loanapplication

    If miles flown is greater than 50,000 then grant Gold

    status

    Rules Can be represented as simple if-then statements Are declarative, not procedural Often generated by GUI programs

    Rules executed on Rules Engines Facts are input Facts analyzed per Rules Actions conditionally executed

    or results returned

    facts

    What areBusiness Rules ?

    results

    Rules

    Engine

    Application

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    17/44

    Business Rules Key Benefits

    Agility fast time to market Goal: Business analysts, not programmers write Rules Business policy changes deployed instantly Rules reuse

    Transparency -- directly viewable by the businessanalyst

    Rules clearly describe associated policies

    Cost reduction

    Business analysts can directly create/update Rules More efficient interface for describing policy Cost reductions especially dramatic during maintenance

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    18/44

    When Rules are Attractive

    Applications requiring agility Frequently changing (legal) regulations Frequent policy changes to reflect market changes Requirements for high levels of customization

    Industries Insurance, health care Finance & risk analysis Operations management Call centers

    Service Oriented Architectures

    Rules Engine are particularlyattractive in SOA applications

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    19/44

    Business Rules Architecture

    Rules enabledapplications

    Application

    run-time logic

    results

    facts Rules

    Engine

    RuleSession

    Class

    Rulesrepository Rules

    customizing

    application

    Rule Author

    facts Facts can be Java objects or XML

    RulesSDK

    & l

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    20/44

    Decision Service(Rules)

    BPEL & Rules - UsageScenarios

    Dynamic processing Intelligent routing

    Validation of policies within

    process Constraint checks

    Ad-hoc Workflow

    Policy based task assignment Various escalation policies

    Load balancing of tasks

    Rules engines can be invoked as a Decision Service from

    a BPEL process.

    Business Process(BPEL)

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    21/44

    Decision Service - Concepts

    Enables users to easily wire any Rules engine with a BPEL

    process

    Key ideas: Abstracts proprietary rule engine apis via a standard web

    service interface. Will work with any rules engine.

    Ex: Oracle Business Rules and iLog JRules

    Access to rules repository at design time to enable user tobrowse rule sets

    Supports both stateless and stateful interaction patterns Example: ExecuteFunction, AssertFacts, WatchFacts etc.

    Implementation Details Generates specific WSDL based on rule set being invoked Metadata about rule engine and repository captured in .decs

    XML file in BPEL project Supports both SOAP and WSIF bindings

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    22/44

    JSR -94

    Java API for rule engines Set of rule engine operations

    Parsing rules, adding objects to rules engine, firing rulesand getting results from rules engine

    Doesnt prescribe a rule language

    Facilitates runtime interoperability between ruleengines

    Targets Java SE platform

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    23/44

    DEMO

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    24/44

    Agenda

    Why SOA? Business Process Orchestration using WS-BPEL

    Business Process Agility with Business Rules Implementing Business Rules

    Integrating Business Processes and Rules Business Process & Human Workflow

    Best Practices

    Whats new ?

    WS-BPEL 2.0 BPEL4People

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    25/44

    Human Workflow Requirements

    Task assignment toUsers, roles, groups

    Task routing various flow patterns andassignment rules

    Notification to users/groups -Email, Voice, Pager, SMS Escalation andDelegation rules

    Task History and Audit,Productivity Reports

    Customizable Worklist,

    Task forms, attachments

    http://images.google.com/imgres?imgurl=http://sg.yimg.com/i/aa/mobile/3/mail_sms_icon.gif&imgrefurl=http://asia.mobile.yahoo.com/&h=44&w=50&sz=3&tbnid=xYDBzTKatwYJ:&tbnh=44&tbnw=50&start=86&prev=/images%3Fq%3Dmobile%2Bphone%2Bicon%26start%3D80%26hl%3Den%26lr%3D%26sa%3DN
  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    26/44

    Workflow Services Exchange Patterns

    Worklist (tasks, forms, attachments, reports)

    List work items

    Complete task

    Get weeklyproductivity report

    Assign Task

    Task Complete

    Assign tasks to role or group (fromdirectory)

    BPEL Process

    Flow patterns, Routing rules

    Get Approvals

    All ApprovalsComplete

    Change routing

    BPEL Process

    Escalation and Delegation rules

    Escalate Task

    Task Resolved

    Notify manager

    BPEL Process

    http://images.google.com/imgres?imgurl=http://sg.yimg.com/i/aa/mobile/3/mail_sms_icon.gif&imgrefurl=http://asia.mobile.yahoo.com/&h=44&w=50&sz=3&tbnid=xYDBzTKatwYJ:&tbnh=44&tbnw=50&start=86&prev=/images%3Fq%3Dmobile%2Bphone%2Bicon%26start%3D80%26hl%3Den%26lr%3D%26sa%3DN
  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    27/44

    Workflow as a Service

    Worklist

    AssignTask

    TaskComplete

    Human WorkflowService

    (1) assign tasks to a user/role

    (2) wait for task completion as part of an end to end process flow

    UpdateTask

    BPELProcess

    WSDL Contract

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    28/44

    BPEL & Human Workflow Services

    BPEL

    BPEL Human Workflow services enable you to interleave humaninteractions and connectivity to systems/services into a single end toend process flow

    System Human

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    29/44

    BPEL & Human Workflow Services

    Identity Service

    (Users, Roles)

    User MetadataService(Rules,work queues )

    Task QueryService

    (Task listing,Reporting )

    Task AssignmentHistory/Audit

    NotificationService(Email & wireless)

    Task ManagementService(Task data, forms,Attachments)

    Notification Channels

    Email

    AS Wireless(Voice, SMS, Pager)

    Identity Management

    OID, LDAP, JAZNOracle

    DB

    BPEL Process

    Task RoutingService(Assignment,Dispatching)

    Portal

    Worklist

    Email client

    Workflow Services

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    30/44

    DEMO

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    31/44

    Agenda

    Why SOA? Business Process Orchestration using WS-BPEL

    Business Process Agility with Business Rules Implementing Business Rules

    Integrating Business Processes and Rules Business Process & Human Workflow

    Best Practices

    Whats new in BPEL, Workflow and Rules

    WS-BPEL 2.0 BPEL4People

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    32/44

    Best Practices for Defining an SOA Strategy

    SOAStrategy?

    1. Portfolio of Services

    2. Enterprise Service Bus

    3. Process Orchestration,Workflow and Rules

    4. User Interface

    5. Business Activity

    Monitoring

    6. Security andManagement

    6. PerformanceScalability

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    33/44

    Step 1 | Portfolio of Services

    .NET, SAP, Mainframe, Oracle,Retek, PeopleSoft, Siebel, etc

    Java

    BEST PRACTICES

    Contract/Interface First

    Coarse Grain Documents

    Asynchronous Interactions

    Undo/Cancel Operations

    Versioning WS-I, Wrapped Document

    Style

    WSIF Binding to Java, JCA

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    34/44

    Step 2 | Enterprise Service Bus

    .NET, SAP, Mainframe, Oracle,Retek, PeopleSoft, Siebel, etc

    Enterprise Service Bus

    Java

    BEST PRACTICES

    UDDI Registry

    JCA Adapters

    Integration with PolicyManagement Framework

    Service VirtualizationLogical Naming

    Differed, Reliable Delivery(Configurable)

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    35/44

    Step 3 | Process Orchestration, Workflow andRules

    .NET, SAP, Mainframe, Oracle,Retek, PeopleSoft, Siebel, etc

    Enterprise Service Bus

    Java

    BPEL Workflow Rules

    BEST PRACTICES

    fx

    BPEL

    XSLT Transformation

    Human Workflow Service

    Rules Service

    Notification Service Error Hospital Service

    ESB Binding and Wiring

    Tracing and Debugging

    Iterative Development

    Unit Testing

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    36/44

    Step 4 | User Interface

    .NET, SAP, Mainframe, Oracle,Retek, PeopleSoft, Siebel, etc

    Enterprise Service Bus

    Java

    Portal, JSF Applications, .NET, Microsoft Office

    BPEL Workflow Rules

    BEST PRACTICES

    fx

    MVC BPEL is a Model(Loose Coupling)

    Workflow Service is a Model

    JSF or Struts

    WSRP, JSR-168

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    37/44

    Step 5 | Business Activity Monitoring

    .NET, SAP, Mainframe, Oracle,Retek, PeopleSoft, Siebel, etc

    Enterprise Service Bus

    Java

    Portal, JSF Applications, .NET, Microsoft Office

    BPEL Workflow Rules

    BEST PRACTICES

    fx

    PKI First

    Sensors to Collect Eventswithout Process LogicChanges

    Real-time Dashboard

    Alert/Actions(Fusion Effect)

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    38/44

    Step 6 | Security Policy Management

    .NET, SAP, Mainframe, Oracle,Retek, PeopleSoft, Siebel, etc

    Enterprise Service Bus

    Java

    Portal, JSF Applications, .NET, Microsoft Office

    BPEL Workflow Rules

    BEST PRACTICES

    fx

    WS-Policy, WS-Security

    Change Policy withoutChanging Endpoint

    Integrated with ESB(Multi-binding Support)

    Agent and Gateway Mode

    Support for Java and .NET

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    39/44

    Step 7 | Performance, Scalability andReliability

    .NET, SAP, Mainframe, Oracle,Retek, PeopleSoft, Siebel, etc

    Enterprise Service Bus

    Java

    Portal, JSF Applications, .NET, Microsoft Office

    BPEL Workflow Rules

    BEST PRACTICES

    fx

    Asynchronous Interactions

    WS-Addressing Correlation

    Support for Large XMLDocuments

    Stateless Architecture JCA and Java Binding

    Batch API

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    40/44

    Agenda

    Why SOA? Business Process Orchestration using WS-BPEL

    Business Process Agility with Business Rules Implementing Business Rules

    Integrating Business Processes and Rules Business Process & Human Workflow

    Best Practices

    Whats new ?

    WS-BPEL 2.0 BPEL4People

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    41/44

    Whats new in WS-BPEL 2.0 ?

    New activity types (if-then-else, repeatUntil, validate, forEach,extensionActivity)

    Completion condition in forEach activity

    Variable initialization

    XSLT for variable transformations (New XPath extensionfunction bpws:doXslTransform)

    XPath access to variable data (XPath variable syntax$variable[.part]/location)

    XML schema variables in Web service activities (for WS-I doc/litstyle service interactions)

    Locally declared messageExchange (internal correlation of

    receive and reply activities Clarification of Abstract Processes (syntax and semantics)

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    42/44

    Whats BPEL4People?

    Currently no standard that covers serviceorchestration and user interactions

    Extension to WS-BPEL

    Proposed by IBM and SAP

    Support usecases that involve people withbusiness processes

    People activities Task assigned to a user and user is required to perform

    certain action

    People links Group of people associated with a role

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    43/44

    AQ&Q U E S T I O N SQ U E S T I O N SA N S W E R SA N S W E R S

  • 8/8/2019 BPEL HW BR IndicThreads RaghuKodali

    44/44

    Integrating BPEL, Workflow

    &

    Business Rules

    Raghu R Kodali

    Consulting Product Manager, & Evangelist

    Oracle Fusion MiddlewareOracle USA

    Author Beginning EJB 3 Application Development (Apress)