Your SlideShare is downloading. ×
0
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
2000 09 dh,mm,mts,mz m (xml world 2000) wf-xml tutorial
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

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

208

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 …

“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
208
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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. Overview Process Automation and the WfMC Standards Wf-XML Applications WfMC, September 2000, Slide 2
  • 3. Process Automation and the WfMC David Hollingsworth WfMC, September 2000, Slide 3
  • 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. 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. 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. 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. 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. 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. Business Integration Requirements ProcessBusiness Support Systems Roles & Responsibilities Information Organisation Access & Ownership Permissions WfMC, September 2000, Slide 10
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Contacts & Further Information http://www.wfmc.org email: wfmc@wfmc.org david.hollingsworth@icl.com WfMC, September 2000, Slide 29
  • 30. Process IntegrationXML Standardization Initiatives Mike Marin FileNet WfMC, September 2000, Slide 30
  • 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. 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. Classifying B2B Standards Transport level Vertical market vocabularies Specific functionality area Framework based Process based WfMC, September 2000, Slide 33
  • 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. 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. 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. Framework based Formalized exchange of XML content Examples – BizTalk – RosettaNet – ICE – ebXML WfMC, September 2000, Slide 37
  • 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. 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. ICE Horizontally oriented – Work with vertical market vocabularies Syndicator/Subscriber model – Request/Response model No process concept WfMC, September 2000, Slide 40
  • 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. Process based Business process oriented – General workflow functionality is horizontal Example – Wf-XML WfMC, September 2000, Slide 42
  • 43. Summary A crowded field Research your vertical market first Talk with the partners you intent to engage WfMC, September 2000, Slide 43
  • 44. Wf-XML Interoperability Standard Marc-Thomas SchmidtIBM UK, Business Integration Architecture mts@uk.ibm.com WfMC, September 2000, Slide 44
  • 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. 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. Multi-Party InteractionsParty A Party B Party C WfMC, September 2000, Slide 47
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Summary Michael zur Muehlen University of MuensterDepartment of Information Systems ismizu@wi.uni-muenster.de WfMC, September 2000, Slide 67
  • 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. 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. 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. 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. 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. Example: Web-based Helpdesk WfMC, September 2000, Slide 73
  • 74. Observer for User Monitoring Data WfMC, September 2000, Slide 74
  • 75. Details of Cascaded Processes WfMC, September 2000, Slide 75
  • 76. Re-Querying of Process Context Data WfMC, September 2000, Slide 76
  • 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. 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. 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

×