Business Process Model and Notation

Business Process Model and Notation (BPMN) je súbor princípov a pravidiel, ktorý slúži pre grafické znázorňovanie podnikových procesov pomocou procesných diagramov. Inými slovami možno povedať, že ide o štandard pre modelovanie podnikových procesov.
BPMN je v oblasti procesného modelovania vyvíjaný od roku 2005. Po niekoľkých verziách sa od roku 2011 presadzuje verzia BPMN 2.0. V súčasnej dobe je dokumentácia BPMN tak dobre rozpracovaná, že sa začínajú vytvárať paterny, na základe ktorých sa riešia štandardné situácie, ktoré môžu nastávať počas procesného riadenia.
Základné informácie o BPMN.
Business Process Model and Notation (BPMN) je notáciou pre modelovanie podnikových procesov, ktorá poskytuje grafické znázornenie pre špecifikáciu podnikových procesov z procesného diagramu (BPD). Procesný diagram je založený na Flowchart technológii, ktorá je veľmi podobná diagramu aktivít z Unified Modeling Language (UML). V praxi je teda diagram tvorený akýmsi tokom aktivít, ktoré sa dejú za určitých okolností a v určitom poradí. V tomto toku môžu tiež byť veľmi stručne, avšak prehľadne, zanesené aj rôzne vonkajšie okolnosti, ktoré nemusia byť súčasťou daných podnikových procesov, ale napriek tomu modelované podnikové procesy priamo ovplyvňujú. Oproti už spomenutému diagramu aktivít z UML potom BPMN prináša o niečo lepší a prehľadnejší záznam práve takých vonkajších aktivít, ktoré majú priamy vplyv na podnikové procesy, vrátane časovej dimenzie.
Účelom BPMN je podpora procesného riadenia, čo môžu využiť ako analytici, vývojári, tak vlastníci podnikových procesov. BPMN poskytuje notáciu, ktorá je jednoduchá a intuitívna pre vlastníkov procesu, ale zároveň je schopná vyjadriť komplexitu daných procesov. BPMN od verzie 2 podporuje automatizáciu procesov, tzv. Workflow manažment, za týmto účelom bol do jazyka implementovaný rad "programátorských" rozšírení, napr. subprocesov pre ošetrovanie výnimiek alebo rozlišovanie typov cyklov a paralelného spracovania, ktoré pomohli spresniť zápis. Dôraz na presnosť a výstižnosť jazyka ale znížil jeho zrozumiteľnosť pre neškoleného čitateľa (typicky business vlastníci procesov).
Primárnym cieľom BPMN je poskytovať štandardizovaný zápis v ľahko zrozumiteľnej podobe pre všetky zainteresované osoby v organizácii. Medzi tieto zainteresované osoby patria podnikoví analytici, ktorí vytvárajú a zdokonaľujú podnikové procesy, ďalej technickí vývojári zodpovední za ich implementáciu a podnikoví manažéri, ktorí ich monitorujú a riadia. BPMN teda slúži ako spoločný jazyk, ktorý prekonáva komunikačnú priepasť medzi návrhmi podnikových procesov a následnú implementáciou.
BPMN je najrozšírenejším jazykom používaným pre opis procesov. Aj keď existuje viac štandardov pre modelovanie podnikových procesov, BPMN sa stal de facto štandardom, na ktorý postupne prechádzajú modelovacie nástroje aj aplikácie podporujúce automatizáciu procesov (exekučné stroje).
História a vývoj BPMN.
Špecifikácia BPMN 1.0 bola vyvinutá inštitútom BPMI (Business Process Management Institute). BPMI sa v máji 2004 zlúčil s organizáciou OMG (Object Management Group). BPMN bolo následne vyvíjané pod vedením OMG a počas roka 2005 bola vypracovaná verzia, ktorú OMG prijalo ako štandard vo februári 2006. Z tejto verzie bola v júni 2007 dokončená verzia BPMN 1.1. O rok neskôr v júni 2008 bola vydaná verzia BPMN 1.2. Posledná aktuálna verzia BPMN 2.0 bola dokončená v júni 2010 a ako oficiálna špecifikácia bola vydaná v januári 2011. Súčasný význam skratky BPMN (Business Process Model and Notation) platí od verzie 2; názov prvej verzie mal význam Business Process Modelling Notation. Zmena významu názvu vystihuje aj zmenu v koncepcii celého "jazyka".
BPMN 2.0.
BPMN 2.0 si kladie za cieľ byť jedinou notáciou pre tvorbu modelov podnikových procesov. Nový formát zachováva vlastnosti z predošlých verzií a vďaka tomu štandard môže zostať pod značkou BPMN. Základnými črtami BPMN 2.0 sú: 
BPMN prvky.
Pomocou notácie BPMN možno modelovať len podnikové procesy. Tvorba diagramov, ktoré sú neprocesného charakteru, sú mimo rozsahu jazyka BPMN. Ako príklad takýchto modelov možno uviesť organizačnú štruktúru, funkčné členenie a dátové modelovanie. Hoci BPMN ukazuje toky dát (správy) a asociácie artefaktov k činnostiam, nemožno ho považovať za DataFlow diagram (DFD).
Jednotlivé prvky.
Pomocou BPMN vznikajú jednoduché diagramy, ktoré sa skladajú z obmedzeného počtu grafických prvkov. Vďaka tomu je pre vlastníkov procesov, vývojárov a analytikov ľahké porozumieť procesným tokom aj samotným procesom. BPMN sa rozdeľuje na štyri základné kategórie, viď nižšie. Tieto štyri kategórie uľahčujú tvorbu jednoduchých diagramov podnikových procesov a tiež umožňujú tvorbu nových druhov tokových objektov a artefaktov, ktoré prispievajú k lepšej zrozumiteľnosti diagramov. 
Základná schéma usporiadania takých objektov by v akejkoľvek časti diagramu mala byť rovnaká: "udalosť" → "aktivita" → "brána". Nikdy by nemalo dochádzať k situáciám, kedy je priamo za sebou viac "udalostí" alebo "aktivít." Pre paralelné či sériové radenie viacerých "udalostí" a "aktivít" sa tak používajú "brány". 
Tokové objekty.
Tokové objekty sú hlavnými grafickými prvkami, ktoré definujú správanie podnikových procesov. Možno rozlišovať tri základné skupiny prvkov: udalosti, aktivity a brány. 
Udalosti sú znázorňované kruhom a predstavujú dej, ktorý má priamy vplyv na chod podnikových procesov. V kruhu sa môžu zobrazovať rôzne ikony, ktoré predstavujú rôzne udalosti, napríklad obálka predstavujúca správu alebo hodiny predstavujúce čas. Udalosti možno tiež charakterizovať ako "catching", napríklad prijatie správy spustí proces alebo je tiež možné charakterizovať ako "throwing", napríklad odosielané správy o dokončení ukončí proces. Udalosti v BPMN 2.0 sa rozlišujú na počiatočné a konečné. Prakticky každá aktivita musí byť vyvolaná nejakou udalosťou, respektíve každá aktivita je reakciou na nejakú udalosť. Ak aktivita má vyvolať inú aktivitu, musí aktivita napred vyvolať nejakú udalosť a táto následne vyvolá aktivitu druhú. 
Tieto prvky predstavujú činnosti, ktoré sa odohrávajú vo vnútri procesu. Zobrazujú sa pomocou obdĺžnika so zaoblenými rohmi. Rozlišujú sa tieto aktivity: "vlákno" a "úloha".
Spojovacie objekty.
Spojovacie objekty spájajú tokové objekty, delí sa na tri typy: "sekvenčný tok, tok správ a asociácie".
Plavecké dráhy / Kontexty.
Plavecké dráhy (tiež pomenované ako kontexty) slúži na organizovaní a kategorizácii činností. Rozlišujeme dva typy: bazén a dráhu.
Artefakty.
Artefakty umožňujú vývojárom pridať ďalšie informácie do modelu, vďaka tomu je model čitateľnejší. Možno využiť troch preddefinovaných artefaktov:
Typy BPMN modelov.
Modelovanie podnikových procesov sa používa na zdieľanie rôznorodých informácií medzi rôznymi užívateľmi. BPMN je navrhnuté tak, aby pokrylo široký rozsah použitia a umožňuje modelovanie "end-to-end" procesov, čo umožňuje užívateľovi diagramu rozlíšiť sekcie BPMN diagramu. Existujú tri základné typy podmodelov "end-to-end" BPMN modelov. Súkromné (interné) podnikové procesy, abstraktné (verejné) procesy a spolupracujúce (globálne) procesy:
V rámci kombinácie týchto troch podmodelov môžu byť vytvárané ďalšie typy diagramov, ktoré môžu byť modelované pomocou jazyka BPMN. Pozri nižšie:
BPMN je navrhnuté tak, aby bolo možné vytvoriť vyššie zmienené diagramy. Avšak je dôležité brať do úvahy, že použitie príliš mnohých typov podmodelov dohromady, ako napríklad tri a viac súkromných procesov prepojených medzi sebou tokom správ, môže pôsobiť pre niekoho nezrozumiteľne a neprehľadne. Preto sa odporúča, aby sa tvorca modelov zameral na účel procesného diagramu a podľa toho zvolil vhodný typ podmodelu a v prípade potreby ich kombinácie. 
Základné paterny a ukážky štruktúry BPMN.
BPMN cyklus.
Cyklus a jeho tvorba je pri modelovaní podnikových procesov častým úlohou.
V uvedenom príklade je demonštrované, že aj pri používaní cyklov je potreba stále dbať zlatého pravidla tvorby BPMN (udalosť → aktivita → brána). Ak by sme cyklus realizovali tak, ako je uvedené v zlom riešení, nielen, že by nadväzovala aktivita na aktivitu (task 4 sám na seba), ale ešte by sme zamedzili aktualizáciu parametrov pre podmienku brány medzi tasky 4 a 5. Táto aktualizácia je vytvorená práve ako udalosť, na ktorú reaguje task 4. 
Nástroje pre tvorbu BPMN.
Nástrojov pre tvorbu BPMN modelov existuje veľké množstvo, niektoré sú zadarmo a pre niektorých je potreba kúpiť licenciu. Samozrejme, že väčšina nástrojov vie ďaleko viac modelov, než len vytvárať BPMN. Ako ďalšie vlastnosti možno uviesť tieto: tvorba dynamických diagramov, tvorba statických diagramov, generovanie dokumentácie, verziovanie, generovanie kódu atď.