<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://training-course-material.com/index.php?action=history&amp;feed=atom&amp;title=Workflow_Patterns</id>
	<title>Workflow Patterns - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://training-course-material.com/index.php?action=history&amp;feed=atom&amp;title=Workflow_Patterns"/>
	<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=Workflow_Patterns&amp;action=history"/>
	<updated>2026-04-14T23:41:16Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://training-course-material.com/index.php?title=Workflow_Patterns&amp;diff=22997&amp;oldid=prev</id>
		<title>Bernard Szlachta: Undo revision 22996 by 190.108.67.90 (talk)</title>
		<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=Workflow_Patterns&amp;diff=22997&amp;oldid=prev"/>
		<updated>2014-10-14T16:05:29Z</updated>

		<summary type="html">&lt;p&gt;Undo revision 22996 by &lt;a href=&quot;/training/Special:Contributions/190.108.67.90&quot; class=&quot;new&quot; title=&quot;Special:Contributions/190.108.67.90 (page does not exist)&quot;&gt;190.108.67.90&lt;/a&gt; (&lt;a href=&quot;/index.php?title=User_talk:190.108.67.90&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;User talk:190.108.67.90 (page does not exist)&quot;&gt;talk&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Cat|OCEB B200.3 - BPMN}}&lt;br /&gt;
{{Cat|OCEB T200.3 - Workflow Patterns}}&lt;br /&gt;
{{Cat|BPMN}}&lt;br /&gt;
{{Cat|NobleProg BPMN Certification Level 1|01.1}}&lt;br /&gt;
{{OCEB Links}}&lt;br /&gt;
&lt;br /&gt;
Source: http://www.workflowpatterns.com/documentation/documents/BPM-06-22.pdf&lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;slideshow style=&amp;quot;nobleprog&amp;quot;  headingmark=&amp;quot;。&amp;quot; incmark=&amp;quot;…&amp;quot; scaled=&amp;quot;false&amp;quot; font=&amp;quot;Trebuchet MS&amp;quot; &amp;gt;&lt;br /&gt;
;Title: Workflow Patterns&lt;br /&gt;
;Author: Bernard Szlachta (NobleProg Ltd)&lt;br /&gt;
&amp;lt;/slideshow&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Workflow (Control Flow) Patterns 。==&lt;br /&gt;
# Basic Control-Flow Patterns&lt;br /&gt;
# Advanced branch and join patterns&lt;br /&gt;
# Structural Patters&lt;br /&gt;
# Multiple instances patterns&lt;br /&gt;
# State-based patterns&lt;br /&gt;
# Cancellation patterns&lt;br /&gt;
&lt;br /&gt;
== Workflow (Control Flow) Patterns  。==&lt;br /&gt;
# Basic Control-Flow Patterns&lt;br /&gt;
#* Sequence&lt;br /&gt;
#* Parallel Split&lt;br /&gt;
#* Synchronization&lt;br /&gt;
#* Exclusive Choice&lt;br /&gt;
#* Simple Merge&lt;br /&gt;
# Advanced branch and join patterns&lt;br /&gt;
#* Multi-Choice&lt;br /&gt;
#* Structured Synchronizing Merge&lt;br /&gt;
#* Multi-Merge&lt;br /&gt;
#* Structured Discriminator)&lt;br /&gt;
# Structural Patters&lt;br /&gt;
#* Arbitrary Cycles&lt;br /&gt;
#* Implicit Termination&lt;br /&gt;
# Multiple instances patterns&lt;br /&gt;
#* Multiple Instances without Synchronization&lt;br /&gt;
#* Multiple Instances with a priori Design-Time Knowledge&lt;br /&gt;
#* Multiple Instances with a priori Run-Time Knowledge&lt;br /&gt;
#* Multiple instances without a priori run-time knowledge&lt;br /&gt;
# State-based patterns&lt;br /&gt;
#* Deferred Choice&lt;br /&gt;
#* Interleaved Parallel Routing&lt;br /&gt;
#* Milestone&lt;br /&gt;
# Cancellation patterns&lt;br /&gt;
#* Cancel Activity&lt;br /&gt;
#* Cancel Case&lt;br /&gt;
&lt;br /&gt;
== New Control-Flow Patterns ==&lt;br /&gt;
# Structured Loop&lt;br /&gt;
# Recursion&lt;br /&gt;
# Transient Trigger&lt;br /&gt;
# Persistent Trigger&lt;br /&gt;
# Cancel Region&lt;br /&gt;
# Cancel Multiple Instance Activity&lt;br /&gt;
# Complete Multiple Instance Activity&lt;br /&gt;
# Blocking Discriminator&lt;br /&gt;
# Cancelling Discriminator&lt;br /&gt;
# Structured Partial Join&lt;br /&gt;
# Blocking Partial Join&lt;br /&gt;
# Cancelling Partial Join&lt;br /&gt;
# Generalized AND-Join&lt;br /&gt;
# Static Partial Join for Multiple Instances&lt;br /&gt;
# Cancelling Partial Join for Multiple Instances&lt;br /&gt;
# Dynamic Partial Join for Multiple Instances&lt;br /&gt;
# Acyclic Synchronizing Merge&lt;br /&gt;
# General Synchronizing Merge&lt;br /&gt;
# Critical Section&lt;br /&gt;
# Interleaved Routing&lt;br /&gt;
# Thread Merge&lt;br /&gt;
# Thread Split&lt;br /&gt;
# Explicit Termination&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Sequence ==&lt;br /&gt;
AKA: Sequential routing, serial routing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;3f1b76ee0ddd4d06b4b91c3ac229014b:4b4d70dc8e3093b3e719c9bbe17b64fd48816e9eed0346ee3297864bd219_88cf83abf4f57afc0a1fc9c34b61eb2ec33116ea77d263bf272e5ce1c5a77c_59ade4a79f0189798829b30a033c95d8d37a1b8fcc9eebc5916fa061c9e7dc&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Parallel Split ==&lt;br /&gt;
AKA: AND-split, parallel routing, parallel split, fork&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;826caed3ca4c48b19716aad785122f79:a9a5e41e3985beaaee73319de5971e4dac0d5b9a1c9ae7bf66d41545de7ac_db7884c196b11cb29f2cc9788989cf3ba1d3a85fda1f26b8608e814a96bfab_cfe11415e43cf77ddc73884725475749417c4cfbfd64d65945561b88532621cf&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Synchronization ==&lt;br /&gt;
AKA: AND-join, rendezvous, synchronizer&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;d235a661b41944199ce03361045128e6:2c7f9efc698c39599a0923a1f57a1eb9411b3a1bc8871576139d4facdaf6_a9f3e71c9d5e1363459df55c72c92243e72bff239ac3e1eb34ff2c51f8274_1bb0baaca22a8ae02989d8c18cb39811ecc67ac4108b9d92eb2a6d4dc7f2a9&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Exclusive Choice ==&lt;br /&gt;
AKA:  XOR-split, exclusive OR-split, conditional routing, switch, decision, case statement&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;2ed20e9dc575496d96a9e1a4cb00ef32:91f684cd5249bb6b9c3f518ae3e384645a8437c17a5a2fd88d4dfc20d7ddbf_8aa55394371c8a2cc95ba7520c3fdd65bf2960f5873bad8677bbb47d82f2_a953328d20dfb9bee813b190e78d2fb5f7ee8cc15d081a996728e6f2bdf1c&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Simple Merge ==&lt;br /&gt;
AKA: XOR-join, exclusive OR-join, asynchronous join, merge. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;18f38db40b6a4d088e56da625b1ae011:b1deb433d216ae5e668bc8f824b799e9a2a8e8fd1317c0b4ee80fd74ff275779_31a7e311618567116182ab59b737b42ef12ab61fd43371de8993369ce3fd6_1e955e85a12ecb684edc0d757cf18262f6ee77e73123ef8ae0cf9dbec4f1c2&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Multi-Choice ==&lt;br /&gt;
AKA: Conditional routing, selection, OR-split, multiple choice.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;7a8b790716ba45a6aa75fba18ca9f2f1:94657cf70118edf9a60ef1a38466e67d191f215c75d3bdd4e1bd2b965979fb_1b8db710288535b56e4124609324adb1a29bf0d015f18a8f8f3c74e19abe2_5210c76331c6934295290ac68ad9bc0c85f74b1fa6df35f818fc014a63&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Structured Synchronizing Merge ==&lt;br /&gt;
AKA: Synchronizing join, synchronizer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;a0142046038848b4ad9d42730d6e3e3b:8b11146f05414fbc885aa1fabd3f16b19d4a8962b969c658eee5f3d8e13_abdd3a92f9f6ee8cc94974f119e34ccc8dcb272220967021a3601dfcffb8848c_42d4eb32efc231e9156ed964e596aaca68bf8c818d2952e8176d210aa1c59a&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Multi-Merge ==&lt;br /&gt;
AKA: None&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;fde2a6f3b4914751a9bbcd0927feb6fc:3f1db707d83de8af517dd2944be1a2468933cb55bccfe32f81d1a1788e1161b_fb5957114eba854d67a5c768ac503813324333376467cc39cd67b4d04f98217_4dd6dbd4651514dab3846372e9b4bd9e341c1d8bbcb956392c3ec925f3385f&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Structured Discriminator ==&lt;br /&gt;
AKA: 1-out-of-M join.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;5c463c51173d415c88a8fbbd9ba1b9e5:cdbcaa9b10a62879f4f6e5f19e7472a3077ae712b69d6165d5776139ba4f_7cd6ede885f41f504bbc063ff389a52ba02c88f4d97160396319b4a07ce7b_c1512c8f36f84b1409dee17e0d462733425833d15998e3d4af2f60f327a54&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: WCP-10 Arbitrary Cycles ==&lt;br /&gt;
AKA: Unstructured loop, iteration, cycle.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;a0d63efb30a6444ea1eb913e42dae720:229a56a34f1ee6c2d6add75b4c72463a701a5b594e1cbb8a6b6f8540b862259e_3e316507b4defc1a76240a179b286d5c41951cf64a87b7146f2bc220d9c980_8382d1a7b3fd3cde88188ea37dff39b3d2652b2b8769a53e08d78a8fb676246&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
= Structural Patterns =&lt;br /&gt;
== Basic Patterns: Implicit Termination ==&lt;br /&gt;
AKA: None.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;5a5c077696af43c6b9bfd16f77c40719:89b6f2d8e5c0e1447991f8e6dbbfc14a87167d418dcececc959cea2ec2421a6_4167212aaabdd3292218115ddecbf3835b903fa5747d15820cb7afbcfe_c83d1a2f7856d50bdaef9ef5cd1811816f96926d1dadc786aa26dad5f8ea91&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Multiple Instances without Synchronization ==&lt;br /&gt;
AKA: Multi threading without synchronization, spawn off facility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;765b730dbe8c4d48b01a013182400a9d:de5b915426de5c78f96b7ceb9e5d85c37c162c7959df9d5890bc6c593cea6a_9ee8a2a68fcea13117749c8b2cb1b241cad0d5518212dae07e4dcc89c353c4d_c8e0c953537440309851c2e794eb3d69639988e88f5311fddf4435f8e6d04d&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Multiple Instances with a priori Design-Time Knowledge ==&lt;br /&gt;
AKA: None.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;73d8cdb2fd1247b495634119a780cbf0:e8ecb5d462e6d5945a086ca6ae9f104eb15c2c88a5c510bd9da57ea6de41_88c73ed23bfe6d44b216ec445ebc396194473d879957c486f29dcc214527f2a7_20d6f9442ef611febd2e82ec2c190bc9a9143b7835a53d901a77c4beed51e5&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Multiple Instances with a priori Run-Time Knowledge ==&lt;br /&gt;
AKA: None.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;c1cf50a829a146d68b98d45ff51ddfd2:aec975b7a5f6d86970e5b974e333d0e74b2a5bb9ca56cd2a758e48d55269e_85c3626e13bd60c0f78c7a5ebb5edb4623a677891b65c7c24d2b3ad646751be8_aaadcadd215a02a6f58d8f466f579cc5e77359651a2188b22d533d41c94e&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Multiple instances without a priori run-time knowledge ==&lt;br /&gt;
AKA: None.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;517e66ee9ce14ea78a3a8a6d1c1b96b7:52512bbdf3f96ee3be30c24260732b6b8711746cd16942680682f44c171c578_34cc7feccd6090f1dcee47fcb4a18ff87a962459c4d8f99dd9253ca9462718d_6195314f72e7aedf8f4a2391cec90109f22dd797596eb67bb96de65ebe4b7c&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Deferred Choice ==&lt;br /&gt;
AKA: External choice, implicit choice, deferred XOR-split.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;b87dd72ab64b4f5a8e22b033aacd71d5:11f86f7059baba6618d750df7ec39d4a35e67aafdad87cc7f1cbbc7056ca8fd_16e8b764fd24ff950e57d4aab197a7c3c18e71574bba09a685f2af3ec6fe83b_7eeaf98f62a8e56d4cbd1b887861446ccb860d5f6ace6905bbc338da713d872&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns:  Interleaved Parallel Routing ==&lt;br /&gt;
AKA: None.&lt;br /&gt;
&lt;br /&gt;
* A set of activities has a partial ordering defining the requirements with&lt;br /&gt;
respect to the order in which they must be executed&lt;br /&gt;
* Each activity in the set must be executed once and they can be completed in any order that accords with the partial order&lt;br /&gt;
* However, as an additional requirement, no two activities can be executed at&lt;br /&gt;
the same time (i.e. no two activities can be active for the same process instance at&lt;br /&gt;
the same time)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;640d16597c1843e4b0a5863dfe0357e5:911b8b7bc7add882bb9599bb7232d0a752a0bc7ef53643546c3f538c8c22963b_60dc35f41bcb4981d4ebb4f3cc5dcb96421b762a9547448e612fb15ba251f2_bcae83fe714045b11f75febd65c0d636ac5731e2fb4bc96b8af6c161bfc36b4&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Milestone ==&lt;br /&gt;
AKA: Test arc, deadline, state condition, withdraw message.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;4bd856d3ee0b45b0868459a0dfa4ed6b:969d4c4167c6ea37412b2a19224b6c2aa26f86f56a863138db4c9e264e2e084_3f55cfb7ddddb619ab845b58994115d3af132dd6ecbdd2f4a45a37c7766689e_6e6ade63a2e58d81418ee0f1a4f3aab0e99fea8c53e8c4485b321f9fa0ff86&amp;lt;/signavio&amp;gt;&lt;br /&gt;
{{PB}}&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Cancel Activity ==&lt;br /&gt;
AKA: Withdraw activity.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;4af2d9d32195467f884127acdaf7b30f:4dce4f1d6a58a4d245cc6fe1b68e48626a65f64acf5a63f5eb4a7d67d898d810_6173b767984d9a8e34b415bab4c3edc4dd42e9edf8338b71e9524e9886ee5c5_123ebf013d78f3b5739bae28ee21ebd7868df7bacfdf2ae42637018b2ee5f42&amp;lt;/signavio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Basic Patterns: Cancel Case ==&lt;br /&gt;
AKA: Withdraw case.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;signavio&amp;gt;3caa9237865e4c96ae524baa8ca8ea78:614c76c7ef8822d0e8de24a9c7b3f67622477158181ca1ce86b7f4b765967_56285dacc898362aace757e1b399248590f02db79069ff227e2aed9a736b698f_aaaf8b73953ffa75bc484bb4236633421bfb93f66865f1b71731b5a9ff4554&amp;lt;/signavio&amp;gt;&lt;/div&gt;</summary>
		<author><name>Bernard Szlachta</name></author>
	</entry>
</feed>