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

Similar documents
Business Process Modeling

Formal Approaches to Business Processes through Petri Nets

Process Modeling Notations and Workflow Patterns

Modeling Workflow Patterns

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

Modelling Workflow with Petri Nets. CA4 BPM PetriNets

Process Modelling from Insurance Event Log

Modeling Business Processes with BPMN. Andrea Marrella

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

PROCESS-ORIENTED ARCHITECTURES FOR ELECTRONIC COMMERCE AND INTERORGANIZATIONAL WORKFLOW

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

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

Process Modeling using BPMN 2.0

Time Patterns in Workflow Management Systems

Structural Detection of Deadlocks in Business Process Models

The Workflow Management Coalition Specification Workflow Management Coalition Terminology & Glossary

Chapter 3 Essential Process Modeling

YAWL: Yet Another Workflow Language (Revised version) 2

SemTalk BPMN Tutorial APRIL Tutorial SemTalk 4.3 BPMN Edition for Business Process Analysis

BPMN by example. Bizagi Suite. Copyright 2014 Bizagi

08 BPMN/1. Software Technology 2. MSc in Communication Sciences Program in Technologies for Human Communication Davide Eynard

An Introduction to Business Process Modeling

Modeling Guidelines Manual

Process Mining Data Science in Action

Workflow Management Standards & Interoperability

An Introduction to Business Process Modeling

Designing workflow systems

Dr. Jana Koehler IBM Zurich Research Laboratory

Diagramming Techniques:

Agile Long-term Workflows

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

Service Level Agreements based on Business Process Modeling

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

4.7 Business Process Model and Notation

BIS 3106: Business Process Management. Business Process Management Outline

Object Oriented Programming. Risk Management

Using UML Part Two Behavioral Modeling Diagrams

Semantic Analysis of Flow Patterns in Business Process Modeling

Supporting the BPM lifecycle with FileNet

BPMN 2.0 Descriptive Constructs

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

WoPeD - An Educational Tool for Workflow Nets

A process model is a description of a process. Process models are often associated with business processes.

Ontology-Based Discovery of Workflow Activity Patterns

Business Process Control-Flow Complexity: Metric, Evaluation, and Validation

Workflow Management Systems (WfMS)

Circles and Diamonds and Squares, Oh My! Demystifying the BPMN Standard

IBM Business Process Manager Version 8 Release 5. Hiring Tutorial

Business Process Modeling with BPMN. Dr. Darius Šilingas Head of Solutions Department

CHAPTER 1 INTRODUCTION

White Paper BPMN 2.0 Task Types Explained

BPMN PATTERNS USED IN MANAGEMENT INFORMATION SYSTEMS

Complexity Metrics for Business Process Models

Engineering Change Management (ECM)

Business Process Management Using. BPM Using Process Algebra and Relational Database Model

Kirsten Sinclair SyntheSys Systems Engineers

Chapter 19. Activity Diagrams

Business Process Driven SOA using BPMN and BPEL

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

Process Mining. ^J Springer. Discovery, Conformance and Enhancement of Business Processes. Wil M.R van der Aalst Q UNIVERS1TAT.

Analysis and Implementation of Workflowbased Supply Chain Management System

Malay A. Dalal Madhav Erraguntla Perakath Benjamin. Knowledge Based Systems, Inc. (KBSI) College Station, TX 77840, U.S.A.

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Air Force SOA Enterprise Service Bus Study Using Business Process Management Workflow Orchestration for C4I Systems Integration

Process Mining Using BPMN: Relating Event Logs and Process Models

Mapping Business Process Modeling constructs to Behavior Driven Development Ubiquitous Language

Summary and Outlook. Business Process Intelligence Course Lecture 8. prof.dr.ir. Wil van der Aalst.

Process Diagram Technique for Business Processes Modeling

Software Engineering Reference Framework

Diagram Models in Continuous Business Process Improvement

Useful Patterns for BPEL Developers

Process Modeling and Process Improvement. Process Modeling

Faculty of Science and Technology MASTER S THESIS. Writer: Artur Latifov

