INFORMATION SYSTEMS Workflow Management Systems Design of Workflow Michael zur Muehlen Department of IS University of Muenster, Germany ismizu@wi.uni- muenster.de
Workflow Developer s Tasks Create, validate and test workflow model Integrate, integrate, integrate Core integration (basic workflow development) Process model what happens when Organizational model who does what Data model which conditions have to be met which tool supports which activity Process model Organizational model IT- Infrastructure Source: Leymann, Roller (2000) 2
Workflow modeling as two-level programming Specifying a process model has many aspects in common with programming. Input and output structures of activities are defined, control and data flows between the various activities are furnished, and transaction boundaries are establishes. This kind of programming is sometimes called programming in the large because it does not deal with low-level algorithmic aspects of an application but specifics what happens when in the overall environment. In contrast to this, building an activity implementation is sometimes called programming in the small. All low-level algorithmic aspects of a business function must be dealt with, data accesses must be performed, and communication with an end user must be established. Programming in the small is the traditional notion of programming. (Leymann, Roller (2000), p. 217f.) 3
Workflow integration requirements Embedded usage external integration requirements Workflow enactment service internal integration requirements Monitoring Process integration Resources Reporting Data Security External presentation e-commerce integration 4
Workflow APIs: Inside Out Resource repositories Access to X.500, LDAP, other directory services Integration of security mechanisms, single-sign-on etc. (Workflow relevant) data Access of existing data stores through ODBC, JDBC, flat file import, API calls Data mapping between applications Standard office products, legacy systems, new applications WfMS calls application vs. WfMS is an application Worklist handler & notification mechanisms Mostly: unified presentment of work (existing or from scratch) Notification for infrequent users through mail, web, etc. 5
Workflow APIs: Outside In WfMS are application systems, too! Invocation of workflows through standardized interfaces Manual invocation is the exception E-mail trigger structured customer service processes Website e-commerce applications Other applications machine workflows without human intervention etc. Presentment of status information for outside parties Query process states, value of workflow-relevant data Monitor system load, workload of participants Integration of external resource scheduling tools (e. g. call center assignment of participant through PBX) Hide workflow functionality in another application 6
Autonomous & Embedded Workflow 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, DMS, PPC etc.) Controls the sequence of elementary functions of the system within the application Differentiation: workflow-enabled versus workflow-based 7
Workflow within the enterprise architecture Enterprise-level process local process local process embedded WfMS local process Call-Center Orderdatabase Customerdatabase Create bill of materials Purchasing application Production scheduling ERP/PPC or other integrated application Invoice Creation Reminder Accounting Software Sales Disposition Production Accounting 8
Workflow within e-business e architectures Frontend Web Mobile (WAP, UMTS) Proprietary Middle tier Application components Application components workflow service Application components Application components DB connector ERP connector Legacy connector Backend Database ERP Legacy application 9
INFORMATION SYSTEMS Workflow Management Systems What about Standards?
Different standards for different purposes Standards for process model interchange WPDL/XPDL (WfMC) BPML/BPQL (BPMI) XLANG (Microsoft) WSFL (IBM) API standards for workflow systems WfMC OMG Workflow Facility Process/Service Signatures WSDL UDDI Standards for interoperability Interface 4, Wf- XML (WfMC) SOAP ebxml vertical standards (e. g. RosettaNet) 11
Example: Vendor-neutral neutral Process Definition Languages WPDL PSL PIF GPSG UML BPML Origin WfMC Standardization organization Vendors NIST Standardization organization MIT Research Xerox Labs Vendor s research lab OMG, Rational Standardization organization Vendors BPMI Standardization organization Vendors Specification EBNF, Plain Text, XML Schema KIF KIF EBNF OCL, UML, Plain Text XML Schema, Plain Text Intention Interchange Language Modeling Language Interchange Language Modeling Language Diagram Standard Modeling Language Tool Support Sev. Wf and BPR tools Prototype Prototype Prototype Sev. modeling and BPR tools Draft, vendor support announced Target Domain Workflow processes Business processes merging Manufacturing processes Business and workflow processes Objectoriented system development Business and workflow processes 12
The Workflow Reference Model Process Definition 1 Administration & Monitoring 5 Workflow Enactment A1 A2 A3 4 Workflow Engine(s) - Vendor A Other Workflow enactment service(s) Vendor B Vendor C 2 3 Workflow Client Invoked 13
Workflow Standards Reference Model The big picture - how the pieces fit Abstract specifications What functions and data are involved Bindings Specific implementations, formats, protocols Wf-XML is an XML binding of the Interoperability specification that is Interface 4 of the WfMC Reference Model 14
Process Definition Interchange Purpose Exchange of info between BPR tools, workflow systems, process definition repositories Process Definition Meta-Model Process Definition Defines objects, attributes & relationships 1 Core Set plus extensible attributes Administration & Monitoring 5 Workflow Enactment A1 A2 A3 Workflow Engine(s) - Vendor A 4 Other Workflow enactment service(s) Vendor B Vendor C WPDL / XPDL Syntax for encoding the process definition 2 3 Workflow Client Invoked Process Definition Manipulation APIs APIs for reading & writing object & attribute data 15
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), Administration & Monitoring 5 Process Definition Workflow Enactment A1 1 A2 A3 Workflow Engine(s) - Vendor A 2 3 4 Other Workflow enactment service(s) Vendor B Vendor C Specification V1 - Published Nov 95, now at V1.4 V2-1998 (joint OMG / WfMC spec) Workflow Client Invoked 16
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 Process Definition 1 Status Included in V2 Administration & Monitoring 5 Workflow Enactment A1 A2 A3 Workflow Engine(s) - Vendor A 4 Other Workflow enactment service(s) Vendor B Vendor C 2 3 Workflow Client Invoked 17
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. Process Definition IDL & CORBA version provided in OMG proposal 1 XML version released Q1 2000 Administration & Monitoring 5 Workflow Enactment A1 A2 A3 Workflow Engine(s) - Vendor A 4 Other Workflow enactment service(s) Vendor B Vendor C 2 3 Workflow Client Invoked 18
Administration & Monitoring Purpose To allow consistent administration across diverse systems Audit specifications Audit event identification, formats & recording Formal released as full specification Q1 97 Administration & Monitoring 5 Workflow Client Process Definition Workflow Enactment A1 1 A2 A3 Workflow Engine(s) - Vendor A 2 3 Invoked 4 Other Workflow enactment service(s) Vendor B Vendor C - 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) 19
Standards overlap UDDI / ebxml Repository BPML BPML XPDL XLANG WSFL WSDL Wf-XML WSDL XLANG WSFL XPDL Processes Organization Processes Organization 20
21