Workflow Description Language and Workflow Patterns Yi Wang Outline What is Workflow? Workflow Management System Workflow Reference Models Workflow Description Language Workflow Patterns Workflow Definition The automation of a business process, in whole or part. Information or tasks are passed from one participant to another for action, according to a set of procedural rules. A number of logical steps, each of which is known as an activity. Example of Workflow Example Workflow Management System--Definition A system that completely defines, manages and executes “workflows” through the execution of software whose order of execution is driven by a computer representation of the workflow logic. Three function areas --Supporting WFM The Build-time functions, concerned with defining, and possibly modeling, the workflow process and its constituent activities The Run-time control functions concerned with managing the workflow processes in an operational environment and sequencing the various activities to be handled as part of each process The Run-time interactions with human users and IT application tools for processing the various activity steps Types of Workflow Product FlowMark (IBM) Lotus Notes(IBM/Lotus) Ad hoc WorkMAN (Reach Software) Workflow Reference Model A reference model for workflow management systems has been defined by the WfMC(Workflow Management Coalition). Specify a framework for workflow systems, identifying their characteristics, functions and interfaces. WAPI Workflow Application Programming Interface The interface around the workflow enactment A service interface which is to support workflow management functions across the 5 functional areas. Workflow Enactment Services A software service Consist of one or more workflow engines in order to create, manage and execute workflow instances. Applications may interface to this service via the WAPI. Workflow Engine A workflow enactment service consists of mutiple workflow engines. A software service or "engine" Execute environment for a workflow instance Responsible for the part or all of the runtime control environment within an enactment service. Process and Activity State Transitions The workflow enactment service may be considered as a state transition machine, Individual process or activity instances change states in response to external events(eg completion of an activity) Specific control decisions taken by a workflow engine(eg navigation to the next activity step within a process) A Basic Example Process Definition Tools To create model, describe and document a business process. Based on Process definition language Object relationship model A set of routing commands to transfer information between participating users A Basic Meta-Model WFMC is developing a meta-model for the process definition Meta-Languages is a superset of constructs that is in process modeling languages Workflow Description Language A process description, is a structure describing the tasks or activities to be executed and the order of their execution. The process description can be provided in Workflow Description Language. Meta-Language for Workflow and Process Modeling WPDL(Workflow Process Definition Language) PIF(Process Interchange Framework) PSL(Process Specification Language) GPSG(Generalized Process Structure Grammars) Unified Modeling Language A Business Process Workflow Process Definition Language(WPDL) Defining the actions to be carried out in each possible state Pre- and post-conditions of states Transitions between states Defining the sequencing of tasks / states Defining automated states and states requiring user input PIF Processes are presented at various levels of abstraction. Object-Oriented concept of inheritance. Hierarchy structure. PIF PSL(Process Specification Language) To support communication between different applications based on a common understanding of their environment. Develop a common exchange format for different modeling description. A brief summary WPDL, PIF, PSL represent IPO-based process modeling languages. IPO(Input-Process-Output) IPO-based languages describe a workflow as a directed graph of activities, denoting the sequence of their execution. GPSG Generalized Process Structure Grammars. A constraint-based approach to process modeling. GPSG example For IPO-based language the sequence of two activities is denoted as B.start :=A.end For GPSG, contain following constraints B.start = A.end B.end < deadline B.start = B.end – B.average_duration Unified Modeling Language Defines different diagram types for the design object-oriented software systems Helps you specify, visualize, and document models. Offers graphical notations for workflow models. Workflow Patterns A process requires the activation of multiple tasks. Refers to the relationship among the tasks of a process. The workflow description languages and the mechanisms to control the enactment of a case must have provisions to support these temporal relationships. Basic workflow patterns graph Basic workflow patterns graph Reference Internet-Based Workflow Management: Towards a Semantics Web. Dan.C.Marinescu. Wiley, 2002 Workflow:An Introduction. Rob Allen, Open Image Systems Inc., United Kingdom Chair, WFMC External Relations Committee Using Web Services and Workflow Ontology in Multi-Agent Systems. Jarmo Korhonen, Lasse Pajunen, and Juha Puustjärvi Reference Workflow: An Introduction. Rob Allen, Open Image Systems Inc., United Kingdom. Chair, WfMC External Relations Committee. Workflow Process Definition LanguageDevelopment and Directions of a Meta-Language for Workflow Processes. Michael zur Mühlen, Jörg Becker Workflow Management Coalition The Workflow Reference Model Document Number TC00-1003 Document Status - Issue 1.1 19-Jan-95 Author:David Hollingsworth