Michal Havey: Essential Business Process Modeling Chapter · PDF file ·...

34
1 TDT4250 - Model-driven Development of Information Systems, Autumn 2007 Process modelling languages Michal Havey: Essential Business Process Modeling Chapter 3 + some general background on modelling languages

Transcript of Michal Havey: Essential Business Process Modeling Chapter · PDF file ·...

1

TDT4250 - Model-driven Development of Information Systems, Autumn 2007

Process modelling languages

Michal Havey:

Essential Business Process Modeling

Chapter 3

+

some general background on modelling languages

2

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Modeling perspectives

A modeling perspective: What is important, what is

emphasizes, and what is ignored

What are the fundamental concepts?

What aspects are explicitly represented?

As nodes, relationships, or properties

What is visualized?

What is modeled first?

Different perspectives can use the same concepts

Can also potentially represent the same

3

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

7 perspectives to conceptual modeling

Structural – the elements a system is composed of

Functional – what the elements and system do

Behavioral – how the system of elements do it

Rule-oriented – constraints for the function

Object-oriented – collaborating objects

Social communication – human interaction

Actor/role-oriented - human behavior

4

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Modeling of workflow

Traditional transaction-oriented: Functional

IPO: Input-Process-Output (e.g. DFD, IDEF0)

Speech act-oriented: Social communication

Coordination through conversations

Role-oriented: Role-oriented

RIN and RAD;

System-thinking/System dynamics: Behavioural

For understanding and simulation, not execution

Constraint-based: rule-oriented

5

TDT4250 - Model-driven Development of Information Systems, Autumn 2007

The Scenic Tour of Process Theory

Havey: Chapter 3

6

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Why process theory?

It is mentioned frequently in connection with BPM,

even in non-academic material.

BPM is relatively immature and benefits from the

ideas and strictness of theory.

Both BPM and Web Services Choreography are

focused on the construction of complex participant

conversation.

7

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Family Tree

-Calculus and the Petri net provide the theoretical underpinnings for most of the BPM standards

-Calculus BPML

XLANG

WSCI

WS-CDL

Petri net BPMN

YAWL

WSFL

8

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q 8

-Calculus background and history

-calculus, the mathematics of sequential computing

Church, 1930s (mathematical semantics by Scott, 1969)

Functional programming languages (e.g. ML)

Type checking during development to prevent runtime errors

car_driven_by(aPerson), not car_driven_by(aCow)

Interactive, parallel, network, mobile computing

Calculus of Communicating Systems - CCS (Milner, 1980)

-calculus (Milner, 1990)

CCS with mobility (dynamic communication links)

C A

B D

C A

B D

sequential

actions

dynamic,

communicating

processes

9

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Motivation for -Calculus

Explain how computer systems behave

The essential core, described with mathematics

Education

Predict behaviour of a system, e.g. during design

Prove that a system fulfils its requirements

Prevent errors, deadlocks, leaks

Replace components (test that they behave in the same way)

Tools for automatic inference

A common language with precise, formal meaning

No room for interpretation or misunderstanding

Uncover ambiguity and incompleteness in system specifications

Execution and simulation

Especially important for security and safety critical systems

11

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Example: Mobile Phone

http://www.fairdene.com/picalculus/pi-c-tutorial.pdf

12

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q 12

Example: Business Process

Zhao, Interorganizational Workflow and E-Commerce Applications, HICSS 2002.

13

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

-Calculus Vocabulary

Symbol Name Meaning

a, b, c, x, y, ... Name Value, channel , process etc.

<x> Output Send data x on channel a

a(x) Input Receive data from channel a, bind it to name x

. Prefix P.Q means do P then do Q (in sequence)

P | Q Parallel Do P and Q concurrently

P + Q Choice Do either P or Q, not both

( x) P Restriction The name x is bound inside P, and it is not known by

anyone outside P (encapsulation)

!P Replication Do P any number of times in parallel (!P = P | !P)

0 Nil process Do nothing

