1 Patterns and Products Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management Department of Information and Technology.

Slides:



Advertisements
Similar presentations
Web Service Composition Prepared by Robert Ma February 5, 2007.
Advertisements

WS Orchestration Eyal Oren DERI 2004/04/07
Don’t go with the flow : Web services composition standards exposed
Programming Paradigms and languages
A university for the world real R © 2009, Chapter 3 Advanced Synchronization Moe Wynn Wil van der Aalst Arthur ter Hofstede.
Interaction Patterns in Workflow Environments Research presentation by Martin Vasko.
Software and Systems Engineering Seminar Winter 2011 Domain-specific languages in model-driven software engineering 1 Speaker: Valentin ROBERT.
Towards Workflow Pattern Support of Event-Driven Process Chains (EPC) Jan Mendling, Gustaf Neumann Dept. of IS and New Media, WU Wien, Austria Markus Nüttgens.
Feature requests for Case Manager By Spar Nord Bank A/S IBM Insight 2014 Spar Nord Bank A/S1.
1 Introduction to modeling Process modelling. 2 Where are we? #TitleDate 1Introduction ORM modeling Relational modeling
A university for the world real R © 2009, Chapter 15 The Business Process Execution Language Chun Ouyang Marlon Dumas Petia Wohed.
Object-Oriented Analysis and Design
On the Expressive Power of (Petri-net-based) Workflow Languages
1 Workflow Management Systems : Functions, architecture, and products. Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management.
IBM WebSphere survey Kristian Bisgaard Lassen. University of AarhusIBM WebSphere survey2 Tools  WebSphere Application Server Portal Studio Business Integration.
Business Process Orchestration
1 Analysis of workflows a-priori and a-posteriori analysis Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management Department.
Discovering Coordination Patterns using Process Mining Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology Department of Information and Technology.
© Copyright Eliyahu Brutman Programming Techniques Course.
1 WS Technologies III BPEL4WS Roberto Bruni Dipartimento di Informatica Università di Pisa Models and Languages for Coordination and Orchestration IMT-
BPEL4WS Stewart Green University of the West of England.
Workflow patterns using BPMN 2.0
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
1 Workflow/Business Process Management Introduction business process management and workflow management Eindhoven University of Technology Faculty of Technology.
1 Workflow/Business Process Management Introduction business process management and workflow management Eindhoven University of Technology Faculty of Technology.
Chapter 13: Process Specifications Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
Enterprise Workflow CPSC 476 Lightening Talk Brenda Griffith/Katie Soto.
Process-oriented System Automation Executable Process Modeling & Process Automation.
A university for the world real R © 2009, Chapter 23 Epilogue Wil van der Aalst Michael Adams Arthur ter Hofstede Nick Russell.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
1 Workflow/Business Process Management Introduction business process management and workflow management Eindhoven University of Technology Faculty of Technology.
1 Conceptual Modeling of User Interfaces to Workflow Information Systems Conceptual Modeling of User Interfaces to Workflow Information Systems By: Josefina.
39 Copyright © 2007, Oracle. All rights reserved. Module 39: Siebel Task UI Siebel 8.0 Essentials.
*Law and Coordination Rodrigo Paes. © LES/PUC-Rio Agenda Integration Coordination BPEL example Birth *Law and Coordination Further Steps.
BPMN By Hosein Bitaraf Software Engineering. Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes.
1 Workflow Management Systems : Functions, architecture, and products. Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management.
Workflow/Business Process Management Introduction business process management and workflow management Wil van der Aalst Eindhoven University of Technology.
A university for the world real R © 2009, Chapter 21 YAWL4Healthcare Ronny Mans Wil van der Aalst Nick Russell Arnold Moleman Piet.
Web Service Composition workflow patterns in BPEL4WS Eyal Oren DERI 2004/06/02
مهندسی مجدد فرآیندهای تجاری
1 Analysis of workflows : Verification, validation, and performance analysis. Wil van der Aalst Eindhoven University of Technology Faculty of Technology.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
The GOOD the BAD the UGLY WS-CDL: the GOOD the BAD the UGLY.
95-843: Service Oriented Architecture 1 Master of Information System Management Service Oriented Architecture Lecture 7: BPEL Some notes selected from.
Petri nets refresher Prof.dr.ir. Wil van der Aalst
A university for the world real R © 2009, Chapter 9 The Runtime Environment Michael Adams.
BPEL
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
Qusay H. Mahmoud CIS* CIS* Service-Oriented Computing Qusay H. Mahmoud, Ph.D.
Dr. Rebhi S. Baraka Advanced Topics in Information Technology (SICT 4310) Department of Computer Science Faculty of Information Technology.
1 Modeling workflows : The organizational dimension and alternative notations. Wil van der Aalst Eindhoven University of Technology Faculty of Technology.
Towards a Benchmark for the Evaluation of LD Expressiveness and Suitability Manuel Caeiro Rodríguez
SE 548 Process Modelling WEB SERVICE ORCHESTRATION AND COMPOSITION ÖZLEM BİLGİÇ.
2 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any.
Service Composition Orchestration BPEL Cédric Tedeschi ISI – M2R.
1 Seminar on SOA Seminar on Service Oriented Architecture BPEL Some notes selected from “Business Process Execution Language for Web Services” by Matjaz.
Business Process Execution Language (BPEL) Pınar Tekin.
PLM, Document and Workflow Management
Unified Modeling Language
Business Process Management Software
BPEL Eric Verbeek In these two hours (approx.) we will give an overview of BPEL, the Business Process Execution Language. We will also give some of the.
Workflow Management Systems: Functions, architecture, and products.
Marlon Dumas marlon.dumas ät ut . ee
BPMN - Business Process Modeling Notations
Workflow/Business Process Management Introduction business process management and workflow management.
Presentation transcript:

