A Discourse on Complexity of Process Models J. Cardoso Universidade da Madeira J. Mendling Vienna University of Economics G. Neumann Vienna University of Economics H.A. Reijers TU Eindhoven
Jan 29, 2016
A Discourse on Complexity of Process Models
J. Cardoso Universidade da MadeiraJ. Mendling Vienna University of EconomicsG. Neumann Vienna University of EconomicsH.A. Reijers TU Eindhoven
Folie 2
Is this complex?
Folie 3
Problems?
deadlock
Folie 4
Agenda
1. Errors due to Complexity? The SAP Reference Model
2. From Software Metrics to Process Metrics
3. From Graph Metrics to Process Metrics
4. Conclusion
Folie 5
Agenda
Errors due to Complexity? The SAP Reference Model
Folie 6
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
Mendling et al. 2006: A Quantitative Analysis of Faulty EPCs in the SAP Reference Model. BPM Center Report.
Folie 7
Results
Folie 8
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%
Folie 9
Agenda
From Software Metrics to Process Metrics
Folie 10
Adapting the LOC Metric
• In Software Engineering:
• Lines of Code
• For Business Processes:
• Number of Activities
• Number of Activities and Splits
• Number of Activities, Splits, and Joins
Folie 11
How complex is this?
No. of Act.: 43
No. of Act.+Splits: 52
No. of Act.+Splits+Joins: 67
Folie 12
Adapting McCabe‘s Cyclomatic Complexity
• In Software Engineering:
• edges – nodes +2
• For Business Processes:
• CFC = Σxor fan-out(xor) + Σor 2fan-out(or)-1 + Σand 1
Folie 13
How complex is this?
No. of AND-Splits: 6
No. of OR-Splits: 2
No. of XOR-Splits: 1
CFC: 43
Folie 14
Adapting Halstead Complexity
• In Software Engineering:
• n1: No. of unique operators
• n2: No. of unique operands
• N1: No. of operator occurences
• N2: No. of operand occurences
• For Business Processes:
• n1: No. of node types
• n2: 1
• N1: No. of nodes
• N2: 1
• Halstead Metrics:
• Process Length: n1*log(n1)+n2*log(n2)
• Process Volume:(N1+N2)*log(n1+n2)
• Process Difficulty:(n1/2)*(N2/n2)
Folie 15
How complex is this?
n1: F+E+ANDj+ANDs+XORj+XORs+ORj+ORs
n2: 1
N1: 107
N2: 1
Process Length: 8*log(8)+1*log(1) = 24
Process Volume:(108)*log(9) = 342,35
Process Difficulty:(4)*(1) = 4
Folie 16
Adapting Henry&Kafura Information Flow
• In Software Engineering:
• Σactivity Length * (Fan-in * Fan-out)2
• For Business Processes:
• Σactivity 1 * (inputs * outputs)2
Folie 17
How complex is this?
Σactivity 1 * (inputs * outputs)2 = 312
Folie 18
Agenda
From Graph Metrics to Process Metrics
Folie 19
Adapting Network Complexity
• In Graph Theory:
• no. of arcs / no. of nodes
• For Business Processes:
• no. of arcs / no. of nodes
Folie 20
How complex is this?
no. of arcs / no. of nodes = 122 / 107 = 1,14
Folie 21
Adapting Restrictiveness Estimator
• In Graph Theory:
• 2 * Σrij – 6*(N-1) / (N-2)*(N-3)
• For Business Processes:
• 2 * Σrij – 6*(N-1) / (N-2)*(N-3)
Folie 22
How complex is this?
2 * Σrij – 6*(N-1) / (N-2)*(N-3) = 2* 3389 – 6*(106) / (105)*(104)=
0,5625
Folie 23
Agenda
Conclusion
Folie 24
Processes Compared
No. of Act.: 3 vs. 43
No. of Act.+Splits: 7 vs. 52
No. of Act.+Splits+Joins:8 vs. 67
CFC: 14 vs. 43
Process Length: 19,65 vs. 24
Process Volume: 57 vs. 342,35
Process Difficulty: 3,5 vs. 4
Henry&Kafura: 36 vs. 312
Arcs/Nodes: 1 vs. 1,14
Restrictiveness Est.: 0,66 vs. 0,5615
Folie 25
Conclusion
• Metrics from Software Engineering and Graph Theory can be adapted
• Empirical Correlation of metrics with errors, maintainability, etc. to be tested
• Further Research into graph metrics required
• Future research:
• test correlation of perceived process complexity and metrics
• test predictive power of metrics for error probability