Modelling Events

From Training Material
Jump to navigation Jump to search

Start and End Events

Explicit vs Implicit start and end events

<signavio>40975a00461d4035bdc5a2ab91a4c6a6:b4a5cae8627ef14a5d32bb137f9c47960b8721f3371f56f4a6515fe8964c_b40b9a779a3259889c2be4860da85f8bc4ebd81ad3c10ff0d99e09561e619_adaa464e20a26b9330484d37882bf4b42efe8ce795785bf7869d2ad50bca2</signavio>

Start Event and Pools

<signavio>b8b5725552f044ff86743b5052682ff1:71ca5a3ae26ef2889cbd4e3d85b81d0dba6b935fa9917bb7e7ac5489ed7_dbd55bcb7bb98fc5b3c17cee9dd29b48ae70b1f463d0fd1f4aea5e5343fef5d_c7b99621d12f56efde4fcb5385d96bf49b14da52eb3dc7c9867ec23a20a25a</signavio>

Process Trigger

Single Event

<signavio>c136a95b222248e895b512bf016bde08:156e717abfc89b13768796a3f0befa838aa7a04081a67981e8311881eb1ebda_394bd620fdd78111f7abd927c0b2a7b02122d0b43f46b8ae1ee352ba9fdf9e_903fb67ae6acc070f4e6a6695e12f1779a9f7be061d41d884538c66f6bb7d1c1</signavio>

Multiple Start Events

<signavio>06d3fee93c2442f8b1524350edda4868:3ce023c154b4257cb6542429dcad104b2fb2b23a525fa068ce12a7cc97dac28_5cf5b8536854dc8a745a50d4725773ec55b57184c81aeee9b2476bf1cf8f5b_e813804c893ae4f9836e29a43ec34ca9ab73ce9bb31e87cdaee3fd8b9ba798ae</signavio>


Timer Start Event

<signavio>5931cd03532e45c19bf73bab6afd6147:da25acb4bce5567b774ed9d17f78060c6a0c4aeb5b368805720be4f8ea8d9a_264bf2dac3b2aab7f3fbf44ba73eebf92428e34b02169d9b0f934066f1a8e_b276ac31a8432ff6b7391e094bfaf4731a1b19156ec1242d342e1eda1f185</signavio>

Multiple End Events

<signavio>0b5d415ac3f24a8e932426063c0b9591:a4fc8a3d2b7bedbe837107a9df0657435ca4952016e213fff27bc27381ddab_97d8a22d2740189ab19145d515714b75564b6b5c2eda09dc97181efdf3edf4e_442e9f42fa84dfb9f58f9d76f1aa812dc01589b5172c58621026b3907d78b564</signavio>

Terminate Event

<signavio>ec4b12995ec54eb8aa1a9aca0cd0032d:78cbb178697254386352ea2a9318a468d688e35d6f40fb52aa2f749fa0f32b27_1ad4a3c9a705c2f74a3d299138323264d4af3637acb1d15b947afb3ef1da_8eb416bd7e7cf5917a2090ee1539c8a7854bbf9939f7f9b49776acc3b47242f3</signavio>

Alternatives to Terminate Event

  • Terminate event can leave data in an inconsistent state
  • It should be avoided if possible
  • Below an alternative to the scenario above

<signavio>fe7c8953c25c473789337a36bc3846c4:7658f92c9b233787896a7fd8acdef1e3f043909f80da94dd8fbfe79d110e61c_f9e8fa63c56451808e39e188d8f1b327d15ccd856fb3d8817b8cd6dce5e6ad_ebaf4ceaa73207b0e497c7a5b219215fb39e8d3318fafad7985be8929cb943</signavio>

Intermediate Events

Timer Event

<signavio>172d0486cb8740108eed922bf30a484c:9d2ca4bfd3157845c921c1b86d7897062d7bcf4f8ecab39426667675d2175b8_67661b5576ee49e7cf1e3e2f38162a9f59398326708f2a374d4abef9c2be1a_9618b6417d62f8c148fd3af063ef679942bddc8b7c8e9eeb3370a76972263b9e</signavio>

Messages