1 Patterns and Products Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management Department of Information and Technology P.O. Box MB Eindhoven The Netherlands See

2 Selection of workflow management systems An approach based on patterns

3 Workflow patterns initiative Started in 1996, joint work TU/e and QUT (1999). Different types of patterns: –Control-flow patterns –Data patterns –Resource patterns Some of the people involved: Arthur ter Hofstede (QUT), Marlon Dumas (QUT), Nick Russel (QUT), Petia Wohed (DSV), Bartek Kiepuszewski (QUT), Alistair Barros (SAP), Oscar Ommert (EUT), Ton Pijpers (ATOS), Nataliya Muylar (EUT), Maja Pesic (EUT), Alexander Norta (EUT), Eric Verbeek, et al.

4 20+ Control flow patterns Focus: The routing of work from one activity to another, i.e., a partial order of activities.

5 Classes of control-flow patterns Basic control flow patterns – the five most basic patterns Advanced branching and synchronization patterns – more complicated splits and joins Structural patterns – absence of syntactical requirements that limit the modeler Patterns involving multiple instances – e.g., order lines in an order State-based patterns – states are more than queues in front of activities Cancellation Patterns – removing work-items and cases

6 Basic control flow patterns – Pattern 2 Parallel Split

7 Basic control flow patterns – Pattern 3 Synchronization simple right??

8 Basic control flow patterns – Pattern 4 Exclusive choice XOR- split

9 Basic control flow patterns – Pattern 5 Simple merge simple right??

10 It's not that simple! There are many ways to split! There are many ways to join!

11 Exclusive choice versus Deferred choice Not that simple 1: The moment of choice matters!

12 startregister send_form evaluate process_complaint check_proc process_form time-out archive ready c1 c2 c3 c4 c5 c6 c7 Example: Deferred Choice (Pattern 16)

13 Not that simple 2: There are many ways to join! COSA (Ley): Places have capacity 1. Oracle BPEL/FLOWer: True and false tokens. Staffware (TIBCO): Race conditions. SAP Business Workflow (SAP): split-join block with a minimum or an end condition. Etc. A join B C

14 Staffware: Unintended race conditions

15 Basic Control Flow Patterns Pattern 1 (Sequence) Pattern 2 (Parallel Split) Pattern 3 (Synchronization) Pattern 4 (Exclusive Choice) Pattern 5 (Simple Merge) Advanced Branching and Synchronization Patterns Pattern 6 (Multi-choice) Pattern 7 (Synchronizing Merge) Pattern 8 (Multi-merge) Pattern 9 (Discriminator) More patterns... Structural Patterns Pattern 10 (Arbitrary Cycles) Pattern 11 (Implicit Termination) Patterns involving Multiple Instances Pattern 12 (Multiple Instances Without Synchronization) Pattern 13 (Multiple Instances With a Priori Design Time Knowledge) Pattern 14 (Multiple Instances With a Priori Runtime Knowledge) Pattern 15 (Multiple Instances Without a Priori Runtime Knowledge) State-based Patterns Pattern 16 (Deferred Choice) Pattern 17 (Interleaved Parallel Routing) Pattern 18 (Milestone) Cancellation Patterns Pattern 19 (Cancel Activity) Pattern 20 (Cancel Case)

