Write a Summary of Research Paper . Describe it in your own words. (Research Paper attached) Pattern
Fantastic news! We've Found the answer you've been seeking!
Question:
Write a Summary of Research Paper. Describe it in your own words. (Research Paper attached)
Transcribed Image Text:
Pattern Based Model Reuse Using Colored Petri Nets Abstract- Colored Petri Net (CPN) is a graphical modeling language for simulation and modeling and for verification of discrete event systems. CPN allows developers to define a model in the form of reusable components. A model component is an independent element, which is specified using a formalized description, can conform to a certain component standard, has a well-defined interface, and encapsulates certain behavior. Modern components can help the developer reuse existing models according to their requirement as it reduces the cost and time of development. Composability is the capability to select and integrate various components to fulfill user requirements. Composability provides the means to achieve reusability where "reuse" is the ability of a simulation component to be reclaimed for various applications. We propose a verification framework for developers to select and assemble CPN-based components and verify their composability. The goal of this paper in making models of concurrent systems. We present a case study of a restaurant model as proof of concept. A verified composition affirms reuse of model components in a meaningful manner by satisfying given requirement specifications. experience reoccurrence of the same problem repeatedly. Hence, a sound understanding of certain problems gives developers a wide choice to pick the best possible solution by looking up in pattern catalog. This consumes less effort and time in development while providing novel solutions. "Composability" is the ability to select and merge various components in order to satisfy the user requirements [3]. "Reuse" is when existing component are utilized for different applications [4] [5]. We propose reusability patterns, verify their relationship between patterns and enable easy navigation using CPN pattern language. The goal is to make a pattern, so that developers can search a pattern which is related to problem in a solution catalog using these patterns. Therefore, developers will not need to develop a model from the scratch to satisfy their user requirements. is to provide a pattern which helps developer П. BACKGROUND Keywords- Patterns, Pattern Reuse, Colored Petri nets, In the following section, we will discuss some basic understood notions about pattern, composability and verification. Composability Verification I. INTRODUCTION A. Pattern When building up a model of a concurrent system and verification of its properties, the graphical language being used is known as "Colored Petri Nets" [1]. CPN models are executable and are used to model and specify the behavior of parallel systems. These models are both state and action oriented. Moreover, the CPN tool is used to provide a design pattern that simulates the proposed solution. It's applicable in various domains not only in work flow modeling but also in the design of complex concurrent computer systems. A pattern is specifically a recurring problem in a domain where a generalized solution is required for that problem [2]. Basically, a pattern provides the solution to the developer in making their model, while avoiding redundant solutions for the problems. Patterns depend on experience, as they provide a sound solution for problems which are continuously occurring in a certain domain. Usually developers working in similar domain A pattern is defined in terms of a recurring problem in certain domain providing the generalized solution for that problem [2]. The idea of pattern was introduced by C. Alexander [6]. Gamma explained that there are four important elements for pattern i.e.: name of the pattern, the problem, solution for the problem and explanation of the consequences [7]. A pattern provides solutions to the developer in making their model, while avoiding redundant solutions to the problems. Patterns depend on experience, as they provide a sound solution to the problem that are continuously occurring in a certain domain. Developers who are working in similar domains would experience occurrence of same problem repeatedly. A sound understanding of a certain problem gives modeler a wide choice for picking the best possible solution by looking up in pattern catalogue. This consumes less effort and time in development while providing novel solution. 978-1-7281-2847-4/19/$31.00 ©2019 IEEE DOI 10.1109/ICCSA.2019.000-7 32 B. Pattern reuse create analysis reports which play an important role in the verification process. Pattern reuse promises effective development of systems as it can reduce the development cost and time. When reusing patterns, we need composability [8]. Hence, we are aiming to provide a composability of patterns in order to achieve a sophisticated model. 1) Hierarchical CPN CPN consists of different modules and the modules can be considered as black boxes which perform all the processing on abstract level by concentrating on one module at a time. An entire CPN model can be replaced by a transition that can be C. Composability Composability is the ability to select and merge various components in order to satisfy user requirements [3] [9]. We propose reusability of patterns and verify their relationship between patterns and enable easy navigation using CPN pattern language. Verification is required to achieve successful composability [10] [19]. connected to the main model to make hierarchical CPN models using CPN tools. The entire model then can be broken down into different smaller modules and can be used to help in modular development [1] [12]. CPN hierarchical features are used in our CPN component model. D. Colored Petri Nets E. Verification Verification is defined as a process that can check model CPN is a mathematical modeling language for simulation and modeling, as well as for the verification of discrete event system. Essentially, it is a powerful language which can be used to display parallel or concurrent activities in a system [1] [11]. By using a CPN tool [12], a model is created for analyzing system performance. CPNS are a buildup and well-researched means for system modeling and simulation [13]. A CPN is a bipartite diagram in which we have places, transition and arc. Arc runs from transition to place and vice versa, but never between transition and between places. implementation accurately [15] and according to specifications [16]. We use verification technique named "state space analysis" to check the system properties and verify if models fulfil the requirements [17] [18]. the III. CASE STUDY: FAST FOOD RESTAURANT MODEL A case study of restaurant model is presented in this section to explain our approach "Pattern Based Model Reusability". This case study explains a scenario; in which different patterns can be combined using Composability. Pattern can be defined as a problem that keeps occurring in a defined sequence. Consider this, our model provides a generalized solution for reoccurring problem. Following is a pattern that can be used in this case study. CPN = (P, T, A, 2, V, C, G, E, I) Where: P is a finite set of places T is a finite set of transitions such that: PnT=Ø Arrival: Figure 1 illustrates a unique ID is assigned to each arriving customer. Exponential time function has used with a mean equal to 9. AS PXT U TxP is a set of directed arcs. E is a finite set of non-empty color sets. V is a finite set of typed variables such that: Type[v] € £ for all variables v e V 1' 1 C: P-E is a color set function that assigns a color set to each place. AIn 1 1' 15@117 INT G: T - Expression is a guard function that assigns a guard to each transition t id id+1 1 "Customer" @+exponentialTime(9) E: A- Expression is an arc expression function that assigns an arc expression to each arc a (id,y) AIN Generator AOut I: P – Expression is an initialization function that assigns an initialization expression to each place p Out Entity 1 (14,"Customer")@117 y STRING 1 "Customer"@117 A comprehensive description of colored petri nets is outside the scope of this paper, so interested readers are suggested to see [1] [12] [13]. CPN is a well-known tool for the development of models, their verification using state-space analysis and analysis of CPN models [12]. They provide an integrated development environment (IDE) for the development of CPN models. For efficiently executing timed and untimed nets, it has a bundled simulator. State-space analysis is the most important feature of CPN tools. It consists of different query functions and helps to Figure 1: Arrival Pattern Split: Figure 2 illustrates splitting of the customer and assigns different queues to them. Discrete function has used to divide customers randomly to different outputs. 33 if (c-1) then 1 (id,y) else empty Payment Service: Figure 6 illustrates that provides a service to the customers in which a resource which receives the payment from a customer and forwards his order. SOut1) Entity if (c-2) then 1' (id,y) else empty SIn1 1'"Waiter4"@112 (id,y) SIN Split SOut2 STRING input (): output (c); action 1'(14,"Customer")@117 discrete(1,3) Entity 1' (13,"Customer")@110 Entity (id,y) Payment (id,y) if (c-3) then 1' (id,y) else empty (Sout3 S5IN S50 Service Entity Entity @+waiting() Entity 1 (7,"Customer")@113+++ 1 (8,"Customer"j@86+++ 1 (9,"Customer")@112 Figure 2: Split Pattern (S5OUT Out Queue: Figure 3 illustrates that FIFO queue pattern is used to entertain the customer. A customer arriving first will always be served first. STRING Figure 6: Payment Service pattern @+waiting() (id,y) 1'] O+waiting() FoodReady Queue: Figure 7 illustrates FIFO Queue pattern is used in which a food that is prepared first is served first, and also includes a waiting time that is required in preparing and processing the food. Sid,y)::n (id,y) Q1IN put FIFO Queue get Q10ut Entity Orders 1' (1@71 Figure 3: Queue Pattern Resource: Figure 4 illustrates that it includes moving resources that can move on their own like in our example it represent staff e.g. waiter. We are using a resource "Waiter" that can be Entity 1'(8,"Customer")@71 O+waiting() O+waiting() (id,y)::n Vid,y) FRIN (id, get FIFO Queue Orders 1'(l@70 Figure 7: FoodReady Queue Pattern put generated by a resource pattern which determines the order in Entity 1 (2,"Customer")@62+++ Entity 1' (5,"Customer")@70 1'(3,"Customer")@71 which he takes order from the customer. 1 "Waiter1"++ 1 "Waiter2"++ 1 "Waiter3"++ 1 "Waiter4" Service: Figure 8 illustrates that this pattern uses a resource to provide a service to the customer. When a food is ready it is served to the customer. The duration required to actually serve the prepared food to the customer is included in this pattern. The function norm Time is used to generate a random number from a RPOut Out STRING Idle Busy STANG 1"Waiter4"@112 Gaussian distribution. Free RPIN STRING 1 "Waiter1"@125+++ 1 "Waiter2"@131+++ 1 "Waiter3"@113 SIn 1 1' "VWaiter4"@112 STRING @+normalTime(20,5) Figure 4: Resource Pattern Order Service: Figure5 illustrates that in this pattern a resource (id,y) (id,y) SIN Service SOut Out Entity can be added that actually provides services to the customer and also adding a waiting time that tells us how much time is required to entertain a customer. Entity 1 (3,"Customer")@125+++ 1 (4,"Customer"j@131 SOUT Out STRING S2In STRING 1 "Waiter4"@112 1 "Waiter1"@125+++ 1' "Waiter2"@131+++ 1"Waiter3"@113 (id,y) (id,y) Figure 8: Service Pattern Order Service ( s20ut out Entity SZIN Sink: Figure 9 is usually the end point in a process model in which after receiving their food all customers leave the @+waiting() Entity 1'(10,"Customer")@119 restaurant. S2OUT Out STRING Figure 5: Order Service Pattern 34 Pattern Based Model Reuse Using Colored Petri Nets Abstract- Colored Petri Net (CPN) is a graphical modeling language for simulation and modeling and for verification of discrete event systems. CPN allows developers to define a model in the form of reusable components. A model component is an independent element, which is specified using a formalized description, can conform to a certain component standard, has a well-defined interface, and encapsulates certain behavior. Modern components can help the developer reuse existing models according to their requirement as it reduces the cost and time of development. Composability is the capability to select and integrate various components to fulfill user requirements. Composability provides the means to achieve reusability where "reuse" is the ability of a simulation component to be reclaimed for various applications. We propose a verification framework for developers to select and assemble CPN-based components and verify their composability. The goal of this paper in making models of concurrent systems. We present a case study of a restaurant model as proof of concept. A verified composition affirms reuse of model components in a meaningful manner by satisfying given requirement specifications. experience reoccurrence of the same problem repeatedly. Hence, a sound understanding of certain problems gives developers a wide choice to pick the best possible solution by looking up in pattern catalog. This consumes less effort and time in development while providing novel solutions. "Composability" is the ability to select and merge various components in order to satisfy the user requirements [3]. "Reuse" is when existing component are utilized for different applications [4] [5]. We propose reusability patterns, verify their relationship between patterns and enable easy navigation using CPN pattern language. The goal is to make a pattern, so that developers can search a pattern which is related to problem in a solution catalog using these patterns. Therefore, developers will not need to develop a model from the scratch to satisfy their user requirements. is to provide a pattern which helps developer П. BACKGROUND Keywords- Patterns, Pattern Reuse, Colored Petri nets, In the following section, we will discuss some basic understood notions about pattern, composability and verification. Composability Verification I. INTRODUCTION A. Pattern When building up a model of a concurrent system and verification of its properties, the graphical language being used is known as "Colored Petri Nets" [1]. CPN models are executable and are used to model and specify the behavior of parallel systems. These models are both state and action oriented. Moreover, the CPN tool is used to provide a design pattern that simulates the proposed solution. It's applicable in various domains not only in work flow modeling but also in the design of complex concurrent computer systems. A pattern is specifically a recurring problem in a domain where a generalized solution is required for that problem [2]. Basically, a pattern provides the solution to the developer in making their model, while avoiding redundant solutions for the problems. Patterns depend on experience, as they provide a sound solution for problems which are continuously occurring in a certain domain. Usually developers working in similar domain A pattern is defined in terms of a recurring problem in certain domain providing the generalized solution for that problem [2]. The idea of pattern was introduced by C. Alexander [6]. Gamma explained that there are four important elements for pattern i.e.: name of the pattern, the problem, solution for the problem and explanation of the consequences [7]. A pattern provides solutions to the developer in making their model, while avoiding redundant solutions to the problems. Patterns depend on experience, as they provide a sound solution to the problem that are continuously occurring in a certain domain. Developers who are working in similar domains would experience occurrence of same problem repeatedly. A sound understanding of a certain problem gives modeler a wide choice for picking the best possible solution by looking up in pattern catalogue. This consumes less effort and time in development while providing novel solution. 978-1-7281-2847-4/19/$31.00 ©2019 IEEE DOI 10.1109/ICCSA.2019.000-7 32 B. Pattern reuse create analysis reports which play an important role in the verification process. Pattern reuse promises effective development of systems as it can reduce the development cost and time. When reusing patterns, we need composability [8]. Hence, we are aiming to provide a composability of patterns in order to achieve a sophisticated model. 1) Hierarchical CPN CPN consists of different modules and the modules can be considered as black boxes which perform all the processing on abstract level by concentrating on one module at a time. An entire CPN model can be replaced by a transition that can be C. Composability Composability is the ability to select and merge various components in order to satisfy user requirements [3] [9]. We propose reusability of patterns and verify their relationship between patterns and enable easy navigation using CPN pattern language. Verification is required to achieve successful composability [10] [19]. connected to the main model to make hierarchical CPN models using CPN tools. The entire model then can be broken down into different smaller modules and can be used to help in modular development [1] [12]. CPN hierarchical features are used in our CPN component model. D. Colored Petri Nets E. Verification Verification is defined as a process that can check model CPN is a mathematical modeling language for simulation and modeling, as well as for the verification of discrete event system. Essentially, it is a powerful language which can be used to display parallel or concurrent activities in a system [1] [11]. By using a CPN tool [12], a model is created for analyzing system performance. CPNS are a buildup and well-researched means for system modeling and simulation [13]. A CPN is a bipartite diagram in which we have places, transition and arc. Arc runs from transition to place and vice versa, but never between transition and between places. implementation accurately [15] and according to specifications [16]. We use verification technique named "state space analysis" to check the system properties and verify if models fulfil the requirements [17] [18]. the III. CASE STUDY: FAST FOOD RESTAURANT MODEL A case study of restaurant model is presented in this section to explain our approach "Pattern Based Model Reusability". This case study explains a scenario; in which different patterns can be combined using Composability. Pattern can be defined as a problem that keeps occurring in a defined sequence. Consider this, our model provides a generalized solution for reoccurring problem. Following is a pattern that can be used in this case study. CPN = (P, T, A, 2, V, C, G, E, I) Where: P is a finite set of places T is a finite set of transitions such that: PnT=Ø Arrival: Figure 1 illustrates a unique ID is assigned to each arriving customer. Exponential time function has used with a mean equal to 9. AS PXT U TxP is a set of directed arcs. E is a finite set of non-empty color sets. V is a finite set of typed variables such that: Type[v] € £ for all variables v e V 1' 1 C: P-E is a color set function that assigns a color set to each place. AIn 1 1' 15@117 INT G: T - Expression is a guard function that assigns a guard to each transition t id id+1 1 "Customer" @+exponentialTime(9) E: A- Expression is an arc expression function that assigns an arc expression to each arc a (id,y) AIN Generator AOut I: P – Expression is an initialization function that assigns an initialization expression to each place p Out Entity 1 (14,"Customer")@117 y STRING 1 "Customer"@117 A comprehensive description of colored petri nets is outside the scope of this paper, so interested readers are suggested to see [1] [12] [13]. CPN is a well-known tool for the development of models, their verification using state-space analysis and analysis of CPN models [12]. They provide an integrated development environment (IDE) for the development of CPN models. For efficiently executing timed and untimed nets, it has a bundled simulator. State-space analysis is the most important feature of CPN tools. It consists of different query functions and helps to Figure 1: Arrival Pattern Split: Figure 2 illustrates splitting of the customer and assigns different queues to them. Discrete function has used to divide customers randomly to different outputs. 33 if (c-1) then 1 (id,y) else empty Payment Service: Figure 6 illustrates that provides a service to the customers in which a resource which receives the payment from a customer and forwards his order. SOut1) Entity if (c-2) then 1' (id,y) else empty SIn1 1'"Waiter4"@112 (id,y) SIN Split SOut2 STRING input (): output (c); action 1'(14,"Customer")@117 discrete(1,3) Entity 1' (13,"Customer")@110 Entity (id,y) Payment (id,y) if (c-3) then 1' (id,y) else empty (Sout3 S5IN S50 Service Entity Entity @+waiting() Entity 1 (7,"Customer")@113+++ 1 (8,"Customer"j@86+++ 1 (9,"Customer")@112 Figure 2: Split Pattern (S5OUT Out Queue: Figure 3 illustrates that FIFO queue pattern is used to entertain the customer. A customer arriving first will always be served first. STRING Figure 6: Payment Service pattern @+waiting() (id,y) 1'] O+waiting() FoodReady Queue: Figure 7 illustrates FIFO Queue pattern is used in which a food that is prepared first is served first, and also includes a waiting time that is required in preparing and processing the food. Sid,y)::n (id,y) Q1IN put FIFO Queue get Q10ut Entity Orders 1' (1@71 Figure 3: Queue Pattern Resource: Figure 4 illustrates that it includes moving resources that can move on their own like in our example it represent staff e.g. waiter. We are using a resource "Waiter" that can be Entity 1'(8,"Customer")@71 O+waiting() O+waiting() (id,y)::n Vid,y) FRIN (id, get FIFO Queue Orders 1'(l@70 Figure 7: FoodReady Queue Pattern put generated by a resource pattern which determines the order in Entity 1 (2,"Customer")@62+++ Entity 1' (5,"Customer")@70 1'(3,"Customer")@71 which he takes order from the customer. 1 "Waiter1"++ 1 "Waiter2"++ 1 "Waiter3"++ 1 "Waiter4" Service: Figure 8 illustrates that this pattern uses a resource to provide a service to the customer. When a food is ready it is served to the customer. The duration required to actually serve the prepared food to the customer is included in this pattern. The function norm Time is used to generate a random number from a RPOut Out STRING Idle Busy STANG 1"Waiter4"@112 Gaussian distribution. Free RPIN STRING 1 "Waiter1"@125+++ 1 "Waiter2"@131+++ 1 "Waiter3"@113 SIn 1 1' "VWaiter4"@112 STRING @+normalTime(20,5) Figure 4: Resource Pattern Order Service: Figure5 illustrates that in this pattern a resource (id,y) (id,y) SIN Service SOut Out Entity can be added that actually provides services to the customer and also adding a waiting time that tells us how much time is required to entertain a customer. Entity 1 (3,"Customer")@125+++ 1 (4,"Customer"j@131 SOUT Out STRING S2In STRING 1 "Waiter4"@112 1 "Waiter1"@125+++ 1' "Waiter2"@131+++ 1"Waiter3"@113 (id,y) (id,y) Figure 8: Service Pattern Order Service ( s20ut out Entity SZIN Sink: Figure 9 is usually the end point in a process model in which after receiving their food all customers leave the @+waiting() Entity 1'(10,"Customer")@119 restaurant. S2OUT Out STRING Figure 5: Order Service Pattern 34
Expert Answer:
Answer rating: 100% (QA)
Summary Petri net is an important tool for discrete event dynamic systems modeling and analysis And it has great ability to handle concurrent phenomena and nondeterministic phenomena Currently Petri n... View the full answer
Posted Date:
Students also viewed these organizational behavior questions
-
In your own words and using various bond websites, please locate one of each of the following bond ratings: AAA, BBB, CCC, and D. Please describe the differences between the bond ratings. Identify...
-
In your own words how would you distinguish between competitive advantage and strategic management as they relate to strategic planning Which are you more interested in and why Create and post a...
-
In your own words explain and define economics, microeconomics, and macroeconomics Provide an explanation of focus for micro and macroeconomics. how are decisions made, Give an example that you have...
-
The following is information for Palmer Company. \ table [ [ , Year,Year 2 , Year 1 ] , [ Cost of goods sold,$ 6 3 3 , 8 2 5 , $ 4 1 6 , 6 5 0 , $ 3 8 1 , 3 0 0 The following is information for...
-
Is there any difference in the variability in golf scores for players on the LPGA Tour (the women's professional golf tour) and players on the PGA Tour (the men's professional golf tour)? A sample of...
-
Present Value and Future Value You are required to pay $5,000 for college fees for each of the next four years, and a generous uncle has offered to give you enough money now to cover these future...
-
Three charged particles initially have identical masses, charges, and speeds and are traveling perpendicular to the same magnetic field. Because they are all in the same magnetic field and have...
-
Direct materials efficiency, mix, and yield variances. Nature's Best Nuts produces specialty nut products for the gourmet and natural foods market. Its most popular product is Zesty Zingers, a...
-
Which OSI layer is responsible for connection - oriented communication?
-
Go to the Webinars worksheet. DeShawn wants to determine the number of webinars the company can hold on Tuesdays and Thursdays to make the highest weekly profit without interfering with...
-
Approximately 88.5% of the US population has access to the internet as reported by Internet Live Stats. Find a website that consumers might use to gather information about a an upcoming purchase....
-
Compare the competitive advantages enjoyed by a large restaurant chain, such as Steak and Ale or Red Lobster, and the sources of competitive advantages enjoyed by a small local restaurant.
-
Why do organizations grow? What major crisis is an organization likely to encounter as it grows?
-
What is organizational learning? In what ways can managers promote the development of organizational learning by acting at various levels in the organization? By using knowledge management?
-
Trader Joes, an upscale specialty supermarket chain, was founded in 1967 by Joe Coulombe, who then owned a few convenience stores that were fighting an uphill battle against the growing 7-11 chain....
-
What are information synergies and in what ways can they enhance innovation?
-
A rainstorm with a total depth of 40 mm and duration of 4 hours on small watershed of 6 Km was distributed in time and is shown in the following table. Analyses of the runoff data show that this rain...
-
In Problem 8.43, determine the smallest value of for which the rod will not fall out of the pipe. IA -3 in.-
-
Two fair dice, one red and one green, are rolled. Let the event \(A\) be the sum of the faces showing is equal to seven. Let the event \(B\) be the faces showing on the two dice are equal. (a) List...
-
A single fair die is rolled. Let the event \(A\) be the face showing is even. Let the event \(B\) be the face showing is divisible by 3 . (a) List out the sample space of the experiment. (b) List the...
-
Two fair dice, one red and one green, are rolled. Let the event \(A\) be the sum of the faces showing is an even number. Let the event \(B\) be the sum of the faces showing is divisible by 3 . (a)...
Study smarter with the SolutionInn App