Quantcast
Channel: Visio General Questions and Answers for IT Professionals forum
Viewing all articles
Browse latest Browse all 2333

Petri Net Capability Integration

$
0
0

Petri Net Capability Integration in MS Visio should considered.

Here is a copy of a short description from a discontinued project:

FMC Petri Nets - Dynamic Structures

FMC diagrams for dynamic structures are based on transition-place Petri nets. They are used to express system behavior over time, depicting the actions performed by the agents. So they clarify how a system is working and how communication takes place between different agents.

Basic Elements

transition

Stands for an operation, an event or an activity.

(Note: verb should be used for identifier "T")

unmarked and marked place

A place represents a control state or an additional condition. It may be marked, i.e. it holds a token.

(Note: here capacity = 1, i.e. a place cannot hold more than one token at the same time)

directed arc

Connects a place and a transition.

(Note: here arc weight = 1, i.e. exactly one token will be consumed or produced when the connected transition fires)

Further Elements

NOP

A transition meaning No OPeration.

(Note: often used to preserve the bipartiteness)

swimlane divider

Distinguishes competences of agents.

Common Structures

sequence

concurrency

case (conflict)

Defines that transition T1 fires first, followed by transition T2, followed by transition T3 … .

Means that transitions have no causal ordering. The transitions T1, …, Tn are concurrent, the firing of T1, ... , Tn has no special order.

Is used to choose one transition among others. Only one of the transitions T1, …, Tn will fire, depending on the conditions C1, …, Cn associated to the arcs.

loop

communication

Is used to repeat the firing. Transition T1 will be repeated as long as condition C1 is fulfilled. Often C2 is not mentioned as it is assumed to be "else".

Whenever a swimlane divider is crossed communication takes place. Upon this structure all possible communication types can be expressed (synchronous, asynchronous etc.)

Extended Elements

multi-token place

Places which can hold multiple tokens but not an infinite number are indicated as enlarged places with an annotation specifying the capacity (n>1). Places with an infinite capacity are indicated by double a circle.

directed arc

The arc weight n determines how much tokens will be consumed or produced when the connected transition fires. An arc weight of 1 is assumed, if there is no one specified.

Recursion Elements

stack place
(cap.1, cap. infinite)

Is a place to store information about return positions using stack tokens.

All stack places with the same name are strongly coupled with each other as the stack tokens, although placed on several stack places, are managed in a single stack. So all the stack places together constitute the return stack.

return place

Is used like a normal place. But there is always a conflict to solve as a return place is an input place for at least two transitions that also have stack places as input places.

When a return place gets a token and more than one associated stack places have a stack token the conflict is always solved in the same manner: the newest token on the stack must be consumed first. The newest token belongs to exactly one stack place and so the transition where this stack place is an input place will fire.

General Recursion Scheme

Each recursive diagram shows the following characteristics:

  1. There is an entry point of the recursion (place a). Initially called by the enclosing program part it is called afterwards several times by the recursive program part itself.
  2. Transition R represents the reaching of the end-condition, which is always present to finish the recursion by determining the function value of at least one argument without calling the recursive part again.
  3. Stack places like b, c and d are always input places for transitions that additionally have a return place (e) as input. All the stack places together constitute the return stack which is used to store information about return positions.
  4. A return place (e) is always input place for at least two transitions that also have stack places (b, c, d) as input places.
  5. Be aware that the return stack's only task is to guide the recursion handling. In addition all the necessary data stack modifications like PUSH, POP and TOP have to be done to remember


Viewing all articles
Browse latest Browse all 2333

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>