Directions of the business processes theory Prof. G.N. Kalyanov Institute of Control Sciences RAS, Moscow, Russia Kalyanov@mail.ru 1 Introduction The business processes (BP) theory [1, 2] is one of the areas of the processes theory, represents the “section of mathematical theory of programming, studying mathemati- cal models of the of dynamical systems behavior” [3]. In [3] the process is defined as “a pattern of behavior which is performed by action.” BP-theory models are well suited for studying hierarchical systems, including organizational systems and their processes (business processes). In fact, in processes theory the process represented by the state transition diagram (STD), including such objects as the state, initial state, transition, action (but not in- cluding the conditions of transition between states). Differences from classic STD are in the presence of many process variables, the initial conditions of the process, the use of operators instead of action. The theory provides a formal description (as well as the analysis and verification) processes with message passing based on the calculus communicating systems by R. Milner [4]. The following areas lists as sources and precursors of the processes theory [3]: 1. The theory of communicating sequential processes Hoare [5, 6], which investigates the interaction model synchronous parallel processes based on message passing. 2. The calculus of communicating systems of Milner [4], which introduced denota- tional semantics of concurrent processes, a flow graph with synchronized ports, us- ing the model of interaction of parallel processes Hoare. 3. The communicating processes algebra [7] – the theory of first order with equality, in which subject variables take values in the set of processes. 4. The mobile processes (describes the behavior of distributed systems with change communications between its components and structure), the theory of Petri nets, the theory of partial orders, the temporal logic, the metric approach (studies the no- tion of distance between processes), the synchrony and asynchrony communicating automata, etc. We will use the following definitions [8] for this article purposes: • Business operation is an atomic (indivisible) action that execute one job. • Business function is a set of operations grouped by a particular attribute. • Business process is a related set of functions, which consumes some resources and generates a product (physical or intangible result of human labor: the subject, the service of scientific discovery, idea). 29 The formal apparatus underlying the BP-theory are based on the such directions of programming theory as formal grammar and languages; parallel processes and meth- ods of paralleling; test theory; methods of optimization, verification, analysis and evaluation of quality; the theory of databases and knowledge bases; structural meth- ods of analysis and design . The report addresses the following parts of the BP-theory: • types and classes of BP, • BP -models (types, notations), • modeling technologies, • structuring/decomposition methods, • engineering/reengineering methods, • analysis and verification methods, • methods for the transition from BP-models to requirements for automation of BP. 2 Types and classes of BP There are several BP classifications (based on their grouping on a functional basis, by appointment, etc.), the most commonly used ones is given in [8, 9]. However, the role of such classifications is only to help in structuring the business model (in fact, differ- ent methods of model structuring are based on them). In [10] there are introduced a special class of BP – the "conveyor" process, it is wider than "classic" conveyor, and it allows to calculate the main BP characteristics cannot be evaluated using simulation. The conveyor model of a process has the following major differences from classic models of conveyor: 1. BP is described using acyclic oriented graph with operation or trigger function as vertices. 2. Numerical characteristics of the process are determined by the recursive expressions (not analytically). 3 BP models This section of the BP theory is based on the structural approach to BP modeling. A conceptual model of the structural language is given in [8], it comprises four basic components – language dictionary, language syntax, a set of abstract semantic rules/procedures, aspects of linguistic pragmatics. There are three basic models – the functional, date, behavioral (all three can in- clude elements orgstructure model). Types of BP models are divided into static and dynamic, its formalisation lows are divided into weakly formalized and formal. The formal BP model proposed in [11]. The lower level of the model contains information objects (IO) represented by the tuples Di (ai1, ai2,…, ain), where Di is the identifier of the i-th IO, aij is the j-th attribute of the i-th IO. A business operation is simulated as a pair Ti Dj =(Ti, Dj), where Ti is the type of IO operations. There are the 30 following types of operations: creating, assigning values (definition), archiving, destruction, registration, familiarization, editing, approval (sight), coordination of publication (for public access), transmission performance (including appointment routes), control of execution, binding to another IO. As rule Ti Dj =(Ti aj1, Ti aj2,…, Ti ajk), however, for some operations (e.g., editing operations) may exist indices m such that Ti ajm=ajm, i.e. the operation may not apply to all attributes of IO. The business function is modeled by the tuple business transactions Im ((T1m, D1l),…, (Tkm, Dkl)), where Im is the role of the employee, T1m,…,Tkm - elements of the set {Ti}, D1l,…,Dkl, the elements of the set {Dj}. The business process model is a graph of control of business functions G (N, n0, nf, E, M, EM, EN, R, ER), where N is the set of nodes, each of which corresponds to the business function; n0 and nf - input and a terminating node, respectively; E is a set of control edges such that ∀ i, j∈N∪{ n0, nf}: (i, j)∈E if possible when performing a business function i will execute the business function j; M is the set of nodes corresponding to the structural units of the enterprise; EM is the set of edges of subordination such that ∀ i, j∈M: (i, j)∈EM, if the structural unit j is subject to structural unit i; EN is the edge set of the execution of the business functions that ∀ i∈M, j∈N: (i, j) ∈ EN, if the business function j can be executed in unit i; R - the set of resources of the enterprise; ER - the set of weighted edges in the use of resources such that ∀ i∈R, j∈N: (i, j)∈ER, if the business function j uses at run time, the resource i. 4 Modeling technologies Modern BP modeling technologies are based on the following basic principles: 1. Integration of models of different types, for example, DFD-technology [12, 13] (integrating diagrams DFD, CFD, ERD, STD and processes specification in different notations), Zachman framework [14], “3D-enterprise” model [15], Bunge- Wanda-Weber ontological model [16]. 2. “Translation” from static to dynamic models (especially to Petri nets [17, 18]), for example, software Design/IDEF–Design/CPN (the transition from IDEF0 to color Petri nets), CPN-AMI and INCOME (the transition from DFD to Petri nets). 3. “Translation” from models of simple types to more “developed” models, in particular, the transition from DFD or IDEF0 to a BP graph [11]. Among the formalized technologies of building a “correct” model, it should be noted the method of ERD normalization using Codd normal forms [19], which con- sists in transforming the most simple schema to Third normal form (3NF). Note that in practice schema 1NF and 2НФ tend to occur when you try to describe a few real- world entity in one schema (order and book, project and staff). 3NF is the most simple way of presenting data that reflects common sense. Building a 3NF, we actually re- leased the basic domain entities. 31 5 Structuring/decomposition methods The basic principles of structuring are given in [8, 9]. In [20] the process decomposition is defined as a random Galton-Watson branch- ing process [21]. There are builded the probabilistic model of the process decomposi- tion, estimated the expected number of BP model elements, the time of BP scenarios design, the design complexity, the decomposition depth, etc. In [22] the method of constructing the BP model based on ontological model of Bunge-Wanda-Weber is proposed, and the “correctness” of model decomposition is proved. In [11] the metrics to evaluate of decomposition quality (based on general proper- ties of “good” system - coupling and cohesion) are proposed , and many types of coupling and cohesion are introduced and ranked (the statistics show that more than 70% of the real BP are matching these types). The method of BP designing with given “good” type of coupling and cohesion is developed. The set of methods for developing of BP regulations are proposed in [23, 24] from practical point. 6 Engineering/reengineering methods In [25] the approach to the enterprises engineering based the application of intelligent technologies is proposed. The BP reengineering and management evolution with us- ing dynamic intelligent systems, simulation modeling and knowledge management systems is presented. Integration paradigm enterprises engineering using methods of strategic engineering, cognitive and data mining, service-oriented architectures enter- prises, multi-agent technology and ontological engineering is shown. In [11, 26] the formalized engineering/reengineering methodology based on BP graph model is proposed. Its central method is the method of designing a BP scenari- os, This method allow to expand the number of analyzed scenarios of the business process until they complete enumeration, on the one hand, and to cut off the greater part of scenarios, unacceptable for a number of objective and subjective criteria, on the other hand. The corresponding parallel attribute grammar is a generative BP grammar including following nine objects: G = (VN, VT, V0, P, As, Ms, An, Mn, C), where VT - the set of terminal symbols; VN - the set of nonterminal symbols; V0 ⊆ VN - the set of initial symbols; P - the set of generative rules; As - the finite set of synthe- sized attributes; Ms - the set of methods for the synthesis of attributes; An is the finite set of inherited attributes; Mn - the set of methods inheritance attributes; C - a set of characters that define the parallelism. The first four object G determines the tradition- al way of generating grammar description. The following four object defines a set of properties (attributes) characterizing the symbols generated by chains, and rules for processing these properties. The last symbol is intended to enable the generation of business functions that can (but not necessarily must) be executed in parallel. It is proved [11] that 32 1. BP scenario belongs to the class of regular sets, i.e. it is the smallest of all the classes of languages that contain the sets Ω, {ε},{terminal symbol} and closed with respect to operations of union, concatenation and iteration. Therefore, it is a language recognized by a nondeterministic finite state machine. 2. Its generating grammar is right grammar. Currently, under this section, the BP theory develops in the direction of formalize the properties of “good” (according to [27]) processes such as horizontal and vertical sealing, versioning, etc. 7 Analysis and verification methods This section includes BP testing method, static data flow analysis method, dynamic analysis techniques based on Petri nets, functional-cost analysis method and methods of BP evaluating on the basis of software quality metrics. The BP testing method [28] are based on data flows model [11] reflected the relationship between definition and use of information objects under different masks (for example, data access rights). The proposed method of testing allows you to: • provide detection of specific BP errors in data flows associated with their treatment under various masks that are not detected by other known testing methods; • ensure detection of all errors detected by other testing methods (based on the anal- ysis of graph models of objects). The static analysis method of [29] provides automatic detection of errors in “static semantics” of BP. Dynamic analysis based on Petri nets [30] is the most developed area in this section the BP theory. In practice, there are used complex and developed Petri nets. The modifications usually relate to the following three points [17, 31]: • the introduction of a hierarchy (hierarchical Petri nets); • identify differences in markers, each of which has its own unique characteristics (colored Petri nets); • introduction of multi-markers positions (Petri nets with multi-positions). The functional-cost analysis method is described in detail in [32]. Methods of BP evaluating on quality metrics software basis are based on construct a comprehensive evaluation method combining volume and topological metrics (such as Halstead measure [33], the cyclomatic complexity measure of McCabe [34], the node-based measure [35], measures Henry Kafura [36], etc.) and procedures of expert estimation. 33 8 Methods for the transition from BP-models to requirements for automation of BP One of the first methods of transition from BP models to the requirements for their automation was a method of transition from the BP functional model as hierarchy of DFD diagrams to structural charts as models of the BP automation system design phase [37]. This research is to assess the quality of the constructed models was con- ducted. In [38] the method of requirements generation and analysis based on the modification of BP graph is proposed. The requirements model (reduced graph) is investigated in following areas: calculation of metrics of coupling and cohesion, the adequacy of the BP model, etc. 9 Conclusion The article is one of the first attempts of systematization of formal methods for mod- eling, analysis, reorganization and automation of business processes and formation of their general theory, based on the theory and methods of sequential programming. Private theories associated with different kinds of concurrency of business processes – theory pipelined processes, the theory of vector (synchronous) processes, the theory of asynchronous processes – are outside the focus remained. As for the general theory of processes, the article helped to identify the main gaps and to formulate directions of development and the creation of its formal methods. References 1. G.N.Kalyanov. Models and methods of the business processes theory (review) // Open education, 2015, № 6, pp. 4-9. 2. G.N.Kalyanov. The theory of business processes: formal models and methods // Econom- ics, statistics and informatics, 2016, № 4, pp. 19-21. 3. A.M. Mironov. The theory of processes // Pereslavl University, 2008. 4. R.Milner. A Calculus of Communicating Systems // Number 92 in Lecture Notice in Com- puter Science. Springer Verlag, 1980. 5. C.A.R. Hoare. Communicating Sequential Processes // CACM, 1978, 21(8), pp. 666-677. 6. C.A.R. Hoare. Communicating Sequential Processes // N.J.: Prentice Hall, 1985. 7. J.A.Bergstra, J.W. Process Algebra for Synchronous Communicaition // Information and Control, 1984, 60(1/3), pp.109-137. 8. G.N.Kalyanov. Business processes modeling, analysis, reorganization and automation// M.: Finance and statistics, 2006. 9. G.N.Kalyanov. Consulting: from business strategy to corporate information system // M.: Hot line - Telecom, 2011. 10. B.V.Kupriyanov. Pipelined business processes modelling // Proceedings of "Managing large systems" // M.: 2010, vol. 28, pp. 230-273. 11. G.N. Kalyanov. The theory and practice of business-processes reorganization // Moskow: SYNTEG, 2000. 34 12. C.Gane. Computer Aided Software Engineering: the Methodologies. N.J.: Prentice Hall, 1990. 13. D.Hatley, I.Pirbhai. Integrated Structured Analysis and Design. N.Y.: Dorset House, 1987. 14. J.A.Zachman. A Framework for Information Systems Architecture // IBM Syst. J., 1987, vol. 26, №3, pp. 276-292. 15. E.Z.Zinder. "3D-enterprise" – a model of transformed system // Information Services Di- rector, 2000, №. 4. 16. Y.Wand., R.Weber, An Ontological Model of an Information System // IEEE Transactions on Software Engineering, 1990, Vol. 16, № 11, pp. 1282-1292. 17. S.A.Yuditskii. Scenario approach to business systems modelling // M.: SINTEG, 2001. 18. S.A.Yuditskii, P.N.Vladislavlev. The basics of organizational systems pre-project analy- sis// M.: SINTEG, 2005. 19. C.J.Date. Introduction to Database Systems, 8th Edition // Pearson, 2004. 20. G.N.Tziperman. A stochastic model of the information system services identification pro- cess // Proceedings of the ISP RAS, 2014, vol. 26, № 5, pp. 7-28. 21. V.A.Vatutin. Branching processes and their applications // M.: Steklov mathematical Insti- tute, 2008. 22. I.G.Fedorov. Methodology of executable models and business processes control system creation // M.: MESI, 2015. 23. V.V.Repin, V.G.Eliferov. Process approach to management: business processes modelling // M.: RIA “Standards and quality”, 2004. 24. V.V.Repin, V.G.Eliferov. Business processes: regulations and methods // M.: INFRA-M, 2005. 25. Y.F.Telnov. Reengineering of business processes: a component methodology // M.: Fi- nance and statistics, 2004. 26. G.N.Kalyanov. Formal methods to support the business processes reengineering // Econo- my, statistics and informatics, 2013, № 3, pp. 161-165. 27. M.Hammer M., J.Champy. Reengineering the Corporation: A Manifesto for Business Revolution // N.Y.: Harper-Collins, 1993. 28. G.N.Kalyanov. The testing of information flows // Proceedings of the 13-th Russian scien- tific-practical conference “Business processes reengineering on the basis of modern infor- mation technologies. Process control systems and knowledge”. M.: 2010, pp.146-151. 29. G.N.Kalyanov. Formal business processes engineering and verification methods // Pro- ceedings of 16-th scientific-practical conference “Enterprises engineering and knowledge management”. M.: 2013, pp. 144-149 30. J.L.Peterson. Petri Net Theory and the Modeling of Systems // N.J.: Prentice Hall, 1981. 31. J.Mendling, H.Reijers, W.Van der Aalst. Seven Process Modeling Guidelines // Infor- mation and Software Technology, 2010, Vol. 52, № 2, pp. 127–136. 32. V.A.Ivlev, T.V.Popova. ABC/ABM/ABB – methods and systems // M.: “1C publishing”, 2004. 33. M.H.Halstead. Elements of Software Science // Amsterdam: Elsevier North-Holland, 1977. 34. T.J.McCabe. A Complexity Measure // IEEE Transactions on Software Engineering, 1976, Vol. SE-2, № 4, pp.308–320. 35. M.R.Woodword and etc. A Measure of Control Flow Complexity in Program Text // IEEE Transactions on Software Engineering, 1979, Vol. SE-5, № 1, pp. 45–50. 36. S.Henry, D.Kafura. Software Structure Metrics Based on Information Flow // IEEE Trans- actions on Software Engineering, 1981, Vol. SE-7, № 5, pp. 510–518. 35 37. C.Gane. Computer Aided Software Engineering: the Methodologies // N.J.: Prentice Hall, 1990. 38. G.N.Kalyanov. System analysis of requirements for KIS // Proceedings of the 15-th Rus- sian scientific-practical conference “Business processes reengineering on the basis of mod- ern information technologies. Knowledge management system”. M.: 2012, pp. 96-98.