business process modeling with event-driven process chains jan mendling institute of information...
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