Internal

action

Proceed without interaction with the environment

14

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

The -Calculus and BPM

Three key features:

Control flow

Sequential, parallel, conditional, and recursive

Message-based communication

Clean syntax and semantic for inbound an outbound

messaging

Mobility

Dynamic addressing

Most distinctive feature of the -Calculus

15

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

-Calculus for Business Processes

Numerous process modelling standards

Microsoft XLANG BPEL

Based on asynchronous -calculus

Business Process Management Initiative (BPMI)

“Workflow is just a -process”

Workflow Management Coalition (WfMC)

“Does better math lead to better business processes?”

But is not applied in the specifications of the standards

Clearly defined syntax, incomplete semantics

Processes consist of interacting parallel agents

Conventionally, processes are thought of as series of activities

18

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

-Calculus for Web Services

Dynamic composition of functionality available over the web

Challenges

Security and trust

Predictable quality of service

Service contracts

Orchestration and choreography in business processes

Publish service UDDI

Find service UDDI

Web Service Conceptual Architecture (WSCA 1.0), IBM

Bind to service

Invoke service

Service

requester

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.

Service description (WSDL)

Service

registry

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.

Service description (WSDL)

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted.

Service Service

provider

20

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Petri Nets

A formal graphical modeling language

Design systems as diverse as train track switches

and business processes

Helps to describe the semantics of process

control-flow.

Saturates the literature on process patterns

21

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Petri Nets (behavioral perspective)

The Petri nets original conception, the classical

net, consist of the following symbols.

Place (Circles)

Transition (Rectangles)

Arc (Arrows)

Token (black dots)

Newer variants supports larger and more complex

processes

Color (typing of tokens)

Hierarchy (decomposition)

23

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Standard

Petri-net

24

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

AND-split vs. OR-split in Petri-net

25

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

State Machines and Activity Diagrams

State machine family tree

A guiding light to the

practice of process

design

Based on more rigorous

and more expressive

system

26

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Example: STD/statecharts

27

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Activity diagrams

The UML Activity diagram use Petri net token

semantic (new from UML 2.0, version 1.0 had a

different type of state-based semantics).

It is dualistic.

Activity diagrams have not gained much support in

the BPM community

28

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Modelling

notation

28

29

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Subactivities

30

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Swimlanes for role-oriented modelling

30

31

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Use of signals

34

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Event-Driven Process Chains

Better success than other flowchart approach

Different syntax and semantics than UML Activity

diagram

Multiple-view approach

Often used in connection to ERP-systems

(especially SAP)

35

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Event Process Chains - Notation

Control flow

Accounting Accounting

XOR XOR XOR XOR

Approve

Purchase

requisition

Purchase

Requisition

created

Purchasing

PR approved

And released

PR not

approved

Function

Organizational unit

State/event

Logical operator (XOR, AND, OR)

36

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

EPC Views

37

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Social Communication perspective

Description of the (social) communication

structure

Also called the language action perspective (LAP)

Main concepts: Speech Acts and Conversations

Based on philosophy of language

(Austin, Searle, Habermas)

Different types of speech acts which are put

together into conversations

Specifically used in workflow modeling and

CSCW/Groupware

40

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Categories of Speech Acts (Searle)

Directive: ”Close the window”

Commissive: ”I shall close the window”

Assertive: ”The window is closed”

Declarative: ”I hereby Pronounce you Man and

Wife”

Expressive: ”Congratulations”

41

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Winograd & Flores

Conversation for Action

42

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

ActionWorkflow

44

TDT4250 - Model-driven Development of Information Systems, Autumn 2009

Q

Summary

Different perspectives focus on different aspects

Formal models of behavior

precision, completeness, analysis, simulation

-calculus, Petri-Nets, Statecharts, UML Activity diagrams

Business process diagram languages

ease of use, coverage of domain, support for implementation

BPMN, EPC

Social interaction

human behavior (intention), rather than

system behavior (mechanical)

Speech Act and conversation theory