XML-based standardsfor B2B Process Integration          David Hollingsworth, ICL          Mike Marin, FileNET Corp.     Ma...
Overview   Process Automation and the WfMC   Standards   Wf-XML   Applications                                      Wf...
Process Automation and the WfMC        David Hollingsworth                              WfMC, September 2000, Slide 3
Agenda Workflow, Process Automation and business  integration considerations Background on the Workflow Management  Coal...
What is WorkflowThe automation of a business process, in wholeor part, during which documents, information ortasks are pas...
Process Automation                          Overview          Process         Business Process Analysis,          Designer...
The Process Definition 1. Activity Network - Nodes & Transitions              A2  A1                        A6         A3 ...
Production & Ad-hoc WorkflowA loose distinction is sometimes drawn between Production Workflow  – in which most of the pr...
Autonomous & Embedded               Workflow Products Autonomous   – Freestanding independent software package providing ...
Business Integration             Requirements                    ProcessBusiness Support    Systems                       ...
Wider Integration Issues                                 Process                                  Model E-commerce        ...
Workflow - Past & Future First generation - disjoint applications, human  interface   – Call Centre management   – Corres...
WfMC Background          Founded in 1993, to develop & promote             workflow integration capability          Non ...
The Workflow Reference Model                                         Process                                      Definiti...
Process Definition Interchange Purpose   – Exchange of info between BPR tools, workflow systems, process     definition r...
Client Application Interface Purpose   – To allow applications portability & re-use APIs to support   –   Process & Acti...
Applications Invocation Purpose   – To provide a common framework for 3rd parties to integrate other     industry applica...
Applications Interoperability Purpose   – To allow a business process to be implemented over two or more     workflow sys...
Administration & Monitoring Purpose   – To allow consistent administration across diverse systems Audit specifications  ...
Process Interoperability Scope may be:   – Local / Departmental   – Enterprise   – Inter-Enterprise Style may be:   – Su...
Distributing the Business Process                Definition                     ExecutionSub-Process C      ?         Orga...
1. Sub-Process Interoperability Model       A2 A1                    A5       A3     A4                                   ...
2. Parallel Synchronised              Interoperability Model                                                    Synchpoint...
Process Naming & Context Activities may be atomic, sub-process call, or in-line    block   A sub-process inherits charac...
The Supply Chain Process Model  Manufacturer                                                                              ...
Specifications - Context Diagram                                                                             Process Defin...
WfMC - Specifications Reference Model (1995) Glossary (1994, 1996, 1999) Workflow APIs   – “C” (1995)   – IDL / CORBA (...
Ongoing Work Areas Security Events & parallel synchronised interoperability    standards   Multiple concurrency workflo...
Contacts & Further Information       http://www.wfmc.org      email: wfmc@wfmc.org    david.hollingsworth@icl.com         ...
Process IntegrationXML Standardization Initiatives           Mike Marin            FileNet                          WfMC, ...
Introduction XML is the universal language of B2B Today ad-hoc implementations of B2B abound   – Based on data interchan...
XML Standards Explosion of XML standards    – XML is becoming the language of standardization Overlapping functionality ...
Classifying B2B Standards   Transport level   Vertical market vocabularies   Specific functionality area   Framework b...
Transport level Moving XML content around Examples   – XML-RPC      • Request/Response   – Simple Object Access Protocol...
Vertical market vocabularies XML standardization for specific industries XML Repositories   – XML.org   – BizTalk.org E...
Specific functionality area XML standardization of specific business functions Examples   – eBIS-XML       • Order and i...
Framework based Formalized exchange of XML content Examples   –   BizTalk   –   RosettaNet   –   ICE   –   ebXML        ...
BizTalk Horizontally oriented   – Works with vertical market vocabularies that adhere to the     BizTalk conventions Biz...
RosettaNet Vertically oriented   – Information technology (IT) supply chain standardization   – Electronic components (EC...
ICE Horizontally oriented   – Work with vertical market vocabularies Syndicator/Subscriber model   – Request/Response mo...
ebXML Horizontally oriented    – Based on a repository Goal is to create a single global electronic    market   Compati...
Process based Business process oriented  – General workflow functionality is horizontal Example  – Wf-XML               ...
Summary A crowded field Research your vertical market first Talk with the partners you intent to engage                ...
Wf-XML Interoperability Standard         Marc-Thomas SchmidtIBM UK, Business Integration Architecture           mts@uk.ibm...
Wf-XML Scenario Enable interaction between Requesters and Providers of  ‘workflow-type’ Business Services   – Standardise...
Wf-XML Scenario IllustratedRequester                       Provider   Requester                                           ...
Multi-Party InteractionsParty A                                  Party B                           Party C                ...
Interaction Partner Checklist                                                          Services Repository Provider adver...
Trading Partner Agreements                                  ExamplesOverall properties         // Contract durationIdentif...
Wf-XML Specification XML Message Set for Interactions between requesters and  providers of Workflow Business Services Ba...
Wf-XML Resource Model                                                                             Observer Resources     ...
Workflow Context Data Define the workflow relevant instance variables of a  workflow process business service   – Initial...
Process Definition Resource Resource used to instantiate a particular workflow  business service   – Represents particula...
Process Instance Resource representing a particular instance of a workflow  business process   – Execution state - basic,...
Process Instance State Model Defines basic set of execution states   – Nested states   – Level 1 and 2 mandatory, level 3...
Observer Resource representing a service requester   – Registered with process instance during creation   – Receives noti...
Wf-XML Message Set Messages represent operations on Wf-XML resources   – Message pairs representing request-response mode...
Workflow Context Data Encoding Context Data encoding outside of Wf-XML scope   – Message definitions use placeholders for...
CreateProcessInstance.Request<?xml version=“1.0”?>    <WfMessage Version=“1.0”>                                    Identif...
CreateProcessInstance.Response -                     Success<?xml version=“1.0”?>   <WfMessage Version=“1.0”>             ...
CreateProcessInstance.Response -                    Errors<?xml version=“1.0”?>    <WfMessage Version=“1.0”>          <WfT...
GetProcessInstanceData.Request<?xml version=“1.0”?>   <WfMessage Version=“1.0”>         <WfTransport/>                    ...
GetProcessInstanceData.Response<?xml version=“1.0”?>   <WfMessage Version=“1.0”>         <WfTransport/>                   ...
ChangeProcessInstanceState.Request<?xml version=“1.0”?>                                                     Process Instan...
ProcessInstanceStateChanged                            Message<?xml version=“1.0”?>                                       ...
Transport Bindings Wf-XML does not mandate binding to a particular  transport protocol   – Potential transport protocols ...
Summary       Michael zur Muehlen      University of MuensterDepartment of Information Systems   ismizu@wi.uni-muenster.de...
Use of Wf-XML (Currently) Peer-to-Peer Communication Encapsulation of local process logic   – Observe ACID Principles of...
Wf-XML in the Business Scenario Prerequisites   – HTTP is initial transport binding, but Wf-XML is not limited     to thi...
Wf-XML Status and Outlook First version of the standard published by  WfMC May 2000   – Basic set of Interoperablity mess...
Process Instance Update  Operations and Execution Monitoring Re-send (additional) context data during remote  process exe...
Execution Monitoring Currently: “push“ of coarse state change  information to observer                                   ...
Example: Web-based Helpdesk                      WfMC, September 2000, Slide 73
Observer for User Monitoring Data                          WfMC, September 2000, Slide 74
Details of Cascaded Processes                       WfMC, September 2000, Slide 75
Re-Querying of Process Context Data                          WfMC, September 2000, Slide 76
Workflow Standards Timeline                                          Keith      SWAP                                      ...
Wf-XML Adds the process dimension Has evolved from a solid foundation   – WfMC   – OMG Does not overlap with other XML ...
Wf-XML Future Establish a dialog with other XML standards   – Context data providers   – Process providers/users Show ho...
Upcoming SlideShare
Loading in …5
×

2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial

549 views

Published on

“XML-based standards for B2B Process Integration”. Tutorial about WfMC XML standards in the area of workflow and B2B, presented at XML World 2000 by David Hollingsworth, Mike Marin, Marc-Thomas Schmidt, and Michael zur Muehlen.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
549
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial

  1. 1. XML-based standardsfor B2B Process Integration David Hollingsworth, ICL Mike Marin, FileNET Corp. Marc-Thomas Schmidt, IBM UK Ltd. Michael zur Muehlen, University of Muenster WfMC, September 2000, Slide 1
  2. 2. Overview Process Automation and the WfMC Standards Wf-XML Applications WfMC, September 2000, Slide 2
  3. 3. Process Automation and the WfMC David Hollingsworth WfMC, September 2000, Slide 3
  4. 4. Agenda Workflow, Process Automation and business integration considerations Background on the Workflow Management Coalition Process Interoperability Models WfMC Standards & ongoing work WfMC, September 2000, Slide 4
  5. 5. What is WorkflowThe automation of a business process, in wholeor part, during which documents, information ortasks are passed from one participant* toanother for action, according to a set ofprocedural rules.*participant = resource (human or machine) WfMC, September 2000, Slide 5
  6. 6. Process Automation Overview Process Business Process Analysis, Designer Modelling & Definition Tools Process Design & Definition Process DefinitionProcess Execution Process changes Administrator / Supervisor Workflow Management System Distributed Infrastructure Environment Work Application Presentation Launch Users Applications & IT Tools WfMC, September 2000, Slide 6
  7. 7. The Process Definition 1. Activity Network - Nodes & Transitions A2 A1 A6 A3 A5 A8 A10 A11 A7 A4 A9 • Options for Sequential, Parallel & Conditional paths 2. Activity Definitions • Resource Requirement • Work Items • Applications 3. Data Definitions • Workflow Relevant Data • (Application Specific Data) WfMC, September 2000, Slide 7
  8. 8. Production & Ad-hoc WorkflowA loose distinction is sometimes drawn between Production Workflow – in which most of the procedural rules are defined in advanceand Ad-hoc workflow – in which the procedural rules may be modified or created during the operation of the process. WfMC, September 2000, Slide 8
  9. 9. Autonomous & Embedded Workflow Products Autonomous – Freestanding independent software package providing workflow functionality – Integration with different application systems (desktop or server) which handle processing of the elementary workflow activities Embedded – Workflow-functionality is part of the (application) software system (ERP, DM, PPC etc.) – Controls the sequence of elementary functions of the system within the applicationDifferentiation: workflow-enabled versus workflow-based WfMC, September 2000, Slide 9
  10. 10. Business Integration Requirements ProcessBusiness Support Systems Roles & Responsibilities Information Organisation Access & Ownership Permissions WfMC, September 2000, Slide 10
  11. 11. Wider Integration Issues Process Model E-commerce Security & Audit Information Organisation Model ModelLegacy Systems Common Directory Distributed Systems desktop Services Infrastructure access WfMC, September 2000, Slide 11
  12. 12. Workflow - Past & Future First generation - disjoint applications, human interface – Call Centre management – Correspondence handling – Claims authorisation, etc Second generation - infrastructure, broker / agent interfaces: – E-process support (B2Anything) – Enterprise Application Integration WfMC, September 2000, Slide 12
  13. 13. WfMC Background  Founded in 1993, to develop & promote workflow integration capability  Non profit-making, open to all  Working arrangements with AIIM, OMG and IETF  Current membership is c. 220, made up of: User S. America Japan / AsiaAnalyst / Consultant US / Canada Academic & Research Europe Vendor Integrator/VAR WfMC, September 2000, Slide 13
  14. 14. The Workflow Reference Model Process Definition Tools Interface 1 Process Definition Import/Export Interface 5 Other Workflow Workflow Enactment Service Enactment Service(s)Administration & Monitoring Tools Workflow Workflow Engine(s) Engine(s) Interface 2 Interface 3 Interface 4 - Interoperability Client Worklist Tool Agent Apps Handler Invoked Legacy, Applications Desktop, etc WfMC, September 2000, Slide 14
  15. 15. Process Definition Interchange Purpose – Exchange of info between BPR tools, workflow systems, process definition repositories Process Definition Meta-Model – Defines objects, attributes & relationships – Core Set plus extensible attributes WPDL / XML – Syntax for encoding the process definition Process Definition Manipulation APIs – APIs for reading & writing object & attribute data WfMC, September 2000, Slide 15
  16. 16. Client Application Interface Purpose – To allow applications portability & re-use APIs to support – Process & Activity Control – Worklist Handling – Supervisory Process & Activity Control – Process Definition manipulation Language Support – “C”, IDL & OLE (V2), WAPI Specification – V1 - Published Nov 95, now at V1.4 – V2 - 1998 (joint OMG / WfMC spec) WfMC, September 2000, Slide 16
  17. 17. Applications Invocation Purpose – To provide a common framework for 3rd parties to integrate other industry application APIs & services – To support an interface to access legacy applications APIs for use by Workflow Engine or Worklist Handler – Connect/Disconnect – Invoke Application, Request Status, Terminate Status – Included in WAPI V2 WfMC, September 2000, Slide 17
  18. 18. Applications Interoperability Purpose – To allow a business process to be implemented over two or more workflow systems Interchange protocol – Abstract (functional) specification in IDL for nested & chained subprocesses – Binding specification for Internet Mail using MIME – CORBA version included in OMG submission Status – Full Specification released Q1 97, now with abstract spec, MIME binding and Wf-XML versions all at current level. – IDL & CORBA version provided in OMG proposal – XML version released Q1 2000 WfMC, September 2000, Slide 18
  19. 19. Administration & Monitoring Purpose – To allow consistent administration across diverse systems Audit specifications – Audit event identification, formats & recording – Formal released as full specification Q1 97 WAPI - Administrative APIs – Group operations on Processes & Activities Instances – Status retrieval - Process & Activity instances – Operations on Process Definitions Administration - wider aspects – - Draft spec of admin functions (audit retrieval APIs and monitoring policy controls) WfMC, September 2000, Slide 19
  20. 20. Process Interoperability Scope may be: – Local / Departmental – Enterprise – Inter-Enterprise Style may be: – Sub-process - hierarchic or chained – Parallel synchronised Purpose: – EAI – Web integration, B2B, B2C, etc – Trading Frameworks / Hub WfMC, September 2000, Slide 20
  21. 21. Distributing the Business Process Definition ExecutionSub-Process C ? Organisation C C Organisation AProcess A B exportSub-Process B Organisation B WfMC, September 2000, Slide 21
  22. 22. 1. Sub-Process Interoperability Model A2 A1 A5 A3 A4 B2 B1 B3 B4 C1 C2 C3 C4 WAPI Initiate Sub-processWorkflow Enactment Service WAPI #1 WAPI Return Workflow Enactment Service #2 Workflow Enactment Service #3 WfMC, September 2000, Slide 22
  23. 23. 2. Parallel Synchronised Interoperability Model Synchpoint across processes A1 A2 A3 A4 B1 B2 B3 B4 C1 C2 C3 C4• To support inter-process dependencies• Uses Synch Event and optional Confirm WAPI WAPI Sync. EventWorkflow Enactment Service Workflow Enactment Service #1 #2 optional Confirm WfMC, September 2000, Slide 23
  24. 24. Process Naming & Context Activities may be atomic, sub-process call, or in-line block A sub-process inherits characteristics from its process definition and has its own name space apart from “Root Process Id” (from initiating process) A sub-process call may be specified as synchronous or asynchronous, binding prefixed or late An in-line block operates within the name space and characteristics of its local process Activity and Transition Ids are unique within a process definition Resource naming may use an Organisational Model - typically unique to a workflow enactment service WfMC, September 2000, Slide 24
  25. 25. The Supply Chain Process Model Manufacturer Distributor Place Receive Order Place Order MRP Order Order DRP 2 QA Confirm Order Schedule Update Update Order Acknowledgment Receipt Inventory DRP Schedule Ship Order Advance Receive Ship Order Shipment Shipment Notice Goods 5 Transport 4 Transport Advance 1 Replenishment Request Confirmation Shipment Notice Transportation Company Request Confirm Receive Update Replenish Vehicle Transport Goods Inventory Inventory Inventory Determine Dispatch Release Prepare International Truck Payment PaymentOrder Advance Shipment Notice Transportation Retailer A/P Prepare Cross Border Documentation Company International Documentation 3 Receive Update Ship Order Order Inventory Inventory Third Party Warehouse Company WfMC, September 2000, Slide 25
  26. 26. Specifications - Context Diagram Process Definition Resource Model Tool / Task Process Definition Interface Interface creates / modifies may Organisational Model Process Definition refer to inherits is instantiated by properties Audit Specifications may refer to External create, Workflow create & maintain Process Instance destroy destroy Process Instance audit S/W object modify Manager History trail may use Process & Activity may invoke provides generates Workflow invocationControl / Interoperability context Interface Relevant Data Workflow Enactment Work Item Service Worklist Handler I/F may Tool Agent set processed by Application Worklist Invocation I/F Application Handler may presented invoke 1. Workflow Manager may be distributed, but is for action by assumed to maintain consistent internal state Participant 2. Scope of a Process Definition is the enactment service WfMC, September 2000, Slide 26
  27. 27. WfMC - Specifications Reference Model (1995) Glossary (1994, 1996, 1999) Workflow APIs – “C” (1995) – IDL / CORBA (1998) Interoperability Protocol & Bindings – MIME (Email) (1995) – IDL / CORBA (1998) – Wf-XML (April 2000) Audit specification (1997, 1999) Process Definition Import/Export Specification – WPDL (1999) – UML/XML (planned Q4 2000) OMG Submission (Object Model & IDL, 1998) – Ratified 1999 WfMC, September 2000, Slide 27
  28. 28. Ongoing Work Areas Security Events & parallel synchronised interoperability standards Multiple concurrency workflows (EDI batches) XML integration (process definition, frameworks, data models, etc) WfMC, September 2000, Slide 28
  29. 29. Contacts & Further Information http://www.wfmc.org email: wfmc@wfmc.org david.hollingsworth@icl.com WfMC, September 2000, Slide 29
  30. 30. Process IntegrationXML Standardization Initiatives Mike Marin FileNet WfMC, September 2000, Slide 30
  31. 31. Introduction XML is the universal language of B2B Today ad-hoc implementations of B2B abound – Based on data interchange – High development cost Business start looking into standards – Decrease cost – Decrease risk – Increase potential partners WfMC, September 2000, Slide 31
  32. 32. XML Standards Explosion of XML standards – XML is becoming the language of standardization Overlapping functionality – Some industry segments have competing XML standards Emergence of for-profit standardization organizations It will take time for the dust to settle WfMC, September 2000, Slide 32
  33. 33. Classifying B2B Standards Transport level Vertical market vocabularies Specific functionality area Framework based Process based WfMC, September 2000, Slide 33
  34. 34. Transport level Moving XML content around Examples – XML-RPC • Request/Response – Simple Object Access Protocol (SOAP) • Unidirectional messages – Web Distributed Data Exchange (WDDX) • Exchanging structured data in a generic, cross-platform way WfMC, September 2000, Slide 34
  35. 35. Vertical market vocabularies XML standardization for specific industries XML Repositories – XML.org – BizTalk.org Examples – Chemical Markup Language (CML) – Text Encoding Initiative (TEI) – Mathematical Markup Language (MathML) WfMC, September 2000, Slide 35
  36. 36. Specific functionality area XML standardization of specific business functions Examples – eBIS-XML • Order and invoice interchange – iCalendar • Calendaring and scheduling – Directory services markup language (DSML) • Based on LDAP WfMC, September 2000, Slide 36
  37. 37. Framework based Formalized exchange of XML content Examples – BizTalk – RosettaNet – ICE – ebXML WfMC, September 2000, Slide 37
  38. 38. BizTalk Horizontally oriented – Works with vertical market vocabularies that adhere to the BizTalk conventions BizTalk framework is based on SOAP WfMC, September 2000, Slide 38
  39. 39. RosettaNet Vertically oriented – Information technology (IT) supply chain standardization – Electronic components (EC) supply chain standardization Some process – Predefined partner interface process (PIP) WfMC, September 2000, Slide 39
  40. 40. ICE Horizontally oriented – Work with vertical market vocabularies Syndicator/Subscriber model – Request/Response model No process concept WfMC, September 2000, Slide 40
  41. 41. ebXML Horizontally oriented – Based on a repository Goal is to create a single global electronic market Compatible with EDI Some process concepts WfMC, September 2000, Slide 41
  42. 42. Process based Business process oriented – General workflow functionality is horizontal Example – Wf-XML WfMC, September 2000, Slide 42
  43. 43. Summary A crowded field Research your vertical market first Talk with the partners you intent to engage WfMC, September 2000, Slide 43
  44. 44. Wf-XML Interoperability Standard Marc-Thomas SchmidtIBM UK, Business Integration Architecture mts@uk.ibm.com WfMC, September 2000, Slide 44
  45. 45. Wf-XML Scenario Enable interaction between Requesters and Providers of ‘workflow-type’ Business Services – Standardise minimum set of operations for managing interactions with potentially long running services Service Requester – Requests service to be performed – Inquires about status of execution Service Provider – Processes service requests – Informs requester on status of the request One Party can play both roles WfMC, September 2000, Slide 45
  46. 46. Wf-XML Scenario IllustratedRequester Provider Requester Provider Do It Done It Query & Control Party A Party B Party C WfMC, September 2000, Slide 46
  47. 47. Multi-Party InteractionsParty A Party B Party C WfMC, September 2000, Slide 47
  48. 48. Interaction Partner Checklist Services Repository Provider advertises service – Service interface definition, including in/out data, potential transports, Quality of Service, service constraints, ... Requester selects service matching their needs Trading Partner Agreement – Required business function, requested Quality of Service, ... Provider & Requester agree on interaction contract – Transport, Security, Quality of Service, Data Representation, Wf-XML … Requester and Provider perform interaction – Requester initialises and starts service – Provider accepts request and initiates service – Requester may query status or cancel service request – Provider completes request and returns results WfMC, September 2000, Slide 48
  49. 49. Trading Partner Agreements ExamplesOverall properties // Contract durationIdentification // Business partner info.Communication properties // HTTP, SMTP, etc.Security properties // Authentication, non-repudiationRoles // Buyer, seller, broker, etc. Actions // Reserve, modify, etc. Responsiveness // Timeout Sequencing rules // Modify after reserve Constraints // Modify before 6 p.m Recourse actions // Refund, etc.Error handling // Retries, actions invokedLegal text // Penalty if unreachable WfMC, September 2000, Slide 49
  50. 50. Wf-XML Specification XML Message Set for Interactions between requesters and providers of Workflow Business Services Based on existing Workflow Interoperability Standards initiatives – WfMC Workflow Interoperability Specification, OMG Workflow Management Facility (a.k.a jointFlow), Simple Workflow Access Protocol (SWAP) Main Features – A structured and well-formed XML message set encoding – Synchronous or asynchronous message-handling capability – Independence from transport mechanism – Easy extensibility through the use of XML and dynamic workflow context data WfMC, September 2000, Slide 50
  51. 51. Wf-XML Resource Model Observer Resources Create – … are identified by URI-type keys Instance – … provide a set of operations Process Definition Provide Feedback – Factory for service providers Process Instance – Realises a workflow business service Control & – Parametrised by workflow context Query Context data data Observer – Represents service requester Process Definition Process Instance WfMC, September 2000, Slide 51
  52. 52. Workflow Context Data Define the workflow relevant instance variables of a workflow process business service – Initialised during instantiation of the process – Provide context for tasks in a workflow process – Updated by workflow tasks Example – Process Product Order takes Order Request as input – Stepwise completion of the Order Request during process execution, documenting progress of the workflow process – Order Completion notice upon process termination WfMC, September 2000, Slide 52
  53. 53. Process Definition Resource Resource used to instantiate a particular workflow business service – Represents particular workflow process template – May be located via Service Repository – Internals of workflow process realisation not exposed CreateProcessInstance Operation – Takes workflow context data for process instance as input – Optionally allws for registration of process instance observer – Returns Process Instance identifier for future reference Example – Process Product Order Process – Takes specific Order details as input WfMC, September 2000, Slide 53
  54. 54. Process Instance Resource representing a particular instance of a workflow business process – Execution state - basic, extensible state model – Workflow context data - input data plus intermediary results – Informs its observer about state or context data changes GetProcessInstanceData operation – Retrieves current content of workflow context data set – Can be used to retrieve final or intermediary results of process ChangeProcessInstanceState operation – Changes the execution state of the process instance – Can be used to suspend or terminate process instance Example – Process Product Order of 42 pencils for Marc-Thomas Schmidt WfMC, September 2000, Slide 54
  55. 55. Process Instance State Model Defines basic set of execution states – Nested states – Level 1 and 2 mandatory, level 3 optional Can be extended by workflow service specialisations closed open abnormalCompleted notRunning aborted suspended terminated running completed WfMC, September 2000, Slide 55
  56. 56. Observer Resource representing a service requester – Registered with process instance during creation – Receives notifications on change of execution state and changes in workflow context data of a process instance – Up to service provider to determine which status changes are propagated – Future extensions may extend role to represent any party interested in process instance ProcessInstanceStateChanged operation – Takes current execution status and workflow context data as input Example – Initiator of a workflow process; may be another process WfMC, September 2000, Slide 56
  57. 57. Wf-XML Message Set Messages represent operations on Wf-XML resources – Message pairs representing request-response model XML encoding of message content Transport Header – For future use Message Header – Indicates message type (request or response) and identifies resource which is target of request or source of response Message Body – Identifies operation, provides operation-specific parameters and eventual error codes – Pattern: OperationName.Request or OperationName.Response WfMC, September 2000, Slide 57
  58. 58. Workflow Context Data Encoding Context Data encoding outside of Wf-XML scope – Message definitions use placeholders for context data – ContextData tag in request, ResultData tag in response messages with content model ANY Examples – Name-value pairs <name>item01</name><value>foo</value> – Structured, tagged data <vehicle> <vType>Car</vType> <vMake>BMW</vMake> </vehicle> – XML Schema encoding <xs:complexType name="length2"> <xs:element name="size" type="dt:non-positive-integer"/> <xs:element name="unit" type="dt:NMTOKEN"/> </xs:complexType> WfMC, September 2000, Slide 58
  59. 59. CreateProcessInstance.Request<?xml version=“1.0”?> <WfMessage Version=“1.0”> Identifies process <WfTransport/> definition <WfMessageHeader> <Request ResponseRequired =”Yes”/> <Key>http://www.compInc.com/WfSrv?id=1199827</Key> </WfMessageHeader> Request to create <WfMessageBody> process instance <CreateProcessInstance.Request StartImmediately =”true”> <ObserverKey>http://www.Acme.com/wfx456</ObserverKey> <ContextData> <Computer> <Type>thinkpad</Type> Observer to be Context data for <Series>600X</Series> notified of process this process <Option>DVD</Option> updates instance </Computer> </ContextData> </CreateProcessInstance.Request> </WfMessageBody></WfMessage> WfMC, September 2000, Slide 59
  60. 60. CreateProcessInstance.Response - Success<?xml version=“1.0”?> <WfMessage Version=“1.0”> Identifies process <WfTransport/> definition that <WfMessageHeader> performed request <Response/> <Key>http://www.computerInc.com/WfSrv?id=1199827</Key> </WfMessageHeader> <WfMessageBody> <CreateProcessInstance.Response> <ProcessInstanceKey>http://www.compInc.com/pi42</ProcessInstanceKey> </CreateProcessInstance.Response> </WfMessageBody></WfMessage> Identifier of newly created process instance WfMC, September 2000, Slide 60
  61. 61. CreateProcessInstance.Response - Errors<?xml version=“1.0”?> <WfMessage Version=“1.0”> <WfTransport/> <WfMessageHeader> <Response/> <Key>http://www.comInccom/WfSrv?id=1199827</Key> </WfMessageHeader> <WfMessageBody> <CreateProcessInstance.Response> <Exception> <MainCode>502</MainCode> <Type>F</Type> <Subject>Invalid Process Definition</Subject> Exception <Description>Can not create instance</Description> information </Exception> </CreateProcessInstance.Response> </WfMessageBody> </WfMessage> WfMC, September 2000, Slide 61
  62. 62. GetProcessInstanceData.Request<?xml version=“1.0”?> <WfMessage Version=“1.0”> <WfTransport/> Process Instance ID <WfMessageHeader> (from previous create request) <Request ResponseRequired =”Yes”/> <Key>http://www.compInc.com/pi42</Key> </WfMessageHeader> <WfMessageBody> Identifies context <GetProcessInstanceData.Request> data we want to know about <ResultDataAttributes> <Priority/> </ResultDataAttributes> </GetProcessInstanceData.Request> </WfMessageBody> </WfMessage> WfMC, September 2000, Slide 62
  63. 63. GetProcessInstanceData.Response<?xml version=“1.0”?> <WfMessage Version=“1.0”> <WfTransport/> Process Instance ID <WfMessageHeader> we send the request to <Response/> <Key>http://www.compInc.com/pi42</Key> </WfMessageHeader> <WfMessageBody> Returns only the <GetProcessInstanceData.Response> properties we asked for <ResultDataAttributes> <Priority>5</Priority> </ResultDataAttributes> </GetProcessInstanceData.Response> </WfMessageBody> </WfMessage> WfMC, September 2000, Slide 63
  64. 64. ChangeProcessInstanceState.Request<?xml version=“1.0”?> Process Instance ID <WfMessage Version=“1.0”> (from previous <WfTransport/> create request) <WfMessageHeader> <Request ResponseRequired =”Yes”/> <Key>http://www.compInc.com/pi42</Key> This is the state we </WfMessageHeader> want the process <WfMessageBody> instance to take on <ChangeProcessInstanceState.Request> <State>closed.abnormalCompleted.terminated</State> </ChangeProcessInstanceState.Request> </WfMessageBody> </WfMessage> WfMC, September 2000, Slide 64
  65. 65. ProcessInstanceStateChanged Message<?xml version=“1.0”?> Observer ID <WfMessage Version=“1.0”> (registered with <WfTransport/> process instance <WfMessageHeader> during create) <Request ResponseRequired =”No”/> <Key>http://www.Acme.com/wfx456</Key> Process Instance </WfMessageHeader> that sends the <WfMessageBody> notification <ProcessInstanceStateChanged.Request> <ProcessInstanceKey>http://www.compInc.com/pi42</ProcessInstanceKey> <State>closed.abnormalCompleted.terminated</State> <ResultData> <Order>ACM00456</Order> <Account>ACM-400-2460</Account> State of the <Amount>150.00</Amount> process instance Context data of </ResultData> process instance <LastModified>1999-12-25T15:10:35Z</LastModified> </ProcessInstanceStateChanged.Request> </WfMessageBody> </WfMessage> WfMC, September 2000, Slide 65
  66. 66. Transport Bindings Wf-XML does not mandate binding to a particular transport protocol – Potential transport protocols include HTTP, SMTP, MOM HTTP binding – Operations map to HTTP POST – Resource key is the URI to which a Post method is directed – The Wf-XML request is the request message body for input – The Wf-XML response is the response message body for output – Both request and response specify “Content-type: text/xml” in the HTTP message header. – Authentication is accomplished through the standard HTTP mechanisms WfMC, September 2000, Slide 66
  67. 67. Summary Michael zur Muehlen University of MuensterDepartment of Information Systems ismizu@wi.uni-muenster.de WfMC, September 2000, Slide 67
  68. 68. Use of Wf-XML (Currently) Peer-to-Peer Communication Encapsulation of local process logic – Observe ACID Principles of Database Management – Syntactic abort of remote process may not equal a semantic abort – Change of local process logic may lead to global deadlocks: Observe partial serialization of process interfaces Wf-XML is very suitable for Service Outsourcing approaches – Academic research: WISE, CrossFlow – Commercial projects WfMC, September 2000, Slide 68
  69. 69. Wf-XML in the Business Scenario Prerequisites – HTTP is initial transport binding, but Wf-XML is not limited to this – Workflow Management System is not necessarily required • Wf-XML Adapters for ERP systems • Wf-XML Adapters for Web Application Servers • Wf-XML Adapters for EJB Services – Few operations, well defined API – (relatively) little implementation effort – Wf-XML workflow-enables existing business infrastructure WfMC, September 2000, Slide 69
  70. 70. Wf-XML Status and Outlook First version of the standard published by WfMC May 2000 – Basic set of Interoperablity messages – HTTP binding available Future work areas – Additional bindings – Generalisation of Observer role – Process Definition introspection and link to Service Repositories – Process Instance update operations and execution monitoring – Link to Trading Partner Agreements and similar interaction contract definitions WfMC, September 2000, Slide 70
  71. 71. Process Instance Update Operations and Execution Monitoring Re-send (additional) context data during remote process execution Monitoring of fine-grain process structure – Currently only coarse granularity of state changes – Filtering and/or translation of monitoring data – Integration of monitoring data from different sources (cascaded monitoring) – WfMC Interface 5 as a starting point for monitoring data specification WfMC, September 2000, Slide 71
  72. 72. Execution Monitoring Currently: “push“ of coarse state change information to observer Process Observer Instance Future: Integration of fine grain monitoring data over several involved parties Process Process Observer Instance Instance WfMC, September 2000, Slide 72
  73. 73. Example: Web-based Helpdesk WfMC, September 2000, Slide 73
  74. 74. Observer for User Monitoring Data WfMC, September 2000, Slide 74
  75. 75. Details of Cascaded Processes WfMC, September 2000, Slide 75
  76. 76. Re-Querying of Process Context Data WfMC, September 2000, Slide 76
  77. 77. Workflow Standards Timeline Keith SWAP Swenson IETF Standardization et al. Initiative WfMC Reference WfMC (1998) SWAP Model IF 4 V 1.0 Working Wf-XML V 1.0 Group WfMC founded WfMC (1993) jointFlow IF 4 V 2.0 Working Group Interoperability Challenge OMG Resource Ass. Int. RFPfounded Process Modeling RFP (1989) OMG OMG OMG Object CORBA 2.0 Workflow Management Specification Facility (8/98) Architecture 1993 1989 1995 1999 2000 WfMC, September 2000, Slide 77
  78. 78. Wf-XML Adds the process dimension Has evolved from a solid foundation – WfMC – OMG Does not overlap with other XML standards Is complementary to most XML standards Has industry support WfMC, September 2000, Slide 78
  79. 79. Wf-XML Future Establish a dialog with other XML standards – Context data providers – Process providers/users Show how it complements other XML standards – Integration of vertical data sets as context data – Analysis of requirements of standards with process components (e. g. RosettaNet PIPs) WfMC, September 2000, Slide 79

×