Modelling Workflow with Petri Nets. CA4 BPM PetriNets



Similar documents
Process Modelling from Insurance Event Log

BIS 3106: Business Process Management. Lecture Two: Modelling the Control-flow Perspective

Business Process Modeling

Analysis and Implementation of Workflowbased Supply Chain Management System

COMPUTER AUTOMATION OF BUSINESS PROCESSES T. Stoilov, K. Stoilova

Chapter 2 Introduction to Business Processes, BPM, and BPM Systems

Supporting the BPM lifecycle with FileNet

Process Modeling Notations and Workflow Patterns

GOAL-BASED INTELLIGENT AGENTS

UML TUTORIALS THE USE CASE MODEL

PROCESS-ORIENTED ARCHITECTURES FOR ELECTRONIC COMMERCE AND INTERORGANIZATIONAL WORKFLOW

Process Diagram Technique for Business Processes Modeling

Semantic Analysis of Flow Patterns in Business Process Modeling

EFFECTIVE CONSTRUCTIVE MODELS OF IMPLICIT SELECTION IN BUSINESS PROCESSES. Nataliya Golyan, Vera Golyan, Olga Kalynychenko

CPN Tools 4: A Process Modeling Tool Combining Declarative and Imperative Paradigms

Methods for the specification and verification of business processes MPB (6 cfu, 295AA)

Model Discovery from Motor Claim Process Using Process Mining Technique

A PRACTICAL APPROACH FOR A WORKFLOW MANAGEMENT SYSTEM

Diagnosing workflow processes using Woflan

Diagramming Techniques:

Lecture 16 : Relations and Functions DRAFT

Introduction to Workflow

Activity Mining for Discovering Software Process Models

Multi-Agent Based Peer-to-Peer Workflow Management System

Test Coverage Criteria for Autonomous Mobile Systems based on Coloured Petri Nets

Business Intelligence and Process Modelling

An Evaluation of Conceptual Business Process Modelling Languages

Programma della seconda parte del corso

Enterprise Integration: operational models of business processes and workflow systems *

Applying a Generic Conceptual Workflow Modeling Technique to Document Workflows *

Kirsten Sinclair SyntheSys Systems Engineers

Formal Approaches to Business Processes through Petri Nets

Formal Modeling Approach for Supply Chain Event Management

Structural Detection of Deadlocks in Business Process Models

IE1204 Digital Design F12: Asynchronous Sequential Circuits (Part 1)

Model Simulation in Rational Software Architect: Business Process Simulation

Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification

Modeling Workflow Patterns

Lecture 26 CPM / PERT Network Diagram

Workflow Object Driven Model

A CSPm Model for the Procure to Pay Case Study

Modeling and Simulation of Workflow Processes Using Multi-level Petri Nets

Process Mining by Measuring Process Block Similarity

Supporting the BPM life-cycle with FileNet

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.

Generic Workflow Models: How to Handle Dynamic Change and Capture Management Information?

On the Modeling and Verification of Security-Aware and Process-Aware Information Systems

PETRI NET BASED SUPERVISORY CONTROL OF FLEXIBLE BATCH PLANTS. G. Mušič and D. Matko

Lecture 8 BP enactment

Flexible Process Notations for Cross-organizational Case Management Systems

Supporting the Workflow Management System Development Process with YAWL

CS 565 Business Process & Workflow Management Systems

Modeling and Performance Evaluation of Internet of Things based on Petri Nets and Behavior Expression

How To Understand The Difference Between Business Process And Process Model In Java.Java.Org (Programming)

Mapping Business Process Modeling constructs to Behavior Driven Development Ubiquitous Language

EMiT: A process mining tool

WoPeD - An Educational Tool for Workflow Nets

FileNet s BPM life-cycle support

Variable: characteristic that varies from one individual to another in the population

UML Activities & Actions. Charles ANDRE - UNSA

Business Process Quality Metrics: Log-based Complexity of Workflow Patterns

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha

Interaction Diagrams. Use Cases and Actors INTERACTION MODELING

Data Centric BPM and the Emerging Case Management Standard: A Short Survey

Lecture 8: Synchronous Digital Systems

FUNCTIONAL ANALYSIS AND ALLOCATION

Business Process Modelling. CA4 Business Process Modelling 1

Types of UML Diagram. UML Diagrams OOAD. Computer Engineering Sem -IV

Using UML Part Two Behavioral Modeling Diagrams

The Workflow Management Coalition Specification Workflow Management Coalition Terminology & Glossary

Business Process Management Demystified: A Tutorial on Models, Systems and Standards for Workflow Management

