»■$ ■MBiiflf.iL; ■ tišiniit v :■ ■ ' i vV'- ’ • ; '. , i. , v • . Testni centri ECDL ____________________________ ECDL [European Computer Driving License), ki ga v Sloveniji imenujemo evropsko računalniško spričevalo, je standardni program usposabljanja uporabnikov, ki da zaposlenim potrebno znanje za delo s standardnimi računalniškimi programi na informatiziranem delovnem mestu, delodajalcem pa pomeni dokazilo o usposobljenosti. V Evropi je za uvajanje, usposabljanje in nadzor izvajanja ECDL pooblaščena ustanova ECDL Foundation, v Sloveniji pa je kot član CEPIŠ [Council of European Professional Informatics Societies) to pravico pridobilo Slovenska društvo INFORMATIKA. V državah Evropske unije so pri uvajanju ECDL močno angažirane srednje in visoke šole, aktivni pa so tudi različni vladni resorji. Posebej pomembno je, da velja spričevalo v več kot osemdesetih državah, ki so vključene v program ECDL. Doslej je bilo v svetu izdanih že več kot tri milijone indeksov, v Sloveniji okoli 1700 in podeljenih okoli tisoč spričeval. Za testne centre ECDL so se v Sloveniji usposobile organizacije, katerih logotipi so natisnjeni na tej strani. E3 1A ustvarjalne komunikacije IZOBRAŽEVANJE INFORMACIJSKE STORITVE ITELES - ICES e-trade Elit tradel Zagreb ERO Simply logical UNIVERZA V LJUBLJANI Fakulteta za pomorstvo in promet vil M INFORMACIJSKE TEHNOLOGIJE /ČOPA GK) LJUDSKA UNIVERZA KOPER UNIVERSITA POPOLARE CAPODISTRIA ^Micro Team Mach spin UPI LJUDSKA UNIVERZA ŽALEC /i/yaxsu^ ftu/i hSI” en ei* p ^ VSEBINA UPORABNA INFORMATIKA 2004 ŠTEVILKA3 JUL/AVG/SEP LETNIK XII ISSN 1318-1882 H Uvodnik B Razprave Maja Pušnik, Matjaž B. Jurič, Marjan Maričko, Boštjan Šumak: Pomen spletnih storitev in BPEL pri orkestraciji elektronskega poslovanja 121 Martina Kern, Stjepan Pervan: Večpredstavne storitve prek štiripasovnih omrežij 132 Urška Rapaič Boštjančič, Vladislav Rajkovič: Analitično upravljanje odnosov s strankami za ponudnike telekomunikacijskih storitev 139 Gregor Polančič, Romana Vajde, Tatjana VVelzer, Boštjan Brumen: Analiza celovite zaščite spletnih aplikacij 147 Jurij Laznik, Matjaž B. Jurič, Ivan Rozman: Standardi za zagotovitev varnosti spletnih storitev 155 Nadja Damij, Ke Li: Transition into Virtual Organisation - does the practice Follovv the promising Theorg 1B2 B Obvestila Katarina Puc: Nova izdaja Islovarja 169 B l\love knjige Prenova in informatizacija poslovanja 171 B Koledar prireditev i7i UPORABNA INFORMATIKA ISSN 1318-1882 Ustanovitelj in izdajatelj: Slovensko društvo INFORMATIKA Vožarski pot 12 1000 Ljubljana Predstavnik Niko Schlamberger Odgovorni urednik: Andrej Kovačič Uredniški odbor: Marko Bajec, Vesna Bosilj Vukšid, Dušan Caf, Aljoša Domijan, Janez Grad, Jurij Jaklič, Milton Jenkins, Andrej Kovačič, Tomaž Mohorič, Katarina Puc, Vladislav Rajkovič, Heinrich Reinermann, Ivan Rozman, Niko Schlamberger, John Taylor, Ivan Vezočnik, Mirko Vintar, Tatjana VVelzer - Družovec Recenzenti prispevkov za objavo v reviji Uporabna informatika: Marko Bajec, Tomaž Banovec, Vladimir Batagelj, Marko Bohanec, Vesna Bosilj Vukšič, Dušan Caf, Srečko Devjak, Aljoša Domijan, Tomaž Erjavec, Matjaž Gams, Tomaž Gornik, Janez Grad, Mira Gradišar, Jože Gričar, Joszef Gyorkos, Marjan Heričko, Jurij Jaklič, Milton Jenkins, Andrej Kovačič, Iztok Lajovic, Tomaž Mohorič, Katarina Puc, Vladislav Rajkovič, Heinrich Reinermann, Ivan Rozman, Niko Schlamberger, Ivan Vezočnik, Mirko Vintar, Tatjana VVelzer - Družovec, Franc Žerdin Tehnična urednica Mira Turk Škraba Ublikovanje Bons Prelom Dušan VVeiss, Ada Poklač Tisk Prograf Naklada 700 izvodov Naslov uredništva Slovensko društvo INFORMATIKA Uredništvo revije Uporabna informatika Vožarski pot 12, 1000 Ljubljana www.drustvo-informatika.si/posta Revija izhaja četrtletno. Cena posamezne številke je 4.500 SIT. Letna naročnina za podjetja 17.800 SIT, za vsak nadaljnji izvod 11.900 SIT, za posameznike 5.900 SIT, za študente 2.800 SIT. Revijo sofinancira Ministrstvo za šolstvo, znanost in šport RS. Revija Uporabna informatika je od številke 4/VII vključena v mednarodno bazo INSPEC. Revija Uporabna informatika je pod zaporedno številko 6BB vpisana v razvid medijev, ki ga vodi Ministrstvo za kulturo RS. © Slovensko društvo INFORMATIKA Navodila avtorjem Revija Uporabna informatika objavlja izvirne prispevke domačih in tujih avtorjev na znanstveni, strokovni in informativni ravni. Namenjena je najširši strokovni javnosti, zato je zaželeno, da so tudi znanstveni prispevki napisani čim bolj poljudno. Članke objavljamo praviloma v slovenščini, prispevke tujih avtorjev v angleščini. Prispevki so obojestransko anonimno recenzirani. Vsak članek za rubriko Razprave mora za objavo prejeti dve pozitivni recenziji. O objavi samostojno odloča uredniški odbor. Prispevki naj bodo lektorirani, v uredništvu opravljamo samo korekturo. Po presoji se bomo posvetovali z avtorjem in članek tudi lektorirali. Prispevki za rubriko Razprave naj imajo dolžino do 40.000, prispevki za rubrike Rešitve, Poročila do 30.000, Obvestila pa do 8.000 znakov. Naslovu prispevka naj sledi ime in priimek avtorja, ustanova, kjer je zaposlen, in elektronski naslov. Članek naj ima v začetku do 10 vrstic dolg izvleček v slovenščini in angleščini, v katerem avtor opiše vsebino prispevka, dosežene rezultate raziskave. Abstract se začne s prevodom naslova v angleščino. Članku dodajte kratek avtorjev življenjepis (do 8 vrstic), v katerem poudarite predvsem delovne dosežke. Pišite v razmaku ene vrstice, brez posebnih ali poudarjenih črk, za ločilom na koncu stavka napravite samo en prazen prostor, ne uporabljajte zamika pri odstavkih. Revijo tiskamo v črno-beli tehniki s folije, zato barvne slike ali fotografije kot originali niso primerne. Objavljali tudi ne bomo slik zaslonov, razen če niso nujno potrebne za razumevanje besedila. Slike, grafikoni, organizacijske sheme ipd. naj imajo belo podlago. Po možnosti jih pošiljajte posebej, ne v datoteki z besedilom članka. Disketi z besedom priložite izpis na papirju. Prispevke pošiljajte po elektronski ali navadni pošti na naslov uredništva revije: ui@drustvo-informatika.si, Slovensko društvo INFORMATIKA, Vožarski pot 12, 1000 Ljubljana. Za dodatne informacije se obračajte na tehnično urednico Miro Turk Škraba. Po odločitvi uredniškega odbora o objavi članka bo avtor prejel pogodbo, s katero bo prenesel vse materialne avtorske pravice na Slovensko društvo INFORMATIKA. Po izidu revije pa bo prejel nakazilo avtorskega honorarja po veljavnem ceniku ali po predlogu odgovornega urednika. UVODNIK Spoštovane bralke, spoštovani bralci, v reviji Uporabna informatika spodbujamo k objavi zlasti avtorje, ki v svojih prispevkih predstavljajo svoje izkušnje pri uporabi sodobne informacijske tehnologije in rešitev. S takšno usmeritvijo želimo nadaljevati tudi v prihodnje. Zlasti odmevne in koristne za širši krog naših bralcev so praktične izkušnje na področju strateške vloge informatike pri zagotavljanju konkurenčne prednosti in poslovne uspešnosti organizacij. V našem poslovnem okolju je takšnih uspešnih projektov vse več, mnogi so sad lastnega znanja, o njih pa premalo beremo ali pa niso predstavljeni tako, da bi se iz njih lahko kaj naučili. Eno od tašnih področij je tudi nova, strateška vloga in pomen informatike ter menedžmenta informatike oz. službe za informatiko pri prenovi in informatizaciji poslovanja. Uporaba informacijske tehnologije in informacijski projekti so uspešni le v primeru, da ob načrtovanih vsebinskih, časovnih in stroškovnih parametrih vplivajo na dvig poslovne uspešnosti organizacije. Informacijska tehnologija omogoča doseganje strateških ciljev prenove poslovanja oziroma snovanje prenovljenih procesov, ki se bodo odvijali hitreje, ceneje in bolj kakovostno. Poslovna uspešnost organizacije je neposredno odvisna od uveljavljanja in zagotavljanja strateške vloge informatike. Na področju načrtovanja informatike je treba za doseganje strateških ciljev na projektih prenove in informatizacije poslovanja sproti usklajevati poslovni in tehnološki vidik. Strateško načrtovanje razvoja informatike predstavlja ključni sestavni del (in ne zgolj posledico) strateškega poslovnega načrtovanja. Po drugi strani pa se odgovori na vprašanja, vezana na poslovno vrednost informacijske tehnologije, ne skrivajo zgolj v informatizaciji. Nova vloga službe za informatiko organizacije izpostavlja razvijanje oz. izboljševanje informacijske arhitekture ter sprotno povezovanje in usklajevanje strategije informatizacije s poslovno strategijo in mora preseči vlogo zgolj - žal v mnogih organizacijah dominatnega -, servisa poslovanju. Cilj službe je ustvariti partnerstvo med menedžmentom in informatiko. Nedoseganje tega cilja predstavlja za informatiko enega poglavitnih omejevalnih dejavnikov vplivnosti na poslovanje. Vodja (direktor) službe (CIO) mora prevzeti pobudo, sprotno seznanjati menedžment organizacije o strateških možnostih in poslovnih priložnostih, ki jih nudi sodobna informacijska tehnologija, ter aktivno vplivati na njeno vključevanje v poslovno strategijo. Ključna funkcija "nove” službe za informatiko je načrtovanje, organiziranje, informatizacija in skrbništvo poslovnih procesov. Gre za funkcijo, ki na eni strani omogoča optimalen potek izvajanja procesnih aktivnosti, na drugi pa zagotavlja ustrezno informacijsko podporo izvajalcem teh aktivnosti. Takšno funkcijo v mnogih organizacijah poimenujejo kot službo za menedžment poslovnih procesov. Največkrat se kot organizacijska oblika razvije iz službe (sektorja, oddelka ipd.) za informatiko s ciljem obvladovanja osnovnih procesov podjetja oz. premostitve znanega razkoraka med menedžmentom in informatiko. Menedžment poslovnih procesov (MPP) združuje tri oddelke ali službe: službo za informatiko, službo za organizacijo ter službo za spremljanje in skrbništvo poslovnih procesov. Skladno s potrebo po takšnem preoblikovanju službe za informatiko v MPP moramo znotraj nove službe nadgraditi interdisciplinarna znanja (tehnološko, poslovno, sociološko idr.) in zaposlovati informatike s temi znanji. Toliko za spodbudo in razmišljanje o vaših izkušnjah, problemih in rešitvah na tem področju. Spoštovani, upam in pričakujem tudi ustrezne odmeve z vaše strani. Andrej Kovačič, odgovorni urednik Slovensko društvo INFORMATIKA vabi k udeležbi na posvetovanju Dnevi slovenske informatike 2005 Portorož, 20.-22. aprila 2005 Prihodnje leto bodo dnevi slovenske informatike prvi, odkar je Slovenija članica Evropske unije. S tem se posvetovanju, Slovenskemu društvu INFORMATIKA in Sloveniji odpirajo nove možnosti. Če smo na posvetovanjih preteklih let ugotavljali, da je srečanje informatikov, uporabnikov in raziskovalcev pomembno za izmenjavo izkušenj in spoznanj, lahko v novem okolju, ki podpira pretok znanja, kapitala, dela in blaga, najdemo priložnosti, da pokažemo, kdo smo in kaj znamo. Naša realnost je, da kot majhna država na nobenem področju materialne proizvodnje ne moremo igrati evropsko, kaj šele svetovno pomembne vloge. Izjema je znanje, ki je najpomembnejši pogoj za informacijsko družbo prihodnosti in kjer sta velikost države in številčnost prebivalstva relativno manj pomembna. Da smo se postavili ob bok razvitim državam Evrope, nam dokazujejo mednarodna priznanja za dosežke na področju informatike tako na poslovnem področju, v upravi in v znanosti. Posvetovanje Dnevi slovenske informatike 2005 bo zasledovalo dosedanje programske usmeritve kot najbolj pomembno neodvisno delovno srečanje informatikov in uporabnikov, ki se odlikuje tudi z najdaljšo tradicijo. Ob sodelovanju vseh, ki imajo interes in željo, nameravamo prikazati dosežke slovenske informatike. Ohranili bomo vse dele programa, ki so se izkazali zanimivi za udeležence posvetovanja in za predavatelje, posebej pa bomo upoštevali možnosti - strokovne in poslovne, ki jih omogoča in pospešuje novo okolje EU. Posvetovanje bomo popestrili z vabljenimi predavanji strokovnjakov iz tujine, posebej še tistih slovenskega rodu, s katerimi bi radi obdržali stike. Če smo za pretekla posvetovanja ugotavljali, da so imela pomembno strokovno in kulturno poslanstvo, velja to za prihodnja še toliko bolj. Prepričani smo, da bodo vsi sklopi OSI 2005 - strokovni del, delavnice, okrogle mize, poslovni del in ne nazadnje tudi družabni dogodki - za vse udeležence zanimivi vsaj toliko kot doslej. Pričujoča informacija je najava posvetovanja Dnevi slovenske informatike 2005 in obenem vabilo k sodelovanju bodisi z avtorskimi prispevki, ki podajajo izkušnje in spoznanja, bodisi kot udeleženec, ki želi dobiti pregled nad stanjem in možnostmi informacijskih tehnologij, pa tudi kot pokrovitelj, ki želi videti nove obraze ter postati in ostati viden v prihodnje. Torej - na svidenje v Portorožu! Niko Schlamberger, predsednik Slovenskega društva INFORMATIKA RAZPRAVE I Pomen spletnih storitev in izvajalnega jezika poslovnih procesov BPEL pri orkestraciji elektronskega poslovanja Maja Pušnik, Matjaž B, Jurič, Marjan Heričko, Boštjan Šumak Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko, Inštitut za informatiko, Smetanova ulica 17, Maribor Maja.Pusnik@uni-mb.si Povzetek Spletne storitve pokrivajo tehnični vidik izmenjave dokumentov XML in predstavljajo tehnološko podlago elektronskemu poslovanju. Leto pa ni samo izmenjava dokumentov, temveč koordinirano sodelovanje med partnerji, kar zahteva natančno določeno zaporedje aktivnosti. Tehnologija BPEL (Business Process Execution Language), ki bo predstavljena v prispevku, omogoča deklarativno orkestracijo in koreografijo poslovnih procesov, katerih preoblikovanje in posodabljanje ne zahteva vključevanja razvijalcev informacijskih sistemov, temveč jih lahko opravijo poslovni akterji sami. V prispevku bomo preučili vlogo in pomen tehnologije BPEL, analizirali model delovanja in jo primerjali s sorodnimi tehnologijami. Identificirali bomo prednosti in slabosti tehnologije BPEL in podali napotke za izboljšavo identificiranih slabosti. Analizirali bomo še strežnike in orodja, ki omogočajo uporabo BPEL. Abstract The importance of in/eh Services and BPEL in e-business orchestration Web Services include the technical vievv of XML document exchange and represent a technological basis for e-business. Hovvever, e-business is not only about document exchange, but also about a coordinated collaboration betvveen partners, defined in a specific seguence of activities. The BPEL technology (Business Process Execution Language), presented in this paper, enables declarative orchestration and choreography of business processes, vvhere the reshaping and updating does not reguire the involvement of information system developers, in fact business actors can manage it alone. In the paper, we vvill study the role and importance of the BPEL technology, analyze the activity model and compare it with other related existing technologies. We vvill identify advantages and disadvantages of the BPEL technology and present instructions for improvements of identified vveaknesses. Furthermore, vve vvill analyze several servers and tools, vvhich enable BPEL usage. 1 Uvod Dejstvo, da elektronsko poslovanje lahko zniža stroške poslovanja in ponudi nove, učinkovitejše metode sodelovanja med podjetji in organizacijami, je znano že dalj časa. Uresničitev pa je povezana z obstojem ustrezne infrastrukture, tehnologij in orodij, katerih skupna značilnost mora hiti dostopnost. To pomeni uporabo internetnih povezav za infrastrukturo in uporabo enostavnih tehnologij, ki ne bodo potrebovala prevelikega vlaganja v izobraževanje in razvoj. Da je pri tem potrebno zagotoviti tudi ustrezno varnost, zanesljivost in hitrost, ni treba posebej poudarjati. Za razliko od tehnologije EDI (Electronic Data In-terchange) in drugih rešitev temeljijo sodobne tehnologije za razvoj informacijske podpore elektronskega poslovanja na tehnologiji XML (Extensible Marku p Language) in spletnih storitvah (Web Servi- ces). Niso tako kompleksne kot obstoječe rešitve, to pa pomeni manj truda za učenje in s tem hitrejšo in cenejšo uporabo. Ta dejstva odpirajo vrata informacijskim rešitvam za elektronsko poslovanje tudi v majhnih in srednje velikih podjetjih. XML in spletne storitve nudijo tehnološko osnovo za izmenjavo elektronskih dokumentov in sporočil. Da bi dosegli koordinirano zaporedje izvajanja aktivnosti med sodelujočimi partnerji, potrebujemo tehnologije za opis orkestracije in koreografije aktivnosti, ki so izpostavljene prek spletnih storitev. V prispevku se bomo osredinili na trenutno najpomembnejšo tehnologijo - tehnologijo BPEL, imenovano tudi BPEL4VVS (Business Process Execution Language for VVeb Services). V prvem delu prispevka bomo opisali vlogo spletnih storitev pri razvoju rešitev za elektronsko poslovanje. Identificirali bomo gradnike, ki jih tehnologija spletnih storitev ne naslavlja neposredno, kot so opisi profilov podjetij in pogodb ter orkestracija in koreografija poslovnih aktivnosti. Na tem področju še ni popolnega poenotenja, zato bomo v nadaljevanju identificirali konkurenčne tehnologije in jih primerjali. Posvetili se bomo tehnologiji BPEL, katere vlogo, pomen in model delovanja bomo natančno preučili na primeru. Prikazali bomo način orkestracije enostavnega elektronskega poslovnega procesa, modeliranega s pomočjo spletnih storitev. Poslovni proces bo v prispevku opisoval izmenjavo sporočil XML med dvema podjetjema po definiciji implementirane poslovne logike. Poslovni proces torej naslavlja model oziroma scenarij, ki se mora izvršiti, da lahko govorimo o poslovni funkcionalnosti. S primerjavo tehnologij WSCI (Web Services Chorcography Interface), BPML (Business Process Modelling Language) in ebXML BPSS (Business Process Specification Schema) bomo identificirali prednosti in slabosti tehnologije BPEL ter analizirali najpomembnejše strežnike in orodja. 2 Od spletnih storitev do orkestracije Spletne storitve naslavljajo tehnične vidike povezovanja podjetij. Njihovo poslanstvo je integracija šibko sklopljenih informacijskih sistemov; združujejo torej skupino tehnologij XML, SOAP (Simple Object Access Protocol), VVSDL (Web Services Description Language) ter UDDI (Universal Description, Discovery and Integration). Pomen spletnih storitev je predvsem v povezljivosti in neodvisnosti od okolja, v katerem so razvite. Njihov neposredni namen je zagotavljanje poslovnih funkcionalnosti prek spleta, vse bolj pa se uporabljajo interno znotraj podjetij. S pomočjo spletnih storitev enostavno pošiljamo različne XML dokumente in omogočimo komunikacijo znotraj podjetja in med različnimi podjetji. Spletne storitve so komponente, ki komunicirajo prek protokola SOAP na sinhron in asinhron način. Za oblikovanje sporočil, ki si jih izmenjujejo, se uporablja jezik XML. Ustrezno varnost pri izmenjavi omogoča t. i. varnost spletnih storitev (WS Security), ki združuje digitalni podpis, enkripcijo in prenos varnostne vsebine. Spletne storitve definirajo tudi vmesnike, ki ponazarjajo operacije oziroma storitve, ki jih nudijo. Opisni jezik VVSDL specificira podatke, kot so podatkovni tipi, sporočila, operacije, povezave, vrata in tipi vrat ter same storitve, ne vključuje pa poslovnega vidika, vpogleda v vsebino storitev, načina uporabe, vrste sodelovanja ter podrobnosti o obnašanju in vlogah spletne storitve v kompleksnejših sodelovanjih [15]. Ključni gradnik je tudi register UDDI, v katerem ponudniki registrirajo spletne storitve in omogočijo, da jih odjemalci najdejo in uporabijo. Odjemalec si pridobi VVSDL in oblikuje posrednika, ki naredi storitev lokacijsko neodvisno. Za povpraševanje po UDDI se uporablja protokol SOAP, omogočeno pa je povpraševanje po imenih (bele strani), tipu storitve (rumene strani) in načinu, na katerega bi želeli opravljati elektronsko poslovanje (zelene strani). 2.1 Tehnologije za opisovanje poslovnih procesov Spletne storitve pa samostojno ne zagotavljajo ustrezne poslovne logike, ki jo pričakujemo od elektronskega poslovanja. Zato so vse bolj pomembne tehnologije, ki omogočajo sestavljanje in združevanje spletnih storitev v ustrezne scenarije oziroma v poslovne procese. Njihova bistvena naloga je vpeljevanje poslovne logike v skupino ločenih spletnih storitev, ki zagotavljajo ločeno funkcionalnost. Slika 1 prikazuje nabor tehnologij za opisovanje poslovnih procesov [14]. Trenutno aktualne so štiri tehnologije: ebXML (electronic business XML), BPEL (Business Process Execution Language), BPMI (Business Process Management Ini-tiative) in VVSCI (Web Service Choreography Interface), ki so prikazane po arhitekturnih nivojih gradnje elektronskih procesov, poudarek pa je na orkestraciji in koreografiji javnih ter privatnih poslovnih procesov. Vodoravna os predstavlja omenjene tehnologije, ki podpirajo različna podjetja oziroma organizacije. Navpična os predstavlja nivoje elektronskega poslovanja, od zahtev po izmenjavi podatkov, varnosti, opisovanja storitev, objavljanja in iskanja poslovnih procesov pa vse do koreografije in orkestracije spletnih storitev ter sklepanja raznih dogovorov in pogodb med podjetji. Predstavljene tehnologije izpolnjujejo različne zahteve elektronskega poslovanja, vse pa temeljijo na spletnih storitvah. Iz slike je razvidno, da so tehnologije BPEL, BPMI in VVSCI zasnovane na osnovnem naboru tehnologij spletnih storitev, kar vključuje SOAP, VVSDL, UDDI in WS Security. Naslanjajo se tudi na koordinacijo spletnih storitev (VVS Coordination) in transakcijo spletnih storitev (VVS Transaction), ki naslavljata koordinacijo in transakcijsko integriteto. Tehnologija ebXML pa li Pogodbe in dogovori L CPA (Collaboration Protocol Agreement) Orkestracija in koreografija javnih in privatnih poslovnih procesov BPSS (Business Process Specification Schema ) BPEL (Business Process Execution Language) BPML (Business Proses Modelling Language) BPMN (Business Proses Markup Notation) WSCI (Web Service Choreography Interface) Transakcije in koordinacija WS Transactions in WS Coordination Odkrivanje poslovnih procesov RR (Registry and Repository) SPOL (Business Process Query Language) UDDI (Universal Description, Discovery and Integration) Opisovanje storitev CPP (Collaboration Protocol Profile) WSDl (Web Services Description Language ) Varnost WS Security (Web Services Security) Sporočanje MSS (Messaging Service Specification) SOAP (Slmple Object Access Protocol) Tehnologija ebXML (electronic business XML) BPEL4VVS (Business Process Execution Language) BPMI (Business Process Management Initiative) VVSCI (VVeb Service Choreography Interface) Podpora v industriji OASIS, UN/CEFACT IBM.BEA, Microsoft BPMI, Intalio, SAP... BEA, Intalio, SAP AG, Sun Microsystems Slika 1 Tehnologije za opisovanje poslovnih procesov dodaja lastne specifikacije, ki naštete standarde dopolnjujejo. Za prenos sporočil in dokumentov uporablja ebXML Messaging Service Specification (MSS), ki dopolnjuje SOAP s priponkami in omogoča dodatne storitve pri prenosu sporočil, kar povečuje kakovost storitev. Registre UDDI nadgrajuje ebXML Registry and Repository (RR), ki omogoča hranjenje bogatejše vsebine od UDDI. Slednje olajša iskanje povezav med partnerji. Tehnologija ebXML vpeljuje tudi nekaj specifičnih konstruktov, ki jih v drugih tehnologijah ne najdemo. To so profili podjetij (Collaboration Protocol Profile - CPP) in pogodbe med podjetji (Collaboration Protocol Agreement - CPA) ter komponente jedra, s katerimi oblikujemo standardne poslovne dokumente (Core Components - CC). Za opis poslovnih procesov ebXML ponuja BPSS - Business Process Specification Schema [18]. Tehnologije BPEL, BPMI, VVSCI in BPSS tako nudijo načine za opis poslovnih procesov, predstavljenih prek spletnih storitev, uporabljamo pa jih za potrebe elektronskega poslovanja ali pa so zgolj integracije med informacijskimi sistemi. Ker na tem področju še ni bil dosežen konsenz, je smiselno pregledati še ozadje. BPEL je bil oblikovan na pobudo podjetij Microsoft in IBM, in sicer kot združitev obstoječih jezikov XLANG in WSFL (Web Service Flow Language). Podpira ga industrija, vključen pa je tudi v organizacijo OASIS. BPSS (del ebXML) nastaja pod okriljem OASIS in UN/CEFACT in omogoča specifikacijo poslovnih procesov, da bi se ti implementirali ob uporabi ostalih tehnologij ebXML. Jezik BPML je del iniciative BPMI (Business Process Management Initiative), podprt od podjetij Inta-lio, Sterling, Sun in CSC in nudi široko podporo za definiranje poslovnega procesa podjetja. Je komplementaren s tehnologijo BPSS. Medtem ko BPSS nudi standarden način za opisovanje javnega vmesnika za elektronske procese, nudi BPML standarden način za opisovanje njihovih privatnih implementacij. BPMI ponuja več kot zgolj orkestracijo in koreografijo poslovnih procesov. Vključuje grafično notacijo za sestavljanje procesov BPMN (Business Process Markup No-tation) in lastno iskanje po registrih BPQL (Business Process Query Language). Jezik WSCI je bil oblikovan na pobudo podjetij BEA, Intalio, SAP in Sun, vključen pa je pod okrilje konzorcija W3C (VVorld VVide Web Consortium). Je opisni jezik, ki opisuje tok sporočil, izmenjanih med spletnimi storitvami v koreografiranih interakcijah [15]. Ključni koncepti so si pri predstavljenih tehnologijah zelo podobni, način obravnave poslovnih procesov pa se razlikuje. Zato je treba izbrati ustrezno tehnologijo dovolj zgodaj v procesu razvoja informacijske podpore za e-poslovanje. Pri opisovanju poslovnih procesov s pomočjo teh tehnologij se pojavljata dva pojma; orkestracija in koreografija spletnih storitev. V nadaljevanju bomo poiskali razliko med njima. 2.2 Orkestracija in koreografija Upravljanje spletnih storitev ima velik pomen v fazi, ko sistem elektronskega poslovanja že deluje in izmenjava sporočil ter dokumentov predstavlja pomemben del poslovnih procesov. Organizacije potrebujejo infrastrukturo za upravljanje in nadzor aplikacij, sistemov in mrež, kar jim zagotavlja fleksibilni nadzor nad poslovnimi procesi in nadzor nad specifičnimi koraki v procesu. Potreba po upravljanju je vedno bolj pereča, saj se spletne storitve povezujejo v večje in pomembnejše poslovne procese. Osnovni protokoli spletnih storitev zadoščajo zahtevam koor- <> Proces 1 <> Proces 2 << poslovni proces >> Proces 3 dinacije interakcij med sistemi in vmesnikov. Potrebo po popolni kompoziciji spletnih storitev rešujeta orkestracija in koreografija [12]. Obe tehniki se nanašata na kompozicijo spletnih storitev za gradnjo dinamičnih in fleksibilnih poslovnih procesov. Orkestracija definira interakcijo in procesni tok med spletnimi storitvami in poslovnim procesom. Koreografija pa definira tok izmenjave informacij med množico udeležencev. Orkestracija in koreografija sta med seboj povezani [10]. Koreografija je sodelovalnega tipa in omogoča vključevanje vsem udeležencem. Sledi vrstnemu redu sporočil eksternih spletnih storitev [12], vključno s strankami, dobavitelji in partnerji. Koreografija je značilno povezana z javno izmenjavo sporočil, ki se izmenjajo med več spletnimi storitvami [12]. Slika 2 prikazuje skico koreografije poslovnih procesov, in sicer vključuje tri različne poslovne procese enega ali več podjetij, ki za izpolnitev poslovnih ciljev med seboj komunicirajo in si izmenjujejo sporočila, predvsem v obliki XML. Poslovni procesi ne razkrivajo svoje implementacije in poslovne logike, komunicirajo le na nivoju vmesnika, pri čemer sprejemajo in oddajajo različna sporočila. Orkestracija se nanaša na izvršilne poslovne procese, ki lahko sodelujejo z internimi in eksternimi spletnimi storitvami na nivoju sporočanja. Vključena je poslovna logika in vrstni red izvrševanja opravil. Orkestracija vključuje upravljanje transakcij med individualnimi storitvami, vključno s potrebnim obravnavanjem napak, kot tudi z opisovanjem splošnega procesa. Nanjo lahko gledamo kot na konstrukt med avtomatiziranim procesom in individualnimi storitvami, ki odrejajo korake v procesu. Pomeni kontrolo s perspektive enega udeleženca. Slika 3 prikazuje skico orkestracije poslovnih procesov [10], kjer je najpo- <> << poslovni proces>> Proces 1 <> Proces 3 <> Proces 2 Slika 2: Koreografija poslovnih procesov Slika 3 Orkestracija poslovnih procesov membnejši del orkestracijski strežnik, implementiran na strani izbranega podjetja. Orkestracijski strežnik določa potek izvajanja različnih poslovnih procesov, ki so lahko sestavljeni iz domačih ali tujih spletnih storitev. Na podlagi poslovne logike odreja vrstni red, pogoje in obravnavanje izjem in napak. 3 Tehnologija BPEL Tehnologija BPEL združuje znanje tehnologij WSFL (Web Service Flovv Language) in XLANG. Podprta je s spletnimi transakcijami in spletno koordinacijo. Vključena je v konzorcij OASIS, ki je v podporo omenjeni tehnologiji oblikoval tehnični komite VVSBPELTC (VVeb Services Business Process Execution Language Technical Committee), ki nadaljuje delo na specifikacijah BPEL in vključuje množico velikih podjetij [17J. Tehnologija BPEL igra pomembno vlogo pri orkestraciji in koreografiji spletnih storitev. Slika 4 prikazuje povezanost BPEL s sorodnima tehnologijama WSCI, BPML in ebXML BPSS ter njuno vlogo pri orkestraciji in koreografiji poslovnih procesov [17]. Različne tehnologije zagotavljajo orkestracijo in koreografijo, BPEL pa opravlja oboje. Koreografija deluje s pomočjo abstraktnih procesov, orkestracija pa s pomočjo izvršilnih procesov. Razlika med abstraktnimi in izvršilnimi procesi in njihova vloga bo opisana v nadaljevanju [18]: • Abstraktni procesi pri tehnologiji BPEL predstavljajo javne procese, ki so vključeni v koreografijo poslovnih procesov in opisujejo način izmenjave sporočil med spletnimi storitvami in uporabniki. ■ Izvršilni procesi pri tehnologiji BPEL predstavljajo privatne procese, ki so vključeni v orkestracijo poslovnih procesov in se nanašajo na privatno implementacijo spletnih storitev, pri čemer opisujejo in izvršujejo interakcije med spletnimi storitvami za oblikovanje sodelovalnih procesov ali dolgo trajajočih poslovnih transakcij. Slika 5 prikazuje potek oblikovanja elektronskih poslovnih procesov. Prične se z opisom poslovnega koreografija BPEL4WS (abstraktni proces) wsc, orkestracija BPEL4WS (izvršilniproces) Bpm eb,MU3PSS procesa, izdelavo spletnih storitev in objavo le-teh v raznih registrih. Proces se nadaljuje z opisom poslovnega procesa z ustrezno tehnologijo (BPEL), objavo na strežniku in uporabo poslovnih procesov. Opis poslovnega procesa lahko vključuje več spletnih storitev, ki opravljajo različne operacije in se lahko združijo v enem poslovnem procesu. Tehnologija BPEL podpira štiri tipe tokov, ki omogočajo dinamičen in fleksibilen pristop h gradnji poslovnih procesov [17]: • kontrolni tok predstavlja zaporedje korakov programa in vključuje obravnavanje napak in izjem, ■ sporočilni tok se izvaja z aktivnostmi prejemanja, odgovarjanja in proženja sporočil, vendar pri proženju brez obravnavanja napak in predvsem v javnih procesih, ■ podatkovni tok se izvaja, ko se informacije implicitno prenašajo med različnimi aktivnosti s pomočjo globalno vidnih podatkovnih zbiralnikov oziroma spremenljivk, . transakcijski tok predstavlja podporo dolgo trajajočim poslovnim transakcijam s pomočjo obravnavanja napak in izvajanjem alternativnih korakov, vendar le znotraj privatnih procesov. Pri tehnologijah spletnih storitev je težko definirati sodelovanje in povezovanje izvršilnega procesa. Pri opisovanju poslovnih procesov v tehnologiji BPEL pa se osredinimo prav na sodelovanje in povezovanje. Uporabniki Razvijalci informacijskega sistema informacijskih sistemov Izvajanje avtomatiziranega poslovnega procesa specifikacije poslovnega procesa izdelava spletnih storitev modeliranje poslovnega procesa orkestracija poslovnega procesa objava na strežniku za orkestracijo poslovnih procesov Slika 4: BPEL, koreografija in orkestracija Slika 5: Življenjski cikel BPEL procesa 3.1 Primer orkestracije Poslovni proces, na katerem bo izveden primer, zajema komunikacijo med kupcem in dobaviteljem računalniške opreme. Informacijski sistem kupca izvede povpraševanje po cenikih in ponudbi strojne opreme. V svoje povpraševanje vključuje več podjetij. Ko informacijski sistemi dobaviteljev prejmejo zahtevo v obliki dokumenta XML, kupcu pošljejo v obliki dokumenta XML svojo ponudbo in cenik. Informacijski sistem kupca sestavi odločitveno tabelo, po kateri se posameznik odloči o najugodnejši ponudbi, lahko pa na podlagi lastnih vgrajenih odločitvenih modelov in poslovne inteligence informacijski sistem odloči samodejno in izbere najugodnejšega ponudnika. Informacijskemu sistemu izbranega podjetja se pošlje dokument naročila v obliki XML, le-ta jo potrdi in sestavi strojno opremo, ki jo tudi fizično dobavi kupcu. V podjetju se še izstavita dobavnica in račun v elektronski obliki, na primer v skladu z e-slogom [10J. Informacijski sistem kupca poravna račun po prejemu strojne opreme in dobavitelj plačilo preveri ter avtomatsko knjiži. Slika 6 prikazuje diagram aktivnosti opisanih korakov, ki vključuje komunikacijo med kupcem računalniške opreme in raznimi dobavitelji. Orkestracijo predstavlja implementacija poslovne logike na podlagi diagrama aktivnosti in orke- stracijski strežnik, ki odreja vrstni red, pogoje, način komuniciranja med njima, obravnavanje izjem in podobno. Primeri implementacije bodo predstavljeni v nadaljevanju, v poglavju o procesu BPEL (3.3). Več o orkestracijskih strežnikih najdete v poglavju 4. Preprost primer komunikacije bo v nadaljevanju predstavljen s spletnimi storitvami in poslovnim procesom, zapisanim s tehnologijo BPEL. 3.2 Spletne storitve in UVSDL Aktivnosti povpraševanja po strojni opremi, pošiljanje ponudbe, pošiljanje predračuna in naročilnice, potrjevanje naročilnice in izstavo dobavnice smo opisali kot spletne storitve. Njihova funkcionalnost vključuje osnovne funkcionalnosti zamišljenega poslovnega procesa, prikazanega s pomočjo diagrama aktivnosti (povpraševanje, pregled ponudb, sestava naročila ...). Na definirane funkcionalnosti se navezuje opis procesa v BPEL. V procesu so partnerji oblikovani na podlagi svojih vlog, kjer tip vrat definira natanko en gradnik portType. Vloge so del opisa spletnih storitev WSDL, kjer predstavlja tip vrat abstraktno funkcionalnost z uporabo abstraktnih sporočil, sama vrata (port) pa dejanski dostop do informacij. Slika 7 prikazuje definicijo vlog partnerjev v tehnologiji VVSDL [17]. kupec računalniške opreme dobavitelj prejem zahteve in pošiljanje ponudb in predračuna podjetja N prejem zahteve in pošiljanje ponudb in predračuna podjetja B (1...n cenikov) prejem zahteve in pošiljanje ponudb in predračuna podjetja A (n-temu izbranemu podjetju) Slika 6 Diagram aktivnbsti poslovnega procesa fizična dobava strojne opreme prejem strojne opreme izstava dobavnice in računa preverjanje plačila in knjiženje potrditev naročila in sestava strojne opreme sestava in pošiljanje poročila povpraševanje po strojni opremi prejem računa in nakazilo izbranemu dobavitelju in potrdilo pregled ponudb in izbira najugodnejšega ponudnika računalniške opreme Imensko področje, ki se navezuje na definicijo vlog, je posebej prirejeno definiciji partnerjev in ga lahko najdemo v ažurnih specifikacijah BPEL [17]. 3.3 Proces BPEL Tehnologija BPEL temelji na opisu spletnih storitev WSDL. Vmesnik VVSDL definira specifične operacije in tehnologija BPEL definira vrstni red operacij. Dodatno lahko tehnologija VVSDL naslavlja eksterne storitve, ki jih zahteva proces [12]. Poslovni procesi so lahko izvršilni ali abstraktni [6]: ■ izvršilni proces zajema orkestracijo in modelira obnašanje udeležencev v specifični poslovni interakciji, predvsem v modeliranju privatnega delovnega toka, ■ abstraktni proces zajema koreografijo in s pomočjo poslovnega protokola specificira javno izmenjavo sporočil med udeleženci; poslovni protokoli niso izvršilni in ne spremljajo internih podrobnosti procesnega toka. Delovni tok BPEL vključuje obravnavo objektov in je sestavljen iz raznih aktivnosti nad objekti. Avtomatizacija poslovnih procesov omogoča izmenjavo dokumentov, informacij in opravil med udeleženci. Komunikacija poteka na podlagi množice proceduralnih pravil. BPEL opisuje poslovne procese, pri čemer vključuje več spletnih storitev [18]. Proces BPEL temelji na jeziku XML in se izvaja s pomočjo orkestracijskih strežnikov (npr. Collaxa, BPVVS4J, BizTalk, ChoreoServer, VCAB), ki prevzemajo vlogo centralnega koordinatorja. Strežnik prebere dokument BPEL in kliče ustrezne spletne storitve v pravilnem vrstnem redu, kot ga definira sam proces na podlagi funkcionalnih specifikacij. Ta proces se obravnava kot spletna storitev in se kot tak tudi kliče [17]. Proces v BPEL je sestavljen iz več komponent; iz definicije samega procesa, definicije udeleženih partnerjev in spremenljivk ter operacij, ki sestavljajo poslovni proces. Sam proces je definiran z ustreznimi imenskimi področji. Udeleženci poslovnega procesa so v BPEL definirani tako, da definira atribut »myRole« vlogo poslovnega procesa in »partnerRole« vlogo partnerja, s katerim poteka izmenjava sporočil oziroma XML dokumentov. Komunikacija v poslovnem procesu poteka med dvema ali več partnerji, pri čemer se partner lahko pojavi v natanko eni definiciji vloge 117]. Slika 8 prikazuje primer definicije poslovnih partnerjev v poslovnem procesu BPEL. V tehnologiji BPEL ločimo med tremi tipi partnerjev [17]: . aktivni partnerji, ki s spletnimi storitvami prožijo proces, . klicani partnerji, katerih spletne storitve prožijo drugi procesi, . obojestranski partnerji, ki s spletnimi storitvami kličejo druge procese in so tudi sami klicani. V nadaljevanju se definirajo spremenljivke, potrebne za začasno shranjevanje podatkov, ki se izmenjujejo med partnerji znotraj procesa. Sledi zaporedje aktivnosti, ki specificirajo poslovni proces iz funkcionalnih specifikacij. BPEL vsebuje dva tipa aktivnosti [17]: . primitivne aktivnosti, ki so nizko nivojske in predstavljajo dejansko delo v procesu in . strukturirane aktivnosti, ki so navodila višjega nivoja za pretok kontrol primitivnih aktivnosti. Definicija procesa je zgrajena iz aktivnosti, partnerjev in zbiralnikov s specifičnimi korelacijskimi množicami, definicije obravnavanja napak in še kaj. Aktivnost poslovnega procesa je opisana in razgraje- cplnk:role name="KupecStrojneOpreme"> cplnk:role name-"PonudnikStrojneOpreme"> cplnk :portType narte- "sO: posredovanjeStrojneOpreme"/> < / p 1 n k: pa r t.ne r L i n k'fype> Slika 7: Izsek iz VVSDL, ki zajema definicijo vlog < / p a r t n e r L i n k s > Slika 8: Definicija poslovnih partnerjev na z množico elementov. Slika 9 prikazuje osnovno zgradbo in potek aktivnosti, ki so sestavni deli poslovnega procesa. Proces je skladen z diagramom aktivnosti. Sam proces BPEL je povezan z diagrami UML in orodje ETTK (The Emerging Technologies Toolkit) omogoča pretvorbo UML diagrama aktivnosti, oblikovanega v Rational Rose, v ustrezen dokument BPEL, kar dviguje nivo abstrakcije [19]. Pravilno sestavljen proces se postavi na izbranem strežniku, kjer ga lahko pregledujemo, nadzorujemo, upravljamo in spreminjamo [16]. Slika 9 sledi definiciji poslovnega procesa, definiciji partnerjev in spremenljivk. Operacije poslovnega procesa so pogosto vključene znotraj nekega zaporedja, definiranega s konstruktorjem . S pomočjo konstrukta poslovni proces kliče poljubno operacijo partnerja, ki je lahko enosmerna ali zahteva odgovor. S pomočjo konstrukta poslovni proces čaka na ustrezno sporočilo. S konstruktom se omogoča pošiljanje sporočil kot odgovor prejetemu sporočilu z . Vsi našteti konstrukti vsebujejo več atributov, kjer se med drugim definira ime operacij. Definirajo se partnerji, ki operacije prožijo (partnerLink) in lokacija opisa poslovne operacije v VVSDL (portType) z imenskim področjem. Imensko področje poslovne operacije kaže na ustrezno spletno storitev. V sklopu atributov je še vključeno ime sprožene operacije, zapisane v VVSDL (operation), in ime ustreznih spremenljivk, tako vhodnih ali izhodnih, ki predstavljajo XML dokumente. Omogočeno je tudi hkratno proženje več operacij s pomočjo konstrukta in spreminjanje vrednosti XML dokumentov, ki potujejo med partnerji. Operacij in možnosti je več, kot je prikazano na primeru, vključno z obravnavanjem pogojev, napak in izjem. Zapis procesa BPEL je enostaven XML dokument s specifičnimi lastnostmi, določenimi v zadnji aktualni specifikaciji XML 1.0 [17] in specifikaciji BPEL4VVS 1.1 [17]. Pomembna je določitev imenskih področij, kjer definiramo povezave z vsebino spletnih storitev. Ker je lahko preprost poslovni proces sestavljen iz več spletnih storitev, je opisov le-teh lahko več. Tehnologija BPEL je neodvisna od platforme in zato primerna za vse informacijske sisteme. Primarni mehanizem tehnologije BPEL je izmenjava asinhronih sporočil [17). Zapisovanje aktivnosti je proceduralno in slabost dokumentov XML je njihova nepreglednost ter kompleksnost. Rešitev prihaja v obliki raznih vizualnih urejevalnikov za oblikovanje poslovnih procesov. Primer je definicija procesa BPEL na strežniku Collaxa z orodjem »BPEL Designer«, ki omogoča grafično oblikovanje BPEL procesov [17]. S pomočjo ustreznega strežnika je omogočen nadzor nad procesom in povezavo različnih procesov med seboj. 3.4 Podpora gradnji poslovnih procesov Vsi poslovni procesi in dokumenti so zapisani s tehnologijo XML. Da bi vladal red in da bi lahko različna podjetja med seboj uspešno komunicirala in avtomatsko pretvarjala potrebne informacije na podlagi specifičnih potreb, potrebujejo podjetja dobro zasnovane sheme. Pomembne so razlike med podjetji in prednosti, ki jih prinašajo sheme. Lahko se uporabljajo tudi združeno, kar koristi predvsem podjetjem, ki so < ! ---Zapored j a akt 1 vnos L L , in , —>