<?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=PL_-_BPMN_2.0</id>
	<title>PL - BPMN 2.0 - 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=PL_-_BPMN_2.0"/>
	<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=PL_-_BPMN_2.0&amp;action=history"/>
	<updated>2026-04-12T21:23:33Z</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=PL_-_BPMN_2.0&amp;diff=24120&amp;oldid=prev</id>
		<title>Cesar Chew at 19:03, 25 November 2014</title>
		<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=PL_-_BPMN_2.0&amp;diff=24120&amp;oldid=prev"/>
		<updated>2014-11-25T19:03:31Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:PL]] &lt;br /&gt;
[[Category:BPMN|Z01]]&lt;br /&gt;
&lt;br /&gt;
==Parallel Event-Based Gateway⌘==&lt;br /&gt;
&lt;br /&gt;
[[File:ParallelEventBasedGateway.png]]&lt;br /&gt;
*Równoległa bramka sterowana zdarzeniami&lt;br /&gt;
*Muszą wystąpić wszystkie zdarzenia, żeby proces mógł się rozpocząć&lt;br /&gt;
&lt;br /&gt;
[[File:ParallelEventBasedGatewayExample.png]]&lt;br /&gt;
==Complex Gateway⌘==&lt;br /&gt;
&lt;br /&gt;
[[File:ComplexGateway.png]]&lt;br /&gt;
*Bramka złożona służy do modelowania rozdzielania lub złączenia przepływów nieobsługiwanych przez inne bramki&lt;br /&gt;
*Jej obecność na diagramie może świadczyć o niskiej jakości modelowania :)&lt;br /&gt;
&lt;br /&gt;
[[File:ComplexGatewayExample.png|400px]]&lt;br /&gt;
==Link Events⌘==&lt;br /&gt;
[[File:LinkEvents.png]]&lt;br /&gt;
&lt;br /&gt;
* Link jest graficznym uproszczeniem przekazującym przepływ z jednego punktu diagramu na inny&lt;br /&gt;
* Może być stosowany tylko do przepływów sekwencyjnych&lt;br /&gt;
* Nie może przenosić do innego basenu lub z procesu do podprocesu&lt;br /&gt;
&lt;br /&gt;
[[File:LinkEventsExample.png]]&lt;br /&gt;
&lt;br /&gt;
==Error Events⌘==&lt;br /&gt;
&lt;br /&gt;
[[File:ErrorEvents.png]]&lt;br /&gt;
* Błąd jest generowany, gdy wystąpi krytyczny problem w czasie wykonywania aktywności lub gdy wykonanie operacji nie powiodło się.&lt;br /&gt;
*Zdarzenie &amp;#039;&amp;#039;&amp;#039;Error&amp;#039;&amp;#039;&amp;#039; przechwytuje lub wyrzuca błąd&lt;br /&gt;
*Występuję tylko w postaci:&lt;br /&gt;
**Start &amp;#039;&amp;#039;&amp;#039;Event Sub-Process&amp;#039;&amp;#039;&amp;#039; Interrupting&lt;br /&gt;
**Intermediate &amp;#039;&amp;#039;&amp;#039;Boundary&amp;#039;&amp;#039;&amp;#039; Interrupting&lt;br /&gt;
**End&lt;br /&gt;
*Nie można oczekiwać lub wyrzucać błędu w zdarzeniu Intermediate (chyba, że to zdarzenie Boundary)&lt;br /&gt;
*Nie można rozpoczynać procesu od błędu (chyba, że to Event Sub-Process)&lt;br /&gt;
===Error Events Example 1⌘===&lt;br /&gt;
&lt;br /&gt;
[[File:BasicExceptionHandling.png]]&lt;br /&gt;
[[File:Ex02_BasicExceptionHandlingMerge.png]]&lt;br /&gt;
===Error Events Example 2⌘===&lt;br /&gt;
&lt;br /&gt;
[[File:Ex03_ExceptionHandling.png]]&lt;br /&gt;
===Error Events Example 3⌘===&lt;br /&gt;
[[File:Ex04_ExceptionHandling.png]]&lt;br /&gt;
===Error Event Zadania ⌘===&lt;br /&gt;
* Zadanie 1. Logowanie&lt;br /&gt;
* Zadanie 2. Kredyt&lt;br /&gt;
&lt;br /&gt;
==Escalation Events⌘==&lt;br /&gt;
&lt;br /&gt;
[[File:EscalationEvents.png]]&lt;br /&gt;
*Eskalacja oznacza &amp;quot;wyjątek, którego obsługa nie musi przerywać czynności&amp;quot;&lt;br /&gt;
*Domyślnie nie przerywa czynności, do której krawędzi jest podpięta&lt;br /&gt;
&lt;br /&gt;
===Escalation Example⌘===&lt;br /&gt;
[[File:Escalation.png]]&lt;br /&gt;
&lt;br /&gt;
===Escalation Example 2⌘===&lt;br /&gt;
[[File:Escalation2ndVersion.png]]&lt;br /&gt;
&lt;br /&gt;
===Escalation Zadania⌘===&lt;br /&gt;
* Zadanie 1. Produkt&lt;br /&gt;
&lt;br /&gt;
==Compensation⌘==&lt;br /&gt;
[[File:Compensation.png]]&lt;br /&gt;
* Kompensacja to mechanizm mający na celu niwelowanie skutków już wykonanych czynności&lt;br /&gt;
* Pośrednie krawędziowe zdarzenie kompensacji nie posiada wyjściowych przepływów sekwencyjnych&lt;br /&gt;
* Zdarzenie kompensacji może zostać uruchomione po zakończeniu czynności&lt;br /&gt;
* Kompensacja to nie obsługa wyjątku&lt;br /&gt;
===Compensation Example⌘===&lt;br /&gt;
[[File:CompensationExample.png]]&lt;br /&gt;
===Compensation Zadanie⌘===&lt;br /&gt;
* Zadanie 1. Szkolenie&lt;br /&gt;
* Zadanie 2. Szkolenie (wersja 2)&lt;br /&gt;
&lt;br /&gt;
==Transaction⌘==&lt;br /&gt;
[[File:Transaction.png]]&lt;br /&gt;
* Transakcja to grupa czynności, które mogą zostać wykonane &amp;#039;&amp;#039;&amp;#039;w całości&amp;#039;&amp;#039;&amp;#039; lub &amp;#039;&amp;#039;&amp;#039;wcale&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* Nie może mieć miejsca sytuacja, że niektóre czynności zakończyły się sukcesem, a inne nie.&lt;br /&gt;
* Transakcje są często opisywane modelem ACID:&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Atomic&amp;#039;&amp;#039;&amp;#039; (Atomowe) - transakcja albo wykona się w całości, albo w ogóle&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Consistent&amp;#039;&amp;#039;&amp;#039; (Spójne) - po wykonaniu transakcji system będzie spójny - nie zostaną naruszone żadne zasady integralności&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Isolatated&amp;#039;&amp;#039;&amp;#039; (Izolowane) -  jeżeli dwie transakcje wykonują się współbieżnie, to zazwyczaj nie widzą zmian przez siebie wprowadzanych&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Durable&amp;#039;&amp;#039;&amp;#039; (Trwałe) - system potrafi uruchomić się i udostępnić spójne, nienaruszone i aktualne dane zapisane w ramach zatwierdzonych transakcji.&lt;br /&gt;
===Transaction in BPMN⌘===&lt;br /&gt;
[[File:TransactionOutcomes.png]]&lt;br /&gt;
&lt;br /&gt;
BPMN dopuszcza 3 możliwe wyniki transakcji:&lt;br /&gt;
* sukces&lt;br /&gt;
* anulowanie &lt;br /&gt;
* błąd&lt;br /&gt;
===Cancel Events⌘===&lt;br /&gt;
[[File:TransactionCancel.png]]&lt;br /&gt;
* Zdarzenie anulowania występuje tylko w powiązaniu z transakcją&lt;br /&gt;
* Czynności wskazane przez przepływ wychodzący ze zdarzenia anulowania będą wykonane &amp;#039;&amp;#039;&amp;#039;po&amp;#039;&amp;#039;&amp;#039; anulowaniu transakcji&lt;br /&gt;
&lt;br /&gt;
===Transaction Zadania⌘===&lt;br /&gt;
*Zadanie 1. Ziemniaki&lt;br /&gt;
*Zadanie 2. Przelot&lt;br /&gt;
*Zadanie 3. Drzwi&lt;br /&gt;
&lt;br /&gt;
==Pętle i wiele instancji⌘==&lt;br /&gt;
=== Standard Loop ⌘===&lt;br /&gt;
[[File:LoopingActivity.png]]&lt;br /&gt;
*Czynność będzie wykonywana tak długo, jak warunek &amp;#039;&amp;#039;loopCondition&amp;#039;&amp;#039; ma wartość true&lt;br /&gt;
*Warunek jest obliczany dla każdego przejścia pętli - na początku lub na końcu iteracji (&amp;#039;&amp;#039;testBefore&amp;#039;&amp;#039; = true lub &amp;#039;&amp;#039;testBefore&amp;#039;&amp;#039; = false)&lt;br /&gt;
*Można również określić maksymalną liczbę powtórzeń &amp;#039;&amp;#039;loopMaximum&amp;#039;&amp;#039;&lt;br /&gt;
*Kolejne iteracje są zawsze &amp;#039;&amp;#039;&amp;#039;sekwencyjne&amp;#039;&amp;#039;&amp;#039; - nie można rozpocząć kolejnej iteracji przed zakończeniem poprzedniej.&lt;br /&gt;
*Standard Loop Activity przypomina pętlę DO WHILE&lt;br /&gt;
&lt;br /&gt;
=== Wiele instancji (Multi-Instance Activity) ⌘===&lt;br /&gt;
&lt;br /&gt;
[[File:Element_multiple_instances_parallel.png|100px]] [[File:Figure10-48-activity-multi-instance-marker-for-parallel-instances.png|100px]] Multi-Instance parallel (równoległe)&lt;br /&gt;
&lt;br /&gt;
[[File:Element_multiple_instances_sequential.png|100px]] [[File:Figure10-49-activity-multi-instance-marker-for-sequential-instances.png|100px]] Multi-Instance sequential (sekwencyjnie)&lt;br /&gt;
*Instancje czynności mogą być wykonywane &amp;#039;&amp;#039;&amp;#039;równolegle&amp;#039;&amp;#039;&amp;#039; lub &amp;#039;&amp;#039;&amp;#039;sekwencyjnie&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Te czynności mają sens przy pracy z kolekcjami danych&lt;br /&gt;
*Multi-Instance Activity przypomina w działaniu pętlę FOR EACH&lt;br /&gt;
&lt;br /&gt;
===Multi-Instance Activity Example⌘===&lt;br /&gt;
&lt;br /&gt;
[[File:MultiInstanceActivityExample.png|400px]]&lt;br /&gt;
&lt;br /&gt;
=== Loop - zadania ⌘===&lt;br /&gt;
*Zadanie 1&lt;br /&gt;
&lt;br /&gt;
[[File:LoopExercise1.png]]&lt;br /&gt;
*Zadanie 2* - Rekrutacja&lt;br /&gt;
==Proces, współpraca, choreografia i konwersacja w BPMN 2.0⌘==&lt;br /&gt;
=== Proces - przypomnienie ⌘===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 A Process describes a sequence or flow of Activities&lt;br /&gt;
 in an organization with the objective of carrying out work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Proces opisuje sekwencję lub przepływ czynności w organizacji,&lt;br /&gt;
 których celem jest wykonanie pewnej pracy&lt;br /&gt;
&lt;br /&gt;
*BPMN używa terminu &amp;#039;&amp;#039;&amp;#039;proces&amp;#039;&amp;#039;&amp;#039; w odniesieniu do elementów przepływu (czynności, zdarzeń, bramek i przepływów sekwencyjnych)&lt;br /&gt;
*Pojęcia &amp;#039;&amp;#039;&amp;#039;współpraca (collaboration)&amp;#039;&amp;#039;&amp;#039; oraz &amp;#039;&amp;#039;&amp;#039;choreografia (choreography)&amp;#039;&amp;#039;&amp;#039; służą do opisu&amp;#039;&amp;#039;&amp;#039; interakcji pomiędzy procesami&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
==== Typy procesów w BPMN ⌘====&lt;br /&gt;
&lt;br /&gt;
[[File:FIgure7-1-example-of-a-private-business-process.png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:Figure7-2-example-of-a-public-process.png|500px]]&lt;br /&gt;
&lt;br /&gt;
Trzy podstawowe typy procesów w BPMN:&lt;br /&gt;
#Private Non-executable (internal) Business Process&lt;br /&gt;
#Private Executable (internal) Business Process&lt;br /&gt;
#Public Process&lt;br /&gt;
&lt;br /&gt;
===Współpraca (Collaboration)⌘===&lt;br /&gt;
[[File:Figure7-6-example-of-collaboration-diagram-with-black-box-pools.png|300px]]&lt;br /&gt;
*Diagram współpracy to kolekcja &amp;#039;&amp;#039;&amp;#039;Uczestników&amp;#039;&amp;#039;&amp;#039; (Participants) reprezentowanych jako &amp;#039;&amp;#039;&amp;#039;Baseny&amp;#039;&amp;#039;&amp;#039; (Pools) oraz ich wzajemnych interakcji (Message Flows).&lt;br /&gt;
*Diagram może zawierać procesy w obrębie basenów i/lub choreografie pomiędzy.&lt;br /&gt;
*Choreografia jest rozbudowanym typem współpracy&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Collaboration Example⌘====&lt;br /&gt;
[[File:Figure7-3-example-of-collaborative-process.png|400px]]&lt;br /&gt;
&lt;br /&gt;
===Choreografia (Choreography)⌘===&lt;br /&gt;
&lt;br /&gt;
[[File:CollaborationChoreography.png|200px]]&lt;br /&gt;
[[File:SimpleChoreography.png|200px]]&lt;br /&gt;
&lt;br /&gt;
* Choreografia przypomina wyglądem prywatny proces biznesowy&lt;br /&gt;
* Czynności choreografii reprezentują zbiory wymian komunikatów pomiędzy uczestnikami&lt;br /&gt;
* Główny nacisk nie jest kładziony na kolejność czynności tylko na interakcję między uczestnikami&lt;br /&gt;
* Nie wskazuje się kontrolera całej interakcji&lt;br /&gt;
&lt;br /&gt;
====Choreography Example 1⌘====&lt;br /&gt;
&lt;br /&gt;
[[File:Choreography.png]]&lt;br /&gt;
&lt;br /&gt;
====Choreography Example 2 from spec⌘====&lt;br /&gt;
Business Process Model and Notation (BPMN), Version 2.0, pages 318-319&lt;br /&gt;
&lt;br /&gt;
[[File:ChoreographySpecExample1.png|200px]]&lt;br /&gt;
[[File:ChoreographySpecExample2.png|200px]]&lt;br /&gt;
&lt;br /&gt;
===Konwersacje (Conversations)⌘===&lt;br /&gt;
[[File:SimpleConversation.png|400px]]&lt;br /&gt;
*Diagram konwersacji jest szczególnym przypadkiem diagramu współpracy&lt;br /&gt;
*Baseny zwykle nie posiadają zawartości &lt;br /&gt;
*Konwersacja jest zestawem logicznie powiązanych wymian komunikatów&lt;br /&gt;
====Conversation Example⌘====&lt;br /&gt;
[[File:Conversation.png]]&lt;br /&gt;
&lt;br /&gt;
=Literatura=&lt;br /&gt;
* Specyfikacja BPMN 2.0&lt;br /&gt;
** http://www.omg.org/spec/BPMN/2.0/&lt;br /&gt;
* BPMN 2.0 by Example&lt;br /&gt;
** http://www.omg.org/cgi-bin/doc?dtc/10-06-02&lt;br /&gt;
* Szymon Drejewicz, &amp;#039;&amp;#039;&amp;#039;Zrozumieć BPMN. Modelowanie procesów biznesowych&amp;#039;&amp;#039;&amp;#039;, Helion&lt;br /&gt;
*  Mr. Tom Debevoise, Rick Geneva and Dr. Richard Welke, &amp;#039;&amp;#039;&amp;#039;The Microguide to Process Modeling in BPMN 2.0: How to Build Great Process, Rule, and Event Models&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Bruce Silver, &amp;#039;&amp;#039;&amp;#039;BPMN Method and Style, 2nd Edition, with BPMN Implementer&amp;#039;s Guide: A structured approach for business process modeling and implementation using BPMN 2.0&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Dodatek=&lt;br /&gt;
Business Process Model and Notation, v2.0, page 261&lt;br /&gt;
&lt;br /&gt;
[[File:TypesOfEvents.png]]&lt;/div&gt;</summary>
		<author><name>Cesar Chew</name></author>
	</entry>
</feed>