Vývoj modelu SaaS Lukáš Burkoň VŠE Praha
[email protected] Abstrakt Pojem Software as a Service (SaaS) se stal revolučním směrem přerodu aplikací z klientské do on-line podoby. Samotný přesun většiny aplikací na web nemá pouze dopad na jejich technické zpracování a využívání, ale především na způsob jejich prodeje, resp. dodávky a prakticky celý business model. SaaS vycházející z konceptu ASP (Application Service Provisioning) se již na světě pohybuje takřka od počátku nového tisíciletí a prošel si jistým vývojem. Současná podoba Internetu, často řazena pod hlavičku Web 2.0, měla nemalý vliv na vývoj samotného modelu SaaS a konkrétních aplikací. Tento článek na základě dosavadního stavu trhu SaaS představuje vizi následujícího směru vývoje tohoto konceptu, jak z pozice technologické, tak i z business hlediska. Důraz je zde kladen na zvyšování granularity SaaS služeb, trh aplikačních služeb budoucnosti by měl nabídnout mnohem podrobnější nezávislé služby integrovatelné do komponovaných aplikačních balíků. Klíčová slova: Software jako služba, Software as a Service, SaaS, Web 2.0, webová služba, granularita služby, architektura orientovaná na služby, SOA Abstract The concept of Software as a Service (SaaS) became a revolutionary transformation of applications from the client to the on-line form. Actual transfer of most applications to the web has not only an impact on the technical background and usage of applications, but mainly on the way of their sales, and on their delivery and practically on the entire business model. SaaS based on the concept of ASP (Application Service Provisioning) appeared on the market at the beginning of the new millennium and has undergone a certain evolution. The current form of the Internet, often classified as Web 2.0, had considerable influence on the development of the Saas model and specific applications. This article based on the current state of the SaaS market presents a vision of the evolution of the SaaS concept, both from technological as well as business point of view. Emphasis is placed on the increasing of SaaS service granularity. The future of application services market should offer much more independent services that can be integrated into composite application packages. Keywords: Software as a Service, SaaS, Web 2.0, web service, service granularity, Service Oriented Architecture, SOA Budoucnost aplikačních služeb SaaS (Software as a Service) [1], jakožto nástupce klasického softwaru, se může ubírat různými směry, přičemž odhad budoucího vývoje je vždy do jisté míry spekulací. Na základě zkušeností z historie je však možné odhad budoucí situace na trhu předpokládat, zvláště pak pokud současná
28
SYSTÉMOVÁ INTEGRACE 4/2008
Vývoj modelu SaaS
situace do jisté míry připomíná situace z historie založené sice na jiných technologiích, avšak stojících na podobných principech.
Charakter služeb Základním pilířem pro vývoj trhu aplikačních služeb SaaS bude zajisté samotný rozvoj charakteru těchto služeb. V současné době je na trhu k dispozici celá řada různých SaaS služeb, jejich povaha však připomíná spíše klasické aplikace v tom smyslu, že se jedná o služby s nízkou granularitou. Aplikace na trhu dostupné se snaží oblasti, které řeší, zahrnout celistvě. Jejich technologický charakter tedy není složen z celé řady relativně nezávislých a velmi podrobných služeb, které by byly schopny fungovat i samy o sobě. Současné aplikace zpravidla fungují jako kompletní nedělitelný celek různých funkcionalit. Pro lepší pochopení pojmu granularita služby je možné si představit např. redakční systém, který bude nabízet standardní funkcionality jako správu webových stránek, správu mediálního obsahu, ankety, diskuze apod. formou hostování této aplikace jako služby (SaaS). Tato celistvá aplikace poskytuje balíček zmíněných funkcionalit konzistentně pohromadě, už je ale problém poskytnout formou SaaS pouze jednu z těchto vybraných funkcionalit, např. ankety, a zahrnout tuto externí funkcionalitu do vlastního webového řešení. Popsaný redakční systém je možné nazvat jako službu s nízkou granularitou, tzn. službu rozsáhlejší a špatně dělitelnou na podrobnější funkcionality. Pokud by bylo možné jednotlivé detailní funkcionality redakčního systému využívat nezávisle zvlášť a integrovat je do externích balíků, pak bychom o každé této funkcionalitě hovořili jako o službě s vysokou granularitou, tzn. o službě s vysokou mírou podrobnosti. Nízká granularita služeb má negativní vliv na konkurenční prostředí na trhu, jelikož jsou zákazníci povětšinou nuceni k výběru větších balíků od jednoho poskytovatele. Následný přechod k jinému poskytovateli obdobných služeb by byl z důvodů migrace dat a odlišné vnitřní logice funkcionalit velice problematický. Na druhou stranu je tento model výhodný z pohledu kompatibility služeb v rámci jednoho poskytovatele, jelikož je pravděpodobné, že jednotlivé aplikace od stejného poskytovatele budou na datové i funkční úrovni kompatibilní, což je pro zákazníka jistě výhodou. Zaplatí ale za to vázaností na jednoho poskytovatele, což tomuto poskytovateli upevní jeho monopolní postavení. Východiskem z této situace je výrazné zvýšení granularity jednotlivých aplikačních služeb. Bude-li na trhu k dispozici široká škála velmi granulárních služeb, konkurenční prostředí bude na vysoké úrovni, což zákazníkům přinese široký výběr z dostupných funkcionalit, nižší cenu služeb odpovídající jejich aktuálním potřebám a možnost relativně snadného přechodu k jinému poskytovateli služeb. Výsledné aplikace by pak byly jakousi kompozicí vybraných aplikačních služeb. Konkurenceschopnost těchto aplikací a služeb by byla závislá na jejich přidané hodnotě, která by mohla být realizována v podobě nových či nově zpracovaných služeb, inovativním propojení existujících služeb, ceně těchto služeb či příjemnému uživatelskému rozhraní výsledných aplikací. Myšlenka zvýšení granularity aplikačních služeb vychází z konceptu služeb webových, resp. ze SOA (Service Oriented Architecture) frameworků v organizacích. Technologické webové služby jsou zpravidla vysoce granulární a je možno je využívat relativně nezávisle na sobě. Úroveň podrobnosti však musí mít SYSTÉMOVÁ INTEGRACE 4/2008
29
Lukáš Burkoň
jistou míru. Mark Colan ve svém článku o webových službách [2] řeší míru jejich podrobnosti a doporučuje používat spíše nižší granularitu pro rozhraní webových služeb externích (tzn. pro služby poskytované vně organizace), zatímco vysokou granularitu pro služby interní v rámci organizace. Analogii z technologických webových služeb lze aplikovat i na služby aplikační. Aplikační služby, které klienti nepotřebují integrovat do svých informačních systémů, mohou mít nižší úroveň granularity a lze je tak připodobnit k externím webovým službám. V opačném případě se však již jedná spíše o analogii s interními webovými službami, tedy o vyšší podrobnost jejich rozhraní, která klientům umožní snadnou kompozici informačních systémů. Pro úspěch tohoto konceptu je stěžejní vzájemná kompatibilita jednotlivých aplikačních služeb. Kompatibilitu zajistí standardy na úrovní rozhraní služeb a jejich vnitřní logiky. Pro vzájemnou integraci funkcí a dat na webu již existuje celá řada standardů od klasických webových služeb, přes různé mikro-formáty jako RSS, až po robustnější formáty sdílení dat jako EDI apod. Je však velice pravděpodobné, že bude vznikat celá řada formátů nových. Integraci ale není možné realizovat pouze na úrovní technologické, ale i na úrovni logické, myšlenkové. Je totiž velice náročné propojovat aplikace, které na vybranou problematiku pohlíží z jiného úhlu a řeší ji proto jiným způsobem. Kromě formátů technologických tak bude potřeba definovat i metodiky myšlení. Jak je ale známo, se standardy v IT (a nejen tam) jsou vždy potíže závislé na vůli přijetí standardu trhem. Historie ukázala, že na úspěšnost přijetí standardu trhem nemá často zásadní vliv samotná kvalita standardu, ale spíše síla lobby, která následně standard na trhu prosadí. Pravděpodobně tedy budou zmíněné standardy prosazovány pomocí síly zásadních hráčů tohoto trhu jako Google (www.google.com), Salesforce.com (www.salesforce.com) apod. Doufejme ale, že se to nepodepíše na kvalitě, resp. otevřenosti potenciálních standardů, aby mohlo být dosaženo zmíněných cílů transformace charakteru služeb. K upevnění jednotné povahy aplikačních služeb by mohly přispět i standardizované platformy pro tvorbu a distribuci těchto služeb. Budou-li mít vývojáři aplikačních služeb k dispozici zdarma open-source platformu, pomocí níž budou moci jednoduše a rychle vytvářet služby nové, které navíc budou schopné hojně využívat již hotových služeb, bude se jistě jednat o silný tlak na vývojáře, kteří pak rádi po tomto nástroji sáhnou. Podobné snahy např. ze strany Google či Salesforce.com se již postupně realizují.
Subjekty na trhu V prostředí vysoce granulárních aplikačních služeb se jistě začne měnit i povaha jednotlivých tržních subjektů. Existující subjekty budou své chování měnit, zatímco se budou objevovat další nové subjekty zaobírající se novými otázkami transformovaného trhu. V popsaném prostředí budou zřejmě figurovat tyto subjekty: •
30
poskytovatel – vývojářské společnosti vytvářející a poskytující aplikační služby, společnosti poskytující podporu HW a SW platforem pro aplikační služby
SYSTÉMOVÁ INTEGRACE 4/2008
Vývoj modelu SaaS
•
zprostředkovatel / integrátor – konzultantské a vývojářské společnosti, které budou z dostupných služeb komponovat funkční celky a následně je nabízet zákazníkům
•
zákazník – zákazníci poptávající aplikační služby
Kategorizaci subjektů lze opět pozorovat na analogii webových služeb, v rámci nichž se využívá trojúhelníkový vztah subjektů konzumenta (Service Requester), poskytovatele (Service Provider) a zprostředkovatele (Service Broker) služby [3].
Poskytovatel Poskytovatelé aplikačních služeb budou zpravidla vývojářské společnosti, jež budou vyvíjet, spravovat a distribuovat vlastní aplikační služby. Zodpovědní tedy budou nejen za vývoj a průběžné aktualizace služeb, ale i za jejich chod na vlastních či pronajatých serverech. Poskytovatelé menší velikosti budou celý proces realizovat prostřednictvím vlastních sil, větší vývojářské společnosti budou spíše poptávat jednotlivá řešení od externích subdodavatelů, přičemž sami se budou soustředit na návrh služeb a koordinaci jejich vývoje. Větší poskytovatelé budou mít k dispozici díky svému finančnímu potenciálu i silnější technologie na úrovni hardwaru, bezpečnosti apod., což následně zajistí vyšší stabilitu, bezpečnost, a tudíž i důvěryhodnost nabízených služeb. Poskytovatele lze dále rozdělit na společnosti nabízející vývoj SaaS aplikací (Independent Software Vendor [4]), na společnosti podporující provoz SaaS aplikací na svých HW a SW platformách (Platform as a Service [4]) a na společnosti, které díky svému finančnímu potenciálu a know-how sdružují obě cesty.
Zprostředkovatel / integrátor Konzultantské společnosti se vžijí do role zprostředkovatele či integrátora aplikačních služeb. Z dostupných služeb tedy budou komponovat rozsáhlejší sofistikovaná řešení, která budou vyvíjet v podobě standardních balíčků či na míru konkrétním zákazníkům. Typizované řešení bude znatelně levnější, avšak nebude natolik sedět každé konkrétní firmě. Malé a střední firmy tedy spíše typizované řešení využijí a upraví dle jeho logiky vlastní business procesy, zatímco u rozsáhlejších organizací se bude spíše jednat o opačný proces, tzn. přizpůsobení aplikačního řešení na míru organizace, za což organizace následně zaplatí řádově vyšší cenu. Zmíněnou integraci služeb bude integrátor realizovat buď vlastními silami, nebo prostřednictvím subdodavatelů. Pro tento proces začne vznikat i řada programových nástrojů, které by znatelně usnadňovaly vzájemnou integraci služeb. Takto realizovaná integrace by v praxi mohla dospět až do stavu, kdy integrátor v patřičném integračním nástroji pouze definuje business procesy v rámci organizace a následně jednotlivé funkcionality, např. pomocí vizuálního modelování, vzájemně namapuje a takto vytvoří výsledný produkt, jakožto nabízí např. na bázi webových služeb produkt Application Integration Architecture společnosti Oracle (www.oracle.com).
SYSTÉMOVÁ INTEGRACE 4/2008
31
Lukáš Burkoň
Zákazník Budoucí svět bude dozajista ještě více závislým na IT, což zajistí poptávku po aplikačních službách ze všech sfér podnikání. Zákazníci si budou na základě vlastních potřeb, zkušeností a ekonomické úrovně vybírat vhodného poskytovatele služeb. Menší a střední firmy zpravidla využijí aplikačních služeb přímo od jejich poskytovatelů či typizovaných balíků integračních společností. Větší firmy pak budou spíše poptávat řešení na mírů od zkušeného integrátora či prostřednictvím vlastního IT oddělení. Větší společnosti nebudou však disponovat pouze vyššími nároky na funkce aplikačních služeb a míru jejich shodnosti s vlastními business procesy, ale budou poptávat i vyšší bezpečnost a stabilitu služeb, což jim nabídnou opět větší poskytovatelé či zprostředkovatelé aplikačních služeb, kteří dle smluvních podmínek ponesou za dodržení těchto nároků plnou zodpovědnost. Zvláště pro větší společnosti, bohaté na standardizované interní business procesy, budou zajímavé nové monitorovací nástroje. Integrace služeb a jejich nastavení na míru zákazníka by mělo obsahovat i definici business procesů organizace, které jsou jednotlivými službami pokrývány. Budou-li definovány tyto vztahy, je následně možné vyvinout nástroje, které budou sledovat kvalitu a dostupnost služeb a dle těchto dat vytvářet analýzy kvality zajišťování běhu firemních business procesů, což vedení společností umožní vytvořit si obrázek o dynamice chodu jejich organizace. V závislosti na těchto údajích následně bude možné také rozhodovat o posílení či oslabení využívání jednotlivých aplikačních služeb a optimalizovat tak chod organizace. V rámci interních IT procesů ve větších organizacích je možné takovéto nástroje nalézt již dnes pod pojmem Business activity monitoring [5].
Registry služeb Trh s vysokým počtem specifických služeb bude vyžadovat i nástroje vhodné k navigaci na tomto trhu. Začne tedy vznikat řada portálů věnující se problematice aplikačních služeb a v rámci těchto portálů budou katalogy dostupných služeb, jejich poskytovatelů a integrátorů. Zákazníci zde pak budou moci vybírat potřebné služby, poskytovatelé budou zase tyto portály využívat k vlastní prezentaci, za kterou jistě často i rádi zaplatí. Podaří-li se aplikační služby více standardizovat, mohly by vzniknout aplikační registry, které by jako v případě klasických webových služeb umožňovaly registraci a automatizované využívání dostupných aplikačních služeb. Každá služba by tedy definovala svůj účel, přístupové rozhraní, způsob využívání a cenu. Integrátoři by pak tyto registry využívali pro automatizovanou kompozici vlastních řešení prostřednictvím vlastních integračních nástrojů. Tvorba kompozitních aplikací by tak byla mnohem snazší a dynamičtější. V prostředí inteligentních aplikací by využívání těchto registrů mohlo být ponecháno logice samotné integrační aplikace. Paralela aplikačních služeb se službami webovými zmíněné aplikační registry připodobňuje k pojmu UDDI (Universal Description, Discovery, and Integration) [3], který představuje inteligentní technologii pro automatizované vyhledávání webových služeb pro vyplnění požadavků klienta. Každá webová služba spolu se svým rozhraním je detailně popsána prostřednictvím WSDL (Web services Description Language) [3] a zmíněné UDDI následně prostřednictvím těchto popisů vyhledává. Registry pro aplikační služby by pak mohly tento přístup plně převzít a 32
SYSTÉMOVÁ INTEGRACE 4/2008
Vývoj modelu SaaS
obdobným způsobem požadované služby vyhledávat a prostřednictvím příslušných rozhraní služby vzájemně komponovat. Obdobné řešení, avšak s nižší granularitou, je možné pozorovat na platformě Force.com (www.force.com) společnosti Salesforce.com, která vytváří univerzální prostředí pro distribuci vlastních SaaS aplikací i aplikací třetích stran a jejich vzájemnou kompozici, což klientům přináší jedinečný prostředek jak si snadno zkomponovat balíček aplikací na míru jejich potřebám.
Vliv na efektivnost firmy Dosavadní forma SaaS aplikací přináší jak svým zákazníkům, tak i poskytovatelům celou řadu výhod na poli zvýšení efektivnosti chodu organizace. Standardní výhody jako zvyšování agility firmy, snižování TCO (Total Cost of Ownership), zlepšování ukazatele ROI (Return on Investment) apod. již byly v literatuře mnohokrát popsány [1]. Nové prvky zmíněné v tomto článku představující náhled na budoucnost konceptu SaaS, jak bylo částečně v textu zmíněno, tyto výhody dále prohlubují. Představená hlavní myšlenka dalšího rozvoje SaaS, a to zvýšení granularity aplikačních služeb bude mít zásadní vliv na charakter celého trhu a technologické zázemí SaaS. Přínosem pro stránku efektivnosti firmy by měl tento posun především díky komoditizaci aplikačních služeb, což by mělo mít vliv na jejich cenu, dostupnost, zastupitelnost a snadnost jejich integrace do informačních systémů organizací. Hlubší profilování a segmentace trhu aplikačních služeb pak bude pro organizace přínosem především v rozšíření spektra nabídky těchto služeb, zvýšení konkurence na trhu a tím pádem i pozitivním vlivu na cenu SaaS aplikací. Poslední zmíněná myšlenka registrů aplikačních služeb by měla pro jednotlivé subjekty na trhu přinést výhody především ve formě zpřehlednění trhu a snazší technologické ale i business integrace a kompozice těchto služeb, což by mělo mít pozitivní dopad na agilitu organizací jak po stránce rychlosti integrace služeb, tak i po stránce ceny této integrace, resp. kompozice.
Shrnutí Budoucí vývoj konceptu SaaS se bude zřejmě odvíjet od evoluce technologického zázemí tohoto modelu, stejně tak jako to bylo v případě zrodu SaaS, který vycházel z modelu ASP. Klíčovým faktorem by zde mělo být zvýšení granularity aplikačních služeb a jejich vyšší standardizace. Díky tomuto vývoji bude možné využívat pouze úzce zaměřené služby a ne pouze robustnější kompaktní aplikační balíky, přičemž jednotlivé služby bude možné vzájemně snadno integrovat na různých úrovních do rozsáhlejších informačních systémů. Zvýšení granularity služeb nebude mít vliv pouze na technický charakter jednotlivých služeb, ale především na evoluci celého trhu s aplikačními službami. Měl by být rapidně navýšen objem konkurence, což by mělo mít příznivý vliv na kvalitu a cenu služeb. Zároveň budou přesněji vymezovány jednotlivé role účastníků na trhu, čemuž se budou přizpůsobovat i metodiky vývoje a provozu informačních systémů. Ověření platnosti zmíněných tvrzení je možné pozorovat na vznikajících službách společně pod hlavičkou Cloud Computing v rukou předních světových společností SYSTÉMOVÁ INTEGRACE 4/2008
33
Lukáš Burkoň
působící v oblasti SaaS. Společnost Salesforce.com např. nabízí využití své platformy Force.com, která klientům umožňuje využití a kompozici SaaS aplikací společnosti Salesforce.com a aplikací třetích stran. Amazon.com (www.amazon.com) pak nabízí svou službu Amazon Web Services (AWS), která zákazníkům umožňuje jednoduchou formou využit svých IT prostředků jako aplikační servery, datová úložiště apod. pro vlastní potřeby firem v libovolném rozsahu s flexibilními poplatky modelu pay-as-you-go, odpovídajícími množství spotřebovaných zdrojů.
Použité zdroje 1. 2.
3.
4.
5.
SaaS: What It Is and Why You Should Care, Technology Insight, 19.9.2006 www.ibm.com. Service-Oriented Architecture expands the vision of Web services, Part 1, Mark Colan, IBM Corporation, 21.4.2004, http://www.ibm.com/developerworks/library/ws-soaintro.html www.ibm.com. Service-Oriented Architecture expands the vision of Web services, Part 2, Mark Colan, IBM Corporation, 28.4.2004, http://www.ibm.com/developerworks/webservices/library/ws-soaintro2/ www.gartner.com. Introducing SaaS-Enabled Application Platforms: Features, Roles and Futures, Yefim V. Natis, Gartner, Inc., 14.8.2007, http://www.gartner.com/DisplayDocument?id=511952 www.gartner.com. Business Activity Monitoring: Calm Before the Storm, David W. McCoy, Gartner, Inc., 1.4.2002, http://www.gartner.com/resources/105500/105562/105562.pdf
Tento příspěvek vznikl za podpory MŠMT ČR v rámci grantového projektu GAČR 201/07/0455 „Model vztahu mezi výkonností podnikání, účinností podnikových procesů a efektivností podnikové informatiky“.
34
SYSTÉMOVÁ INTEGRACE 4/2008