Categorical Modeling Method, Proof of Concept for the Petri Net Language

Categorical Modeling Method, Proof of Concept for the Petri Net Language

Categorical Modeling Method, Proof of Concept for the Petri Net Language Daniel-Cristian Crăciunean Computer Science and Electrical Engineering Department, Lucian Blaga University of Sibiu, Bulevardul Victoriei 10, 550024 Sibiu, Romania Keywords: Modeling Method, Metamodel, Category Theory, Functors, Natural Transformation, Limit, Colimit, Categorical Modeling Method. Abstract: Modeling increases the importance of processes significantly, but also imposes higher requirements for the accuracy of process specifications, since an error in the design of a process may only be discovered after it already produces large cumulative losses. We believe that modeling tools can help build better models in a shorter time. This inevitably results in the need to build formal models that can be theoretically verified. A category as well as a model is a mixture of graphical information and algebraic operations. Therefore, category language seems to be the most general to describe the models. The category theory offers an integrated vision of the concepts of a model, and also provides mechanisms to combine models, mechanisms to migrate between models, and mechanisms to build bridges between models. So, category theory simplifies how we think and use models. In this paper we will use the language offered by the category theory to formalize the concept of Modeling Method with the demonstration of the Categorical Modeling Method concept for the Petri Net grammar. 1 INTRODUCTION important. We believe that modeling tools can help build better models in a shorter time. Nowadays, modeling is the main engine for The purpose of a process model is to decide what increasing business process performance. But the tasks to perform and in what order. Activities may be modeling of business processes has led to dramatic sequential, parallel or concurrently, may also be changes in the organization of work and has allowed optional or mandatory, and the execution of some new ways of doing business. Therefore, process activities may be repetitive. modeling has become an extremely important factor The best known process model is the transition in increasing company performance. As a result, system. A transition system consists of states and process models are widely used in organizing and transitions. Any process model with executable managing companies. semantic can be mapped to a transition system. There are very general models such as: operations Transition systems are simple but cannot efficiently management and, in particular, operational research, express concurrency. For example, if we have a which have standard solutions, but business processes system with n parallel activities that can be executed are very diverse so that metamodels have to be built in any order then there is n! possible execution n ad-hoc. sequences. The transition system therefore requires 2 n-1 If the operations management can be based on states and n×2 transitions (van der Aalst, 2011). standard immutable models with precise semantics Given the concurrency nature of business such as linear programming, queueing models, processes, more expressive models such as Petri Nets, Markov chains, etc. process models in BPM typically BPMN, EPC and UML are needed to make them serve multiple purposes and are more heterogeneous. more concise and legible. Many features defined for Therefore, making a good BPM model is a hard transition systems can easily be translated into these task especially if the modeling tool is not appropriate. top-level mechanisms. It is not easy to make good process models within All these process models have in common that a reasonable time. However, process models are very processes are described in terms of activities (and possibly subprocesses). The ordering of these 281 Craciunean,˘ D. Categorical Modeling Method, Proof of Concept for the Petri Net Language. DOI: 10.5220/0007360602810289 In Proceedings of the 7th International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2019), pages 281-289 ISBN: 978-989-758-358-2 Copyright c 2019 by SCITEPRESS – Science and Technology Publications, Lda. All rights reserved MODELSWARD 2019 - 7th International Conference on Model-Driven Engineering and Software Development activities is modeled by describing casual 2 THEORETICAL dependencies. The main concepts used in processes modeling FOUNDATIONS AND NOTES are: case, task, routing (van der Aalst and van Hee, 2004). Definition 1. (Manes, 1986; Barr and Wells, 2012) A The life cycle of a case in a process represents the category is defined as follows: We consider a routing of the case. Routing on certain branches is collection of objects A, B, .. X, Y, Z, ... which we based on four basic constructions that determine what denote by ob() and we call it the set of objects of . tasks must be performed and in what order (van der For each pair of objects (X,Y) of , we consider a set Aalst and van Hee, 2004): of arrows from X to Y denoted by (X,Y). On the set The behavior of a case is defined by a process and of arrows we consider a composing operator denoted therefore has a finite life, with a beginning that marks by ∘, which attaches to each pair of arrows (f,g) of the the occurrence of a case, and an end that marks the form: f:XY, g:YZ a morphism g∘f:XZ and completion of the case. respecting the axioms 1 and 2. Most of the times, the formalization of workflow 1. The composition is associative: patterns is based on the graph theory. We will use in If f:XY, g:YZ and this paper the category theory for this purpose. h:ZW(h∘g)∘f=h∘(g∘f):XW. A category as well as a model is a mixture of graphical information and algebraic operations. 2. For each object X, there is the identity arrow Therefore, category language seems to be the most idX:XX with the property that idX∘f=f, g∘idX=g general to describe the models for all pairs of arrows f:XY and g:UX. The category theory works with patterns or forms Definition 2. (Barr and Wells, 2012; Walters, 2006) in which each of these forms describe different aspects of the real world. Category theory offers both, Let and be two categories, a functor from to a language, and a lot of conceptual tools to efficiently consists of the functions: ob:ob( )ob(), and handle models. for each pair of objects A, B of we have the Generally, building a model begins with an functions: A,B:(A,B)((A),(B)) which fulfills informal model, used for discussion and the following conditions: documenting, and ends with an executable model (1 )=1 , (fg) = fg if A → A →A . useful for analyzing, simulating, or actually executing A (A) 1 2 3 the process. Typically, all functions ob, A,B are denoted by the Informal models are easy to understand but suffer symbol, for simplicity. from ambiguity, while executable models are too Definition 3. (Barr and Wells, 2012; Walters, 2006) detailed to be easy to understand by all the parties Let , be functors from category to category . involved in building the model. This conflict (dichotomy) between the informal A morphism from to , also called natural and the executable model largely reflects a certain transformation, is a family of arrows in : incompatibility between the metamodel and the A:AA (A ). So, for any arrow f:A B in , modeled object, and therefore is mainly due to the we have (f)∘A=B∘(f). This condition is called the insufficient alignment between the metamodel and naturality condition. reality. Definition 4. (Barr and Wells, 2012; Barr and Wells, Due to the very large diversity of real world 2002) Let and be two graphs. A diagram in of processes, it is impossible for an existing metamodel the graph is a functor: D: . is called the of a process to be well aligned in all cases. shape graph of the diagram D. This problem is often solved by endlessly adding new facilities to existing metamodels to cover the Definition 5. (Barr and Wells, 2012; Barr and Wells, modeling requirements of processes that were not 2002) Let be a graph and a category. Let D: foreseen in the initial phase. Obviously, these be a diagram in with the form and C: be a additions lead to complicated metamodels, difficult to constant functor (which maps all objects in C and all understand and difficult to learn by those who are arcs in idC). A commutative cone with base D and going to use them. vertex C is a natural transformation p:CD. Hence the need to build specific metamodels for each domain that are totally compatible with the Definition 6. The set of cones along with the specific processes of a given field. morphisms between them form a category that we call the category of cones. A terminal object (cone) in the 282 Categorical Modeling Method, Proof of Concept for the Petri Net Language category of cones, if any, is called a limit of the D then be introduced into the sketch of a modeling diagram. This limit is also called universal cone. method metamodel based on mechanisms specific to the category theory such as commutative diagrams, Definition 7. (Barr and Wells, 2012; Barr and Wells, limits and colimits. The result is the concept of 2002) Let be a graph and a category. Let D: Categorical Modeling Method. be a diagram in with the shape and C: In this paper we will define and demonstrate the constant functor (which maps all objects in C and all concept of Categorical Modeling Method for the Petri arcs in idC). A commutative cocone with base D and Net grammar. A Petri Net is a type of transition vertex C is a natural transformation p:DC. system in which a transition does not affect a global Definition 8.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    9 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us