IBM Business Process Manager Version 8 Release 5. Hiring Tutorial IBM

From Workflow Design Patterns to Logical Specifications

Bruce Silver Associates Independent Expertise in BPM

Model Simulation in Rational Software Architect: Business Process Simulation

Ontological Identification of Patterns for Choreographing Business Workflow

Augmenting a Workflow Management System with Planning Facilities using Colored Petri Nets

Ensuring Quality in Business-driven Development of IT Systems using Workflow Patterns

BPMN Business Process Modeling Notation

CHAPTER 1 INTRODUCTION

Supporting the Workflow Management System Development Process with YAWL

Transcription:

BIS 3106: Business Process Management Lecture Two: Modelling the Control-flow Perspective Makerere University School of Computing and Informatics Technology Department of Computer Science SEM I 2015/2016 (Makerere University) BIS 3106 1 / 41

Outline 1 Business Processes 2 Foundations of Process Modelling Using Petri nets 3 Workflow Nets Sequence Pattern Parallelism Conditional Routing Iterative Routing (Makerere University) BIS 3106 2 / 41

Business Processes Business Process: A business process consists of a set of activities that are performed in coordination in an organizational and technical environment. These activities jointly realize a business goal. - A business goal is the target that an organization aims to achieve by performing correctly the related business process. Currently, business processes are the core of most information systems - production line of a car manufacturer, procedures for buying tickets on-line This requires that organizations specify their flow of work for the orchestration of participants, information and technology for the realization of products and services. In order to manage Business Processes, they have to be described and documented in terms of process models. (Makerere University) BIS 3106 3 / 41

Model Definition A model is a representation of some phenomenon of the real world made in order to facilitate an understanding of its workings. A model is a simplified and generalized version. - What phenomenon matters? - How to represent this? - How to facilitate understanding? (Makerere University) BIS 3106 4 / 41

BPM life cycle (Makerere University) BIS 3106 5 / 41

Purposes of Process Modeling Organizational Analysis Measures for Improvement AS IS Process Models Process TO BE Analysis & Design Process Models Communication, simulation, activitybased costing Process Evaluation Process Metrics Target Values Process Enactment & Monitoring Process Implementation Executable Process Models Detailed Models including Data types, conditions, data mappings, fault handling Integration, testing, deployment (Makerere University) BIS 3106 6 / 41

Workflow Definition A workflow definition is composed out of three parts: - Process definition: description of the process itself. - Resource classification: classification of the resources to be used. - Resource management rules: how to map work onto resources. (Makerere University) BIS 3106 7 / 41

Process definition (1) A process definition specifies - which steps are required and - in what order they should be executed. Also known as: routing definition, procedure. Examples: purchase order, tax declarations, insurance claims process (Makerere University) BIS 3106 8 / 41

Process definition (2) A process definition consists of 3 elements: - Tasks (step, process element) A logical unit of work, e.g., typing a letter, stamping a document, checking personal data - Conditions (state, phase, requirement) A condition is used to determine the enabling of a task. - Sub-process Use of previously defined processes (Makerere University) BIS 3106 9 / 41

Modelling with Petri nets Introduced by Carl Adam Petri in his PhD thesis (1962). Original intention: mathematical description of chemical processes. Extensively applied to model concurrent systems (e.g., distributed systems) and analyse their properties. Petri nets have a simple graphical format and a precise operational semantics that makes them an attractive option for modeling the static and dynamic aspects of processes. Several extensions of basic Petri nets, with increasing level of complexity. - Time, resources, data (colored Petri nets), hierarchies (process decomposition) In the BPM context: Workflow nets. (Makerere University) BIS 3106 10 / 41

Basics of Petri nets A Petri Net takes the form of a directed bipartite graph where the nodes are either places or transitions. Places represent intermediate states that may exist during the operation of a process. - Places are represented by circles. - Places can be input/output of transitions. Transitions correspond to the activities or events of which the process is made up. - Transitions are represented by rectangles or thick bars. Arcs connect places and transitions in a way that places can only be connected to transitions and vice-versa. (Makerere University) BIS 3106 11 / 41

