1 / 92

3146 Modeling BPEL4WS

3146 Modeling BPEL4WS. Richard C. Gronback Sr. Product Manager, Together Products Borland Software Corporation . Agenda. Introduction to BPM BPEL4WS Modeling BPEL4WS BPMN UML BPMD Deployment Conclusion. What is BPM?. Business Process [Management | Modeling]

gaetana
Télécharger la présentation

3146 Modeling BPEL4WS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 3146Modeling BPEL4WS Richard C. Gronback Sr. Product Manager, Together Products Borland Software Corporation

  2. Agenda • Introduction to BPM • BPEL4WS • Modeling BPEL4WS • BPMN • UML • BPMD • Deployment • Conclusion

  3. What is BPM? • Business Process [Management | Modeling] • In general, the design, execution, maintenance, and optimization of business processes. • Why model a business process? • The same reasons we model software, or anything, really. • Remember, software development is a business process!

  4. Available Notations & Methodologies • UML Activity Diagram • UML EDOC Business Processes • IDEF • ebXML BPSS • Activity-Decision Flow (ADF) Diagram • RosettaNet • LOVeM • Event-Process Chains (EPCs) • Many more… • There are literally hundreds of tools with varying capabilities, utilizing many disparate processes and notations.

  5. BPMI.org • Business Process Management Initiative • Non-profit organization that aims to establish standards for BPM • Working on specifications for: • Business Process Modeling Language (BPML) • Business Process Modeling Notation (BPMN) • Business Process Query Language (BPQL) • Focuses on private, internal implementation while ebXML, RosettaNet, etc. focus on external interfaces.

  6. Orchestration vs. Choreography Business Process Message A Orchestration BPEL4WS Message B Message A 1. Business Process A Business Process B ebXML WS Choreography 2. Message B Choreography Message C 3.

  7. BPEL4WS • Business Process Execution Language for Web Services • Combination of IBM’s WSFL and Microsoft’s XLANG • Specification authored by: • IBM • Microsoft • BEA • SAP • Siebel Systems

  8. BPEL4WS • Defines a model and grammar for describing the behavior of a business process based on interactions between the process and its partners. • Exclusively using Web Services • Models executable and abstract processes • Layered on top of: • WSDL 1.1 • XML Schema 1.0 • XPath 1.0

  9. BPEL4WS Core Concepts • There are several core concepts of BPEL: • Partner Links • Variables • Correlation Sets • Fault Handlers • Activities

  10. Structure of a BPEL “Program” <variables> <variable name="PO" messageType="lns:POMessage"/> … </variables> <partnerLinks> <partnerLink name="purchasing“ partnerLinkType="lns:purchasingLT" myRole="purchaseService"/> … </partnerLinks> <sequence> <assign> <copy> <from variable="PO" part="customerInfo"/> <to variable="shippingRequest“ part="customerInfo"/> </copy> </assign> … </sequence> State Interaction Points Behavior

  11. BPEL4WS Usage Patterns • Two major usage patterns, each specified by extensions to the core concepts: • Business Protocols • Roles defined using notion of abstract process • Handle only protocol-relevant data • Identified as message properties • Executable Processes • Logic and state determine nature and sequence of Web Service interactions

  12. How to Model BPEL4WS? • BPEL4WS specification provides no visual notation well, except for what’s here • Several possibilities: • Business Process Modeling Notation (BPMN) • Unified Modeling Language (UML) • Proprietary visual notation based directly on BPEL4WS

  13. Why Model BPEL4WS? • Consider this pseudo code for a simple Shipping Service: receive shipOrder switch case shipComplete send shipNotice otherwise itemsShipped := 0 while itemsShipped < itemsTotal itemsCount := opaque // non-deterministic assignment // corresponding e.g. to // internal interaction with // back-end system send shipNotice itemsShipped = itemsShipped + itemsCount

  14. Why Model BPEL4WS? • Now, consider the following BPEL4WS process…

  15. Why Model BPEL4WS?

  16. Why Model BPEL4WS?

  17. Why Model BPEL4WS?

  18. Why Model BPEL4WS?

  19. BPMN • Business Process Modeling Notation • Aims to appeal to wide range of users: • Business Analysts • Developers • Business People • 1.0 specification released May 2004 • Defines elements of BPD (Business Process Diagram)

  20. Business Process Diagrams • Diagrams consist of four categories of diagramming elements: • Flow Objects • Connecting Objects • Swimlanes • Artifacts

  21. Start Intermediate End Task Sub-Process BPD Flow Objects • Diagrams consist of three core elements: • Event • Hollow to allow for markers • Activity • Generic “work” element • Gateway • Decision, forking, joining, merging

  22. BPD Connecting Objects • Three ways to connect flow objects: • Sequence Flow • Indicates order of activities • Message Flow • Indicates flow of messages between Process Participants • Association • Associates data, text, or other Artifacts with flow objects

  23. Simple Business Process

  24. BPD Swimlanes • Used to organize activities by responsibility or functional capability • Pool • Represents a Participant in a Process • Lane • A sub-partition within a Pool used to organize and categorize activities

  25. BPD Artifacts • Any number of Artifacts can be added to a diagram, with three types predefined: • Data Object • Show how data is required or produced by activities • Group • Used for documentation or analysis, but does not affect the sequence flow • Annotation • Allow for textual notes to be added

  26. Another BPD Sample

  27. Mapping BPMNBPEL4WS • BPMN specification provides a mapping to BPEL4WS • Creates a bridge between business-oriented process model to deployable execution language • BPEL4WS XSD becomes a partial BPMN metamodel

  28. Mapping BPMNBPEL4WS • There are 3 basic types of BPMN sub-models: • Private (internal) business processes • Maps to BPEL4WS process • Abstract (public) processes • Maps to BPEL4WS abstract process • Collaboration (global) processes • Someday, may map to ebXML BPSS, RosettaNet, or future W3C Choreography Working Group

  29. BPMN Private Process • Example:

  30. BPMN Abstract Process • Example:

  31. BPMN Collaboration Process • Example:

  32. Unified Modeling Language™ • The UML 2.0 metamodel is adequate for modeling business processes • A Profile applied to existing specification can allow for modeling BPEL4WS • Optionally, a constrained subset of the UML 2.0 metamodel can also be used • Business Process Metamodel Definition (BPDM)

  33. BPDM • Business Process Definition Metamodel • Subset of UML 2 metamodel focused on modeling business processes • Revised 08/02/2004 submission by: • IBM • Adaptive • Borland • Data Access Technologies • EDS • 88 Solutions

  34. BPDM • Contains the following: • UML 2.0 Profile for BPD • UML 1.5 Profile for BPEL4WS • Mapping from BPD Metamodel to BPEL4WS • Mapping from EDOC to BPD Metamodel • Mapping from BPMN to BPD Metamodel

  35. BPDM

  36. BPDM Notation • Services and Processes

  37. BPDM Notation • Tasks

  38. BPDM Notation • Tasks

  39. BPDM Notation • Pins and Flows

  40. BPDM Notation • Pins and Flows

  41. BPDM Notation • Miscellaneous

  42. BPDM Example

  43. BPDM Example

  44. BPDM Example

  45. Mapping to BPEL4WS From BPMN

  46. BPMNBPEL4WS Example

  47. BPMNBPEL4WS Loop

  48. BPMNBPEL4WS Loop

  49. Mapping Example • Let’s explore the diagram elements and mappings of BPMN to BPEL4WS • Domain is E-mail Voting Process • From BPMN Specification • Focus here is on Discussion Cycle sub-process for simplicity

  50. E-mail Voting Process

More Related