Ajankohtaisia SOA tutkimusteemoja Paavo Kotinurmi Ohjelmistoliiketoiminnan ja -tuotannon laboratorio
Sisältö Miten integraatiostandardit pohjana SOA-palveluille? Mitä on semanttinen SOA ja mitä SOAn haasteita sillä voidaan tulevaisuudessa ratkaista? Esimerkkejä ajankohtaisista tutkimusprojekteista Suomessa ja EU:ssa.
Trendi kohti korkeampaa abstraktiota Yritysarkkitehtuuri (Enterprise Architecture) tulossa aidommin työkaluksi Liiketoimintaprosessien mallintamiseen tulossa enemmän standardipohjaiseksi ei pakko kovakoodata prosesseja sovelluslogiikkaan (Business Process Management, BPM) Palvelukeskeinen arkkitehtuuri (SOA) on nousemassa keskeiseksi arkkitehtuurikehykseksi pyrittäessä kohti joustavaa ja nopealiikkeistä, standardoitua enterprise -tason tietojärjestelmäympäristöä SOA arvolupaus on juuri liiketoiminnan ja IT-kehittämisen kuilun pienentäminen Eli tulevaisuudessa malliohjatusti päivissä tehdään tarvittavat muutokset Palvelukeskeisellä arkkitehtuurissa liiketoimintaprosesseja tukevat tietojärjestelmät koostuvat standardoitujen rajapintojen avulla toisiinsa löyhästi kytkeytyneistä palveluista
Liiketoiminnan ja IT:n gap Liiketoiminnan näkökulma rosessitieto - mitä prosesseissa apahtuu - suorituskyky - päätöksenteon tuki Mallit (vielä käsityötä) Prosessin implementointi järjestelmiin (miten automatisoidaan) Sovelluskehittäjän näkökulma Miten koodaan tämän järjestelmään? Muokattu semantic BPM tutorial by Armin
RosettaNet perusperiaate Yritys A Yrityksen sisäiset prosessit Internet & XML Yritys B Yrityksen sisäiset prosessit SAP ERP Baan ERP Muunnos omasta tietomallista RosettaNet tietomalliin ja päinvastoin. RosettaNet määrittelee yhteisen (julkisen) prosessin, yhteisesti ymmärrettävän käsitteistön (mitä tietoa tilaus-sanomassa ja miten) sekä miten tämä turvallisesti kommunikoidaan Internetin yli. Muunnos omasta tietomallista RosettaNet tietomalliin ja päinvastoin. Löyhä kytkentä, laajennettavuus Lähde: RosettaNet
RosettaNet ja SOA RosettaNet liikenne ei juurikaan käytä Web Service teknologioita Mutta RosettaNet prosessit on helppo nähdä SOA-palveluina Request Purchase Order prosessissa tilaus ja tilausvahvistus viestit ostajan ja myyjän järjestelmien välillä Rajapinta on sanomarajapinta sisäisesti hajoaa useisiin pienempiin SOA-kutsuihin (hae varastosaldo, hae hinta, päivitä CRM järjestelmää etc..) RosettaNet ottaa kanttaa prosessin vasteaikoihin (mm. vastine 24 tunnissa), viestisemantiikkaan (päivämäärän tulkinta, yhteinen käsitteistö) sekä viestinvälitys (salaus yms.) RosettaNet on teollisuus alan kevyt ontologia ei sinänsä riittävästi älykkääseen yhteentoimivuuteen, mutta hyvä paikka aloittaa
Esimerkki SWS-Challenge implementaatiosta
Haasteet sisäisten ja ulkoisten prosessien yhdenmukaistamisessa Standardien soveltamisessa on aina mukana tulkintaa se että molemmat tuemme samaa RosettaNet-prosessia ei riittävä yhteentoimivuuteen Sisäisten prosessien (orkestraatioiden) kuvaamiseen monta standardia BPMN, UML AD, BPEL, XPDL, EPC,... Julkisten prosessien (koreografioiden) kuvaamiseen myös monta standardia - ebxml BPSS, W3C WS-CDL, abstract BPEL,... Nyt yhteensovittaminen vielä hyvin paljon käsityötä Vaaditaan yhteentoimivuutta hyvin syntaksi-tasolla (tarvitsen juuri tämän näköistä XML:ää ja viestit tässä järjestyksessä)
Web Service tekniikoiden haasteet Teknologiat tekevät WS käytön helpoksi mutta: Kuvaukset vain ihmisen luettavia Palveluiden löytäminen, yhdistäminen ja ajaminen myös käsityötä => Voinko käyttää Web Serviceä täytyy tutkia käsin (miten käytän, integroin palvelun osaksi prosessia) Sisältö ja palveluiden semantiikkaa ei tueta Semantic Web teknologioita ei tueta => Perus WS-teknologioilla voidaan SOA Visio saavuttaa vain osittain
Mitä on semanttinen SOA ja mitä SOA-haasteita sillä voidaan ratkaista? Semanttinen SOA yhdistää Web Service-maailman ja semanttisen webin teknologiat Semanttinen SOA mahdollistaa Palveluiden rikkaamman kuvaamisen Palveluiden löytämisen ja yhdistämisen esim. Jos etsin kahvilaa Helsingistä niin saan vastaukseksi myös kahvilat Kampissa ja Punavuoressa Looginen vs. Syntaktinen yhteentoimivuus voidaan automaattisesti homogenisoida viestejä (esim. valuuttakurssien tai mittayksikköjen homogenisointi)
Semanttiset Web Palvelut Dynaamiset Web Services UDDI, WSDL, SOAP Semantic Web Services Staattiset WWW URI, HTML, HTTP Semantic Web RDF, RDF(S), OWL
Tutkimus Suomi ja EU Suomi - SOA soveltaminen yrityksissä, parhaat käytännöt SOLEA Projekti. Kuopio HIS & SoberIT. Partnereina teollisia sekä terveydenhuollon toimijoita Miten meillä mennään SOAan. Aloitus 2008 alussa. EU enemmän perustutkimusote Miten kuvataan semanttisia web palveluita, miten paikataan ongelmia nykyteknologioiden kanssa - useita miljoonaprojekteja DIP, Knowledge Web,... The major objective of SUPER is to raise Business Process Management (BPM) to the business level, where it belongs, from the IT level where it mostly resides now (http://www.ipsuper.org/) SOA4All WWW miljardeille palveluille - http://www.soa4all.org/ Partnereita (Super, SOA4All) mm. SAP, IBM, IDS-Scheer etc.
Yhteenveto Liiketoiminnan ja IT:n välinen kuilu vielä olemassa mutta se kaventuu EA, SOA ja BPM tässä kehityksessä tärkeitä akronyymejä Tarvitaan myös standardeja määrittelemään yksityiskohtia ja soveltamisohjeita WS-tekniikat, RosettaNet yms. hyviä paikkoja aloittaa mutta eivät yksin riittäviä Tutkimus vie kehitystä oikeaan suuntaan kohti suurempaa joustavuutta yhteentoimivuudessa paikkaa myös nykyteknologioiden ongelmia
Viitteitä Haller, A., Cimpian, E., Mocan, A., Oren, E. and Bussler, C., 2005. WSMX - A Semantic Service-Oriented Architecture, Proceedings of the International Conference on Web Services (ICWS 2005), July 11-15, Orlando, Florida, USA, IEEE Computer Society, pp. 321-328 Kotinurmi, P. 2007. E-Business Framework Enabled B2B Integration, Doctoral Thesis, ISBN 978-951-22-8992-9, http://lib.tkk.fi/diss/2007/isbn9789512289929/ Papazoglou, M.;van Heuvel,. Service oriented architectures: approaches, technologies and research issues. The VLDB Journal The International Journal on Very Large Data Bases, Volume 16, Number 3 / July, 2007. Vitvar, Tomas; Moran, Matthew; Zaremba, Maciej; Haller, Armin; Kotinurmi, Paavo; Semantic SOA to Promote Integration of Heterogeneous B2B Services, The 9th IEEE International Conference on E-Commerce Technology and the 4th IEEE International Conference on Enterprise Computing, E-Commerce, and E-Services, 2007. 23-26 July 2007, pp. 451-456. Vitvar, T., Mocan, A., Kerrigan, M., Zaremba, M., Zaremba, M., Moran, M., Cimpian, E., Haselwanter, T. and Fensel, D., 2007. Semantically-Enabled Service Oriented Architecture : Concepts, Technology and Application. Service Oriented Computing and Applications, Vol. 1(2), pp. 129-154. http://www.rosettanet.org/ & http://www.deri.ie/research/projects/ Pyynnöstä toimitan alkuperäiset julkaisut (Paavo.Kotinurmi@tkk.fi)