business process modeling with event-driven process chains jan mendling institute of information...

Post on 05-Apr-2015

105 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Business Process Modeling with Event-driven Process Chains

Jan Mendling

Institute of Information Systems and New Media

WU Wien

You will learn in this session…

• What business process management is,

• How business process modeling works, and

• What event-driven process chains are.

BPM and Workflow

1. Business Process Management

A Retail Process

Welcome customer

Offer Clothes

Bill Clothes

Hand over clothes

Different business processes

• Production process

• Support process

• Managerial process

What is a Business Process?

Organization Chart: units with assigned tasks

Business Process:execution of taskscoordination between tasks

Activity:elementary part of a working step

Organization Chart WU Wien

Definitions related to Business Process

• “A process is a completely closed, timely and logical sequence of activities

which are required to work on a business object” (e.g. invoice).

• “A business process is a special process that is directed by the business

objectives of a company and by its business environment.”

(Becker, Kahn 2003).

• “The real structure of the operation is that of a river. It continuously creates and distributes

new products and services based on the same tasks or on tasks which only vary in detail.”

(Nordsieck 1972).

• “The truth of Being and Nothing is accordingly the unity of the two: and this unity is

BECOMING”

(Hegel: Phänomenologie des Geistes, 1807)

• “Panta rhei - Everything flows, nothing stands still.”

(Heraklitus of Ephesos, 535 - 475 BC)

Business Process versus Case

• Business Process

• Activity

• Business Process Attributes

• Case (Process Instance)

• Instance Activity

• Case Attributes

Car Assembly Process

Mount doors

Car body number, (Buyer), Car color

Car Assembly Case 3324

Mount doors on 3324

Car body number 3324, Buyer Henry Ford,Car color white

Business Process Management

• Task efficiency

“It follows that the most important object of both the workmen and the

management should be the training and development of each individual in

the establishment, so that he can do (at his fastest pace and with the

maximum of efficiency) the highest class of work for which his natural

abilities fit him.”

(Frederick W. Taylor 1911)

• Coordination efficiency

“The question in view of this overall thinking is how to divide the tasks of a

company other than by natural technical process phases?”

(Nordsieck 1972)

BPM Lifecycle

v.d.Aalst, t.Hofstede, Weske 2003

BPM and Workflow

2. Business Process Modeling

Why Modeling?

What is Modeling?

• “A model is a simplifying mapping of reality to serve a specific purpose”

(Stachowiak: Allgemeine Modelltheorie, 1973)

• Mapping: representation of natural or artificial originals that can be

models themselves

• Simplying: only those attributes of the original that are considered relevant

(abstraction)

• Pragmatics: model is used by modeler in place of original for a certain time

and

a certain purpose

Guidelines of Modeling (GoM)

1. Correctness:

relates to the mapping, capture attributes of the original correctly

2. Relevance:

abstract from those aspects that are not relevant

3. Economic Efficiency:

Keep an eye on the purpose of modeling task

4. Clarity:

the model should be intuitive to understand for involved stakeholders

5. Comparability:

Use a similar mapping for similar aspects

6. Systematic Design:

define interfaces to related models

Schütte, Rotthowe: The Guidelines of Modeling - An Approach to Enhance the Quality in Information Models, 1998.

Purposes of Business Process Modeling: Organization Design

• Process Documentation

• Process Reorganization

• Process Monitoring and Controlling

• Continuous Improvement

• Quality Management: ISO 9000

• Benchmarking: Compare with best practice

• Knowledge Management:

Purposes of Business Process Modeling: Information Systems Design

• Selection of ERP software

• Model based Customizing

• Software Development

• Workflow Management

• Simulation

What to model of a business process

• Tasks

• Coordination between tasks

• synchronization

• decisions

• parallel work

• repetition

• …

• Organizational responsibilities

• Required resources

• Information input and output

• …

Modeling method, technique, and language

Karagiannis, Kühn 2002: Metamodelling Platforms. http://www.dke.univie.ac.at/mmp/FullVersion_MMP_DexaECWeb2002.pdf

Business Process Modeling Languages

Event-driven Process Chains (EPC) Petri Nets

Business Process Modeling Notation (BPMN) UML Activity Diagrams

XOR

XOR

Business Process Modelling Tools 2004

