350 likes | 692 Views
Workflow with WebSphere Process Server and WebSphere Integration Developer. Fenglian Xu WebSphere ESB Development IBM UK Laboratories xufengli@uk.ibm.com. Overview IBM SOA Platforms WS-BPEL 2.0 Assemble with WebSphere Integration Developer Deploy with WebSphere Process Server Summary.
E N D
Workflow with WebSphere Process Server and WebSphere Integration Developer Fenglian Xu WebSphere ESB Development IBM UK Laboratories xufengli@uk.ibm.com
Overview IBM SOA Platforms WS-BPEL 2.0 Assemble with WebSphere Integration Developer Deploy with WebSphere Process Server Summary Agenda
Process Engineers / Integration Specialists Business Users Integrated deployment of policies, rules, and process services based on an SOA platform with seamless support for human workflow Collaborative Development Business User Clients Clean hand-off to IT with business models and metrics WebSphere Integration Developer Interact with business processes, collaborate, and perform human tasks Workflow and Choreography Business Modelingand Simulation WebSphere Process Server WebSphere Business Modeler Manage running processes and tasks ContentManagement BPC Explorer Business Monitoring, Dashboards and Analytics Feedback for continuous improvement and optimization WebSphere Business Monitor Real time collaboration and management of business processes BPC Observer Business Managers / Business Operations Business Analysts Human-Centric BPM with IBM WebSphereTools and Clients for All Key User Roles
Facilitates communication between services ESB Apps & Info Assets SOA Reference ArchitectureSupporting your SOA Lifecycle Business Innovation & Optimization Services Facilitates better decision-making with real-time business information Interaction Services Process Services Information Services IT ServiceManagement DevelopmentServices Enables collaboration between people, processes & information Orchestrate and automate business processes Manages diverse data and content in a unified manner Integrated environment for design and creation of solution assets Manage and secure services, applications & resources Partner Services Business App Services Access Services Connect with trading partners Build on a robust, scaleable, and secure services environment Facilitates interactions with existing information and application assets Infrastructure Services Optimizes throughput, availability and performance
Introducing the IBM SOA Foundation Provides What You Need to Get Started with SOA IBM SOA Foundation: Integrated, open set of software, best practice, and patterns Supports complete lifecycle with a modular approach Extends value of your existing investments, regardless of vendor IBM SOA Foundation Software Scalable; start small and grow as fast as the business requires Extensive business and IT standards support; facilitating greater interoperability & portability Skills & Support Leveraging existing IT Infrastructure Custom Apps. CICS IMS
WebSphere Application Server Transport layer foundation provides infrastructure via JMS 1.1, HTTP, IIOP WebSphere Process ServerLeveraging infrastructure services from WAS ND WebSphere Process Server:Process layer builds on WebSphere ESB and WebSphere Application Server foundation to deliver robust business process management • Support for all styles of integration, including human tasks, roles based task assignments, and multilevel escalation. • Business rules, business state machines, and selectors to dynamically choose interface based on business scenarios • Change business processes on the fly with relatively minimal skills Use WebSphere Process Server when you need to automate business processes that span people, workflows, applications, systems, platforms, and architectures WebSphere ESBMediation layer builds on WebSphere Application Server foundation to provide intelligent connectivity WebSphere Application Server Network DeploymentBuilds on WebSphere Application Server foundation to deliver ahighly available transaction engine with advanced performance and management capabilities
Shape = Protocol Color = Data type An ESB performs the following between requestor and service WebSphere Enterprise Service Bus An Enterprise Service Bus (ESB) is a flexible connectivity infrastructure for integrating applications and services. An ESB powers your SOA by reducing the number, size, and complexity of interfaces. • ROUTINGmessages between services • CONVERTINGtransport protocols between requestor and service • TRANSFORMINGmessage formats between requestor and service • HANDLINGbusiness events from disparate sources
WS-BPEL 2.0 • Industry standard language for expressing business processes • Leverage a common skill set and language • Designed to fit naturally into the Web services stack • Expressed entirely in XML • Uses and extends WSDL 1.1 • Uses XML Schema 1.0 for the data model • Portable across platform and vendor • Will run on any WS-BPEL-compliant engine • Interoperable between interacting processes • Layering on top of Web services stack • WS-BPEL is a Recursive Aggregation Model for Web Services • Stateful conversations and lifecycle management • Supports multiple stateful long-running conversations • Recoverability • Long running business processes need fault handling and compensation mechanisms to manage and recover from errors
WS-BPEL Language Constructs • WS-BPEL process definition • Recursive composition and partner links • Variables • Variable properties • Correlation sets • Basic and structured activities • Scopes • Compensation handling
“WS-BPEL Patterns” Example: “Replay” Activities Repeat while input invalid Step 3a Step 1 Step 2 Step 4 Step 5 Step 6 Step 3b
WebSphere Integration Developer Assembling composite applications with ease • Streamlining process design hand-off between business and IT • Import and work with business process models directly from the business analyst (WebSphere Business Modeler) • Simplifying and speeding composite application development • An Assembly Editor for overall solution assembly • All the tools you need for building solution components (Editors for BPEL, Business Rules, Business State Machines, Interface Maps, …) • One, easy-to-learn end user interface based on Eclipse • Architected for reuse and flexibility • Simplified componentinterfaces • Plug-and-play solution components • Ability to leverage existing services and develop for future reuse
WebSphere Integration Developer BPEL without Coding – Standards-Based Process Support • Import models from WebSphere Business Modeler • Develop executable process • WS-BPEL-based business processes • WS-BPEL with or without IBM extensions • Intuitive drag-and-drop tools • Visually define the sequence and flow of business processes • A visual business process debugger • Step through and debug business processes • Integrated fault and event handling • Provide an easy and integrated means of handling in-flow exception handling and external events • Compensation support • Provide a logical “undo” capability
BusinessProcesses HumanTasks BusinessStateMachines BusinessRules ServiceComponents BusinessObjectMaps DynamicServiceSelection Mediation Flows(ESB) SupportingServices InterfaceMaps Relation-ships Service ComponentArchitecture BusinessObjects Common EventInfrastructure SOA Core z/OS Elements of WebSphere Process ServerSupports all aspects of process integration Also available for WebSphere Application Server ND (J2EE Runtime) Business Processes + Human Tasks = Human Workflow
Reference:What thiscomponents calls Interface:How to callthis component Component UniformRepresentation ofencapsulatedImplementation JavaInterface 1..1 I JavaInterface WSDLPort Type 1..1 WSDLPort Type Reminder Service Component Architecture (SCA) – Components
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 Two Styles of Service Choreography
Business Processes • WS-BPEL compliant business process engine • Simplified Process Editor • Optional simplification ofterms • Generic Business Process • Operations / Parameters • Service Implementation Details hidden • Transactions / Compensation • Full XPath 1.0 Support
Business State Machines • State MachineImplementation • Based on UML 2.0State Machine Models • Event driven businessprocesses • Creates WS-BPELunder the covers • Simple/Complex States • Entry/Exit • Transitions • Events • Actions (invokes) • Guards • Timeout
BPC Standard Client – BPC ExplorerGraphical View for Processes • Provide graphical view for process structure and instances • Actions in the graphical view: • Zoom and scroll within the view • Expand and collapse event, faultand compensation handlers • Show additional information aboutelements when moved over • Navigate to activity details view • Usage scenarios • Understand process structure • Check status of process and its activities • Like process instance monitor in WebSphere MQ Workflow Activity Details
BPC Standard Client – BPC ObserverReporting for Business Processes • Allows observing state and evolution of business processese.g., overall duration, actual work time • Provides customizable reports and graphical charts of historical and accumulated data of business processes • Supports flexible drill-down capabilities to retrieve statistical data on processes and activities • Has been available as sample in 6.0.1 and is now a fully supported product feature
BPC BPC Standard Client – BPC ObserverReporting for Business Processes – Technical Background • BPC Observer has same look & feel as BPC Explorer • Built with JSF and BPC JSF Components • Collects BPC emitted events leveraging CEI • Can observe multiple BPC containers • Configuration is part of overall BPC • Also available in WID BPC Observer BPC Observer Client Event Data Common EventInfrastructure BPC Observer Datastore Store event data Event Collector Common Base Events WPS WAS WAS
Business RulesOverview • Business Rules allow to externalize business logic from applications (business processes) • Business Rules can be dynamically updated at runtime using the Business Rules Manager web application • NLS enabled free text representation for rules • Business Rules provide the most-requested rules functionalities • Decision Tables • Rule Sets (If/Then Rules) • Rule Templates • Action Rules • Rules Groups are provided for ease of use • Allow encapsulation of detailed implementation in a component with a well defined interface
Tools WebSphere Integration Developer Runtime WebSphere Process Server Dynamicity with Business Rules • Programmer defines rules from templates • This exposes the rule parameters to Business Rules Manager • Using Business Rules Manager, the Business Analyst changes rules at runtime • No need to restart the application • Users are authenticated using standard WAS authentication / security • Changes may be exported back to WID
Participating Task query invoke Task Web Service Interface Task Participant Interface claim return complete Web service Purely Human Task create query Task Originator Interface Task Participant Interface start claim complete notify Originating Task create invoke Web Service Interface Task Originator Interface start return notify Web service Web service Human Tasks – Overview and Interaction Patterns
claim() completeAndClaimSuccessor() completeAndClaimSuccessor() completeAndClaimSuccessor() complete() Server Controlled Page Flow (aka Single Person Workflow) Automatically present users with the page for the next task in the process • Controlling the flow of UI interactions with a single individual • Series of human tasks in a process to be performed by the same person • Each page represents a human task • New completeAndClaimSuccessor API User / Client WPS BusinessFlowManagerService operations Tasklist Page 1 Page 2 ... Page n
Selection is based on a Selector Algorithm Framework for custom selector algorithms The default Selection is date based Dynamic Service SelectionOverview Date Based Selection Target Components • Client makes a call to the Selector Component • Selector determines dynamically which implementation of a target destination to invoke
Tools WebSphere Integration Developer Runtime WebSphere Process Server Dynamicity using Dynamic Service Selection • Programmer defines • What components to invoke • The selection criteria • The selector behavior can be modified at runtime • At runtime System Administrator can modify/add/delete • Modify or add the date/time • Target component • From a list of installed Components with the matching interface • Changes may be exported back to WID
Export: doOrder Interface Map Business Object Map Import: submitOrderSAP SAPOrder Order Relationship OrderID SAPID Transformation ComponentsInterface Maps, Business Object Maps, and Relationships Interface:doOrder(Order) Interface:submitOrder(SAPOrder) BO (Order) BO(SAPOrder)
References and Further Readings • Business Process Choreographer on developerWorkshttp://www7b.boulder.ibm.com/wsdd/zones/was/wpc.html • Business Process Choreographer Samples pagehttp://publib.boulder.ibm.com/bpcsamp/index.html • Business process choreography in WebSphere: Combining the power of BPEL and J2EEhttp://researchweb.watson.ibm.com/journal/sj/432/kloppmann.html • IBM Systems Journal Issue on Service Oriented Architecturehttp://researchweb.watson.ibm.com/journal/sj44-4.html • SOA programming model for implementing Web services, Part 8: Human-based Web serviceshttp://www-128.ibm.com/developerworks/webservices/library/ws-soa-progmodel8/ • Web Services Platform Architecture (Prentice Hall, 2005) • Web Services Business Process Execution Language Version 2.0, Public Draft http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf • WS-BPEL Extension for Peoplehttp://www.ibm.com/developerworks/webservices/library/specification/ws-bpel4people/ • WS-BPEL 2.0 Extensions for Sub-Processeshttp://www.ibm.com/developerworks/webservices/library/specification/ws-bpelsubproc/ • BPELJ: BPEL for Java technologyhttp://www.ibm.com/developerworks/library/specification/ws-bpelj/
Thank You! Questions?
Learning More about WPS and WID IBM Education Assistant • Overview, Big Picture and New Functions • Installation and Migration • Programming for Service Oriented Architecture • Monitoring SOA Integration Applications • Supporting Services for Service Applications • Enterprise Service Bus Application Components • Integration with enterprise applications using WebSphere Adapters • Unit Testing Service Components • System Administration • Clustering • Building integration applications - end-to-end scenario http://publib.boulder.ibm.com/infocenter/ieduasst/v1r1m0/index.jsp?topic=/com.ibm.iea.wpi_v6/wpi6_coverpage.html
Thai Traditional Chinese Gracias Russian Spanish Thank You English Merci Obrigado French Brazilian Portuguese Arabic Danke Grazie Italian German Simplified Chinese Japanese