16 Evaluation

17 39 Data patterns Focus: Data patterns aim to capture the various ways in which data is represented and utilized in workflows.

18 Classes of data patterns Data visibility — relating to the extent and manner in which data elements can be viewed by various components of a workflow process. Data interaction — focusing on the manner in which data is communicated between active elements within a workflow. Data transfer — which consider the means by which the actual transfer of data elements occurs between workflow components and describe the various mechanisms by which data elements can be passed across the interface of a workflow component. Data-based routing — which characterize the manner in which data elements can influence the operation of other aspects of the workflow, particularly the control flow perspective.

19 Data visibility – Pattern 3 Scope data

20 Data interaction – Patterns 14-17

21 Resource patterns

22 43 Resource patterns Focus: The gap between the creation of a work-item (activity that needs to be executed) and the actual execution by some resource.

23 Classes of resource patterns Creation patterns – design-time work allocation directives Push patterns – workflow system proactively distributes work items Pull patterns – resources proactively identify and commit to work items Detour patterns – re-routing of work items Auto-start patterns – automated commencement Visibility patterns – observability of workflow activities Multiple resource patterns – work allocation involving multiple participants or resources

24 Push patterns – Pattern 17 Shortest Queue push workitem to shortest queue

25 Pull patterns – Pattern 23 Resource Initiated Exec. pull workitem to start working

26 Auto-start patterns – Pattern 38 Piled execution the completion of one activity starts another cf. Pattern 39 Chained execution

27 FLASH Animations of Patterns

28 Evaluation of 5 concrete WFM systems

29 F our types of "workflow-like" systems: 1.Information systems with hard-coded workflows (process& organization specific). 2.Custom-made information systems with generic workflow support (organization specific). 3.Generic software with embedded workflow functionality (e.g., the workflow components of ERP, CRM, PDM, etc. systems). 4.Generic software focusing on workflow functionality Oracle BPEL (Oracle) Staffware (TIBCO) COSA (COSA GmbH) FLOWer (Pallas Athena) SAP Business Workflow/Webflow (SAP AG)

30 Oracle BPEL (Oracle) Staffware (TIBCO) COSA (COSA GmbH) FLOWer (Pallas Athena) SAP Business Workflow/Webflow (SAP AG)

31 Staffware (TIBCO)

32 Staffware: Control flow perspective startstop step (i.e., task) event step automatic step wait (i.e., AND-join) condition (i.e., XOR- split) complex router (OR-join/AND-split)

33 OR-join AND-split

34 Example

35 Staffware: Control flow evaluation Classical problems: –no states –only internal choices Evaluation based on: Workflow Patterns (2002) new features (prediction/fragments) do not influence evaluation

36 Staffware: Data perspective Ability to define forms Variables of different types Evaluated in Workflow data patterns Weaker than most other systems.

37 Staffware: Resource perspective Concept of work queues Evaluated in Workflow resource patterns Weaker than most other systems.

38 Staffware: Conclusion Positive Widely used Easy to use High performance Interesting new concepts, e.g., prediction and fragments Negative Limited functionality in all perspectives. Little flexibility. Future within Tibco is less clear.

39 COSA (COSA GmbH)

40 COSA: Control flow perspective Based on Petri nets Lots of functionality

41 COSA: Control flow evaluation Benefits from Petri net basis. Support for advanced synchronization and multiple instances patterns could be better. Evaluation based on: Workflow Patterns (2002)

42 COSA: Data perspective Variables at different levels. Good support through tool agents. Evaluated in Workflow data patterns Weaker than most other systems.

43 COSA: Resource perspective One of the most powerful tools on the market. Multiple dimensions and rules. Evaluated in Workflow resource patterns 2005.

44

45 COSA: Conclusion Positive Powerful language Unique features in each of the perspectives Negative No integrated forms environment Little operational flexibility Future of COSA is less clear

46 Oracle BPEL (Oracle)

47 Oracle: Control flow perspective Based on BPEL