1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1.

Modeling Agile Manufacturing Cell using Object-Oriented Timed Petri net

BPMN PATTERNS USED IN MANAGEMENT INFORMATION SYSTEMS

Real Time Scheduling Basic Concepts. Radek Pelánek

Managing and Tracing the Traversal of Process Clouds with Templates, Agendas and Artifacts

Possibilities and limitations of formal methods for business process analysis and design

An Introduction to Business Process Modeling

Query-Based Approach to Workflow Process Dependency Analysis Technical Report 01 Faculty of Science 2005

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Workflow Requirements (Dec. 12, 2006)

An Evaluation of Conceptual Business Process Modelling Languages

BPMN and Simulation. L. J. Enstone & M. F. Clark The Lanner Group April 2006

7. Classification. Business value. Structuring (repetition) Automation. Classification (after Leymann/Roller) Automation.

Qualitative and Quantitative Analysis of Workflows Based on the UML Activity Diagram and Petri Net

Policy Modeling and Compliance Verification in Enterprise Software Systems: a Survey

Transcription:

Modelling Workflow with Petri Nets 1

Workflow Management Issues Georgakopoulos,Hornick, Sheth Process Workflow specification Workflow Implementation =workflow application Business Process Modelling/ Reengineering (BPM/R) Workflow model & specification language Executable application code Enactment Service/ Runtime Support 2

Workflows & Petri Nets (PNs) WFMS give an explicit representation of the BP logic thus allowing for computerized support PNs are an established tool for modelling & analyzing business processes: Can be used as a design language for the specification of complex WFs PN theory provides for powerful analysis techniques for verifying the correctness of WF procedures. PN primarily used to study dynamic concurrent behaviour of n/w-based systems with a discrete flow. 3

