IBM Proof of Technology Discovering the Value of SOA with WebSphere Process Integration © 2005 IBM Corporation SOA on your terms and our expertise WebSphere Integration Developer v6.0 Component Implementation
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 2 WebSphere Process Server V6 – Components SOA Core Service Component Architecture Business Objects Common Event Infrastructure Human Tasks Business State Machines Business Rules Business Processes Service Components WebSphere Application Server (J2EE Runtime) Supporting Services Interface Maps Business Object Maps Relation- ships Selectors Mediation (ESB)
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 3 WebSphere Integration Developer – Key Features Component types that are wired together in Assembly Editor Business Processes Mapping Components Business Rules Business State Machines Human Tasks Selectors A s s e m b l y D i a g r a m ExportsImports Resource Adaptors Web ServicesEJBs Java J2EE Artifacts Reuse Used in Component Creation Business Event Monitoring Visual Snippets Component Interfaces Business Objects
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 4 Agenda How new components are created in WID? A Tour of Component Development Tools
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 5 Define and Implement Components Two ways to define components From the Assembly Diagram From the Component Tree
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 6 New Components – From Assembly Editor Open Module in Assembly Diagram Editor Double click on the Module Drag and drop Component from the palette Add Interface/References and generate implementation Component Editor opens and Component appears in the Component tree
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 7 New Components – From Navigator Lunch a New Component Wizard from the Navigator New Module Wizard is launched Asks if new or exiting interface A Component Editor is launched Component appears in the Navigator
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 8 Components from Existing Assets Java Objects Enterprise Java Beans Web Services And anything else you can get to via Java, EJBs or Web Services…
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 9 Component from Java Drag and drop Java class on Assembly Diagram Creates a Java Component in Navigator Creates a Java Component in Assembly Diagram
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 10 Component from EJB Drag and drop Session EJB on Assembly Diagram Creates an Import with Session EJB binding in Navigator Creates a EJB Import in Assembly Diagram
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 11 Component from Web Service Demo Next Import Web Service or drag/drop WSDL file from file system (i.e. Windows Explorer drag- drop into workbench) Creates Web Service (port) in Navigator Creates a EJB Import in Assembly Diagram
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 12 Define New Components Selector BPEL Process Business State Machine Human Task Business Rule Visual Snippets Demo Next
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 13 Agenda How new components are created in WID? A Tour of Component Development Tools
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 14 Traditional Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 15 WebSphere Process Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 16 WebSphere Process Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 17 WebSphere Process Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 18 Composite Business Processes get Approved Approved/ Denied If Approved then Send letter offering gold If NOT Approved Send letter offering Credit counseling service Human intervention on suspect applications to prevent fraud Adapting to business events Sell additional services based on customer profile Call Credit Rating service from an existing application Enable rapidly changing customer decision point Flexibly building business processes based on standards Human Task Business State Machine Java Application Imported EIS System WS-BPEL Business Process Business Rules
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 19 Resource Adaptors Web ServicesEJBs Java J2EE Artifacts WebSphere Integration Developer – Components Artifacts* Assembled in Assembly Editor *Java Component not shown Business Processes Mapping Components Imports Business State Machines Human Tasks Selectors A s s e m b l y D i a g r a m Exports Business Rules Used in Component Creation Business Event Monitoring Visual Snippets Component Interfaces Business Objects
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 20 Process is a directed graph of BPEL Activity Nodes that represents a single business activity There are two types of Processes 1.Short-running Single transaction per Process Basic Process Choreography 2.Long-running Transaction scope at Activity level Persistent - therefore interruptible Advanced Process Choreography (such as asynchronous and Human Activities Compensation Activities undo executed Activities Process Component DB Short-running Process DB Maintains execution state in database Long-running Process Business Processes
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 21 Process Editor Palette - Contains activity icons which can be dragged-and- dropped on the canvas Variables Area - Contains process variables. Activities Area - The area process where the process is assembled Action-bar - Contains actions that are relevant to an activity Partners Area - Contains the Interface Partners and Reference Partners Details Area - Displays properties that are relevant to the object that is selected on the canvas Correlation Sets Area - Contains the correlation sets are listed. Palette Variables Activities Action-bar Reference Partners Correlation Sets Interface Partners Details Business Processes
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 22 Process Component – What’s New? BPEL standard: BPEL4WS 1.1 and a draft version of the WS- BPEL 2.0 Compensation standard Full XPath 1.0 support (i.e. for expressions) Variables XSD type and elements Scoped New Activities: Scopes Re-throw Compensate Removed Activities: Transform New Handlers: Event, Compensation Based on a Scope or Activity Links crossing activity boundaries Assign activity improved Event Handler Compensation Handler Scope Business Processes
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 23 WS-BPEL 2.0 Elements Process Correlation Sets Partner Links/PartnersVariables Fault Handlers Event Handlers * Receive Reply Invoke Assign (Re) Throw ! TerminateWait Empty CompensateSequence Switch While Flow Pick Scope Compensation Handler at scope level x Business Processes
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 24 Two Styles of Service Choreography Business Processes Traditional Business Processes Full support for WS-BPEL Import from WebSphere Business Modeler Business State Machines Event-driven Business Processes Full support for State Machine programming model States, Events, Transitions, Actions, Guards, … State Machine Authoring / Debugging / Logging Business Processes
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 25 Business Process WS-BPEL compliant business process engine Simplified Process Editor Optional simplification of terms Generic Business Process Operations / Parameters Service Implementation Details hidden Transactions / Compensation Full XPath 1.0 Support Business Processes
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 26 Business State Machines State Machine Implementation Based on UML 2.0 State Machine Models Event driven business processes Creates WS-BPEL under the covers Simple/Complex States Entry/Exit Transitions Events Actions (invokes) Guards Timeout Business State Machines
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 27 Business State Machine Editor Transition Events (Partner Link) Action (Logic) Guard (Condition) State Entry (Logic) Exit (Logic) Composite States Time-out Based on UML 2.0 State Machine Logic embedded in Transitions Guards Outbound Partner Links or inline Events are BPEL Partner Inbound Links Business State Machines
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 28 Human Tasks Component A stand-alone Component not restricted to invocation form a BPEL Process *Machine to Human Component creates a work item for Human interaction (WS-BPEL) Human to Machine Human interaction invokes a Component (i.e. Business State Machine) Human to Human Human interaction invokes a Component which creates a work item for another Human Human Tasks * classic, typical “staff” workflow activities.
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 29 Human Task Editor General Properties Staff Plug-in Provider, Calendar, etc.. Permission Settings Specify Verb and Parameters for Roles Client Settings Web, Portal interface Escalations Settings Defines escalation actions and notification Staff Assignment -> Notification Work Item Priority Aging General Properties Permission Settings Client Interface Escalation Settings Human Tasks
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 30 Business Rules Component – Rule Group Rule Group aggregates rules (Rule Sets or Decision Tables) with the same interface Rule Sets and Decision Tables is where the rules are implemented For each rule we define a date/time range for when a business rule is going to be invoked Date\time may be specified As the Current Date, Supplied by Java snippet “Mined” from the input parameters via Xpath Rule implementations can be “scheduled” for a point in the past, present, or future i.e. Able to process a claim from the past Rule Set Editor Decision Table Editor Business Rules
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 31 Business Rules – Rule Set and Decision Table Rule Set Consists of a set of if/then rule statements Templates Conditions and actions Which aspects of the rule can be modified at runtime User interface to modify rules Rule Sets are created from the templates Decision Table Rule Set in a table format Rule Set Editor Decision Table Editor Business Rules
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 32 Selector Component Selector determines dynamically which implementation of a target destination to invoke Selection is based on a Selector Algorithm Framework for custom selector algorithms The default Selection is date based Allows new implementations of target destinations to be added dynamically Selector Editor For each operation on the interface add a sequence of time slots Each time slot is associate with a Destination which must be a SCA destination Assembly Diagram No wiring is required to the destination components Selector is pointing at its components using “dynamic wires” Selector Editor Selector Component Selectors
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 33 Selector Administration Console Selector Editor Selector Administration Console Selectors
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 34 Resource Adaptors Web ServicesEJBs Java J2EE Artifacts WebSphere Integration Developer – Components Artifacts* Assembled in Assembly Editor *Java Component not shown Business Processes Mapping Components Imports Business State Machines Human Tasks Selectors A s s e m b l y D i a g r a m Exports Business Rules Used in Component Creation Business Event Monitoring Visual Snippets Component Interfaces Business Objects
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 35 BACKUP CHARTS
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 36 Business State Machine Component A ‘State Machine’ model is a way to describe the dynamic behavior of an application or business process by focusing on the events that cause a transition from one state to another A ‘Business State Machine’ is an implementation of a business model that ‘executes’, moves from state to state, based on real-time events Use a Business State Machine when: Business process is heavily event-driven Reaction to these events is dependent on the process state Process may revert to prior states Business State Machines
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 37 Traditional Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 38 WebSphere Process Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 39 WebSphere Process Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 40 WebSphere Process Integration Programming Model
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 41 BPEL – Business Process Execution Language get Approved Approved/ Denied If Approved then Send letter offering gold If NOT Approved Send letter offering Credit counseling service Human intervention on suspect applications to prevent fraud Adapting to business events Sell additional services based on customer profile Call Credit Rating service from an existing application Enable rapidly changing customer decision point Flexibly building business processes based on standards Human Task Business State Machine Java Application Imported EIS System WS-BPEL Business Process Business Rules
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 42 SDO – Service Data Objects (Data)
SOA on your terms and our expertise Discovering the Value of SOA with WebSphere Process Integration 43 Thank You Merci Grazie Gracias Obrigado Danke Japanese English French Russian GermanItalian Spanish Brazilian Portuguese Arabic Traditional Chinese Simplified Chinese Thai