1 / 26

Petri nets refresher

Petri nets refresher. Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management, Department of Information and Technology, P.O.Box 513, NL-5600 MB, Eindhoven, The Netherlands.

cnumbers
Télécharger la présentation

Petri nets refresher

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Petri netsrefresher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management, Department of Information and Technology, P.O.Box 513, NL-5600 MB, Eindhoven, The Netherlands.

  2. High level Petri netsExtending classical Petri nets with color, time and hierarchy (informal introduction)

  3. Extension with hierarchy • Timed and colored Petri nets result in more compact models. • However, for complex systems/processes the model does not fit on a single page. • Moreover, putting things at the same level does not reflect the structure of the process/system. • Many hierarchy concepts are possible. In this course we restrict ourselves to transition refinement.

  4. Instead of

  5. We can use hierarchy

  6. Reuse • Reuse saves design efforts. • Hierarchy can have any number of levels • Transition refinement can be used for top-down and bottom-up design

  7. Exercise: model three (parallel) punch card desks in a hierarchical manner

  8. Eindhoven University of Technology Faculty of Technology Management Department of Information and Technology P.O. Box 513 5600 MB Eindhoven The Netherlands w.m.p.v.d.aalst@tm.tue.nl Modeling workflows: Mapping workflows onto Petri nets. Wil van der Aalst

  9. Workflow management concepts A workflow definition is composed out of three parts: • process definition: a description of the process itself • resource classification:a classification of the resources to be used • resource management rules: how to map work onto resources

  10. Process definition A process definition specifies which steps are required and in what order they should be executed. (routing definition, procedure, workflow script)(purchase order, tax declarations, insurance claims process) A process definition consists of: • Tasks (step, activity, process element)A task is atomic: commit or rollback. • Conditions (state, phase, requirement)A condition is used to determine the enabling of a task. • Subprocesses

  11. Case A case is the 'thing' which needs to be processed by following the process definition. (process instance, job, project)(insurance claim, purchase order, complaint, loan application) The state of a case is determined by: • case variables (case parameters)The logistic attributes of a case which are used to route the case. • conditions The requirements which are satisfied. • (Application data)Beyond the scope of the WFMS.

  12. Mapping a process definition onto Petri nets condition task case subprocess case variables

  13. Routing of cases • Sequential"first A then B" • Parallel"A en B at the same time or in any order" • AND-split • AND-join • Choice"A or B" • OR-split • OR-join • Iteration"multiple A's"

  14. Sequential routing "First A then B" A B

  15. Parallel routing AND-split AND-join "A and B at the same time or in any order" A B

  16. Choice (1) OR-split OR-join "A or B" Overkill ?! A B

  17. Choice (2) Implicit choice: it depends on the "eagerness" of A and B! OR-join OR-split A B

  18. Choice (3) • We use high-level Petri nets: • tokens have values: case variables • transitions determine the number of tokens produced: explicit OR-split Choice is explicit and may be based on logistic attributes! OR-split OR-join A B

  19. Syntactic sugaring AND-join AND-split OR-join Explicit OR-split

  20. Iteration B B may be executed several times. C A

  21. Exercise • A travel agency organizes trips. To organize a trip the following tasks are executed. • First the customer request is registered, then an employee searches for opportunities which are communicated to the customer. Then the customer is contacted to find out whether (s)he is still interested and whether more alternatives are desired. • If the customer selects a trip, then the trip is booked. In parallel (if desired) one or two types of insurance are prepared. • Two weeks before the start date the documents are sent to the customer. • It is possible that the customer cancels the trip at any time before the start date.

  22. Triggers • The workflow system cannot force things to happen in reality: • The arrival of an electronic message (EDI) which is needed to execute a task. • A resource which starts to work on a case. • The arrival of a paper document. • A phone call to confirm a purchase order. • A workflow system is a reactive system, i.e. it is triggered by the environment. • Some tasks require a trigger.

  23. We identify four kinds of tasks: • AutomaticNo trigger is required. • UserA resource takes the initiative. • ExternalA external event (message, phone call) is required. • TimeThe task requires a time trigger.

  24. The triggering concept can be modeled in terms of PN trigger token However, we will omit the extra place. A A

  25. There is a subtle but important distinction between the following terms: • taskA logical step which may be executed for many cases. • work item = task + caseA logical step which may be executed for a specific case. • activity = task + case + (resource) + (trigger)The actual execution of a task for a specific case. Work items and activities are task instances.

  26. A process definition A (sub)process has one input and one output place.

More Related