BPM_03 Transakční axiom (Vzor transakce)
Obsah přednášky • Transakce jako základní stavební prvek modelování podnikových procesů. • Transakce a její fáze. • Základní vzor transakce. • Standardní vzor transakce. • Kompletní vzor transakce. • Příklady konstrukčních modelů.
2
Poslední přednáška • Čin má za následek fakt – způsoben nějakou událostí. • Produkční čin a fakt je obklopený koordinačními činy a fakty. • Produkční fakt (materiální, nemateriální) je to co je „hodnotou“ v elementárním procesu (transakci). • Rozlišujeme koordinační činy a koordinační fakta. – požadavek, slib, předvedení, přijetí (akceptace). 3
Poslední přednáška • Koordinační čin se skládá: úmysl + nabídka/návrh – Úmysl: požadavek, slib, předvedení, přijetí – Nabídka/návrh: produkční fakt + čas realizace.
• Procesní krok = koordinační čin a koordinační fakt
: <procesní krok> : : <produkt> : <čas produkce> Alice: požadavek : Karel : objednávka 387 je zkompletovaná: co nejrychleji
4
Transakční vzor • Podnik je systém aktérů (rolí aktérů), kteří vykonávají produkční činy a koordinační činy. • Otázka je, jak tyto činy jsou v relaci mezi sebou. • Existují konkrétní struktury nebo vzory ve kterých se vyskytují? • Na první pohled vzhledem k velké rozmanitosti koordinačních procesů se zdá, že existuje jistě mnoho různých procesů. 5
Transakční vzor • Naštěstí všechny tyto koordinační procesy mohou být považovány za cesty přes jeden generický koordinační vzor. • Koordinační kroky jsou vykonávány jako kroky v univerzálních vzorech. • Tyto vzory se nazývají transakcemi, vždy zahrnují dvě role aktérů a směřují k dosažení konkrétního výsledku.
6
Transakční vzor • Transakce se v podstatě skládá z tvou konverzací: – konverzace nabídky (proposition/order conversation) – konverzace výsledku (result conversation)
• Konverzace je definovaná jako sekvence koordinačních činů mezi dvěma rolemi aktérů, směřující k dosažení dobře definovaného výsledku, týkajícího se produkčního činu a produkčního faktu (P-čin/fakt). 7
Transakční vzor • Produkční čin a produkční fakt je vykonán vykonavatelem (exekutorem) zpravidla samostatně, bez dohledu iniciátora.
8
Transakční vzor • Mezi produkčním činem a faktem je vykonání produkčního činu, k čemuž slouží obě konverzace. • Transakce tedy zahrnuje tři fáze: – fázi nabídky/návrhu/objednání (O phase proposition) – fázi vykonání (E-phase execution) – fázi výsledku (result R-phase).
• Jedna ze zúčastněných rolí aktérů se nazývá iniciátor a druhá zúčastněná role aktérů je exekutor (vykonavatel). 9
Transakční vzor • Ve fázi objednávky, iniciátor a exekutor pracují na dosažení dohody o zamýšleném výsledku transakce, to je o produkčním faktu, který vykoná exekutor. • Ve fázi exekuce (provedení) je tento produkční fakt skutečně vytvořen exekutorem. • Ve fáze výsledku, iniciátor a exekutor pracují na dosažení dohody ohledně produkčního faktu, který je aktuálně vytvořen (jejich představy se mohou lišit). 10
Transakční vzor • Pouze za předpokladu, že je dosaženo dohody (akceptace), bude produkční fakt existovat (vstoupí do existence). • Časový okamžik ve kterém začne produkční fakt existovat je odsouhlašen ve výsledkové fázi.
11
Transakční vzor • Každá transakce je instancí konkrétního typu transakce: tento typ transakce koresponduje s typem produkčního faktu, který je cílem nebo výsledkem transakce. • Např. transakce týkající se produkčního typu faktu (P-fact) členství C bylo započato jsou stejného typu, vede k přesnější definici role aktéra. • Elementární role aktéra je pravomoc (mandát) být vykonavatelem přesně jednoho typu transakce. 12
Základní vzor transakce • Jednoduchý příklad transakce, která se uskutečnila při komunikaci tváří v tvář mezi dvěma subjekty, z nichž jeden je v roli iniciátora (kupuje květiny – klient K) a druhý v roli exekutora (prodává květiny – prodavač P). (1) (2) (3) (4) (5)
K: P: P: K:
Rád bych si koupil danou kytku. Dobře pane. <skutečné donesení kytku klientovi> Tady ji máte. Děkuji.
O phase E phase R phase
13
Formalizovanější zápis transakce (1) (2) (3) (4) (5)
K: požadavek: P: Klient má kytku K: na počkání P: slib: K: Klient má kytku K: na počkání. <skutečné donesení kytku klientovi> P: předvedení: K: Klient má kytku K: nyní. K: akceptace: P: Klient má kytku K: nyní.
• Část faktu je identická v řádcích 1, 2, 4, 5. • Odkazuje se na pojmenovanou kytku K. • Na počkání, nyní – implicitní předpoklad. 14
Zápis transakce • Standardní zápis odhaluje kontextovou závislost s verbální konverzací. • Místo času „na počkání“ může být např. „zítra v poledne“. • Není zahrnuto placení za kytku, protože příklad neobsahuje placení a samotné placení tvoří další transakci. • Placení bývá součástí doručení požadovaného faktu. 15
Transakční vzor request
fact requested
promise
desired new fact
fact promised
fact accepted
fact produced
accept
state fact stated
customer
transaction
producer
grafické a formální vyjádření 16
Transakční proces a jeho fáze Ve fázi propozice (návrhu) aktéři diskutují o vytvoření produktu, a snaží se dosáhnout dohody.
Požádání o květiny Objednání (požadavek) knihy Žádost o členství
Ve fázi provedení (exekuce) vykonavatel (exekutor) vytvoří nějaký produkt.
Vytvoření Rozhodnutí Posouzení
Ve výsledné fázi aktéři diskutují o produktu, který byl vytvořena snaží se dospět k dohodě.
Získání květin Získání knihy Stát se členem (získání členství) 17
Diagram zachycující požadavky • Diagram aktivit: zachycuje oblast kompetencí pro každého aktéra pomocí plavebních drah. • Diagramu aktivit chybí stavy (koordinační). • Je třeba rozlišit aktéra, koordinaci, produkci.
18
Základní vzor transakce reque st
request
promi se
promise
O-phase
E-phase R-phase state
acce pt
initiator
state
accept
• Šedě označené rámy představují oblasti odpovědnosti. • Koordinační fakta jsou kreslena kruhy – uprostřed. • Koordinační fakta jsou mezi rolemi. • Produkční čin a produkční fakt je na straně exekutora.
executor
19
Základní vzor transakce • Příklad nákupu chleba nebo květin kompletně pokrývá základní vzor transakce. • Čin – obdélník, kruh koordinační fakt, kosočtverec – produkční fakt.
20
Nákup bochníku chleba • Zákazník hraje roli iniciátora, pekař hraje roli exekutora. • Iniciátor žádá o dodání bochníku. Výsledkem je C-fakt, že dodání je požadováno. • Oběma aktérům je dovoleno, aby fakt znali (je uprostřed - intersubjektivní). • C-fakt „rq“ je agenda pro exekutore (pekaře). • Jako výsledek zpracování agendy pekař slíbí dodat požadovaný bochník, což přivede proces do stavu slibu (C-fakt „pm“). 21
Nákup bochníku chleba • C-fakt „pm“ je agendou pro pekaře, který vytvoří Pfakt. • P-fakt se skládá z rozhodnutí pekaře prodat bochník zákazníkovi. • Produkční fakt je přenesené vlastnictví k bochníku. • P-čin a P-fakt jsou šedé, protože patří do subjektivního světa exekutora. Iniciátor o nich principielně neví. • Pekař předvede (state), že doručení bochníku bylo provedeno, z čehož plyne (intersubjektivní) C-fakt „st“. Tento fakt je v agendě exekutora. 22
Nákup bochníku chleba • Zákazník odpoví akceptováním vytvořeného P-faktu, což přivede proces do úspěšného koncového stavu „ac“. • Proces se zdá být přehnaný (overdone): – alespoň slib a akceptace se zdají být nadbytečné. – Není tomu tak. – Vykonání koordinačních činů nutně neznamená, že se nutně projeví v ústní nebo psané komunikaci. Projeví se např. kývnutím. C-činy se někdy provádí mlčky. 23
Nákup bochníku chleba • Mlčky provedený koordinační čin je stále koordinačním činem. • Dosud – úspěšná cesta v transakčním vzoru. • Vše je v plném souhlasu.
24
Standardní vzor transakce • Principielně se mohou objevit nesouhlasy, konkrétně ve stavech požadovaný („requested“) a uvedený („stated“). • Místo přislíbení může exekutor odpovědět nepřijetím (decline) a místo akceptování může iniciátor odpovědět odmítnutím (reject). • Důvodem nepřijetí a odmítnutí může být směs tří požadavků oprávněnosti (validity claims) – viz dále. 25
Standardní vzor transakce • Tato situace přivede proces do intersubjektivního stavu nepřijatý „declined“ nebo odmítnutý „rejected“ . • Stavy indikovány dvojitým kruhem a vedou ke stavu diskuse. • To znamená oba aktéři si musí „společně sednout“ a dohodnout další postup. • Původní vzor transakce, rozšířený o dva stavy se nazývá Standardní vzor transakce. 26
Standardní transakční vzor • Požadavek Jana, stát se členem knihovny. • To znamená, že propozice transakce musí být proveditelné (dosaženi request v čase). • Již dosažení max. počtu členů – důvod pro odmítnutí žádosti o členství.
27
Jak se aktéři rozhodují • Nabídka procesního kroku (koordinační čin + koordinační fakt) je kontrolována prostřednictvím validity (oprávněnosti) požadavků (oprávněnost, legálnost právoplatnost). • Při vykonávání koordinačního činu vykonavatel uplatní tři validační požadavky na adresáta podle kterých se adresát rozhodne: – požadavek na spravedlnost, požadavek na upřímnost a požadavek na pravdu. 28
Jak se adresát rozhoduje - spravedlnost • Požadavek na spravedlnost – sociální svět. • Zde se jedná o vzájemné uznání sociálních rolí obou aktérů. • Jan uznává Marii v její roli administrativní pracovnice knihovny, Marie uznává Jana v jeho roli žadatele o členství. • Příkladem tohoto nepřijetí je, když Jan žádá Marii o členství, když není v práci (v kině). • Marie může přimět Jana pro opětovnou žádost o členství. 29
Jak se adresát rozhoduje - spravedlnost • V knihovně žádá aktér, který není členem o půjčení knih. Není v dané roli aktéra. • Dítě žádá o rezervaci noclehu. Není v odpovídající roli aktéra. • Žádat o členství v knihovně pracovnici knihovny v kině. Pracovnice není v roli odpovídajícího aktéra.
30
Jak se adresát rozhoduje - upřímnost • Požadavek na upřímnost – subjektivní svět. • Adresát zkoumá (přemýšlí), zda je vykonavatel upřímný ve svém požadavku. • Zda je požadavek na kytku upřímný. Zda tomu adresát věří. • Jan již dnes třikrát žádal a žádost stáhnul. Marie pochybuje o jeho upřímnosti. • Tento požadavek se většinou opomíjí. 31
Jak se adresát rozhoduje - pravda • Požadavek pravdy – objektivní svět. • Adresát zjišťuje, zda je možné požadavky vykonavatele splnit podle objektivní skutečnosti. • Vykonavatel žádá o rezervaci typu pokoje v daném termínu. Požadovaný typ pokoje ale není k dispozici v daném termínu. • Vykonavatel žádá o členství v klubu, ale klub již nemá kapacitu. Maximální počet členů v daném roce je dosažený. 32
Znázornění činu a faktu v jednom složeném symbolu.
33
Revokační vzory - undo Cancellation Patterns
• V praxi je zcela běžné, že buď iniciátor nebo exekutor transakce chtějí revokovat čin (který může vést k částečnému nebo úplnému vrácení změn – rollback transakce). • To splňuje volba zrušit kdykoli libovolný C-čin ve vzoru transakce. • Každé rušení začíná s činem „cancel“ na něž je umístěn podmínkový C-fakt (reprezentovaný čárkovanou čárou se šipkou). 34
Revokační vzory Cancellation Patterns
• To jednoduše znamená, že cancellation může být jen provedeno, pokud existuje koordinační fakr (C-fakt).
35
Vzor cancellation pro request quit
request
quit
cancel
quit
• podmínka, že C-fakt request
existuje a vyvolá čin cancel, který způsobí C-fakt cancel diskusi.
cancel
refuse
initiator
allow
refuse
executor
• Rušení požadavku nastane, když např. zákazník vidí lepší bochníky. • V diskusi většinou pekař dovolí změnu, vyvolá C-fakt quit, což vyvolá u zákazníka C-čin quit a končí v C-fakt quit. Zákazník začne znova. • Pekař může odmítnout a požadavek (request) je v platnosti. 36
Vzor cancellation pro promise allow
allow
cancel
refuse
initiator
decline
decline
cancel
promise
refuse
executor
• Pekař po příslibu zjistí, že požadovaný bochník je již prodaný. • C-fakt cancel (růžový) je diskuse. • Cesta do C-činů – allow dovolí zrušení slibu. • C-čin refuse nedovolí zrušení slibu. Zákazník aktuálně nedostane bochník – snad jindy. 37
Vzor cancellation pro statement - předvedení allow
allow
cancel
refuse
initiator
cancel
state
refuse
executor
• Pokud pekař po předložení bochníku zjistí, že bochník není v pořádku, může zrušit fázi předvedení (statement) (vyhne se možná odmítnutí zákazníkem). • Diskusní stav cancel (růžová) dovolí, pekař předloží jiný bochník. • Zákazník odmítne, zákazník je ochotný přijmout vadný bochník. 38
Vzor cancellation pro accept - přijetí reject
reject
allow
accept
cancel
cancel
refuse
initiator
allow
refuse
executor
• Předpoklad – transakce úspěšně dokončena, ale např. před obchodem zákazník prohlédne bochník – chce revokovat akceptaci. • V diskuzi pravděpodobně záleží na vztahu na vztahu pekaře a zákazníka. • Je-li vztah důležitý pro pekaře, dovolí odmítnutí C-fakt reject. • Jinak je zákazník odmítnut – refuse a C-fakt accept zůstává v platnosti. 39
Univerzální vzor transakce • Zahrnuje Standardní vzor transakce včetně 4 vzorů cancellation. • Čtyři vzory cancellation jsou nezbytné a dostatečné pro vzetí do úvahy všech možných vrácení změn (rollback).
40
Univerzální vzor transakce executor
initiator
initiator
executor quit
allow
de cline
cancel (rq)
re fuse
pro mise
re fuse
ac cept
cancel (ac)
allow
cancel (pm)
re quest
re fuse
allow
allow
state
cancel (st)
re fuse
re ject
stop
41
Kompletní vzor transakce (1) executor
initiator
initiator
executor quit
allow
de cline
cancel (rq)
re fuse
pro mise
re fuse
ac cept
cancel (ac)
allow
cancel (pm)
re quest
re fuse
allow
allow
state
cancel (st)
re fuse
re ject
stop
42
Kompletní vzor transakce (2) executor
initiator
initiator
executor quit
allow
de cline
cancel (rq)
re fuse
pro mise
re fuse
ac cept
cancel (ac)
allow
cancel (pm)
re quest
re fuse
allow
allow
state
cancel (st)
re fuse
re ject
stop
43
Kompletní vzor transakce (3) executor
initiator
initiator
executor quit
allow
de cline
cancel (rq)
re fuse
pro mise
re fuse
ac cept
cancel (ac)
allow
cancel (pm)
re quest
re fuse
allow
allow
state
cancel (st)
re fuse
re ject
stop
44
Kompletní vzor transakce (4) executor
initiator
initiator
executor quit
allow
de cline
cancel (rq)
re fuse
pro mise
re fuse
ac cept
cancel (ac)
allow
cancel (pm)
re quest
re fuse
allow
allow
state
cancel (st)
re fuse
re ject
stop
45
Podnikový proces jako strom transakcí • Ve stromu transakcí: – role aktérů A1, A2 … označení iniciátor exekutor, – jednotlivé transakce T1, T2, … – strom představuje všechny možné průchody, instance reprezentuje jeden konkrétní průchod stromem – tedy konkrétní podnikový proces.
46
Podnikový proces jako strom transakcí A0
T1
A1
T2
T3
T4
A2
A3
A4
T5
T6
T7
T8
T9
A5
A6
A7
A8
A9
47
Kompletní transakční vzor • Každá transakce T1, T2 … představuje kompletní transakční vzor.
48
Z transakčního modelu ke konstrukčnímu modelu
(Transaction Axiom) rq
rq
O-phase pm
actor role
pm
E-phase st
st
R-phase ac
ac
49
Příklad – tenisový klub TENISOVÝ KLUB
CA01 žadatel o členství
A01 T01 začátek členství
CA02 T02
startér členství
plátce
členství platba
typ transakce
typ produktu
T1 začátek členství
R1 členství začalo
T2 členství platba
R2 první poplatek členství je zaplacen
50
Členství v tenisovém klubu • Konstrukční model obsahuje: – role aktérů, – rozlišení, který aktér je iniciátor a který je vykonavatel (exekutor), – ohraničení „podniku“, – transakce a jejich propojení s rolemi aktérů.
51
Legenda konstrukčního diagramu OK Ai
elementární role aktéra Ai
CAi
složená role aktéra CAi Ohraničení organizace Ok
Tj
transakční typ Tj
spojení iniciátor
spojení exekutor
• transakční typ může mít několik iniciátorů • složená role aktéra „pokrývá“ řadu elementárních rolí aktérů transakčního typu 52
Základní konstrukce T01
A01
A02
iniciátor
exekutor/vykonavatel
A03
T02 vlastní aktivace (self activation)
53
Příklad • Když Fordovo nákupní oddělení napsalo nákupní objednávku poslalo také kopii na účtárnu (accounts payable). Později, když oddělení přijmu nakoupeného materiálu obdrželo zboží, poslalo kopii dodacího listu na účtárnu. • Mezitím prodejce poslal fakturu na účtárnu. Potom bylo na účtárně, aby vyhledala nákupní objednávku a k ní dodací list a fakturu. • Pokud se to účtárně podařilo spárovat všechny tři dokumenty, vystavila platbu. • Účtárna ale strávila dost času nad nespárovanými dokumenty, kdy se nějak lišila nákupní objednávka od dodacího listu a od faktury... 54
Příklad • Jednou z cest nápravy tohoto stavu by byla pomoc účetním na účtárně, aby párovaly doklady efektivněji, ale daleko lepší by bylo, zabránit hned zpočátku nesouladu dokumentů.
• Z toho důvodu zavedl Ford‚ bez fakturové zpracování invoice-less processing'. • Nyní, když nákupní oddělení vystaví nákupní objednávku, informace o ní se uloží do online databáze.
55
Příklad • Nákupní oddělení již nikomu neposílá kopii nákupní objednávky. • Když přijde zboží na přijímací rampu, přijímací úředník zkontroluje databázi, zda odpovídá nezaplacené nákupní objednávce. • Pokud najde shodu, přijímací úředník ji akceptuje a uloží transakci do počítačového systému. (Pokud přijímací úředník nenajde záznam o dodaném zboží v databázi, jednoduše vrátí objednávku zboží.)
56
Využití metodologie DEMO • Jsou identifikovány pouze tři nezbytné (essential) transakční typy. • První transakční typ (T1) se týká přenosu vlastnictví dodaného zboží, která je označena jako “dodání objednávky” (order delivery). • Tato transakce se musí lišit od fyzické dopravy zboží (physical shipping) k Přijímacímu oddělení Fordova závodu, jako transakční typ T2 nazvaný “doprava objednávky” (order shipment). • Třetí transakční typ (T3) se týká placení objednávky a proto se nazývá “platba objednávky” (order payment). 57
Konstrukční model A01
A00
A02
T01
T02
dodání objednávky
doprava objednávky
Zákazník
Dopravce
Dodavatel
A03 T03
Platce
platba objednávky
Typ transakce
Typ produktu
T1 dodání objednávky
R1 objednávka byla převzata zákazníkem
T2 doprava objednávky
R2 objednávka byla dopravena
T3 platba objednávky
R3 objednávka byla zaplacena 58