28. června 2011

Cloud a BPMS

S živelnou expanzí cloudových služeb typu Amazon Web Services (AWS), Azure (MS), FORCE.com či Google Web Toolkit nastává mírný uživatelský zmatek, co a jak vlastně použít, s prvními globálními výpadky náhlé vystřízlivění či rovnou panika. A jak do tohoto cloudového světa vlastně zapadají BPMS platformy? Z nichž ostatně se dnes již dobrá polovina pyšní také tímto přívlastkem? Upozorňuji, že následující pojednání není určeno plénu EA (Enterprise Architect) nýbrž BA (Business Architect), čili budu mluvit lidsky nikoliv technologicky.
Začnu tímto názorným obrázkem cloudové architektury:

Popis začnu nejprve polopaticky odspodu - tedy od fyzické infrastruktury, která ještě s vlastním cloudem nemá nic společného. Tedy kromě toho, že se bez ní žádný mračoun neobejde.
Datové centrum 
tvoří vyhražený prostor (dříve jsme tomu říkali servrovna) a jeho zázemí, tedy energetické zajištění (přívody napájení, diselagregáty, UPSky), komunikační linky a příslušné chlazení, vše taktéž zálohované a rozvedené do stojanů (skříně rack), kam už lze strčit železo (HW). Tedy servery, datová pole a aktivní prvky konektivity (což mohou být nejen nějaké přepínače, ale i linkové radiostanice či GPRS moduly) plus prostředky pro dohled.
V této 1. úrovni outsourcingu si můžete umístit vlastí železo nebo pronajmout fyzické či virtuální zařízení. Čili základní hosting. Zbavíte se tedy sice fyzické instalace, nikoliv však (úplně) příslušné administrace.
Infrastruktura jako služba (IaaS)
A už jsme v úrovni cloudu a jeho infrastrukturních služeb. Zářným příkladem jsou základní služby AWS nebo GoGrid. Zde máme k dispozici nejen výpočetní výkon a datová úložiště různého typu, ale především jejich pokročilou správu. Výkon je dynamicky škálovatelný či balancovaný na základě monitoringu zátěže a geograficky rozložitelný. Základem úspěchu tu jsou automatizované rafinované replikační procedury. Přístup vlastních aplikací k výkonu a datům je přes jednoduchá API rozhraní, k dispozici jsou i prostředky k řízení výkonnosti (SLA) a účtování takto realizovaných služeb. Čili IaaS využijete nejen pro svou vlastní potřebu, ale můžete takto poskytovat služby i svým (interním) zákazníkům a mít k fakturaci skutečně spotřebovaného výkonu exaktní data. Což je ideál všech controllingových očekávání v ICT.
Platforma jako služba (PaaS)
A jsme ještě o úroveň výše - ve vrstvě, kde vládne největší terminologický zmatek, v oblasti middleware. Už s příchodem komponentové architektury a naplno s prosazením SOA (servisně orientované architektury) jako existenčního principu udržitelného vývoje se ukázala nutnost prostředí, které odejme za cenu určité režie určité všem programům společné základní služby z aplikační vrstvy a bude je samo poskytovat a spravovat. A to včetně služeb týkajících se celého životního cyklu jejich aplikačního vývoje.
A jsme u vlastních BPMS, které dnes běžně zahrnují jak prostředky pro business modelování, orchestraci či kompozici existujících služeb, zadání pro nový vývoj (CASE a IDE), tak aplikační run-time. Čili vlastní procesní server, server pro řízení pravidel a workflow a jejich provozní monitoring v business kontextu (BAM). Plus prostředky pro abstrakci a sdílení služeb (ESB/MB) a jejich správu (repository), které dnes často zahrnují i řízení oprávnění (Identity Management).
Ve vrstvě PaaS v oblasti cloudu také existují největší přesahy nahoru i dolů. Najdeme zde většinu služeb MS Azure, stejně tak jako FORCE.com či skutečně úplné BPMS Appian. Jiné velké platformy jako cloud fungují spíše jako náhražka plnohodnotné vlastní instalace (SAP NetWeaver, IBM WebSphere, Oracle BPM).
Software jako služba (SaaS)
A jsme ve vlastní aplikační vrstvě, kde běží životodárné aplikace našeho podnikání. V ideálním případě už ne jako neprůhledné balíky s proprietárním rozhraním, ale jako soubor služeb s vysokoúrovňovým přístupem, které spolu komunikují nikoliv napřímo, ale právě prostřednictvím jednotné sběrnice.
V cloudové architektuře zde najdeme nejen průkopníky (SalesForce), ale s velkou mírou opatrnosti i zavedené ERP (SAP Business ByDesign).
Z hlediska BPM je takto poskytována již dobrá třetina modelovacích nástrojů, občas i s nějakou tou run-timovou platformou alespoň pro běh webových služeb. Ale o tom zase jindy.