Open source BPM za pakatel

Vzhledem k tomu, že se BPM problematika týká výhradně komerční sféry, jsou i BPM nástroje v drtivé většině komerční povahy – a zpravidla se jedná o velmi drahý software, což souvisí hlavně s přínosy, které má organizaci přinést – snížení nákladů, větší efektivitu a lepší organizaci práce, měření produktivity a výkonnosti procesů.

Open source BPM za pakatel


Pro velké firmy s vysokým obratem se jistě jedná o výhodnou investici, vynaložené investice se mohou rychle vrátit a riziko neúspěchu je relativně malé. O něco obtížnější situace už nastává u menších a středních firem, pro které je obrovská investice do drahého komerčního BPMS prakticky nedostupná. Možnou cestou pro sektor malých a středních organizací by tak mohlo být vystavět BPM systém pomocí volně dostupných technologií. Jaké jsou přednosti a úskalí tohoto přístupu se pokusím popsat v tomto článku.

Předně je třeba říci, že na rozdíl od komerčních řešení nebývají open source BPM platformy jednolitým komplexním nástrojem. Buďto se jedná o jakýsi soubor nezávislých komponent, nebo sice jeden celistvě se tvářící nástroj, ale s omezenou funkcionalitou (v porovnání s placenými alternativami). Nízké počáteční náklady jsou u těchto řešení vyváženy větším úsilím při prvotním osvojení. Vývojáři a procesní specialisté, kteří s nástrojem pracují, nejsou také tolik odstíněni od BPM technologií. Musí lépe rozumět jejich principům a standardům v oblasti modelování obchodních procesů. To ale může být i výhodou a přispět k lepšímu pochopení těchto technologií, zvlášť při počátečním seznamování s BPM.

Pojďme se nyní podívat, které komponenty by BPMS řešení mělo obsahovat a jaké se u nich nabízejí volně dostupné alternativy.

Každý BPMS by měl minimálně obsahovat návrhář procesů, prostředí pro jejich spouštění, administraci a podporu pro workflow (dlouhotrvající procesy s lidskou interakcí) včetně potřebného uživatelského rozhraní (Human Task Management). Velice důležitá je podpora business rules, čili pravidel podnikání uložených vně procesu (databáze, XML, Excel, skriptovací jazyk), která se používají pro validační a rozhodovací akce v jeho průběhu. Pokročilejší BPMS počítají s BAM (Business Activity Monitoring) a udržováním verzí dokumentů vážících se k procesům. Plné BPMS již vypadají jako kompletní ESB (sběrnice služeb), na níž jsou všechny komponenty napojeny, obsahují BI nástroj pro zpracování výsledků z BAM, repozitář metadat a další komponenty.

První komponentou je tedy návrhář procesů, pro kterou lze najít několik volně dostupných nástrojů: Je možné jmenovat například TIBCO Business Studio, BizAgi Process Modeler, Savvion Process Modeler nebo Intalio Designer, jenž je součástí Intalio BPMS. Současně jsou k dispozici velice komplexní nástroje, které nejsou sice zadarmo, jejich pořizovací ceny se však pohybují v řádech pouhých desítek dolarů, jako například Business Process Visual Architect či ActiveModeler Advantage.

Další komponentou, a to zřejmě vůbec nejdůležitější, je běhové prostředí, tedy interpret jazyka BPEL (Business Process Executional Language), ve kterém jsou procesy popsány. Nezbytné je i grafické rozhraní pro vytváření BPEL modelu, protože přímá editace BPEL (jazyk na bázi XML) by byla minimálně dosti nepohodlná.

Naštěstí i v této oblasti­ máme k dispozici volně dostupné nástroje, použít lze například Intalio Server, jBPM od JBoss či kombinaci nástrojů NetBeans (vývojové prostředí s BPEL návrhářem) a OpenESB (podniková sběrnice služeb s běhovým prostředím pro BPEL). Součástí těchto běhových prostředí je i konzole pro administraci procesů, zvlášť v případě nástroje Intalio velmi zdařilá a komplexní.

Trochu složitější je to s komponentou pro řízení lidské interakce s procesem. Jedná se o velmi specifickou funkcionalitu, jejíž spe­cifikace byla vytvořena poměrně nedávno (BPEL s lidskou interakcí s procesem nepočítá, tu specifikuje až rozšíření BPEL4People z července 2007). Přesto je k dispozici projekt Tempo Workflow, který využívá nástroj Intalio BPMS, jenž lze s jistými úpravami využít i v jiných nástrojích. OpenESB adresuje workflow pomocí komponenty Worklist Manager, která je ovšem ve stádiu vývoje a její použití by také znamenalo chybějící funkce doimplementovat. Poslední možností je vytvořit modul pro workflow (ať už jednoduchý či složitější) vlastními silami, nebo se automatického řízení lidských aktivit vzdát a nerozlišovat, zda k procesu v určitém bodě přistupuje člověk nebo program.

Důležitou součástí BPMS bývá podpora business rules, tedy pravidel externalizovaných z procesů. V této oblasti máme na výběr mezi několika kandidáty na poli open source, vyzdvihnout můžeme populární OpenLexicon či Drools od firmy JBoss.

Poslední význačnou komponentou, která bývá součástí komerčních BPMS, je nástroj pro business activity monitoring, který je nezbytný pro optimalizaci procesů. BAM už je disciplína ryze komerční povahy a v současné době není k dispozici žádné volně dostupné nebo dokonce open source řešení, pomoci nám mohou pouze různé volně dostupné nástroje pro reportováním, vykreslování grafů apod.

Při implementaci vlastního BPMS musíme mít jasnou vizi, tedy přesně vědět, co od něj očekáváme a jak toho hodláme docílit. Musíme se také připravit na celou řadu technických problémů při implementaci vlastních modulů a jejich integraci se zbytkem systému, složeným z komponent od různých výrobců. Přesto všechno ale lze říci, že implementace BPMS není zdaleka nic nemožného a máme-li k dispozici schopné IT oddě­lení, můžeme tímto přístupem ušetřit značné množství peněz. Dokladem toho je například BPMS řešení Kubiki, které jsme kompletně postavili nad open source technologiemi. Při implementaci open source BPM navíc získáte hlubokou znalost standardů a technologií na poli BPM a vyzkoušíte si, jak řízení procesů funguje v praxi. Tyto zkušenosti můžete velice ocenit, pokud se někdy později rozhodnete přeci jen nasadit placené BPMS řešení.

 

Autor pracuje jako Business Process specialista ve společnosti IBA CZ

 





Komentáře