Modeling of production processes using UML and Petri nets. Agnieszka Lasota, Andrei Karatkevich Institute of Computer Engineering and Electronics, University of Zielona Góra, ul. Podgórna 50, 65-246 Zielona Góra, Poland (Tel: +48 68 328 2708; e-mail: a.lasota@ weit.uz.zgora.pl; A.Karatkevich@iie.uz.zgora.pl). Abstract: The paper proposes combined use of UML and Petri nets to model production processes which will be useful for designers of production processes in any area of industry. In practice, the specification of a normal operation cycle is presented by a technical drawing. It is known that UML helps to present the concept and various aspects of a system, and Petri nets can provide information about faults. A major challenge in modeling a production process with dynamic models of activity diagrams such as UML 2.0 and PNs is cooperation of these two different methods and conversion between them. The meta-model can be used to control the effects of modifications made in the system. These methods have been widely applied in different areas, but being applied together they can produce new results. This will be demonstrated on a practical example. Keywords: UML, activity diagram, Petri nets, α-nets. 1. INTRODUCTION Nowadays users of object-oriented methods have problems with finding a satisfactory modeling language. In this paper it is proposed how to join two different approaches. There are two well-known modeling methods. The first appeared between mid 1960s and late 1970s and the second modeling language appeared in 1997. Petri Nets (PNs) and UML (Unified Modeling Language) are usable by both humans and machines. Each of these methods is good by itself, but new concepts in modeling are needed to establish cooperation between different specialists, UML has an easy semantic notation for modeling but Petri Nets are a good mathematical tool for systems analysis, UML has a good balance between expressiveness and simplicity of semantics and notation. Results presented in this paper will have appropriate generalizations to various classes of manufacturing systems and will be useful for designers of production processes in any area of industry. In practice, the specification for a normal operation cycle is given by a technical drawing and a technical specification. But, when modeling of a production process starts, all operations must be verified and attempts to optimize them taken. This concept gives proposition how to do it. The outline of this paper is as follows: in Section 2 the preliminary information about place/transition nets and activity diagram UML 2.0 are presented, in Section 3 methodology of transformation of UML activity diagram into α-net are outlined. A practical implementation is discussed in Section 4, and finally, Section 5 concludes with a discussion of ongoing and future work in this area. 2. PETRI NETS AND UML In this Section it is proposed how to connect two different methods, i.e. UML with PNs, for modeling production processes. The result of the transformation makes it easier to understand the overall process functioning. Below some conditions for specific designs such as production processes are chosen and formalized. Also possibilities for modeling a “good” system with the help of UML and α-nets are presented. The analysis applied subclass of Petri net, since it corresponds to the structure modeled for the particular production processes. Production processes usually have a parallel-sequential structure, so for their verification Petri nets can be successfully used. The properties of α-net correspond to properties of the production processes, so if the net will have the expected properties the process will be modeled successfully. In order to unambiguously define the working area of activity in the field of modeling, transformation and analysis of relevant definitions are reproduced. Designers try to arrange component parts in a set of parallel processes, because this saves time and money, but the verification of parallel systems differs from the verification of sequential processes, which is easier. 2.1 Place/Transition Petri nets Petri nets (Murata, 1989) are a graphical and mathematical modeling tool applicable to many parallel systems. The theory of PNs is very complex and applicable to numerous problems. A formal definition of a Petri net is as follows: A Petri net is the a quadruple PN = (P,T,F, M 0 ) where: P = {p 1 , p 2 , … , p m } is a finite set of places, T = {t 1 , t 2 , … , t n } is a finite set of transitions, F ⊆ (P x T) ∪ (T x P) is a set of arcs (flow relation), M 0 : P→ {0,1,2,3,…} is the initial marking, P ∩ T = ∅ and P ∪ T ≠ ∅. Sets of input and output transitions of place p are defined respectively as follows: •p = {t ∈ T : (t, p) ∈ F}, p• = {t ∈ T : (p, t) ∈ F}.