Basics of Petri nets Places are represented by circles. Transitions are represented by rectangles or thick bars. Arcs connect places and transitions in a way that places can only be connected to transitions and vice-versa. place transition arc (Makerere University) BIS 3106 12 / 41

Mapping Workflow Nets onto Petrinets Wil van der Aalst proposed the use of Petri nets for workflow modelling. He proposed a particular subclass of Petri nets, called Workflow nets (WF-nets) for this purpose. In a workflow net: - transitions represent the tasks that comprise a business process. - places represent the conditions preceding and following the tasks. (Makerere University) BIS 3106 13 / 41

Workflow Nets: Motivation 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. (Makerere University) BIS 3106 14 / 41

Workflow Nets: Cases A case has a limited lifetime. Example: For an insurance claim, a case begins when the claim is submitted and disappears from the workflow system when the claim processing is completed. Between the appearance and disappearance of a case, it always has a particular state. (Makerere University) BIS 3106 15 / 41

Workflow Nets: Notation A workflow net has a single start place and a single end place. - This means that workflow nets closely correspond to real-life processes that tend to have a specific starting point and a specific end point. Every transition in the workflow net is on a path from the start to the end place. - This ensures that each transition in a workflow net contributes to the progression of an executing instance towards its end state. (Makerere University) BIS 3106 16 / 41

Routing of Cases Describes the lifecycle of a case, i.e., which tasks need to be performed and in which order Four basic routing constructs. - Sequential - Parallel - Choice - Iteration (Makerere University) BIS 3106 17 / 41

Routing of Cases Sequential - execute first A then B Parallel - A and B are executed at the same time or in any order - AND-split and AND-join Choice A or B - XOR-split and XOR-join Iteration - multiple A s (Makerere University) BIS 3106 18 / 41

Workflow Nets Constructs Automatic tasks execute as soon as they are enabled. User tasks are passed to human resources for execution once enabled. In WF-net there are some notational enhancements (often termed syntactic sugar ) for split and join constructs that simplify the specification of a workflow net. External tasks only proceed once they are enabled and a required message or signal is received from the operating environment. Time tasks only proceed once they are enabled and a specified (time-based) deadline occurs. The basics of Petri nets can be used to understand the semantics of some elementary modeling concepts in WF-nets. (Makerere University) BIS 3106 19 / 41

Workflow Nets: Sequence Pattern A B First A then B (Makerere University) BIS 3106 20 / 41

Parallelism: AND-split According to the WfMC, an AND-split is a point within the workflow where a single thread of control splits into two or more threads which are executed in parallel within the workflow, allowing multiple activities to be executed simultaneously. A B C The execution of A enables both task B and task C. As a result, task B and task C are executed in parallel (in an arbitrary order). (Makerere University) BIS 3106 21 / 41

Parallelism: AND-split In WF-nets, a special construct for AND-split is introduced. A AND-split B C (Makerere University) BIS 3106 22 / 41

Parallelism: AND-join According to the WfMC, an AND-join is a point in the workflow where two or more parallel executing activities converge into a single common thread of control. Task D is enabled after execution both B and C, i.e., D is used to synchronize two subflows. B C D (Makerere University) BIS 3106 23 / 41

Parallelism: AND-join In WF-nets, a special construct for AND-JOIN is introduced. B D C AND-join (Makerere University) BIS 3106 24 / 41

Conditional Routing: XOR-split According to the WfMC, a XOR-split is a point within the workflow where a single thread of control makes a decision upon which branch to take when encountered with multiple alternative workflow branches. B A Note that the exclusive nature of the choice, i.e. only one of the outgoing branches can be chosen (i.e., either task B or C can be executed). (Makerere University) BIS 3106 25 / 41 C

Conditional Routing: XOR-split In WF-nets, a special construct for XOR-spit is introduced. A XOR-split B C (Makerere University) BIS 3106 26 / 41

