BPMN 2.0 Introduction

  • 1,921 views
Uploaded on

BPMN 2.0 …

BPMN 2.0
Introduction
Business Process Modeling Notation

More in: Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,921
On Slideshare
0
From Embeds
0
Number of Embeds
8

Actions

Shares
Downloads
105
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. This presentation gives an overview of the BPMN 2.0 elements and how the standard can be used for business process modeling. Please run these slides in presentation mode. They contain several animations for a better understanding! BPMN 2.0 Introduction Business Process Modeling Notation from Version 2.0: Business Process Model and NotationATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 2. Agenda  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 3. BPMN Basic Elements Flow objects Connectors Artifacts Task Sequence Flow Data Object Event Message Flow Group Gateway Association Annotation/ Association Text Lane Lane Participant PoolATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 4. Important Terms Process Model Description of Process Prozess Instance Initiated Process Token ≠ Document (virtual) Object(s) routed on one or more path through the model Correlation Assignment of a process instance on base of a unique key (UUID)ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 5. A first Process Appetite Meal ready Appetite realized satisfied Meal Buying Food Eating Meal cooking Start Event Task Sequence- Interim Event End Event (Blank) flow (Blank) (Blank) Appetite Object Food Object realized Passive Verb buying Verb Event TaskATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 6. Agenda - Gateways  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 7. Exclusive (XOR-)Gateway Appetite Requested realized Recipe? Pasta Looking for Recipe X Pasta Pasta Cooking cooked Steak Steak Steak Roasting Roasted Salad Salad Salad Data based Preparing Prepared Exclusive Gateway (branching) XOR-Split X = A Gateway is no TaskATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 8. Exclusive (XOR-)Gateway Merging Appetite Requested Appetite realized Recipe? satisfied Looking Pasta for Recipe Preparing Salad X Cooking Pasta X Eating Meal 20 min Steak Roasting Steak 10 min Data based Annotation Exclusive Gateway (merging) XOR-Join Gateway-Joins are optional!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 9. Parallel Gateway AND-Split & AND-Join Appetite Requested Appetite realized Recipe? satisfied Pasta Looking for Recipe + X Cooking Pasta X + Eating Meal Steak Roasting Steak Salad Preparing Salad Parallel Gateway Parallel Gateway (synchronizing) (parallizing)ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 10. Understanding the Token 1/3 When does the token finishing? At this position the engine Appetite Requested does not wait for the Appetite realized Recipe? second token satisfied Pasta Looking for Recipe + X Cooking Pasta X Êating Meal 20 min 5 min 15 min 30 min Steak Roasting Steak 35 min 15 min Salad Preparing Salad 10 minATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 11. Understanding the Token 2/3 correct modelAppetite Requested Appetiterealized Recipe? satisfied Pasta Looking for Recipe + X Cooking Pasta X + Eating Meal 20 min 5 min 15 min Steak Roasting Steak 35 min 15 min Salad Preparing Salad 10 min ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 12. Understanding the Token 3/3 When does the token finishing? Task Started Task 1 finished + Task 1 Editing Task 1 10 min Task 2 finished 10 min Task 2 Editing Task 2 15 min 15 minATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 13. Data Based Inclusive Gateway OR-Split & OR-Join 1/4 We want: - Only one salad or - One salad and „something substantial“ like pasta or steak or - Only „something substantial“ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 14. Data Based Inclusive Gateway OR-Split & OR-Join 2/4 Appetite Requested Requested Appetite realized Variant Recipe? satisfied Looking Pasta for Recipe O X Cooking Pasta X O Eating Meal Something 20 min 5 min Substantial 15 min Steak Roasting Steak 15 min Salad Preparing Data based Salad Data based inclusive Gateway inclusive Gateway (parallelizing 10 min (synchronising) OR-Split = and - or - Situation one, several or all pathsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 15. Data Based Inclusive Gateway OR-Split & OR-Join 3/4 Appetite Requested Requested Appetite realized Variation Recipe? satisfied Looking Pasta for Recipe O X Cooking Pasta X O Eating Meal Something 20 min 5 min Substantial 15 min Steak Roasting Steak 35 min 15 min Salad Preparing Salad 10 minATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 16. Data Based Inclusive Gateway OR-Split & OR-Join 4/4 Appetite Requested Appetite realized Recipe? satisfied Pasta Looking for Recipe O Cooking Pasta O Eating Meal 20 min 5 min 15 min Eating at home Appetite Salad Not satisfied tastefull? Salad Preparing Salad X Eating external 10 min Two possible tokens and ends!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 17. Standard Flow What happens if you neither want to eat pasta nor steak? Deadlock – the token stops at a undefined position => „Other“-Tasks to model or: Appetite Requested Appetite realized Menue satisfied Pasta Looking for recipe X Cooking Pasta X Eating Meal Steak Roasting Steak Pizza Ordering PizzaATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 18. BPMN Rules & Etiquette  BPMN does not specify what happens if no ending path is being executed  There are no implicit sequence flows allowed => all sequence flows must be modeled  Use a standard flow if there is a danger of a dead lockATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 19. Complex Gateway 1/3 Exercise: We want to order pizza and are evaluating available menus and internet offers. As soon as one taks is finished we want to order!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 20. Complex Gateway 2/3 Reading Appetite menu Appetite realized satisfied + + Ordering Pizza Eating Meal Researching Internet Offer Reading Appetite menu Appetite realized satisfied + X Ordering Pizza Eating Meal Researching Internet Offer Reading Appetite menu Appetite realized satisfied + O Ordering Pizza Eating Meal Researching Internet OfferATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 21. Complex Gateway 3/3 Reading Appetite menu Appetite realized satisfied + I X Ordering Eating I Pizza Meal Researching Internet Offer If several tokens are arriving at a complex gateway, the gateway will wait for a predefined number of tokens before the merged token will be routed to next task. (the number of tokens will be specified by a comment assigned to the complex gateway)ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 22. Combination of Gateways Appetite Appetite realized satisfied Looking for recipe + Preparing Salad + Eating Meal X Chinese Meal X Ordering Chinese Meal Pizza Ordering PizzaATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 23. Return Jump with Gateways Appetite Appetite realized satisfied Looking for recipe + Preparing Salad + Eating Meal ok Reorder X X Pizza Ordering PizzaATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 24. Conditional Flow Appetite Cooking Appetite realized Pasta satisfied Pasta? Looking for Eating Meal Recipe Steak? Roasting Steak 1. Without Join-Gateway it is not possible to model a synchronization! 2. Reduced possibilities for condition checks 3. Conditional flows following the semantic of OR-SplitsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 25. Agenda - Lanes  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 26. Pools & Lanes Lanes Appetite Requested Dish Appetite flat-sharing community realized satisfied Arno Pasta Looking for recipe X Cooking Pasta X Eating Meal Nadja Steak Roasting Steak Pool Only Arno will eat pasta or steak!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 27. Pools & Lanes - Correct Appetite Requested Dish Appetite flat-sharing community realized satisfied Arno Pasta Looking for recipe X Cooking Pasta X Eating Meal Appetite satisfied Nadja Eating Steak Roasting Meal Steak Pool Both will eat pasta or steak – but Arno will decide!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 28. Pools & Lanes Variants Start Lane 1 detected Task 1 End detected Lane 2 Task 2 Pool 1 End detected Lane 3.1 Lane 3.2 Task 3 Lane 3 End detected Task 4ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 29. Agenda - Events  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 30. Events Catching Events eingetretene EreignisseATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 31. Interrupting / Resuming Catching Events Interrupting Throwing Events ResumingATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 32. Events & Correlation wrong End Start variant 1 detected detected Task 2 End detected + Task 1 Task 3 Start variant 2 detected End detected Task 4 Two start events are throwing two different process universal ids = two process instancesATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 33. Events & Correlation correct End detected Task 2 Start Event 2 End detected detected Task 1 ? Task 3 End detected Task 4ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 34. Event Sequences Start End Event 2 Event 3 detected detected Task 1 ? ? Task 2 Events must be proceed one after the other End Start ? detected detected Event 1 Task 1 + + Task 2 Event 2 ? AND-Join-Gateway waits for both EventsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 35. Interrupting Task Execution interrupting boundary intermediate event Start End detected detected Task 1 Task 2 ? End Event 1 detected Task 3 Task 1 will be interrupted, if event 1 appears. Attention: Only during execution of a task!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 36. Execution of a new Task/Token None interrupting boundary event Start Ende deteted deteted Task 1 Task 2 Ende Event 1 deteted Task 3 Task 1 will be continued if event 1 appears. Task 3 will be executed parallel to task 2 For each new appeared event 1 a separate UUID (Token) will be created.ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 37. Start Events Top Level Sub process Sub process non- interrupting interrupting Blank Receive Message Timer Escalation Condition Error Compensation Signal Multiple (one from many) Multiple / ParallelATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 38. Intermediate Catching Events Catch Occurred Attached Attached non interrupting interrupting Receive message Timer Escalation condition Link Error Cancel Compensation Signal Multiple Multiple / ParallelATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 39. Throwing Events Throw Intermediate End Blank Send Message Escalation Link Error Cancel Compensation Signal Multiple TerminateATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 40. Message Intermediate Events Appetite Appetite Pizza Ordered Pizza delivered realized satisfied Looking for Eating Pizza Pizza Appetite With the following process two pizzas would be ordered! Appetite realized Pizza ordered Pizza delivered satisfied Looking for Ordering Eating Pizza Pizza Pizza Messages will be sent to none pool members (BPMN rule) The recipient must be known! => Message events regard on messages, which the process receives from externals.ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 41. Timer Events  In Intervalls  Regularly at defined time  In time relation to a specific event  Once at defined timeATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 42. Specific Timer Events Monday – Friday Arrived at at 7:00 07:45 Office Leaving Eating Driving bed cornflakes underground Every two 10 min tea hours break Reading Reading documents Mails … 6 months before 1 day before vacations vacations Looking for Booking Packing hotel hotel suitcase … 14.6. 14:00 Uhr 14.6. 9:00 clock Sending Eating ice with Buying ice invitations colleagues …ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 43. Error-Events - only! termination Appetite Appetite realized satisfied Baking Setting Eating Pizza table Meal Pizza Pizza erhalten charred Ordering pizzaATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 44. Conditional-Events Pizza Frozen Pizza eaten requested Inserting Removing Éating Switching Pizza into Pizza Pizza on Oven Oven Oven 180° Waiting 20 min The condition of an occured event must be completely independent from the actual proces!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 45. Signal-Events Pizza-TV-Spot Pizza rated on seen pizzatest.de Inserting Removing Eating Buying Pizza into Pizza Pizza Pizza Oven hungry 20 min waited Messages have a recipient – Signals not! Anybody who receives a signal can decide whether he wants to act or not!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 46. Link-Events Start realized Task 1 A Ende realized Task 2 AATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 47. Compensations-Event - (Transactions) Friday Friday 1 pm Still Wish? 6 pm Organizing ja Carrying out Evening Reserving Tickets X X Activity nein End realized Cinema Canceling Requested Cinema Activity? X Friends Arrange meeting with Cancel Activity friends End realized Watching Canceling TV FriendsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 48. Effect of Compensation  The started task takes effect only inside the actual pool  Only if task of attached compensation was carried out  The link to the compensation task must be an association (pointed line)  Compensation task is a „specific task“ (see following slide)ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 49. Multiple Event Buying Eating Pizza Pizza Pizza-Spot Getting hungry Pizza rated seen Pizza-Spot seen Buying Pizza = Eating Pizza Pizza rated Getting hungry Sent Get recommendation recommendationATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 50. Multiple Event – Effect  Catching Event: there must be one event active (caught)  Throwing Event: all included events must be thrown not very useful but helpful for a better overviewATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 51. Cancel Event (only sub processes) Organize Journey Arranging Booking Booking Request Visit Flight Hotel Vacations Journey Request Booked Denied Hotel Booked out Booking Journey other Hotel Canceled Canceling Canceling Canceling Visit Flight Hotel All Hotels booked out Cancel Organizing JourneyATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 52. Event Based Gateway Appetite Appetite realized Pizza received satisfied Ordering Eating Pizza Pizza 60 min Calling Pizzaria again Pizza received XOR-Semantic One of the following events will be carried out, the other will be destroyed!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 53. Agenda – Specific Tasks  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 54. Additional Tasks – Types 1/3 General Send Service Receive Manual Script User Rule Reference – Call not allowed anymoreATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 55. Specific Tasks – Types 2/3 General Service Automatically proceed by the engine / use of a Web Service Manual by a user – explicite not by support of a software system User caused by the process engine – edited and completed by a userATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 56. Specific Tasks – Types 3/3 Send technical – for asynchrony communication Receive technical – for asynchrony communication Script software code proceed by engine Rule routing by business rules Call references a global task It is possible to define company specific tasks!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 57. Specific Tasks – Annotations 1/3 Loops Appetite 1 am satisfied Suggesting Cooking Meal Meal … Until all agree Agree all? Appetite 1 am satisfied Suggesting yes X Meal X … no 1 am Appetite Agree all? satisfied Suggesting yes Meal X … noATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 58. Specific Task – Annotation 2/3 Multiple Task Appetite 1 am satisfied Looking for Cooking Meal Meal … All interested With a multiple task it is possible to parallize tasks dynamically. This task will initialized multiple and proceed sequential or parallel!ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 59. Specific Tasks - Annotation 3/3 Compensation Appetite 1 am satisfied Inviting for Preparing Meeting Meeting … Canceling Meeting (to anybody)ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 60. Agenda – Sub Processes  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 61. Sub Processes Appetite 1 am satisfied Task Sub Process + … Sub Process Appetite satisfied Task 2 Task 3 There are embedded, reusable and referenced sub processes. BPMN 2.0 only knows embedded sub processes. They are embedded in a pool or lane and have a blank start event.ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 62. Sub Process – Attached Events Appetite 1 am satisfied Looking for Cooking Recipe Meal + … Oven demaged Eating external • Cancel at message, time and conditional events, if sub process has to react on external activity! • At errors, cancelations and escalations messages will be transferred to the main process. • It is possible to use multiple intermediate events.ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 63. Sub Process - Annotation Semantic identical to Sub Process Sub Process Sub Process annotations of tasks. + + + The annotation „Adhoc“ => ~ is only at sub processes allowed Journey planning Turning off Updating 1 am Semantic: All, Radiator Voice Mail any or only one … is possible. The decision is Watering Paking taken by the Plants Suitcase user. ~ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 64. Event - Sub Processes Preparing Meal Looking for Cooking Eating Inviting Recipe Meal Meal Friends Inviting Additional Guest Taking into Account another Guest Friend invites someone Getting Meal External Ordering Meal Oven demagedATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 65. Event - Sub Processes Collapsed Preparing Meal Looking for Cooking Eating Recipe Meal Meal Inviting Friend Inviting Getting Meal Additional Guest External + +ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 66. Agenda - Pools  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 67. Pools Message Flows - ALLOWEDATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 68. Pools Message Flows – NOT ALLOWED X - Events with message flows, which are not the type message. - Or generally spoken: Gateways with Message FlowsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 69. Pool Example Pizzaria Cook Baking Pizza La Mama Pizzaria Order Receipted Pizza invoiced Carrier Delivering Cashing Pizza Pizza Appetite Appetite realized satisfied Pizza Ordering received Eating Customer Pizza Pizza Chris Hill 60 min Asking at Pizzaria again Pizza receivedATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 70. Pool Example Pizzaria Cook Baking Pizza La Mama Pizzaria Order Receipted Pizza invoiced Carrier Delivering Cashing Pizza Pizza Appetite Appetite realized satisfied Pizza Ordering Paying received Eating Customer Pizza Pizza Pizza Chris Hill 60 min Asking at Pizzaria again Pizza receivedATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 71. Pool Collapsed Pizza Selling La Mama Appetite Appetite realized satisfied Pizza Ordering Paying received Eating Customer Pizza Pizza Pizza Chris Hill 60 min Asking at Pizzaria again Pizza receivedATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 72. Pools Collapsed Pizza Selling La Mama Order Asking Again Delivering Paying Cashing Pizza OrderingATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 73. Multiple Instances Pools Customer Received finished Order Getting Selecting Pizza Ordering Offer Offer fakturiert Product SupplierATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 74. Agenda - Artifacts  Basic Terms  Gateways  Lanes  Events  Additional Tasks  Sub Processes  Pools  ArtifactsATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 75. Artifacts and Associations Data 1 Status A Data 1 Status B Data 2 Ordering Task 1 Task 2 Product Input Status A Output • Additional symbols available Liste • Combination possible Datenablage • Own symbols allowedATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 76. END BPMN Poster: http://www.bpmb.de/images/BPMN2_0_Poster_EN.pdfATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 77. Contact: Bjoern.Reinhold@de.GBS.com PAVONE Ltd, UK School House, Hackforth BEDALE, N. Yorks. DL8 1PE United Kingdom Phone: +44 (0) 1748 811527 E-Mail: info@pavone.com PAVONE AG Technologiepark 9 33100 Paderborn Phone: +49 52 51 / 31 02-0 Fax: +49 52 51 / 31 02-99 E-Mail: info@pavone.de PAVONE AG in Böblingen Herrenberger Str. 122 For more information please visit our 71034 Böblingen homepage http://www.pavone.com Phone: +49 7031 / 4997 10 Fax: +49 70 31 / 4997 97 E-Mail: info@pavone.deATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 78. Catching Events Throwing Events X I X I~ATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA
  • 79. Ein Prozess Fluss-Objekte Verbindende Objekte Artefakte Text Teilnehme r Lan e Pool Lan eATLANTA ▪ BOSTON ▪ COPENHAGEN ▪ DRESDEN ▪ FRANKFURT ▪ KARLSRUHE ▪ LONDON ▪ LÜBECK ▪ MANCHESTER ▪ NEW YORK ▪ PADERBORN ▪ TORONTO ▪ VARNA