250 likes | 373 Views
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. Is this complex?. Problems?. deadlock. Agenda.
E N D
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
Problems? deadlock
Agenda • Errors due to Complexity? The SAP Reference Model • From Software Metrics to Process Metrics • From Graph Metrics to Process Metrics • Conclusion
Agenda Errors due to Complexity? The SAP Reference Model
Verification Approach Mendling et al. 2006: A Quantitative Analysis of Faulty EPCs in the SAP Reference Model. BPM Center Report.
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%
Agenda From Software Metrics to Process Metrics
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
How complex is this? • No. of Act.: 43 • No. of Act.+Splits: 52 • No. of Act.+Splits+Joins: 67
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
How complex is this? • No. of AND-Splits: 6 • No. of OR-Splits: 2 • No. of XOR-Splits: 1 • CFC: 43
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)
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
Adapting Henry&Kafura Information Flow • In Software Engineering: • Σactivity Length * (Fan-in * Fan-out)2 • For Business Processes: • Σactivity 1 * (inputs * outputs)2
How complex is this? Σactivity 1 * (inputs * outputs)2 = 312
Agenda From Graph Metrics to Process Metrics
Adapting Network Complexity • In Graph Theory: • no. of arcs / no. of nodes • For Business Processes: • no. of arcs / no. of nodes
How complex is this? no. of arcs / no. of nodes= 122 / 107 = 1,14
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)
How complex is this? • 2 * Σrij – 6*(N-1) / (N-2)*(N-3) = 2* 3389 – 6*(106) / (105)*(104)= • 0,5625
Agenda Conclusion
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
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