JOURNAL OF APPLIED COMPUTER SCIENCE Vol. 22 No. 2 (2014), pp. 118-133 Diagram Models in Continuous Business Process Improvement Mateusz Wibig 1 1 CGI Polska Energy and Resources 39 Sienna Street, Warszawa 00-121 matwib@o2.pl Abstract. In this paper the author proposes a change in business modelling techniques classification, based on the results of research and a review of modern workflow systems. The described amendment has an impact on applicable commercial approaches to continuous business process improvement. It fits the gap between the commercial need for easy understandable tool (based on widely-used diagrams) for analysts and researchers preference for working with well-defined mathematical. Keywords: business process, modelling, continuous process improvement, simulation based optimisation. 1. Introduction In the modern globalised, competitive market, it is not enough to design a good product. These are also well designed and implemented business processes that give a competitive advantage processes which allow the business to reach the customer faster or to do it with lower costs. To survive in this commercial jungle, business processes have to be continuously analysed and improved. Business process modelling techniques have been reviewed and classified several times by Kettinger, Teng and Guha [1] in 1997, Cheung and Bal [2] in 1998
120 Diagram Models in Continuous... Figure 1. Business process modelling techniques classification by Tiwari, Vergidis and Majeed [4] and Melao and Pidd [3] in 2000. The approaches classified by them enable the visualization of processes and the analysis of some of their characteristics, like resource utilization or correctness of the structure, but do not provide significant support for process improvement. The latest classification of business modelling techniques by Tiwari, Vergidis and Majeed [4] in 2008 focuses more on optimisation, but even they, in 2008, tended to ignore diagrammatic notations and preferred mathematical. In this paper, the author reviews approaches to business model description, especially graphical ones. Based on the outputs of experiments and a review of commercially available business process management solutions, the author presents arguments for changing the latest classification. 2. Classification In the latest classification [4], modelling techniques are divided into the categories of mathematical (i.e. Hofacker and Vetschera [5]), business process languages (i.e. BPEL - Business Process Execution Language), diagrammatic
M. Wibig 121 Table 1. Classification of business process optimisation methods by Tiwari, Vergidis and Majeed [4] Model of business process Flowcharts RADs IDEF Petri Net Mathematical Business process languages Classification the model of Types of business process analysis Observational, Mathematical, Business process languages Mathematical Business process languages Observational, Performance analysis Observational, Simulation Observational, Validation, Verification, Simulation, Performance analysis Performance analysis, Simulation Performance analysis Simulation Types of business processes optimisation Graph reduction ap- Algorithmic proaches (i.e. BPMN - Business Process Modelling Notation) or combinations of those. Figure 1 presents possible 7 categories. Possible business process analysis and optimisation approaches have been assigned to classified, in the way presented in Table 1. 3. business process modelling approach In his previous works [6, 7], the author uses Petri nets as a diagrammatic business process model. This modelling approach is composed not only of Petri net notation objects (arcs, transitions and places), but also contains the definition of how those elements are used to define the process in a non-ambiguous way, so it can be used to implement processes for simulation purposes.
122 Diagram Models in Continuous... Figure 2. Transition firing Figure 3. Simple representation of a task The idea of Petri nets came from the PhD thesis of Adam Petri "Kommunikation mit Automaten" [8], prepared in 1962 at the faculty of mathematics and physics of The Technical University of Darmstadt. A Petri net enables a graphical model of the process to be built. It is composed of places, transitions and arcs joining them. Input arcs join places with transitions while output arcs join transitions with places. Places might contain tokens. The actual state of the model is described by the type (if tokens are distinguishable) and number of tokens in each place. Places are passive elements, transitions are active they simulate actions or events which change the state of a Petri net. Transitions can be fired only when all starting conditions are met; there are enough tokens in all input places. When the transitions are fired, tokens are removed from the input places and added to the output ones (Fig. 2). The number of tokens removed and added to places depends on the arcs joining them with transitions. The most frequent way of modelling technological or operational processes is to consider them as sets of tasks. Based on the purposes and goals of simulation more or less complicated task representation can be used, from the simplest (Fig. 3) to the more complicated, like the one applied to work organisation management (Fig. 4).
M. Wibig 123 Figure 4. Representation from "Modelling and analysing workflow using a Petrinet based approach" [9] Figure 5. Task with reusable resources For the purpose of business process optimisation method, the author represents a task as two transitions and a place, stating the status of the task, between them. The first transition simulates the start of the task and its input places simulate the necessary resources. Firing the second transition means the end of the task and its output places simulate task deliverables and returned reusable resources (Fig. 5). In order to simulate a sequence of tasks, the output place of the first task has to be the input place of the second (Fig. 6). Alternative tasks competing for a resource have a common input place (Fig. 7) while parallel tasks have input places filled by a common preceding task (Fig. 8). The same approach is used in other notations i.e. UML notation, where an activity diagram is used to define the process for implementation or BPMN - modelling notation which is transferable to BPEL runnable business process language.
124 Diagram Models in Continuous... Figure 6. Task sequence Figure 7. Alternative tasks Figure 8. Parallel tasks Figure 9. BPMN task sequence In BPMN notation, processes are composed of tasks and arcs defining the flow between them (Fig. 9). Flow can be split or joined using "XOR" (Fig. 10), "AND" (Fig. 11) or more sophisticated (complex) gates for alternative or parallel tasks. Properly used business process diagrammatic modelling techniques are unambiguous definitions of steering flow and become business process languages.
M. Wibig 125 Figure 10. BPMN "XOR" gate Figure 11. BPMN "AND" gate In modern business process management systems visual, diagrammatic of processes are used as executable input for workflow or document-flow engines. 4. Diagrams in modern workflow systems Modern workflow systems focus a lot on usability and ease of use. The need for a fast response to market conditions make it compulsory to shorten the time to market for new products, services, procedures and processes. Marketing specialists and business analysts, without programming skills, can now implement these processes using graphical tools. They use diagrammatic, which are transferable to runnable process definitions - code for business process engines. According to independent IT market analysts from Gartner [10] and Forrester [11], there are 3 leaders of the multiple vendors of business process management systems: Pegasystems (with Pega BPM solution) Appian (Appian) IBM (Business Process Manager)
126 Diagram Models in Continuous... One of the key features of the state of these art solutions is the possibility of designing flows and procedures without engaging programmers. They all use graphical editors for BPMN. Forrester s analysts state 3 key areas for future business process management suites. One is "empowering business architects to design and execute on process strategy. Business architects are playing a broader role in driving business change initiatives. In many cases, these architects focus on defining the strategy for transforming end-to-end business processes. Historically, BPM tools offered very little to help these strategists scope and manage large-scale change projects. This disconnect between strategy and execution keeps BPM suites isolated to the CIO s office, without a way to have a greater impact on enterprise strategy." Gartner experts use 10 criteria to evaluate solutions and 2 of them focus on process modelling: 1. "A model-driven composition environment for designing processes and their supporting activities and process artifacts" 2. "A process component registry/repository for process component leverage and reuse". have become widely commercially used process languages which are available not only for programmers, thus reducing the time needed to develop new data or work flows. 5. Mathematical business process model The mathematical business process model comes from the works of Hofacker and Vetschera [5]. It was later used by Tiwari, Vergidis and Majeed [4]. The model is composed of sets of: activities A = (a 1...) physical resources B P = (b 1...) informational resources B I = (b 1...) and matrixes: t i j with binary variables linking activities with their output resources
M. Wibig 127 r i j with binary variables indicating if physical resource b j is available for use by activity a i gi j and go j one dimensional binary constants that indicate which resources belong to global inputs or global outputs. The model additionally defines constraints to those sets and matrixes, where x i is a binary variable indicating that activity a i is participating in the process, p i is the start time of a i, d i is the duration of a i, I i and O i are the sets of input and output resources of a i, y j is the binary variable indicating resource b j becoming available during the process, q j is the time b j becomes available, h i j is the binary variable that indicate that b j is created by a i. 1. All input resources of an activity must be available at some stage of the process if the activity is participating in it (equations 1, 2). i, j:b j I i,b j B P x i r i j (1) i, j:b j I i,b j B I x i y j (2) 2. The output physical resources must not exceed the sum of initial resources and resources produced during the process (equation 3). j:b j B P go i + r i j Mgi j + t i j x i (3) i 3. A resource can be available either at the beginning of the process as an initial resource or as an output resource of a participating activity (equation 4). j:b j B I y j gi j + t i j x i (4) 4. A resource cannot be part of the output without first being available at some stage of the process (equation 5). i i j y j go j (5)
128 Diagram Models in Continuous... 5. A participating activity must start only after the time that all its input resources have become available (equation 6). i, j:b j I i p i q i M(1 x i ) (6) 6. An output resource must become available exactly when the generating activity has been completed (equations 7, 8). i:b j O i q j p i + d i + M(1 x i ) (7) i:b j O i q i p i + d i M(1 x i ) M(1 h i j ) (8) 7. A non-participating activity cannot have output resources (equation 9). i, j:b j O i h i j x i (9) 8. When a physical resource does not belong to initial resources, it must be produced during the process in greater or equal amounts to the required resource inputs of the participating activities (equation 10). j:bp,gi j =0 h i j sum i ri j + go i M(1 y j ) (10) i:b j O i 9. Each physical resource that does not belong to the initial resources but appears in the output of a participating activity must be produced at least once (equation 11). i:b j B P,gi j =0h ( i j) 1 M(1 y j ) (11) 6. Mathematical representation of Petri nets Petri nets also have their mathematical representation. A Petri net is a tuple C = (P; T; I; O), where set P = p 1 ; p 2 ; p 3... is a set of places and set T = t 1 ; t 2 ; t 3... is a set of transitions. Function I : T > P is an input function and O : P > T is an output one. Obviously sets T and P are disjoint. The value of function I(t i ) is a collection of input places for transition t i and the value of function O(t i ) is a collection of output places for transition t i. The graphical representation of a Petri net is presented earlier in figure 2 bipartite graph.
M. Wibig 129 For the purpose of further definitions, by #(p i ; I(t i )) the author defines the number of arcs between input place p i and transition t i, and on an analogy #(p i ; O(t i )) the number of arcs between transition t i and output place p i. Places contain tokens; and the distribution of tokens among places defines Petri net marking defined with the function m : P > N. This marking is a vector m = (m(p 1 ); m(p 2 ),..., m(p n )). The marked Petri net is defined as a tuple Z = (C; m 0 ), where C is a Petri net and m 0 : P > N is a starting markup. Marking can change by firing the transition, but this can only happen when transition has been enabled. Transition t i is enabled in marking m, if in all places p i in I(t i ) the number of tokens is not smaller than the number of arcs joining place p i with transition t i, m(p i ) > #(p i ; I(t i )). Firing transition t i changes the marking of the net. For each p i in P: m 0 (p i ) = m(p i ) #(p i ; I(t i )) + #(p i ; O(t i )). This mechanism makes the Petri net an abstract machine in Nm space. In the same way as mathematical business process model described in a previous section, a marked Petri net is defined by sets of activities and resources and functions defining the mapping between those. The equivalent of the constraints from the mathematical model are rules guarding transition firing and marking changes. The runnable Petri net model used by the author fulfils all the constraints described. Other business process languages also fit this mathematical model as they define processes as sets of tasks performed in a defined order. This order (workflow) defines mapping between activity outputs and other activity inputs in the same way that the described mathematical model of a Petri net does. Runnable diagrammatic notations are at the same time graphical notations and business process languages, compliant with the mathematical model definition (Fig. 12). 7. Simulation based optimisation Many optimisation methods assume the exact form of the goal function is known, but in complex problems, the assumption that the value of the goal function can be calculated is incorrect. In many cases the value of the goal function can only be estimated by simulation. Obviously calculations or estimations of the value of the goal function, based on simulation data, does not solve the optimisation problem. The simulator needs
130 Diagram Models in Continuous... Figure 12. Amended business process modelling technique classification to be connected with he optimiser - a generator of better solutions. The approach presented in Fig. 13 [12, 13] is known as simulation based optimisation. The initialiser starts the whole process by generating the primary solution s 1 from set S. It is used by the simulator to estimate of the goal function f (s). Based on its value the decision about further steps is made. The solution can be accepted when the solution is good enough and the optimisation process is stopped. In the other case, the process is continued and a new possible solution is generated and passed to the simulator. In previous work by author, a genetic algorithm is applied as a new solution generator. The tasks parameters form a genotype, used for mutation and crossing. The process model is a phenotype used for evaluating the solution. Positive outputs from the experiments provide another change in the latest classification. Simulation based optimisation can be considered as a business process optimisation approach (Table 2). 8. Conclusion The proposed change in the classification of business modelling, analysis and optimisation techniques might have an impact on commercially applicable contin-
M. Wibig 131 Figure 13. Simulation in optimisation Table 2. Amended latest classification of business process optimisation methods Model of business process Flowcharts RADs IDEF Petri Net Mathematical Business process languages Classification the model of Business languages process Types of business process analysis Observational, Mathematical, Business process languages Mathematical Observational, Performance analysis Observational, Simulation Observational, Validation, Verification, Simulation, Performance analysis Performance analysis, Simulation Performance analysis, Simulation Types of business processes optimisation Simulation based optimisation Graph reduction, Simulation based optimisation Algorithmic approaches, Simulation based optimisation Simulation based optimisation
132 Diagram Models in Continuous... uous business process improvement approaches. It fits the gap between the commercial need for an easily understandable tool based on readable diagrams for analysts and researchers preference for working with well-defined mathematical. are the most frequently used way of defining business processes. They are easy to read and can be executed in modern workflow software. At the same time, commercial continuous improvement is mostly done manually in reaction to bottlenecks rather than proactively. Although project engineering was first mentioned in early sixties and became a popular topic in the 1980s, the first time Gartner (independent IT industry analysts) prepared Magic Quadrant [10] the famous market research report for intelligent business process management suites, supporting process optimisation and process analytics was September 2012. Companies and organisations would benefit from scientific guidance and potential new algorithms. References [1] Kettinger, W., Teng, J., and Guha, S., Business process change: A study of methodologies, techniques and tools, MIS Quartely, Vol. 21, 1997. [2] Cheung, Y. and Bal, J., Process analysis techniques and tools for business improvements, Business Process Management, Vol. 4, 1998. [3] Melao, N. and Pidd, M., A conceptual framework for understanding business process modeling, Information Systems, Vol. 10, 2000. [4] Vergidis, K., Tiwari, A., and Majeed, B., Business process analysis and optimisation: beyond reengineering, IEEE Transactions on Systems, Man and Cybernetics Part C: Application and Reviews, Vol. 38, No. 1, 2008. [5] Hofacker, I. and Vetschera, R., Algorithmical approaches to business process design, Computers and Operations Research, Vol. 28, 2001. [6] Wibig, M., Optimization of projects logistics processes using Petri Nets, Polish Journal of Environmental Studies, Vol. 17, No. 2A, 2008. [7] Wibig, M., Dynamic Programming and Genetic Algorithm for Business Processes Optimisation, International Journal of Intelligent Systems and Applications, Vol. 5, 2013.
M. Wibig 133 [8] Petri, A., Kommunikation mit Automaten, Ph.D. thesis, Technische Universitt Darmstadt, Germany, 1962. [9] van der Alst, W., van Hee, K., and Houben, G., Modelling and analysing workflow using a Petri-net based approach, In: Proceedings of the second Workshop on Computer-Supported Cooperative Work, Petri nets and related formalisms, 1994. [10] Sinur, J., Schulte, W., Hill, J., and Jones, T., Magic Quadrant for Intelligent Business Process Management Suites, Tech. rep., Gartner, 2012. [11] Richardson, C. and Miers, D., The Forrester Wave: BPM Suites Q1 2013, Tech. rep., Forrester, 2013. [12] Kochel, P., Solving logistic problems through simulation and evolution, In: Proceedings of the 7th International Symposium on Operational Research, 2003. [13] Kochel, P. and Nielander, U., Simulation-based optimisation of multiechelon inventory systems, Production Planning and Control, 2005.