Workflows & Petri Nets (cont'd) Workflows are case-based, i.e., every piece of work is executed for a specific case. Case: the subject of operation in a business process execution. E.g. mortgage application, hospital admission, insurance claim, tax declaration, order, request for information... A workflow process is designed to handle similar cases. Cases are handled by executing tasks in a specific order. 4

A three-dimensional view of a WF (W.M.P. van der Aalst) 5

Basics of Petri Nets Petri nets comprise two types of nodes: places and transitions. An arc exists only from a place to a transition or from a transition to a place. A place may have zero or more tokens. Graphically, places, transitions, arcs, and tokens are represented respectively by: circles, bars, arrows, and dots. p 1 t 1 p 2 6

Dynamic modelling with Petri nets Transitions are the active components. often represent an event, an operation, a transformation or a transportation. Places are passive. usually represents a medium, a buffer, a geographical location, a state a phase or a condition. depends on how the token is place is interpreted Tokens often indicate objects. can play a role as physical object, e.g. a product/person; an info object, e.g. a message; an indicator of state a process is in or state of an object; an indicator of a condition, i.e. the presence of a token indicates whether a certain condition is fulfilled. 7

Object Life Cycle (OLC) with Petri Nets A Petri net attaches to a life cycle of objects of a class States correspond to places Initial state: state with token, there is only one initial state in an OLC Transitions correspond to events, conditions (verify a condition) or processes (or atomic process: method) that changes object state Tokens represent objects in this class 8

Basics of Petri Nets (cont'd) P1 or Place Transition T1 P2 T2 Arc Token P3 P5 P4 T3 9

Example claims process token transition place Pay Claim Record Under consideration Send letter Ready State: (3,0,0) (2,1,0) (2,0,1) (1,1,1) (1,0,2) 10

Basics of Petri Nets (cont'd) Below is an example Petri net with two places and one transaction. Transition node is ready to fire if & only if there is at least one token at each of its input places p 1 t 1 p 2 state transition of form (1, 0) -> (0, 1) p 1 : input place p 2 : output place 11

Formal Notation of Petri Nets A bipartite graph, PN=(P, T, I, O) P: finite set of places T: finite set of transitions I: (P*T) N, I(p,t)=n, if n>0, p P, t T, then p is an input place of t; n is an input multiplicity (weight) for each input arc (p,t) O: (T*P) N, O(t,p)=m, if m>0, p P, t T, then p is an output place of t; m is an output multiplicity(weight) for each output arc (t,p) By default, the weight of an arc is equal 1, otherwise it will be noted. The input multiplicity of an arc between an input place and a transition determines how many tokens have to be present in the place so that the transition is enabled 12

Formal Notation of Petri Nets (cont'd) A state of a Petri net is a function s: P N, assigning to each place p P a number of tokens at this place. A state space of a Petri net is a set of all s(p), p P. (E.g. state space is (2,1, 0, 0, 0)) A transition t is enabled, t T in state s: P N, if there are enough tokens present in each of the input places of t, i.e. if and only if p P, s(p) I(p,t) A transition t can fire in a state s whenever it is enabled in this state. When it fires, it consumes I(p,t) tokens from each input place p and produces O(t,q) tokens in each output place q. If t fires in state s, this leads to a new state s where p P, s (p)=s(p) I(p,t) + O(t,p) 13

Properties of Petri Nets Sequential Execution Transition t 2 can fire only after the firing of t 1. This impose the precedence of constraints "t 2 after t 1." Synchronization Transition t 1 will be enabled only when a token there are at least one token at each of its input places. Merging Happens when tokens from several places arrive for service at the same transition. p 1 t 1 p 2 t 2 p 3 t 1 14

Properties of Petri Nets (contd) Concurrency t 1 and t 2 are concurrent. With this property, Petri nets can model systems of distributed control with multiple processes executing concurrently in time. t 1 t 2 15

Properties of Petri Nets (contd) Conflict t 1 and t 2 are both ready to fire but the firing of one leads to the disabling of the other transitions. t 1 t 2 t 1 t 2 16

Properties of Petri Nets (contd) Conflict - (contd) the resulting conflict may be resolved in a purely non-deterministic way or in a probabilistic way, by assigning appropriate probabilities to the conflicting transitions. e.g: t 1 t 2 t 3 t 4 17

Example: Patients & a Specialist free wait start end start change busy change Tokens : Specialist documenting inside treated Tokens : Patient (W.M.P. van der Aalst) 18

Example: Patients & a Specialist (cont'd) The process of a specialist treating patients: end free busy documenting wait start inside chang e treated If a specialist always treats two patients at the same time? 19

Example: Patients & a Specialist (cont'd) end free busy documenting wait 2 2 2 2 start inside change treated 20

Example: In a Restaurant Waiter Customer 1 free Customer 2 Take order Take order wait Order taken wait eating Serve food Tell kitchen Serve food eating 21

Example: In a Restaurant (cont'd) Two Scenarios Scenario 1: Waiter takes order from customer 1; serves customer 1; takes order from customer 2; serves customer 2. Scenario 2: Waiter takes order from customer 1; takes order from customer 2; serves customer 2; serves customer 1. 22

Example: In a Restaurant (Scenario 1) Waiter Customer 1 free Customer 2 Take order Take order wait Order taken wait eating Serve food Tell kitchen Serve food eating 23

Example: In a Restaurant (Scenario 2) Waiter Customer 1 free Customer 2 Take order Take order wait Order taken wait eating Serve food Tell kitchen Serve food eating 24

Example: Vending Machine Deposit 5c Take 15c bar 5c Deposit 10c 15c 0c Deposit 5c Deposit 5c Deposit 5c Deposit 10c 10c Take 20c bar Deposit 10c 20c 25

Example: Vending Machine (3 Scenarios) Scenario 1: Deposit 5c, deposit 5c, deposit 5c, deposit 5c, take 20c snack bar. Scenario 2: Deposit 10c, deposit 5c, take 15c snack bar. Scenario 3: Deposit 5c, deposit 10c, deposit 5c, take 20c snack bar. 26

Example: Vending Machine (Token Games) Deposit 5c Take 15c bar 5c Deposit 10c 15c 0c Deposit 5c Deposit 5c Deposit 5c Deposit 10c 10c Take 20c bar Deposit 10c 20c 27

Example: Insurance complaint process To manage different cases, two solutions: 1. Token is added a value (case identifier or colour) for distinguish different cases 28 2. Each case corresponds to a unique instance of the Petri nets

Petri Nets over Time 1962 - Carl Petri originally proposed Petri Nets without any notion of time. Concept of time was intentionally avoided because addition of time restricts the behavior of the net. 1970s ~ - Addition of time has been discussed in order to analyze the performance of modelled system. Many properties are still undecided for Petri nets extended with data and time. 29

References http://www.wfmc.org/standards/model.htm The Application of Petri Nets to Workflow Management, W. van der Aalst, J. Circuits, Systems & Computers, Vol. 8(1) (1998), pp. 21-66 Design and control of workflow process, Hajo A.Reijers, LNCS Springer, 2003 Coupling Object-Oriented and Workflow Modelling in Business and Information Process Reengineering, Gregory N. Mentzas, IOS Press, 1999 Workflow Management Coalition Terminology and Glossary (WFMC-TC-1011). Technical report, Workflow Management Coalition, Brussels, 1996. 30