Procesní řízení 1 Definice procesu Procesní řízení 2 Definice procesu - Reprezentuje podnikový proces ve formě, která umožňuje jeho automatizované zpracování, jakým je vykonání pomocí WFMS nebo modelování a simulace. - Obsahuje především informace o síti činností a jejich vztahů, kritéria zahájení, přerušení a ukončení činností, údaje o účastnících, aplikacích a datech. - Vzniká v PDT. - Předává se skrze WAPI (interface 1). Procesní řízení 3 Entity definice procesu Definice procesu obvykle tvoří souhrnný popis různých entit (objektů) : - Proces (popis celého procesu) - Činnost (definice činností z nichž se proces skládá) - Přechod (definice přechodů mezi činnostmi) - Účastník (deklarace účastníků procesu) - Aplikace (deklarace aplikací používaných procesem) - Data (deklarace dat procesu) Vzájemné vztahy entit znázorňuje tzv. Metamodel procesu Procesní řízení 4 Metamodel procesu z do volá užívá Proces Data Činnost Účastník Aplikace Přechod skládá se z vykonávanáužívá Procesní řízení 5 Entita Proces Obsahuje obecné atributy vztahující se k celému procesu: - identifikátor, název, autor, vlastník - verze, kódová stránka, znaková sada, jazyk - priorita, omezení - jednotka času, časové termíny - ikona, dokumentace - data pro simulaci - I/O parametry, knihovny - ... Procesní řízení 6 Entita Činnost Obsahuje atributy vztahující se ke konkrétním činnostem: - identifikátor, název, popis - priorita, omezení - ikona, dokumentace - typ činnosti - způsob implementace, míra automatizace - hodnoty join a split (AND /XOR) - data pro simulaci - I/O parametry, knihovny - ... Procesní řízení 7 Typy činností CyklusZákladní Tělo činnosti Join Split Join Split Tělo činnosti Řízení cyklu Počáteční přechod Koncový přechod Tělo cyklu Vstup Vstup Výstup Výstup Procesní řízení 8 Typy činností Tělo činnosti Join Split Join Split Sub-flow Volání Odpověď Subflow Vstup Směrovací Vstup Výstup Výstup Subproces Procesní řízení 9 Typy činností Neimplementační činnosti - nevykonávají žádnou práci - směrovací Implementační činnosti - vykonávají vlastní práci - základní, cyklus, subflow - 2 režimy (automatický a manuální) Procesní řízení 10 Směrovací činnost Směrovací činnost realizuje složitější větvení procesu. Vlastníkem směrovací činnosti je obvykle WFMS. Jsou případy, kdy se bez směrovací činnosti neobejdeme. - kombinace XOR a AND podmínek pro dělení toku procesu na vstupním či výstupním přechodu činnosti - podmíněné AND spojení několika dále pokračujících větví vykonávání procesu Procesní řízení 11 Základní činnost Obsahuje definici pracovní úlohy. Existují 2 typy základních činností: - Tool - odkazuje na nástroj vně WFMS, který se má pro vykonání činnosti použít. - Procedure - odkazuje na funkci (knihovnu) jež je přímo interpretována WES. Procesní řízení 12 Činnost cyklu Řídí provádění cyklu (opakující se sekvence jiných činností). Existují 2 typy cyklů: - While - s podmínkou na začátku. - Repeat-until - s podmínkou na konci. Cyklus typu „for“ se ve WFMS obvykle implementuje pomocí cyklu typu „while“. Procesní řízení 13 Subflow činnost Řídí (dává pokyn k) zahájení subprocesu. Existují 2 typy subflow: - Synchronní - vykonávání „mateřského“ procesu nebo jeho části je pozastaveno a proces čeká na informaci o vykonání subprocesu. - Asynchronní - vykonávání „mateřského“ procesu pokračuje bez ohledu na průběh subprocesu. Procesní řízení 14 Inline blok - Inline bloky představují alternativu implementace části procesu pomocí subflow. Inline blok ohraničuje množinu postupně vykonávaných činností procesu. - S identifikátorem inline bloku může být v mnoha případech nakládáno stejně jako s identifikátorem samostatné činnosti procesu (např. může být použit pro definování přechodů). - Pro činnosti uvnitř inline bloku existují omezení, jež zajišťují, aby přechody z činností nevedly k činnostem mimo tento blok. - Inline blok pracuje nad stejnými daty jako ostatní činnosti procesu, zatímco subproces ne. Procesní řízení 15 Inline blok Vstupní přechody JOIN BLOCK BEGIN SPLITBLOCK END Výstupní přechody Jednotná reprezentace inline bloku Inline Blok (činnosti uvnitř bloku) Procesní řízení 16 Entita Přechod Obsahuje atributy vztahující se ke konkrétním přechodům mezi činnostmi: - identifikátor, název, popis - typ přechodu - odkud, kam (id činnosti) - podmínka - ... WfMC rozlišuje 3 typy přechodů: Běžný přechod Přechod na začátku cyklu Přechod na konci cyklu Procesní řízení 17 Typy přechodů dle WfMC Běžné přechody (Regular Transitions) (FROM id, TO id, [CONDITION exp]) Přechody na začátku a konci cyklů (Loop-connecting Transitions) (FROM LOOP id, TO id) (FROM id, TO LOOP id) Standardy WfMC uvádějí řídící podmínku cyklu jako součást popisu příslušné činnosti a ne přechodu. Procesní řízení 18 Entita Účastník Obsahuje atributy vztahující se k účastníkům: - identifikátor, název, popis - typ účastníka (člověk, WFMS, aplikace apod.) - role - ... Procesní řízení 19 Organizační model Procesní řízení 20 Entita Aplikace Obsahuje atributy vztahující se k aplikacím: - identifikátor, název, popis - typ nástroje - I/O parametry - ... Procesní řízení 21 Entita Data Obsahuje atributy vztahující se k datům: - identifikátor, název, popis - datový typ - defaultní hodnota - ... Procesní řízení 22 Další možné entity Vedle výše popsaných entit může definice procesu obsahovat i další objekty. Mohou to například být: Inline bloky - Pro definici inline bloků může (ale nemusí) být použita samostatná entita. Standardy WfMC tuto variantu nepoužívají. Typy - Vlastní (nestandardní) datové typy mohou být deklarovány pomocí specielní entity. WfMC tuto variantu používá. Procesní řízení 23 Popis celého workflow Problém: - WFMS obvykle vykonává různé typy procesů, tj. v rámci jednoho workflow se importuje více různých definicí procesů. - Někteří účastníci, aplikace a data mohou být (a obvykle jsou) společní pro více definicí procesů, tj. jsou v systému deklarováni duplicitně. Chaos a zmatek při importu definicí procesů z PDT do WES. Procesní řízení 24 Řešení: - Vytvořit „kontejner“, který bude přenášet současně všechny procesy daného workflow. - Společné účastníky, aplikace a data deklarovat o úroveň výše pro všechny procesy společně (dědičnost) Popis celého workflow Procesní řízení 25 Entita Workflow Obsahuje obecné atributy vztahující se k celému workflow: - identifikátor, název, autor, vlastník - verze, kódová stránka, znaková sada, jazyk - omezení - jednotka času, časové termíny - ikona, dokumentace - knihovny - ... Procesní řízení 26 Entita Workflow Popis celého workflow obvykle tvoří entity: - Workflow - Proces (obsahuje alespoň vnořené entity Činnost a Přechod) - Účastník - Aplikace - Data Dále mohou být uvedeny např. entity : - Typ - Organizační model - Fyzický model Vzájemné vztahy entit znázorňuje tzv. Workflow Metamodel. Procesní řízení 27 Workflow metamodel Workflow Log. model Org. model Proces Data Účastník Aplikace obsahuje odkazuje odkazuje užívá užívá užívá Procesní řízení 28 Formáty pro definice procesů a workflow Definice procesu (i celé workflow) může být uložena v různých formátech. Relační databáze – zpravidla interní reprezentace uvnitř WES nebo PDT. XML formáty – zpravidla výměnné formáty, implementace WAPI (interface 1). Vlastní jazyky – v současnosti málo používané, nestandardní, snižují interoperabilitu. Procesní řízení 29 Definice uložená v relační databázi Příklad ERD: Procesní řízení 30 Další formáty WPDL - Workflow Process Definition Language - standard WfMC pro podnikové procesy XPDL - XML Process Definition Language - XML standard WfMC pro podnikové procesy QPR XML - XML Formát společnosti QPR Software - výměnný formát systému QPR ProcessGuide Procesní řízení 31 Ukázka z gramatiky jazyka WPDL --> PROCESS [] [] [] < Workflow Activity List> < Workflow Transition List> [] [] [] [] END_PROCESS [] Procesní řízení 32 Ukázka z DTD jazyka XPDL Procesní řízení 33 Koncept výměny definici procesů pomocí WPDL (WfMC) Procesní řízení 34 Jak by to jednou mohlo vypadat ve státní správě PDT Simulation Tools Process Repository WES 1Admin 1 WES 2 Admin 2 Process Portal Interface 1 Interface 5 Interface 4 Interface 5 Procesní řízení 35 Cvičení - Seznamte se s formátem XPDL. - Seznamte se s nástrojem Together Workflow Editor. - Ve formátu XPDL vytvořte definici jednoho primárního procesu vaší firmy. Pozn.: Veřejné standardy WfMC pro tvorbu definicí procesů jsou na adrese http://www.wfmc.org/.