Conditional Routing: XOR-join According to the WfMC, a XOR-join is a point within the workflow where two or more alternative activity(s) workflow branches re-converge to a single common activity as the next step within the workflow. B C Note that the exclusive nature of the choice, i.e. only one of the outgoing branches can be chosen (i.e., either task B or C can be executed). (Makerere University) BIS 3106 27 / 41 D

Conditional Routing: XOR-join In WF-nets, a special construct for XOR-JOIN is introduced. B C D XOR-join (Makerere University) BIS 3106 28 / 41

Iterative Routing Repeated execution of a particular task. Ideally a task will be performed only once per case. In certain situations, however, it is necessary to apply iterative routing. For example, when a certain task needs to be repeated until the results of a subsequent test prove positive. (Makerere University) BIS 3106 29 / 41

Example of Iterative Routing (Makerere University) BIS 3106 30 / 41

Modelling Petri net: Complaint Handling Example Consider the complaint handling process below - An incoming complaint is recorded. - After the complaint has been recorded, the client and the department affected are contacted (can be done in parallel). - Afterwards, data from the client and department is gathered and a decision is taken. - Either a compensation payment is made, or a letter is sent to the client. - Finally, the complaint is filed. Model this process in terms of Petri nets. (Makerere University) BIS 3106 31 / 41

Modelling Petri nets: Complaint Handling Example (Makerere University) BIS 3106 32 / 41

Modelling Petri net: Complaint Handling Example Consider the complaint handling process below - An incoming complaint is recorded. - After the complaint has been recorded, the client and the department affected are contacted (can be done in parallel). - Afterwards, data from the client and department is gathered and a decision is taken. - Either a compensation payment is made, or a letter is sent to the client. - Finally, the complaint is filed. Model this process in terms of WF-nets. (Makerere University) BIS 3106 33 / 41

Modelling Petri net: Order Fulfillment Example Consider the order fulfillment process below - A company takes orders from its clients. After which two tasks are done in parallel. The company checks the account of the client and also packs the order. When these tasks are completed, a credit check task is executed. If the client has paid for the order, the goods are dispatched to the client. However, if the client has not paid for the order, then the order is declined and the items are returned to the warehouse. Model this process in terms of Petri nets. (Makerere University) BIS 3106 34 / 41

Modelling Petri nets: Order Fulfillment Example First, a take order task is executed. When pack order and check account tasks have been both completed, the credit check task is executed. If the customer has not sufficient credit the decline order runs and, finally, the return stock task ensures that the items from the order are returned to the warehouse. Then, pack order and check account tasks are executed in parallel. If the customer has sufficient credit remaining, the order is despatched. (Makerere University) BIS 3106 35 / 41

Modelling Petri net: Order Fulfillment Example Consider the order fulfillment process below - A company takes orders from its clients. After which two tasks are done in parallel. The company checks the account of the client and also packs the order. When these tasks are completed, a credit check task is executed. If the client has paid for the order, the goods are dispatched to the client. However, if the client has not paid for the order, then the order is declined and the items are returned to the warehouse Model this process in terms of WF-nets. (Makerere University) BIS 3106 36 / 41

Workflow net Example - order fulfillment process The take order task is externally triggered when an order request is received. The decline order task runs automatically with the customer receiving a notification either by email or fax. Most tasks are undertaken by human resources (i.e., staff). (Makerere University) BIS 3106 37 / 41

Role of Data Data can be at different levels, e.g., the scope can be at the process level, case level, task level, etc. We assume data to be at the case level. A B C (Makerere University) BIS 3106 38 / 41

How to Choose? age>18 B A age 18 C (Makerere University) BIS 3106 39 / 41

Conclusion We have presented the precise definitions of workflow processes. It is possible to model workflow processes with high level Petri nets. 5 constructs: AND-join, AND-split, XOR-join, XOR-split, iteration It is important not just understand the definitions, but also try to apply Petri net to model real problems! (Makerere University) BIS 3106 40 / 41

Workflow Modeling Exercise Model these processes in terms of WF-Nets 1 Travel Agency Process 2 ICEA insurance Company 3 Expense Reimbursement Process (Makerere University) BIS 3106 41 / 41