<signavio>1797e8acf3b347c6b88c3108a3f037cf:37fc6dc7a55271e8f951b9dd76cf386da8ebdc94915edcca4c7f57ee2bd51dbd_c1277138bf8f163e7dc932b45f5be3f23efa8ae87bb493f25769b15c4537dd9_177bf9e3678c2a2ea5a1c27ed3c3a90761da5a5e8a3c188be976692f6b4671</signavio>


Message and Service Task

<signavio>73999fc96fb845538b4e1f0756382cd9:6b809b69d2d8a3f984a7fa343295fd0a54ce462ea5e4b41a07eea74877e7_aff952fb45b3fcd254638eb3d7c2626c3039d896b98c51d9974c296aa9453c_388457b376f78dc9da4e30362d9ec6bdd8b5635ee7cb90b68fac266d291b225</signavio>

Messages Quiz

<signavio>0e3d3b6baeab4e0bacc16d9e2b2dd94d:f13be492cceb8d82f5d81aa132205017e25bb017b9141769e0e68c28128af_9066c9fa97df196eae6689a0c5362d86dd764fd929feaf10c125c06fab768f97_8acaa6febdb5d47baa0cc892636287af71d81577cae17e6dd539fa873b41de</signavio>



Exercise

Rewrite the scenario above using 4 intermediate messages

<signavio>27d9518e0cb94a2db25f97ae6e4c4ce0:473c3beedabcc54b522af13a2e5931c8b396b77ad7e12e84833ae32bf4db26a_629b3e5250df94c6e8b64c22c6b1d56f1a913cd19fe97552e94c014c3391e5_1655eba36a51259462d7b25805fb4ec593ad53d9886187fbefc444bc7f8</signavio>

  1. Target must have:
    • outgoing sequence flows
    • no incoming sequence flows
  2. Target and Source Link Events should have the same name
  3. There should be only one Source corresponding to one target of the same name
  4. Can be used between lanes, but cannot be used between different pools




Boundary Events

Timers

<signavio>237a9b8ff4434bedabace9c6efc7ccf7:ffb2f82d6a1b52bb4fc9643adb7da317f173ea4c17aa758b2e1b3e2974195ecd_ba3572de543aeb413a66a2ef2c82de5b8796fc6644787957bbec9c117ba1f5fe_6038c785ac4ddae6d48c97c3a91fac3031526ed14b4b497071ed8563f21c</signavio>

Messages

<signavio>630fcf907fb04f548eb832175383bc05:502ce25e46841ab658ae3fa5f49780c8b4d993299486cb6bf68c46ba1cd1c5a_78a0d59f40fd88eec7b672ff159ea61c17b9a64a1aa8240d1b3d60179e97_b1ee793f3c6abf7a4e4973f6d663fb162213a5a3dcbaea4f4a27feb2a2529</signavio>

Exercise

  1. Model a sub-process "Write a Report". When employee cannot finish a report in 2 days, you terminate the sub-process and notify the manager
  2. If the message from the client arrives "report not needed", the sub-process should finish without notifying the manager

Non-Interrupting Boundary Events

<signavio>bacf53d018114752b474f3d7884b6164:48337417a2f1fb8bde1567677cbb0897e5f79d550389a38ab985c7da1da58a3_65ef15e0bd6e142979e7e37f48ce1c23c836b80d3f461baaf5fac5aa81ea674_3ce62c105c1c17d8b3b8e7ce84bb54d44c29f241da02472ebfab90f1f781</signavio>

Execise

  1. Modell a process "Bake Pizza", if the preparation goes more than 30 min, notify customer wihtout interrupting the sub-process
  2. If the customer (after being notified after 30min) notify the pizza company that they do not want the pizza anylonger, the pizza preparation sub-process should terminate.

Sub-process and Start Event

<signavio>be8e526e4d8d49b595a590e67d71fd24:622ab4762726e166bb8481e364a60423b7ea554d4b64ffb4ad6f34cadff5752_c2a3ee298ca765c1247238229fe8f47a665b6ca33678833b31e3226bbd7dac1_37f7fd52d6b72c90e0f054bd8fb18866b8993fcd20ff77f5e871dfab72a1d7</signavio>


Exercises 1

  • Map the Ordering Pizza in a restaurant processes.
  • Use names: Customer, Waiter, Chef, pizza order, pizza, money, receipt
  • Use lanes only (one pool)