Gartner: Magic Quadrant for Business Process Analysis, 2004, 04 March 2004 (http://mediaproducts.gartner.com/reprints/idsscheer/119964.html)

The BPM Life cycle

analysis

design

implementation

enactment

evaluation

monitoring

requirements

process model

infrastructure

case data

case data

requirements

BPM and Workflow

3. Event-driven Process Chains (EPC)

Example from the SAP Reference Model

EPC Semantics: prose version

• Functions:

activities of the business process

• Events:

pre- and post-conditions of functions

• AND split:

activates all subsequent branches

in concurrency

• OR split:

triggers one, two or up to all of multiple

subsequent branches.

• XOR split:

defines a choice to activate one of multiple

subsequent branches.

• AND join:

waits for all incoming branches to complete.

• OR join:

waits for all active branches to complete.

• XOR join:

continue when one of alternative branches

has completed.

ANDSplit

ANDJoin

XORJoin

EPCFunction

EPCEvent

Activity Pre- & Post-condition

XORSplit

ORSplit

ORJoin

Exercise

• Have a look at the EPC business process model below. Write down the information that is

represented by this model in English language sentences. Be precise and detailed, but not dissipated.

Use this little exercise for a brief explanation in how far modeling is efficient.

• Wenn der Filialbestand unter die Bestellmenge fällt, wird

automatisch eine Bestellung generiert. Diese wird gegen den

Zentralbestand geprüft. Falls dieser nicht ausreicht, werden

Artikel nachbestellt. Wenn diese eingetroffen sind oder falls der

Bestand von vornherein ausreicht, werden die Artikel ausgeliefert.

Somit ist die Bestellung abgeschlossen.

Exercise

Solution

Filialbestandunter Bestell-

menge

Bestellungvorhanden

AutomatischeBestell-

Generierung

Zentralbestandprüfen

Bestand nicht

ausreichend

Artikelausliefern

Artikelnachbestellen

Bestellung abgeschlossen

Ereignis

Ereignis

Ereignis

Ereignis Funktion Funktion

Funktion

Funktion

xor

xor

Bestand ausreichend

Ereignis

Nachbestellungeingetroffen

Combine Views with extended EPCs (eEPC)

• Die automatische Bestellgenerierung erfolgt auf Seiten der

Filiale. Die erzeugte Bestellung geht in das Warenwirtschafts-

system ein, anhand dessen die Zentrale Disposition den

Zentralbestand prüft. Die Zentrale Disposition führt auch eine

eventuelle Nachbestellung aus, die zu einer Bereitstellung der Waren

führt. Der Transport ist für die Auslieferung der Waren zuständig, die

ebenfalls im Warenwirtschaftssystem erfasst wird.

Exercise

Solution

FilialeWaren-

wirtschafts-daten

Bestellung

Transport

Zentrale Disposition Artikel

führt aus erzeugt

geht ein in

geht ein in

führt aus stellt bereit

führt aus

Organisation DatenLeistung

Zentrale Disposition

führt aus

Organisation

Organisation

Organisation

Leistung

Waren-wirtschafts-

daten

Daten

geht ein in

Filialbestandunter Bestell-

menge

Bestellungvorhanden

AutomatischeBestell-

Generierung

Zentralbestandprüfen

Bestand nicht

ausreichend

Artikelausliefern

Artikelnachbestellen

Bestellung abgeschlossen

Bestand ausreichend

Nachbestellungeingetroffen

BPM and Workflow

4. Semantic Issues

EPC Semantics: Transition Relation

Cuntz, Kindler, 2004

(a) (b)

(c) (d)

(e) (f)

EPC Semantics: Transition Relation II

(g) (h)

Non-local semantics

How EPCs work

e1

f1

e2

f2

e4

e3

f3

(a) One OR-Join Loop EPC

a1

a2

a3

a4

a5

a6

a7

a8

a9

c1

c2

How EPCs work II

e5

f5

e6

f6

e9

e7

f7

e8

f8

e10

(b) Two OR-Join Loop EPC

a11

a12

a13

a14

a15

a16

c3

c4

a17

a18

a19

a20

a21

a22

c5

c6

a23 a24

How EPCs work III

e1

f1

e2

f2

e7

e3

f3

e4

f4

e8

e5

f5

e6

f6

e9

a1

a2

a3

a4

a5

a6

c1

c2

a8

a9

a10

a11

a12

a13

c3

c4

a15

a16

a17

a18

a19

a20

c5

c6

a7 a14a21

• Only if nothing can be

propagated to arc a21, c1 is

allowed to proceed.• But if c1 is allowed to

proceed, a folder can be

propated to a21.• But if something can be

propagated to a21, c1 may

not proceed.• If c1 may not proceed, nothing

can be propagated to arc a21

(see 1.)• …

Which one can fire?

e1

f1

e2

f2 e3

f3

e4

(a) EPC with OR-join on loop

a1

a2

c1a3

a4

a5

a6

a7

a8

a9

c2

e1

f1

e2

f2 e3

f3

e4

e1

f1

e2

f2 e3a

f3a

e4

e3b

f3b

(b) Refinement of e3-f3 block(a) EPC with OR-join on loop

a1

a2

c1a3

a4

a5

a6

a7

a8

a9

c2

a1

a2

c1a3

a4

a5

a6

a7a

a8

a9

c2

c3a

c3b

a7b

a7c

a7d

a7e

a7f

• Bei einer Ausschreibung werden zuerst die verschiedenen

Einreichungen geprüft. Falls kein Angebot den Erwartungen

entspricht, wird geprüft, ob die Ausschreibung zurückgestellt

werden kann. Falls nein erfolgt eine neue Ausschreibung. Falls ja

wird die Ausschreibung auf Wiedervorlage gestellt. Falls mindestens

ein Angebot den Erwartungen entspricht, wird das beste Angebot

ausgewählt. Wenn sowohl das Angebot ausgewählt ist als auch die

Ausschreibung auf Wiedervorlage gelegt wurde, wird ein

Abschlussbericht erstellt.

Exercise

Solution

Einreichungen eingetroffen

Einreichungen prüfen

kein Angebot angemessen

Zurück-stellung prüfen

neue Aus-schreibung

Einreichungen eingetroffen

ausschreiben

zurückstellen

mindestens ein Angebot angemessen

Angebot auswählen

Angebot ausgewählt

Abschluss-bericht

anfertigen

Aus-schreibung

geschlossen

Problems with Connector Mismatch

Problems with Connector Mismatch

Lessons Learned

Use structured blocks

Use simple loops

BPM and Workflow

5. EPC Reference Models

Real World EPC Process Models

• SAP Reference Model

Keller & Teufel: SAP R/3 Process-oriented Implementation, 1998.

• Handels-H-Modell

Becker & Schütte: Handelsinformationssysteme, 2nd Edition, 2006.

• Y-CIM-Modell für die Produktion

Scheer: Wirtschaftsinformatik – Referenzmodelle für industrielle Geschäftsprozesse,

7th Edition, 1997.

• ARIS Platform 7.0 by IDS Scheer AG: http://www.ids-scheer.de/

The SAP Reference Model

• About 10,000 information models

• 5 Hierarchy Levels

• 29 Branches

• Various model types: data, organization, processes, etc.

• 604 EPC business process models

Reusing Reference Models

analysis

design

implementation

enactment

evaluation

monitoring

requirements

process model

infrastructure

case data

case data

requirementsChange EPC Models

Change SAP System

Why Correct EPC Models?

• Misunderstandings in

• Teaching Processes

• Comparing System with existing processes

• Customization of System

How to find errors?

• Soundness (v.d.Aalst 1997):

• For every state that is reachable from the start, the end

can be reached.

• If the end is reached, there is no activity still active.

• All activities can be reached.

• Relaxed Soundness (Dehnert, Rittgens 2001):

• Every activity participates in a run from start to end.

Verification Approach

V

V

V

SAP Reference Model

EPC to YAWL

Generated YAWL Models

Model Analyzer

WofYAWL <warning>Task or (ahvi) may not forward control to task xor (aho7)</warning><warning>Task or (ahvi) may not forward control to task and (ahql)</warning>...

WofYAWL Analysis Output

<model><treenr>Asset Accounting</treenr><modelnr>1</modelnr><modeltype>MT_EEPC</modeltype><level>5</level><name>Index Series</name><events>0</events><andsplits>0</andsplits><arcs>2</arcs><hasCycles>false</hasCycles>...

Model Characteristics Table Generator

# # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## #

Analysis Table

An EPC from the SAP Reference Model

Mapping to YAWL

InputCondition

OutputCondition

ANDSplitTask

ANDJoinTask

XORSplitTask

EPCFunction

EPCEvent

AtomicTask

no mapping

XORSplitTask

ORSplitTask

ORJoinTask

Start Start

ORSplitTask

End End

ORJoinTask

(a) (b)

(c) (d)

(e) (f)

(g) (h)

(i)

(j)

The resulting YAWL net

Splitand

(c8z0)

or (c8yr)

or (c8z9)

xor (c8zg)

or (c91z)

and (c92k)

and (c90q)

xor (c8zy)

and (c907)

or (c90e)

or (c93t)

Output

Certificate Profile and Profile Assignment (c92d)

Creation of a Quality Certificate (c91h)

Edit Recipient of Quality Certificate (c939)

Petri Net analysis within WofYAWL

Potential Correction

Results

Modeling Error 1: Deadlock

Modeling Error 2: Livelock

Modeling Error 3: Multiple Instantiation

Why Errors

• Hypotheses:

• Model Size

• Model Complexity

• Error Patterns

• Independent variables:

• Number of each element type

• Cycles

• Complexity metrics based on state space

• Logistic Regression:

• Explain error (yes/no)

• Nagelkerke R2: 0.30 and 0.26 in significant models

• Correct Classification: about 95%

Conclusion

• Correctness is an issue in practice

• Relaxed Soundness as a lower bound

• At 5.6% of the models with errors

• Model Complexity matters

• Closer coupling of process models and enterprise system needed

BPM and Workflow

6. Summary

ARIS House of Business Engineering

Nüttgens, Scheer 2000

Lessons Learned

Use structured blocks

Use simple loops

top related