MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY Techniky modelování a optimalizace podnikových procesů DIPLOMOVÁ PRÁCE Bc. et Bc. Lucie Pekárková Brno 2007
Prohlášení: Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracovala samostatně. Všechny zdroje prameny a literaturu, které jsem při vypracování používal(a) nebo z nich čerpal(a), v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj. Lucie Pekárková
Poděkování: Děkuji vedoucímu mé diplomové práce RNDr. Jaroslavu Ráčkovi, Ph.D. za vedení a vstřícný přístup, který mi v průběhu psaní tohoto díla poskytoval. Můj dík také patří mé rodině, přátelům a známým, kteří mi, aniž by to mnohdy tušili, svojí vstřícností a tolerancí vytvořili skvělé podmínky nejen pro psaní této práce, ale i po celou dobu mého studia na Masarykově univerzitě v Brně.
Shrnutí: Práce seznamuje čtenáře s technikami modelování podnikových procesů a jejich optimalizací. Nejdříve se zabývá vysvětlením procesního přístupu v řízení podniku a poté se věnuje jednotlivým modelovacím technikám, které lze využít. Všechny techniky jsou vysvětleny na příkladech. V závěru jsou zmíněny dvě optimalizační techniky, pomocí kterých lze v podniku dosáhnout efektivnějších procesů, méně náročných na čas i náklady. Tento text, modely procesů a jejich obrázky jsou uloženy na doprovodném CD, které je součástí práce. Klíčová slova: Procesní modelování, procesní mapa, Diagram datových toků, Activity diagram, Petriho sítě, Business Process Reengineering (BPR), Business Process Improvement (BPI)
Obsah: 1 Úvod... 5 2 Procesy a procesní řízení... 6 2.1 Procesní a funkční řízení...6 2.2 Procesy...8 2.2.1 Workflow...10 2.2.2 Typy procesů...14 3 Vizualizace procesů... 16 3.1 Procesní modelování...16 3.2 Nástroje pro mapování procesů...17 3.2.1 Procesní mapa...17 3.2.2 Diagram datových toků...20 3.2.3 Unified Modelling Language (UML)...23 3.2.4 Petriho sítě...29 3.3 Standardy pro modelování podnikových procesů...33 4 Přístupy k optimalizaci podnikových procesů... 35 4.1 Vlastnosti přístupů ke zdokonalování procesů...37 4.1.1 BPR Business Process Reengineering...37 4.1.2 BPI Business Process Improvement...38 4.1.3 Vztah BPI a BPR...38 4.2 BPR a BPI na příkladu podnikového procesu...40 5 Závěr... 47 Literatura... 48 Internetové zdroje... 49
1 Úvod Významným faktorem ovlivňujícím úspěšnost podnikatelských subjektů v současném komerčním turbulentním prostředí informačního věku je zejména schopnost řízení a zvládnutí změn napříč celou organizací. Tyto změny, které jsou vyvolávány dynamickými proměnami vnějších podmínek podnikatelského prostředí, vycházejí z požadavků na inovace, uvádění nových služeb a produktů na trh, radikální reengineering nebo automatizaci stávajících pracovních postupů a aktivit v organizaci. Pro možnost kontinuální správy těchto požadavků a řízení organizací je třeba radikálně změnit úhel pohledu na vnímání firmy jako subjektu. Tím je procesní pohled, který každou organizaci chápe jako soubor obchodních nebo výrobních procesů, které překračují jednotlivá oddělení v organizaci a dodávají své výstupy zákazníkovi - jak koncovému, tak internímu. Přechod společnosti z klasického úkolového (funkčního) řízení a pohledu na základě organizační struktury k procesnímu pohledu, kde jsou jednotlivé procesy navíc propojené se strategickými cíli organizace a plně sledované a vyhodnocované na základě stanovených metrik, vyžaduje odborníky s procesním pohledem a kvalifikací, které umožňuje tento přechod provést. V druhé kapitole této diplomové práce jsou podrobněji rozebrány rozdíly mezi funkčním a procesním řízením. Jsou zde také vysvětleny základní pojmy dále používané v této práci. Třetí kapitola je věnována již samotným technikám modelování podnikových procesů. Jsou zde popsány procesní mapy, Diagramy datových toků, Diagramy aktivit a Petriho sítě. V závěru každé podkapitoly, věnující se jednotlivým technikám, je i model procesu Vyřízení objednávky zboží, na kterém je dokumentován princip tvorby jednotlivých modelů. Ve čtvrté kapitole jsou podrobněji rozebrány dvě základní techniky optimalizace podnikových procesů Business Process Reengineering (BPR) a Business Process Improvement (BPI) a dále je zde popsán jejich vzájemný vztah. Obě tyto techniky jsou v závěru kapitoly předvedeny na ukázkovém příkladu optimalizace podnikového procesu Služební cesta. V závěru diplomové práce je uvedeno shrnutí poznatků a srovnání jednotlivých modelovacích technik. 5
2 Procesy a procesní řízení Ve světě informačních systémů a informačních technologií jsme neustále vyzýváni k inovacím a změnám oproti minulým postupům. Nováčkům v této oblasti je tato orientace na nové postupy velmi příjemná, protože mají pocit, že řeší něco, co zde dříve nebylo. U starších informatiků nastupují spíše pocity, že všechny postupy již zde možná v méně dokonalé formě byly a že se stále řeší stejná paradigmata. Ponechme ale oběma stranám jejich názor. Je však zřejmé, že hlavní impulsy pro inovace a změny vyplývají z rozšiřování globálního světa a globální konkurence. Ekonomické i jiné subjekty se musí rychle přizpůsobovat konkurenčním tlakům, opouštět často dlouhodobě navyklé procesy a organizační struktury. Každá organizace dnes je postavena do situace, že musí kvalitně rozumět sama sobě a svému postavení v konkurenčním světě. Právě tato orientace pak vyvolává důraz na sledování hlavních procesů v organizaci a na jejich optimalizaci pro konečného adresáta. 2.1 Procesní a funkční řízení Prozatím se v organizování vnitřních činností podniků používá především funkční řízení vyjádřené pomocí organizačního schématu. Tento způsob řízení a organizování zachycuje jenom menší část pracovníků podniku tzv. pracovníky technickohospodářské, kteří tvoří jen asi 10 25 % osazenstva podniku. Vůbec v něm není uvažováno s pracovníky dělnických profesí, kteří tvoří většinu zaměstnanců. Organizování tímto funkčním způsobem řeší především otázku dělby práce v podniku, specializaci pracovníků a jejich kompetencí. Systém funkčního řízení je orientován na dovednosti, které jsou základními kriterii organizačního dělení. Práce je separátně vykonávána v oddělených organizačních jednotkách. Mimo to je v organizačním schématu vyjádřen vztah podřízenosti a nadřízenosti mezi jednotlivými pracovníky a organizačními jednotkami. Vzniká mnoho komunikačních a kompetenčních bariér v důsledku ohraničených organizačních jednotek, což činí tento starší způsob řízení značně nepružným. Obr. 2.1: Funkční způsob řízení 6
Funkční řízení je tedy takové řízení, kdy se činnosti obdobného charakteru sdružují do organizačních jednotek a tyto jednotky jsou pak odděleně řízeny. Příkladem mohou být Personální oddělení, Zásobování, Prodej, Výroba (typicky dále dělená) apod. Takové řízení umožňuje aplikaci a využití všech výhod principu specializace, nicméně má sklon k vysokým hierarchickým organizačním strukturám. Procesní řízení je protipólem funkčního řízení. Činnosti jsou řízeny podle své návaznosti v procesu zpracování vstupů podniku na výstupy. Procesní způsob řízení tedy vychází ze skutečnosti, že každý produkt (výrobek nebo služba) vzniká určitým sledem činností, tj. procesem. Tomu je přizpůsoben i nový způsob zobrazování organizačních vztahů pomocí procesního diagramu zahrnujícího všechny potřebné činnosti, vazby mezi nimi, jejich souslednost a zodpovědné pracovníky. Tento způsob organizování zahrnuje všechny pracovníky, kteří se na procesech podílejí, tedy i dělníky. Snižuje se také potřeba řídící práce, protože pracovníci jsou organizováni mezi sebou a řešení řady situací je vyznačeno předem. Jsou stanoveny rozhodovací činnosti a pracovníci zodpovědní za jejich řešení. Všechny procesy ale musí tvořit kompaktní nepřerušenou procesní síť. Žádný proces nesmí mít konec, musí pokračovat dalším procesem, jinak by neměl smysl. Zavedení procesního řízení je v současné době nezbytným předpokladem pro použití progresivních metod řízení (včetně řízení jakosti) a neobejde se bez počítačové podpory. Obr. 2.2: Procesní způsob řízení Systém procesního řízení je orientován na výsledek práce, kterým je produkt. Přechod na procesní způsob řízení obvykle vede ke zvýšení informovanosti o zákaznících a omezení konfliktů mezi jednotlivými odděleními, jakož o prodlev mezi různými kroky celého procesu. Procesní a funkční řízení jsou dva vyhraněné přístupy k řízení podniku, o kterých se nepředpokládá, že by mohly a měly být v organizaci uplatňovány v ryzí podobě. Obvyklé je, že určitá oblast podnikových aktivit je řízena procesně a jiná funkčně, například dle toho, zda převažují přínosy aplikování principu specializace a koncentrace nebo přínosy pružné a ploché procesní struktury. 7
Procesní řízení Integrace činností mezi jednotlivými útvary = pružnější a rychlejší spolupráce Optimalizuje se činnost celých procesů, od počátečního dodavatele po koncového zákazníka Odpovědnost za proces Měření výkonnosti jednotlivých procesů, tzn. jednodušší identifikace konkrétních problémů Zaměřuje se více na příčiny jevů (to je dobré pro prevenci = šetří prostředky jinak vynakládané na řešení následků neshod v činnostech) Umožňuje plošší strukturu Umožňuje lepší sdílení znalostí, podporuje komunikaci Ploché struktury a práce v týmech přináší vyšší pružnost Funkční řízení Útvary provádějí činnosti autonomně Útvary optimalizují svou činnost = lokální optimalizace nemusí přispět ke globálnímu zlepšení Odpovědnost za funkční úsek = nízký zájem o ostatní funkce Měření výkonnosti finančními ukazately, které se sledují obvykle za celou organizaci Zaměřuje se na důsledky jevů Má sklon k vysokým strukturám Komunikace často probíhá přes nadřízené, je komplikovaná Strmé struktury jsou rigidní Tab. 2.1: Porovnání procesního a funkčního řízení V České republice je obecně aplikován spíše princip funkčního řízení, a to z historických důvodů. Dnešní teorie ale označuje procesní řízení za více přispívající konkurenceschopnosti podniků a stále více organizací uplatňuje na své činnosti vedle funkčního pohledu i procesní přístup. 2.2 Procesy Cílem modelování podnikových procesů je vytvořit abstrakci procesu tak, aby umožňovala pochopit všechny aktivity, vztahy mezi různými aktivitami a rolemi lidí a zařízení zařazených do procesu. A co všechny tyto pojmy znamenají? V následujících odstavcích si je podrobněji vysvětlíme. Proces Definic procesu je několik, přičemž se liší pouze dobou vzniku a úhlem pohledu. Definice od Michaela Hammera, jednoho ze zakladatelů manažerské teorie BPR (Business Process Reeingeneering), zní: Proces je soubor činností, který vyžaduje jeden nebo více druhu vstupů a tvoří výstup, který má hodnotu pro zákazníka. Prof. Ivo Vondrák definoval proces takto: Proces je po částech uspořádaná množina kroků, jež směřuje ke splnění požadovaného cíle opakovatelným způsobem. Každý proces má tedy několik základních vlastností. Z výše uvedených definic plyne, že využívá nějaké zdroje, transformuje vstupy na výstupy a skládá se z uspořádaných 8
činností (kroků) - lze jej dekomponovat na subprocesy a aktivity. Dále bychom mohli specifikovat proces jeho jednoznačným začátkem a koncem (včetně návazností na jiné procesy) a opakovatelností. Mohli bychom navíc odvodit, že proces je spouštěn určitým signálem. Každý proces má své parametry, které mohou být měřeny (průběžná doba, včasnost, kvalita, náklady, ). Funkčnost procesů závisí na jejich procedurách a zdrojích, všechny procesy mají interní či externí vstupy či dodavatele a zároveň zákazníky. Každý proces má také svého vlastníka. Vlastník procesu je pro každý proces právě jedna osoba, která je odpovědná za nastavení procesu, tzn. za způsob provádění procesu, za jednotlivé jeho aktivity a za dodržování uvedených postupů. Vstupem procesu rozumíme objekt, resp. jeho stav před působením zkoumaného procesu. Stává se předmětem působení procesu. Může to být např. přijatá poptávka, faktura, příkaz či plán, polotovar. Výstupem procesu je tento objekt, resp. jeho stav po působení tohoto procesu (uhrazená faktura nebo vrácená faktura, vyskladněný materiál, hotový výrobek, vyškolený pracovník). Definice procesu je jeho reprezentace ve formě, která umožňuje automatizované zpracování procesu, jakým je vykonání pomocí Workflow Management Systemu (WfMS) nebo modelování a simulace. Obsahuje především informace o sítí činností a jejich vztahů, kritéria zahájení, přerušení a ukončení činnosti, údaje o účastnících, aplikacích a datech. 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. Obr. 2.3: Metamodel procesu Aktivita (Činnost) Aktivita je popis části procesu, který tvoří jeden logický atomický krok v něm. Aktivita může být manuální (tedy taková, která nevyžaduje počítačovou podporu) nebo 9
automatizovaná (workflow). Workflow aktivita vyžaduje lidské a/nebo technické zdroje k pokračování vykonávání procesu. Automatizovaná aktivita je aktivita, která je schopna být automaticky prováděna pomoci WfMS 1 v průběhu podnikového procesu, kterého je součástí. Manuální aktivitu naopak není možno automatizovat, proto leží mimo působnosti WfMS. Role Role je soubor vzájemně se doplňujících dovedností. Role jsou přiřazovány k jednotlivým aktivitám s cílem umožnit jejich plnění v rámci vykonávání procesu. Role reprezentuje skupinu zdrojů, kde zdroj je prostředek nebo skupina prostředků nutných k vykonání aktivity. Zdroje mohou být lidské nebo technické (stroje, zařízení, ) Zdrojem mohou být např. vykonavatel aktivity, výrobní prostředek, informace, jiný proces nebo další vykonavatel. Vykonavatel procesu je ten, kdo provádí aktivity spojené s procesem. Při analýze a popisu procesu musí být jednoznačně identifikován pro různé účely na různých hladinách konkrétnosti. Role tedy definují chování, zodpovědnost a kompetenci jednotlivých osob nebo spolupracující skupiny osob. Jednotlivé lidské zdroje jsou mapovány na požadované role podle toho, jak jsou požadované kompetence slučitelné se schopnostmi těchto osob. 2.2.1 Workflow Workflow 2 je automatizace celého nebo části podnikového procesu, během kterého jsou předávány dokumenty, informace nebo úkoly od jednoho účastníka k druhému dle procedurálních pravidel. Workflow zprůhledňuje existující podnikové procesy a také pomáhá ke zjednodušení, zvýšení efektivnosti a zkrácení průběhu celého procesu. Díky automatizaci ale klade vysoké nároky na přesnost a jednoznačnost specifikace procesu. Rozdíl mezi podnikovým procesem a workflow je v tom, že workflow řídí k tomu určený software (ERP, WfMS). WfMS definuje, vytváří a řídí průběh procesu. Je schopen interpretovat definici procesu, komunikovat s účastníky workflow a v případě potřeby spustit další aplikace. Z technického hlediska je tak WfMS velmi zajímavý, neboť propojuje principy, metodiky a technologie různorodých oblastí informatiky a řízení koncept klient/server, elektronická pošta, databázové zpracování, řízení úkolů, dokumentů, znalostí, modelování a monitoring procesů, atd. Výzvou k implementaci podpůrného počítačového systému jsou v první řadě komplikované soustavy operací nebo transakcí, které je třeba organizovat a koordinovat nejen v závislosti na jejich pořadí, ale i na cílených výsledcích či případných selháních. Právě počítačové modely podnikových procesů specifikují všechny potřebné parametry pro provedení složitých procesů. Těmito parametry jsou jak individuální kroky (např. vložení zákazníka, dotaz v databázi, ), tak stanovení pořadí a podmínek, za nichž mohou být tyto kroky provedeny. Podmínkou může být např. datový tok mezi jednotlivými kroky procesu nebo určení odpovědnosti za krok procesu. 1 WfMS Workflow Management Systém (česky systém řízení workflow) jsou počítačové systémy, které zajišťují automatizaci workflow. 2 Workflow zatím nemá česky ekvivalent, proto je i v dalším textu používána anglická varianta. Do češtiny by tento výraz mohl být přeložen jako tok prací. 10
Infrastrukturu podniku vytváří kombinace všech jeho procesů. Tedy i těch, které nejsou zdokumentované, neboť jsou zkonstruované a uložené v hlavách zaměstnanců nebo v různých směrnicích, případně mohou být vyžadovány v rámci neformálních pravidel, zvyků apod. Některé postupy jsou tedy předávány mezi zaměstnanci pouze ústně. Jak vidíme, toto je ten nejméně vhodný způsob, jak s infrastrukturou zacházet. Jakýkoli pokus o zlepšení nebo rozšíření této infrastruktury vyžaduje dokumentaci. Jedině tak ji můžeme poznat, mluvit o ní, revidovat a aktualizovat. Také stojí za zmínku rychlost provádění procesů. Moderní řídící postupy kladou do centra pozornosti rychlost jednotlivých podnikových procesů, kterými jsou především vývoj produktu a zásobování. Tedy jde o rozhodující procesy v konkurenčním boji, které ovlivňují rozvoj podnikání. Vždy bychom měli myslet na to, že konkurence již může mít řadu workflow procesů implementovánu, a tím před námi získává náskok nejen v rychlosti zpracování, ale také v kvalitě. Od implementace WfMS lze očekávat zvýšení efektivity práce a snížení nákladů vyplývajících ze zavedení standardních postupů, zjednodušení podnikových procesů, zlepšení organizace a kvality práce, zdokumentování dosud jen v hlavách uložených postupů (což při odchodu zaměstnance výrazně zjednoduší zapracování jeho nástupce). Na základě vyhodnocení zdokumentovaných postupů je také jednodušší navrhovat změny. V každém okamžiku můžeme jednoduše zjistit stav jednotlivých případů, jejichž vyřízení se díky WfMS značně urychluje. Také v oblasti dokumentů má implementace WfMS své výhody veškeré změny v dokumentech či datech jsou autorizovány a průběh každého případu je uložen v historii, kterou nelze dodatečně měnit. WfMS samozřejmě podporuje i řízení kvality, které je důležitou složkou v konkurenčním boji. Typy workflow systémů Rozdělování produktů do skupin se společnou charakteristikou je běžné, pokud chceme získat lepší orientaci v širokém spektru produktů. I WfMS jsou kategorizovány a rozdělovány podle různých hledisek do skupin a typů. Základní dělení WfMS je z hlediska charakteru vykonávaných procesů. Tak můžeme workflow systémy rozdělit do čtyř základních skupin produkční, administrativní, kolaborativní a systémy ad hoc (viz obr. 2.4). Obr. 2.4: Typy WfMS z hlediska charakteru vykonávaných procesů Administrativní workflow slouží k vyřizování každodenní agendy. Tento typ zajišťuje rutinní administrativní činnosti, kterými jsou např. vystavení objednávky, vyřízení 11
reklamace, registrace vozidla, ve školství např. žádost o studium apod. V každé organizaci bychom našli spoustu procesů tohoto typu. Ty jsou velmi dobře strukturovatelné, často se opakují, nejsou složité, nemají moc alternativních možností a obvykle jsou vázány na standardizované formuláře. Pro administrativní workflow je typické, že téměř každý je jeho potencionálním účastníkem, z čehož vyplývá důležitost dostupnosti systému pro každého. Také by se mělo pamatovat na to, že účastníci administrativního workflow jsou jen příležitostní, že toto není jejich hlavní náplní. Proto je vhodné administrativní workflow co nejvíce zjednodušovat. Z charakteru tohoto typu workflow vyplývá, že podléhá časovým změnám a také, že se značné liší v jednotlivých organizacích. Příkladem administrativního workflow by mohlo být zpracování žádosti o služební cestu. Ačkoli jde o proces jednoduchý a snadno strukturovatelný, je jeho realizace v různých organizacích odlišná. Kolaborativní workflow podporuje týmovou spolupráci. Typická je v tomto případě přítomnost nějakého dokumentu, pomocí něhož si účastnící vyměňují své poznatky a který je vlastně výsledkem jejich společné práce. Kolaborativní procesy většinou obsahují nějaký opakovaný cyklus několika iterací téhož kroku, dokud se všichni neshodnou. Dokonce může dojít i k návratu do předchozí fáze. Příkladů kolaborativních workflow procesů najdeme v každém podniku několik může jít o tvorbu dokumentace, propagačního materiálu, změnu designu výrobku, návrh nové služby apod. Jedno mají tyto procesy společné vždy je jako výstup očekáván dokument, na kterém spolupracuje několik uživatelů a který prochází různými schvalovacími cykly. Další typickou vlastností kolaborativních workflow procesů je jejich značná dynamičnost, tzn. že některé kroky mohou být definovány až na základě průběhu předchozích činností. Pro kolaborativní workflow je typické, že účastníci procesu pracují společně, procesy jsou tak méně rigidní a je pro ně charakteristická dynamická změna definice. Pro dobré řešení je důležité, aby nebylo dotěrné a umožňovalo kreativitu pracovníků. Také musí být pružné, protože kreativní zaměstnanci často využívají předem nedefinované způsoby. Průchodnost těchto systémů nebývá obvykle důležitá. Příkladem kolaborativního workflow může být představení nového marketingového plánu pro uvedení nového výrobku podniku. Základní obrysy takového marketingového plánu dle postupů společnosti poskytuje pro tento případ určená šablona workflow. Marketingový manažer na základě svých znalostí, dostupných zdrojů a omezení zpracuje plán do podrobností. Poté mají manažeři z poboček, kteří mají lepší informace o daném regionu, možnost připomínkovat plán a formulovat své vlastní představy. V daném časovém rámci se pak realizuje globální plán, jehož stav musí být průběžně všem k dispozici. Dalším typem je produkční workflow. Ten podporuje hlavní podnikové procesy, tedy ty, které vytvářejí přidanou hodnotu k finálnímu produktu a na nichž závisí spokojenost zákazníka. Tyto procesy jsou také dobře strukturovatelné, jen jejich struktura může být relativně složitá. Výskyt takových procesů je častý, zaměstnanci jim věnují většinu své pracovní doby. Alternativní průběhy hlavních podnikových procesů jsou předem definovány a jejich počet je omezený. Tyto procesy jsou vlastně jistou obdobou výroby v továrně. Dělníci provádějí řadu činností, ale pouze jediná je hlavní, která charakterizuje jejich zařazení, profesi a definuje jejich úkoly. Podle toho vznikl i název pro tento typ workflow. 12
Produkční workflow je charakteristické tím, že pružnost změn definice procesu není důležitá, neboť jejich výskyt není častý. Navíc změna definice procesu není záležitostí koncových uživatelů, ale specialistů, což znamená, že změna definice procesu většinou souvisí s rozsáhlejšími změnami v celé organizaci. Produkční workflow vyžaduje integraci s dalšími podnikovými aplikacemi. Je zřejmé, že čím kratší je mezi jednotlivými kroky procesu prodleva, tím je celý systém produktivnější. Příkladem produkčního workflow může být zpracování požadavku na pojistné plnění, protože se jedná o často opakované zpracování standardního typu. Posledním typem WfMS z pohledu charakteru procesů je ad hoc workflow. Tento typ je založen na náhodnosti vzniku workflow procesu. Jedná se o procesy, jejichž průběh není předem popsán. Nemohou tak být standardizované, jsou většinou jedinečné, je možné a současně i nutné je definovat v okamžiku jejich vzniku. V jistém smyslu se podobají administrativním workflow, jen s tím rozdílem, že postup definice procesu má tendenci ke zpracování odchylek, výjimek a unikátních situací. Z toho plyne podstatný charakteristický rys těchto typů procesů zatímco celý proces je unikátní, jeho účastník se obvykle podílí na řadě podobných a opakovatelných podprocesů. Ad hoc WfMS vyžadují od uživatelů vysokou míru samostatnosti. Proto je nutná široká přístupnost workflow produktu a snadná definice workflow procesu. Příkladem ad hoc workflow může být požadavek zákazníka na uživatelsky přizpůsobenou výrobní linku dle vlastních speciálních požadavků. Dalším možným příkladem je odpověď na dotaz zákazníka, zpracování výroční zprávy nebo vyřízení nestandardní reklamace. V následující tabulce jsou shrnuty základní charakteristiky těchto čtyř typů WfMS z hlediska strukturovatelnosti, složitosti a opakovatelnosti procesů, které automatizují. Administrativní workflow procesy jsou dobře strukturované a předem definované není požadována taková průchodnost jako u produkčních WfMS nahodile a nepravidelně jsou tyto procesy využívány většinou uživatelů procesy jsou obvykle spojeny s formuláři nebo jinými dokumenty Kolaborativní workflow procesy nejsou příliš strukturovány důraz je kladen na zajištění řízené spolupráce účastníků procesu důležitá je snadná dynamická možnost změny procesu průchodnost procesu není rozhodující Produkční workflow podrobně strukturované procesy většina odchylek je předem ošetřena procesy jsou složité vyžadována rychlá odezva a vysoká průchodnost vyžadují integraci s aplikacemi organizace cílem je vysoká produktivita konkrétní procesy často využívá pouze vymezený okruh uživatelů Ad hoc workflow důležitá je snadná a rychlá definice procesu v okamžiku potřeby procesy definují koncoví uživatelé existuje možnost dynamických modifikací procesů požadavky na průchodnost jsou nízké cílem jsou nulové náklady a žádná správa Tab. 2.2: Porovnání základních typů workflow 13
Hranice mezi jednotlivými typy workflow systémů nejsou v žádném případě ostré a jednoznačné. Workflow produkty poskytují vždy do jisté míry funkcionalitu několika z nich. 2.2.2 Typy procesů U procesního řízení se zdůrazňuje jeho vhodnost pro opakované činnosti, které je možno separovat a následně popsat, tj. vytvořit a popsat model. Pokud tedy připustíme vhodnost procesu na opakované řetězce aktivit (činnosti), mohli bychom vzbudit dojem, že se jedná o primitivní řetězce činností, které jsou vykonávány rutinně, příp. naprogramovanými vykonavateli. To je ale falešný obraz, neboť hledání významných procesů v organizacích je vždy velmi obtížný úkol a přestože máme řadu metodik a postupů, jedná se vždy o sofistikované řešení. Jak již bylo řečeno, proces je sled kroků navržených za účelem vytváření výrobků nebo služby. Některé procesy mohou být plně obsaženy v jediné organizační jednotce firmy, ale většina procesů prochází napříč celou strukturou firmy. Procesy obvykle procházejí napříč funkčním uspořádáním firmy, což ale nezajišťuje jejich optimální řízení. Optimální řízení procesu znamená, že celý proces je řízen, monitorován a vykazován vlastníkem procesu. Ten, řídí proces s cílem naplnění požadavků zákazníka. Procesy mají z definice vždy své zákazníky. Ty můžeme rozdělit do dvou kategorií: externí zákazník - využívá výstupy procesů vně podniku, interní zákazník - využívá výstupy procesů uvnitř podniku a je interním subjektem podniku. Na základě stanovených cílů procesů a kategorie zákazníků lze procesy ve firmě rozdělit na: Řídící procesy - zahrnují v sobě činnosti spojené s definováním strategických cílů firmy a zajištěním realizace těchto cílů v rámci celé firmy. Mezi tyto procesy tedy řadíme stanovení cílů, operativní (krátkodobé) plánování, zpětnou kontrolu, odměňování a alokaci zdrojů. Hlavní procesy - vytvářejí produkt (výrobky a služby), který má hodnotu pro externího zákazníka. Jejich výsledkem je produkování výstupů, které požaduje externí zákazník. Hlavní procesy podporují hlavní podnikatelskou činnost firmy, která představuje naplnění strategických cílů a poslání firmy. Na základě konkrétních vizí a poslání firmy lze podle jejich významu hlavní procesy dále rozložit na klíčové procesy (např. střední strojírenský podnik má 10 až 15 klíčových procesů). Vedlejší procesy - jsou obdobou hlavních procesů, ale nejsou z hlediska poslání a vize firmy důležité natolik, aby se výrazným způsobem podílely na hlavní podnikatelské činnosti firmy. Vedlejší procesy mohou být prováděny souběžně s hlavními procesy nebo sdílenými procesy a jejich výstupy jsou určeny převážně pro externího zákazníka. Jako takové jsou žhavými kandidáty na vyloučení z vlastní činnosti firmy formou outsourcingu. Jako příklad můžeme uvést proces provozu autoškoly v rámci dopravní firmy. Podpůrné procesy - jejich výstupem je tvorba podmínek podporujících funkce hlavních procesů. Jejich charakteristickým rysem je tvorba přidané hodnoty pro externího zákazníka, tj. produktu, který externí zákazník sice nevidí, ale který je nezbytný pro efektivní řízení firmy. Typickým příkladem je kontrola jakosti. 14
Sdílené procesy 3 (sdílené služby) - vytvářejí podmínky umožňující funkci všech podnikových procesů. Vytvářejí hodnotu pro interního zákazníka, jako například proces fakturace. Na proces můžeme pohlížet také jako na hodnototvorný řetězec. Každý krok procesu (činnost, aktivita) by měl přidat jistou hodnotu výrobku nebo poskytované službě oproti kroku předchozímu. Rámcový procesní model Tradiční přístupy návrhu, vývoje a optimalizace podnikových procesů předpokládají, že manažeři a vlastníci procesů umí zformulovat své požadavky na budoucí, ještě neexistující proces. Také se počítá s tím, že změny uživatelských potřeb v průběhu vývoje procesu jsou minimální. Praxe ale ukazuje, že právě opak je pravdou. Zpravidla nejvíce požadavků na změny podnikových procesů vzniká teprve až při realizaci samotné optimalizace procesů. Z těchto pozdějších změn mimo jiné plynou zvýšené náklady a zbrždění realizace projektu. Je proto velmi vhodné, resp. nutné zajistit optimální definici požadavků od uživatelů již na začátku projektu optimalizace procesů. Tak může být počet změn v průběhu projektu minimalizován. Způsobem k dosažení tohoto cíle je důkladné zmapování podniku z pohledu procesního řízení, tj. provést podrobnou procesní analýzu. Mezi jednotlivými procesy existují vztahy, které jsou v každém podniku tvořeny jiným způsobem. Obecně ale lze tyto vztahy mezi procesy znázornit pomocí rámcového procesního modelu firmy zobrazeného na následujícím obrázku 2.5. Obr. 2.5: Rámcový procesní model V zásadě pro vztahy mezi procesy rámcového procesního modelu platí, že: řídící procesy řídí činnost všech procesů v rámci celé firmy, v rámci hlavních procesů probíhají procesy klíčové, podpůrné procesy zajišťují chod hlavních procesů, sdílené procesy jsou využívány všemi ostatními procesy firmy. 3 Některé prameny neuvádějí pojem sdílené procesy. Činnosti spojené s těmito procesy jsou chápány buď jako činnosti v rámci podpůrných procesů (vytvářejí podmínky pro podporu nejen hlavních procesů, ale všech procesů ve firmě), nebo činnosti představované sdílenými procesy neberou vůbec v úvahu. S pojmem sdílený proces v kontextu výše uvedené definice začal jako první v České republice pracovat Václav Kovalský. 15
3 Vizualizace procesů V dnešní době není prakticky možné přesně popsat složité jevy celého reálného světa, kde jsou propojeny jednotlivé systémy komplikovanými vazbami ať už ve své vnitřní struktuře nebo s okolními subjekty. Tyto systémy jsou také ovlivněny celou řadou vlivů, které lze jen stěží očekávat. Proto se jako jedinou možností ke studiu těchto složitých systémů jeví použití zjednodušených modelů, přičemž toto zjednodušení ale nesmíme chápat jako ochuzení. Modely podnikových procesů také slouží pro lepší představu manažerů a koncových uživatelů, protože znázorňují procesy ve firmě ve formě diagramu, což vede k jejich zpřehlednění a snadnějšímu pochopení. Modelem tedy rozumíme abstraktní obraz reality. Jeho cílem je ulehčení komunikace mezi manažery a analytikem či realizátorem. Také by měl posloužit správnému pochopení a vizualizovat procesy probíhající ve firmě v reálném světě. Model vlastně slouží jako srozumitelný prostředek vizuální kontroly mezi manažery a analytikem. Mezi analytikem a realizátorem pak slouží jako přesný a specifický model pro budoucí implementaci. Model se často označuje jako procesní mapa, procesní diagram, workflow diagram či diagram datových toků. Používá se zejména při modelování (tvorbě definice procesu), optimalizaci či simulaci. Takto vytvořený model také představuje vhodnou formu pro předkládání manažerům, kteří procesním mapám snadno porozumí. 3.1 Procesní modelování Modelování podnikových procesů začíná u hledání jejich elementárních prvků, což je úlohou procesního analytika. Informace o těchto prvcích lze získat z několika pramenů, kterými mohou být směrnice společnosti, normy, pozorování a měření přímo v podniku, organizační schéma, dřívější existující procesní mapy nebo procesní mapy obdobných organizací, rozhovory se zainteresovanými osobami (vlastníci, uživatelé, přímí účastníci procesů). Jednotlivé prameny mají různou důležitost pro různé účely tvorby procesní mapy. Někdy dokonce nemusí vůbec existovat. Procesní mapa může být sestavována nejen pro účely běžného procesního řízení existující organizace, ale také kvůli reengineeringu nebo redesignu podnikových procesů nebo přímo kvůli návrhu nových a dosud neexistujících procesů. Je vhodné, aby procesní analytik znal co nejlépe mapovanou organizaci a také, aby měl potřebný odstup, aby nedošlo k tzv. problému firemní slepoty. Z toho důvodu je vhodné, aby byla úloha procesního analytika přenesena na tým kvalifikovaných osob. Postup modelování lze shrnout do následujících 4 kroků: 1. Sběr dat pomocí rozhovorů, pozorování, směrnic, norem atp. 2. Uspořádání procesní mapy děje se obvykle v několika krocích (prvotní návrh je připomínkován a recenzován znalci jednotlivých procesů, po dodatečných úpravách proběhne další kolo připomínkování nové verze atd.) 3. Zdokumentování mapy procesní mapu je nutné doplnit slovníkem pojmů, vysvětlivkami a dalšími náležitostmi tak, aby tvořila komplexní soubor informací o organizaci a důkladně ji popsala. Opět je zde možnost postupovat v několika kolech připomínkování a recenzí. 16
4. Zpětná interakce ačkoli je zpětná vazba zahrnuta i v předchozích krocích, na závěr celého procesu tvorby procesní mapy je vhodné zkonzultovat ji nejen se znalci modelovaných procesů, ale také se zadavateli projektu apod. Při návrhu nových a neexistujících procesů, případně při redesignu nebo reengineeringu zpětnou interakci tvoří zkušenosti z implementace navržených procesů. 3.2 Nástroje pro mapování procesů Položme si otázku: Kdyby se přebudovávala firma od základu, co by se dalo udělat jinak?. Nejlepší odpovědí je procesní mapa. Obecně nezáleží na tom, bude-li odpověď ve formě vyprávění, diagramu toků nebo simulace procesní mapy, protože vždy je nutné definovat procesy, které potřebují vstupy (suroviny nebo potenciální zákazníky) a tyto mění ve výstupy (výrobky či služby). V posledních letech bylo vytvořeno mnoho softwarových nástrojů speciálně pro mapování procesů a toků. Většina těchto nástrojů popisuje proces a jeho aktivity pomocí grafických symbolů. Ke každému procesu či aktivitě mohou být připojeny jejich charakteristiky. Většina těchto nástrojů také nabízí analýzy typu ABC (Activity-Based Costing) nebo také simulační analýzy, což záleží na propracovanosti metodologie, kterou softwarové nástroje pro mapování procesů podporují. Tyto nástroje mohou být rozděleny do tří hlavních skupin: Nástroje znázornění toků. Tyto kreslící nástroje jsou na nejnižší úrovni a pomáhají popsat procesy přenesením slovního popisu do grafických symbolů. Tyto nástroje poskytují pouze omezené možnosti analýzy. CASE nástroje, které poskytují konceptuální rámec pro modelování hierarchie procesů a jejich popis. Jsou obvykle založeny na relačních databázích a obsahují funkce, které poskytují možnosti lineární, statické a deterministické analýzy. Simulační nástroje, které poskytují hlubší dynamickou analýzu spojitých nebo diskrétních dat. Umožňují vývojáři zobrazit, jak zákazník či jiný objekt prochází systémem. Simulační nástroje jsou zpravidla součástí lepších CASE. V této práci se budeme dále věnovat různým typům procesních map, jakožto základní notaci pro popis podnikových procesů na bázi síťového diagramu. 3.2.1 Procesní mapa Procesní mapa popisuje workflow analyzovaného systému ve formě nákresu na papíře nebo počítačového modelu. Je tvořena grafickými symboly spolu s jejich popisy v nejrůznějších formách. Účelem procesní mapy je srozumitelně a správně znázornit prvky a procesy v modelované organizaci. Proto je nutné dbát na její pečlivé zpracování. Obvykle se začíná sběrem a popisem elementárních činností probíhajících v modelovaném objektu. Přesto je nutné mít stále na paměti hierarchickou strukturu, do které se procesy tvořené těmito činnostmi budou řadit při použití různé rozlišovací úrovně. Ve výsledném modelu je na nejvyšší úrovni tzv. hlavní funkce organizace. Ta je v modelovaném podniku pouze jediná a nezastupitelná. Vyjadřuje hlavní smysl existence modelovaného objektu. Např. v podniku automobilového průmyslu by takovou hlavní funkcí bylo produkovat automobily. V grafickém vyjádření by byl na 17
této úrovni pouze jeden proces s názvem Produkování automobilů se vstupy (např. výrobní faktory) a výstupy (např. automobil) zobrazený podle zvolené notace. Na další rozlišovací úrovni dekomponujeme tento jediný proces na celou řadu procesů dle potřeby. Např. hlavní proces v automobilce bychom rozložili na procesy lisování, obrábění, montování, svařování, lakování. To samozřejmě nebudou jediné procesy v celé organizaci, ale mohou to být na této úrovni všechny procesy v útvaru Výroba. Procesní mapa může nabývat velkých rozměrů a může se stát značně nepřehlednou. V takovém případě se doporučuje použít strukturovanou analýzu procesů, při které se ke zmapování jednoho subjektu používá několik hierarchicky uspořádaných map. Na nejvyšším stupni je tedy použita jen velmi nízká rozlišovací úroveň. To znamená, že procesy jsou velmi zjednodušené. Procesní mapa se na vyšší rozlišovací úrovni stává složitější a komplexnější. Je možné do ní postupně přidávat útvary zabezpečující jednotlivé procesy, definovat spouštěcí mechanismy, vstupy a výstupy z a do okolí modelovaného objektu. Můžeme také rozkládat jednotlivé procesy na subprocesy až na úroveň elementárních procesů, které lze (nebo je účelné) členit už jen do činností. Použitá rozlišovací úroveň záleží na účelu, za kterým je procesní mapa pořizována. Procesní mapy jsou symbolickou reprezentací procesů a postihují jak produktivní, tak neproduktivní aktivity. Základním vyjádřením procesní mapy je vývojový diagram. Vývojové diagramy mohou mít různé podoby, od rukou kreslených po animované simulace. Obr. 3.1: Příklad vývojového diagramu (část procesu výroby jablečné šťávy) 18
Procesní mapa se dívá na výrobu produktů nebo dodání služeb z vyšší perspektivy. Mapa používá pět standardních symbolů k popisu procesu Operace (Operation), Inspekce (Inspect), Transportu (Transport), Čekání (Delay) a Uložení (Storage). Obr. 3.2: Značky procesní mapy Detaily každého procesu nejsou pro tuto mapu nutné, ačkoli často jsou do ní zahrnuty parametry času (trvání procesu) a vzdálenosti mezi procesy. Tím, že procesní mapy obsahují neproduktivní aktivity (inspekce, transport, čekání, uložení) a produktivní aktivity (operace), mohou být využity také k analýze efektivnosti série procesů a doporučit jejich zlepšení. Také poskytují standardizovanou metodu k dokumentování jednotlivých kroků procesu a mohou být použity jako testovací nástroj pro procesy, které se teprve budou zavádět. Procesní mapy mohou být použity k zobrazení jak výrobních procesů, tak procesů poskytování služeb. Jsou také základním nástrojem reengineeringu, stejně jako nástrojem modelování procesu. Na závěr této podkapitoly je uveden příklad podnikového procesu Vyřízení objednávky zboží, který bude modelován i ostatními nástroji. Tento model je jak vidíme na obrázku 3.3 velmi intuitivní, a proto je vhodný k předkládání manažerům, kteří nemusí mít předchozí znalosti z modelování procesů. Každý účastník procesu má svou plaveckou dráhu, do které jsou vloženy jeho činnosti. Obr. 3.3: Proces Vyřízení objednávky zboží jako procesní mapa 19
3.2.2 Diagram datových toků Diagram datových toků (DFD) je nástroj pro modelování systému, který ho zobrazuje jako síť procesů, které plní jednotlivé funkce a předávají si mezi sebou informace. DFD patří mezi nejrozšířenější nástroje strukturované analýzy. V literatuře jsou používána různá označení pro DFD, jako např. procesní model, workflow diagram, funkční model, bublinový model apod. DFD podává funkčně, resp. procesně orientovaný pohled na systém. Přitom se jedná o poměrně jednoduchý a intuitivní pohled, který lze zpravidla jednoduše vysvětlit zákazníkovi, který v oblasti modelování nemá předchozí znalosti. Tímto způsobem můžeme modelovat nejen toky dat a informací, ale také toky fyzických předmětů (materiálu). Diagramy se skládají ze čtyř základních typů komponent, kterými jsou terminátory, procesy, datové toky a paměti. Terminátor reprezentuje v diagramu externí entitu, se kterou systém komunikuje. Je zdrojem, resp. příjemcem všech informací, které do systému vstupují, resp. z něj vystupují. Terminátory jsou mimo modelovaný systém a mohou jimi být nejen osoby (uživatelé), ale i jiné softwarové systémy nebo hardwarová zařízení. Obsah terminátorů není možné změnit a mezi terminátory na diagramu by neměly být znázorněny přímé komunikační toky, protože tyto se nacházejí za hranicí studovaného systému a nejsou tedy předmětem analýzy. V diagramu datových toků je terminátor graficky znázorněn obdélníkem s názvem terminátoru uvnitř. Proces představuje jedinou část systému, která transformuje data, neboli mění určité vstupy na výstupy. Je vhodné (a některé metodologie to i přímo doporučují), aby byl každý proces označen jednoznačným identifikátorem a výstižně pojmenován. Názvem procesu je zpravidla jedno slovo, fráze nebo jednoduchá věta, jež vyjadřuje podstatu činnosti procesu. Někdy bývá v názvu procesu obsaženo jméno osoby, skupiny osob, oddělení, počítače nebo mechanického zařízení. V takovém případě označuje jméno procesu toho, kdo provádí nějakou činnost (transformaci dat), místo toho, aby vyjádřilo podstatu transformace. Každý proces v diagramu je buď specifikován, tj. existuje pro něj minispecifikace, nebo je dekomponován na další úrovni DFD, kde jsou znázorněny jeho subprocesy. Pak vznikají tzv. víceúrovňová DFD. Proces je v diagramu datových toků znázorněn kolečkem (elipsou) s názvem a identifikátorem uvnitř. Datový tok znázorňuje cestu, po které se pohybují data (informační pakety) z jedné části systému do druhé nebo mezi systémem a okolím. Datové toky reprezentují na rozdíl od paměti data v pohybu. V některých případech vyjadřují toky pohyb fyzických materiálů. U reálných systémů mohou být v diagramu zaznamenány současně toky, které vyjadřují pohyb materiálu i dat. Tok je v DFD graficky znázorněn šipkou, která ukazuje směr toku dat a je označena názvem, který je zvolen dle typu přenášených informací. Paměť je pasivní prvek systému, který slouží k uložení dat za účelem jejich pozdějšího zpracování. Modeluje data v klidovém stavu a nejčastěji je implementována souborem, databází či archivem. Jméno paměti je zpravidla voleno jako množné číslo od názvu uložených dat (entit). Čtení z paměti je nedestruktivní, obsah paměti se tedy nemění pokud paket s informací putuje po výstupním datovém toku z paměti. Paměti tedy představují místa, kde jsou po určitou dobu uložena data, aniž by ale byla nějak porušena jejich struktura, a odkud mohou být čerpány informace o nich. Tok vedoucí do paměti může mít význam zápisu, změny nebo zrušení. Může tedy vyjadřovat několik situací: jeden nebo více nových paketů je přidáno do paměti, jeden nebo více paketů je zrušeno nebo jeden či více paketů je změněno. 20
Jejich existence může mít několik důvodů - buď jsou vyžadovány uživatelem (tzn. že se jedná o data předávaná mezi procesy, které pracují v různých časových obdobích), nebo vznikají jako důsledek implementace (tzn. že se jedná o mezivýsledky při postupně transformaci dat). Do každé paměti vstupuje a vystupuje alespoň jeden datový tok. V diagramu je paměť graficky znázorněna dvěma vodorovnými čarami s názvem mezi nimi. Název externí entity Terminátor Název procesu Proces Název datového toku Datový tok Název paměti Paměť Obr. 3.4: Prvky DFD Rozšířenou variantou DFD je diagram datových toků s řízením (CDFD Control Data Flow Diagram). Vedle procesů transformujících data jsou v něm zakresleny i řídící procesy, jejichž účelem je řízení a synchronizace funkcí systému. Pomocí řídících procesů je možné upřesnit podmínky spuštění jednotlivých transformačních procesů. Řídící procesy komunikují s transformačními procesy pomocí vstupních a výstupních signálů, které představují speciální řídící toky. Vstupní signály přenášejí k řídícímu procesu informaci o splnění určité podmínky během transformace, výstupní signály naopak zasílají povely od řídícího k transformačním procesům. Tyto signály jsou na diagramu zakresleny přerušovanou čarou s názvem signálu a šipkou, která udává směr. Řídící proces je znázorněn kolečkem (elipsou) vykreslenou přerušovanou čarou s názvem a identifikátorem uvnitř. Podobně jako je každý proces popsán na nejnižší úrovni DFD minispecifikací, je každý řídící proces v CDFD specifikován pomocí stavového diagramu (STD), případně pomocí sady STD. Obr. 3.4: Příklad diagramu datových toků s řízením 21
Popsat procesy v podniku lze jen těžko realizovat pomocí pouze jednoho DFD/CDFD. Proto se pro lepší přehlednost používá reprezentace podniku na více úrovních. Doporučováno je hierarchické zpracování, kde je celý systém reprezentován pomocí stromové struktury, kdy kořenem stromu je nejvyšší úroveň pohledu na podnik. Každý proces na nejnižší úrovni DFD je popsán minispecifikací. Ta popisuje logiku každého procesu. Pro účely komunikace se zákazníkem či manažery a také pro analytickou práci nejsou minispecifikace popisovány programovacím jazykem nebo vývojovým diagramem, ale používá se spíše vybraná množina slov z přirozeného jazyka. I pro minispecifikaci platí několik pravidel: každému jednotlivému procesu na nejnižší úrovně DFD odpovídá jedna minispecifikace minispecifikace popisuje proces transformace vstupních dat na výstupní datové toky minispecifikace popisuje postupy a pravidla, kterými se daná transformace řídí, nepopisuje ale implementaci těchto pravidel Model podnikového procesu Vyřízení objednávky zboží v notaci DFD, který je na obrázku 3.5, obsahuje opět tři účastníky proces. Ti jsou zde zakresleni ve podobě terminátorů, kde jeden je použit dvakrát pro větší přehlednost celého modelu. Jde ale o jednoho a toho samého uživatele, který se podílí na dvou částech procesu. Obr. 3.5: Proces Vyřízení objednávky zboží znázorněný v DFD notaci 22
3.2.3 Unified Modelling Language (UML) Pro mnohé čtenáře bude z prezentovaných modelovacích nástrojů zřejmě nejznámější jazyk UML. Když mluvíme o tomto nástroji, je třeba si uvědomit, že počátky tohoto jazyka spadají do devadesátých let minulého století a že za tímto modelovacím jazykem stojí společnost OMG (Object Management Group). Prvotním cílem tohoto jazyka byla především podpora vývoje objektově orientovaných (programových) systémů a až později překročilo UML tento rámec a stalo se zcela obecným modelovacím nástrojem. UML je grafický jazyk sloužící k popisu elementů návrhu (zejména) softwaru. Grafická notace je také velmi vhodná pro ujasnění některých detailů, jež by jinak mohly být velmi snadno opomenuty. Dobře se dá také využít při snaze ukázat bigger picture (neboli něco jako pohled s odstupem) celého systému. S postupem času se však využití jazyka UML přesouvá spíše k modelem řízenému návrhu systému, kde se grafická notace stává základem pro vývoj softwaru. UML aktuálně využívá pro modelování 13 základních diagramů, které jsou rozděleny do dvou skupin: Diagramy struktury a Diagramy chování. Asi nejčastěji využívanou a nejznámější skupinou jsou Diagramy struktury (Structure diagrams). Jedná se o diagramy popisující strukturu navrhovaného systému. Dalo by se o nich říci, že jsou to diagramy, které nezahrnují rozměr času. Druhou skupinou jsou pak Diagramy chování (Behavior diagrams), které kladou důraz spíše na časové návaznosti akcí. Jejich podmnožinou jsou pak Diagramy interakce (Interaction diagrams) popisující interakce (tedy například předávání řízení či dat) mezi elementy. Do skupiny Diagramů chování se kromě jiných řadí i Diagram aktivit (Activity diagram AD, někdy překládáno též jako Diagram činností), který lze velmi dobře využít pro popis podnikových procesů, kdy se často využívá možnost modelovat paralelismus a větvení v rámci konkrétního zpracovávaného procesu. Diagram aktivit je v jazyce UML považován pouze za speciální případ stavového diagramu, který také patří do skupiny Diagramů chování. Rozdíl v přístupu k popisu chování spočívá v tom, že stavový diagram popisuje chování elementu modelu pomocí sekvence stavů (State), kde přechody mezi stavy jsou iniciovány událostmi (Event), zatímco AD pomocí sekvence aktivit (Activity State), kde přechody mezi aktivitami jsou iniciovány dokončením aktivit. To znamená, že pokud se systém nachází v nějakém stavu, je přechod do jiného stavu iniciován nějakou vnější událostí. U aktivity je přechod iniciován ukončením aktivity, přechody jsou vyvolány dokončením akce (jsou synchronní), tj. přechody probíhají automaticky. AD je tedy speciálním případem stavového diagramu, ve kterém všechny (nebo alespoň většina) stavů jsou aktivitami (Activity State) a zároveň všechny (nebo většina) přechodů (Transition) je iniciováno dokončením aktivit. Chování systému je v AD zachyceno ve formě sekvence činností řízených převážně interními událostmi. Pomocí AD modelujeme dynamický tok řízený nikoliv vnějšími událostmi, ale interními podněty. Poměrně elegantním způsobem je možné přiřazovat k jednotlivým aktivitám osoby (resp. aktory), které jsou za provedení patřičné aktivity zodpovědné. AD se nejčastěji používají pro popis implementace operací nebo procesů workflow, avšak lze je využít i pro specifikaci chování tříd, případů užití, atd. Jinak řečeno, používají se pro zápis business procesů (procesů vně vytvářeného systému), scénářů (scénářů komunikace mezi vytvářeným systémem a jeho vnějškem) i libovolných 23
procesů uvnitř i vně systému. Nahrazují do určité míry v jazyce UML neexistující diagramy datových toků a navíc mohou obsahovat symbol rozhodnutí. Diagramy aktivit spolu se stavovými diagramy popisují dynamiku vyvíjeného systému a podávají zjednodušený přehled jednotlivých kroků nějaké operace nebo procesu. AD se může skládat z následujících komponent: počáteční a koncový stav, aktivita (případně složená aktivita), přechod, alternativní větvení a spojení, paralelní větvení a spojení, objektový tok a realizátor. Počáteční a koncový stav Každý AD (včetně diagramů popisujících složené aktivity) obsahuje počáteční a koncový stav. Ve skutečnosti jsou tyto stavy speciálními pseudostavy, jejichž specifikace je omezena pouze na určení názvu. Počáteční stav znázorňujeme jako plné kolečko, pro konečný stav použijeme plné kolečko s bílým okrajem. Aktivita Aktivita je stav, který má specifikovánu určitou činnost spojenou se vstupem do stavu a připojen alespoň jeden přechod implicitně svázaný s událostí danou dokončením aktivity. Aktivita reprezentuje vyvolání operace, krok v podnikovém procesu nebo celý podnikový proces. Aktivita je určena svým názvem. Aktivita, která je atomickým výpočtem, je označována jako akce.v AD se aktivita značí oválem (obdélníkem se zaoblenými rohy). Aktivita Složená aktivita Vzhledem ke společnému konceptu diagramu aktivit a stavového diagramu je rovněž pro aktivity umožněno zavedení složených aktivit (Subactivity State). Vnořené aktivity a přechody mezi nimi jsou zachyceny vnořeným stavovým strojem, jež je možno zobrazit přímo ve vizuálním elementu aktivity nebo v separátním diagramu aktivit. Složená aktivita (Subactivity State) je dokončena dosažením koncového stavu ve vnořeném diagramu aktivit. Aktivita A Aktivita B Aktivita B1 Aktivita B2 Aktivita C 24