48 BPEL(4WS) – Business Process Execution Language for Web Services Compromise between IBM and Microsoft. Merges WSFL and XLANG. Two styles of working: graph based and structured. Expressive but complex language. Support by many vendors: IBM Websphere, Oracle BPEL, and at least 16 more products. In April 2003, BEA Systems, IBM, Microsoft, SAP AG and Siebel Systems submitted BPEL4WS 1.1 to OASIS. Version 2.0 will have subtle but significant differences. Two flavors: executable and abstract (non-executable)

49 Constructs Primitive activities invoke, invoking an operation on some web service; receive, waiting for a message from an external source; reply, replying to an external source; wait, waiting for some time; assign, copying data from one place to another; throw, indicating errors in the execution; terminate, terminating the entire service instance; and empty, doing nothing. Structured activities sequence, for defining an execution order; switch, for conditional routing; while, for looping; pick, for race conditions based on timing or external triggers; flow, for parallel routing; and scope, for grouping activities to be treated by the same fault-handler. Activities can be nested. Can be connect though links.

50 Oracle: Control flow evaluation Support similar to BPEL (2 exceptions). Evaluation based on: Pattern-based Evaluation of Oracle-BPEL (v ), N.A. Mulyar, few ratings have been changed to make a fair comparison possible

51 Oracle: Data perspective Similar to BPEL, e.g. scope (create and scope data), assign (copy and modify), invoke (exchange with external entities), etc. XML based. Powerful but complicated. See Pattern-based Evaluation of Oracle-BPEL (v ), N.A. Mulyar, 2005.

52 Oracle: Resource perspective Not part of BPEL (cf. BPEL4people). Oracle specific task implementations. Close to programming. See Pattern-based Evaluation of Oracle-BPEL (v ), N.A. Mulyar, 2005.

53 Oracle: Conclusion Positive Based on BPEL (emerging industry standard) Powerful language Negative Based on BPEL (close to programming and a bit immature)

54 SAP Business Workflow/Webflow (SAP AG)

55 SAP: Control flow perspective Two views: native view and EPC view. Block structured. e.g. sequence:

56 Routing elements

57 parallel routing three types of choices

58 join can hove a condition and/or lower bound two types of loops

59 SAP: Control flow evaluation Classical language with classical capabilities. See Pattern-based Evaluation of SAP Business Workflow, 2005.

60 SAP: Data perspective Data is stored in containers holding values or references to (SAP) objects (e.g., documents, masterdata, etc.). Workflow containers and task containers are linked through bindings.

61 SAP: Resource perspective Organizational units have positions that may or may not be occupied. Positions may be associated to multiple jobs (kind of role). You can assign a task to –an organizational unit, if it is to apply to all subordinate positions –a job, if it is to apply to all positions described by the job –a position, if it is to apply to those persons (employees) or users who hold the position –a person (employee), if it is to apply to this person

62 Logging in SAP Workflow

63 SAP: Conclusion Positive Integration in SAP environment (for those that have SAP): –free –support –solid future (although technology may change towards BPEL) Negative Integration in SAP environment (for those that do not have SAP). Limited functionality in all perspectives. Little flexibility.

64 FLOWer (Pallas Athena)

65 FLOWer: Control flow perspective Block structured (similar to BPEL) but with excellent support for multiple instances. Can be generated from Protos. Case handling principle.

66 Partly block structured: choices, loops, etc. require an additional level

67 FLOWer: Control flow evaluation Powerful language. Many +/- because of case handling concept. Evaluation based on: Workflow Patterns (2002) more recent releases also support synchronizing merge.

68 FLOWer: Data perspective Case handling concept: data driven. Forms play inportant role. Multiple instance data. Evaluated in Workflow data patterns 2005.

69 FLOWer: Resource perspective Three roles for step in the process (execute, redo, skip). Hierarchies can be defined independent of process. Various was to view/distribute work. Evaluated in Workflow resource patterns 2005.

70 Forms

71

72 FLOWer: Conclusion Positive Highly expressive language More flexible Powerful forms environment Strong presence in The Netherlands Negative Complicated organizational model and more work needed to restrict people (if needed).

73 Other aspects important for evaluation Price Reliability/stability vendor Product support (training, etc.) Implementation support Performance (load and response times) Application integration Technical constraints (e.g., databases, etc.)...