SOA løser ikke problemene alene

Service-Oriented Architecture (SOA) er det klart mest utpregede motebegrepet innen it i dag. SOA er en naturlig teknologisk utvikling av it-industriens bestrebelser for enklere integrasjon.

Til tross for store ord og mye buzz så bringer den verden bare et lite steg videre i forhold til integrasjon og interoperabilitet. SOA er kun en konseptuell teknologisk arkitektur og adresserer ikke det som er den viktigste og virkelig verdiskapende problemstillingen i dagens internettverden, det å kunne utveksle data med en forståelse for hva de faktisk betyr.

EU opererer med tre lag for interoperabilitet: Teknisk, semantisk og organisatorisk. SOA adresserer kun den tekniske interoperabilteten. Teknisk interoperabilitet er det laveste og enkleste nivået for interoperabilitet, og beskriver de protokoller og standarder som er nødvendig for teknisk å knytte ulike systemer sammen.

Verdien av samhandlingen ligger imidlertid i å oppnå interoperablitet på det semantiske nivået, det vil si å sikre presis mening og felles oppfattelse av betydningen av informasjonen som utveksles for begge parter.

Komplekst konsept

Hva er semantisk interoperabilitet? Semantikk er studiet av mening i språk, altså en referanse til hva et ord egentlig betyr. Semantikk defineres ofte ut fra sitt forhold til syntaks, altså den tekniske meldingsoverføringen. Syntaks kan være språk (norsk vs engelsk), kommunikasjonsform (muntlig vs. skriftlig), eller XML for å holde oss til dataverden. Med semantisk interoperabilitet mener vi altså utveksling av mening mellom ikt-systemer ved at både maskiner og brukere har en klart definert begrepsforståelse.

Semantikk er et komplekst konsept å forholde seg til for datamaskiner. Det er derfor essensielt at man håndterer kommunikasjonen på en god måte. Avsender må sikre at all nødvendig informasjon er med i overføringen og at den blir tolket riktig av mottaker. Bare ved å verifisere dette kan vi være helt sikre på at A og B faktisk har samme oppfatning etter kommunikasjonsprosessen. Derfor snakker man ikke lenger bare om it-systemer, men om ikt-systemer. Kommunikasjonen mellom systemene har fått en helt sentral posisjon.

Alt må tolkes

For at maskiner skal forstå betydningen av den informasjon som overføres, trenger vi i semantiske bærere, dvs. informasjonselementet som referer til en kilde som definerer elementets forhold til et semantisk begrep i den virkelige verden. Det innebærer at vi må gå fra b2b-systemer - som er utviklet i lukkede grupper der semantikken er avtalt mellom partene og bakt inn i systemene uten en systematisk og standardisert tilnærmingsmåte - til systemer der semantikken er definert eksplisitt, systematisk, formelt og standardisert.

Dette er åpenbart ikke en enkel målsetning, så vil det være verdt bryet å sette i gang?

Flere momenter taler for det. For det første vokser informasjonsmengden som er tilgjengelig via datanettverk, spesielt internett, eksponentielt. Selv om vi har søkemotorer som er effektive i å søke på bokstavstrenger i form av ord, så må all informasjon fortsatt tolkes av mennesker.

For å vurdere om de returnerte artiklene faktisk inneholder informasjonen man er ute etter må man selv skanne gjennom innholdet. Dette vet alle som har søkt etter relativ spesifikk informasjon knyttet til vidt brukte begreper. Hundretusener av treff kan være en arbeidskrevende oppgave.

Ingen forhåndsdefinerte tagger

En annet og like viktig punkt er at utbredelsen av internett etter hvert også har ført til økt interesse for elektronisk samhandling med et større antall partnere. Det er ikke lenger nok å finne et proprietært dataformat som passer for bedriften og dens to partnere, det er behov for mekanismer som gjør at bedrifter kan etablere elektronisk samhandling med et nettverk av mange partnere.

Estimater fra USA indikerer at 35-65 prosent av de totale kostnadene på 300 milliarder amerikanske dollar årlig skyldes semantisk mismatch mellom systemer.

En del er kanskje overrasket over at vi har disse problemene. XML lovet oss jo billig integrasjon over internett til alle som måtte ønske det. "To b2b or not to be" var slagordet, og XML var løsningen. XML har imidlertid i motsetning til HTML ingen forhåndsdefinerte tagger, og det finnes ingen sentral organisasjon som sørger for enhetlige dokumentstandarder.

XML er derfor en teknologi som gjorde det svært lettvint for alle som ønsket å definere sin egen standard. Det finnes knapt den bransjeorganisasjon eller den løsningsleverandør som ikke har kommet opp med en standard for sin bransje og sitt system. Commerce One (xCBL) og Ariba (cXML) er kjente eksempler på det siste.

Den faktiske verdien

Det finnes i dag flere tusen slike "standarder", XML-hypen førte derfor fremfor alt til et nytt Babels tårn av forskjellige XML-vokabular. Det å utveksle meldinger på tvers disse standardene har vist seg vanskelig av flere grunner: For det første har XML-taggene forskjellige semantiske referenter. Begrepet "pris" kan bety helt forskjellige ting i forskjellige standarder. Det blir også brukt helt forskjellige prinsipper og retningslinjer for design av XML-dokumentene.

For et par tiår siden var data ansett som noe som kun var interessant innenfor perspektivet av en enkelt bedrift eller en enkelt applikasjon. Det var applikasjonen som representerte verdien. Med HTML og XML kom forståelsen av at åpne data var viktig, og relativt raskt kom også bølgen med åpne metadata-standarder. I dag har vi tatt lærdom av de tidligere fasene og vi begynner å bli moden for semantiske datamodeller.

Det er dataene som utgjør den faktiske verdien for organisasjonen. Det er semantikken (begrepsinnholdet) og ikke syntaksen (meldingsformatet) som har den største verdien. Så lenge SOA kun fokuserer på semantikken blir verdien for bedriftens elektroniske samhandling mindre. Det finnes i dag to globale hovedinitiativer med hensyn på å håndtere semantikk for elektronisk kommunikasjon, etablert i regi til henholdsvis UN/CEFACT (FN) og W3C.

Formalisert semantikk

UN/CEFACT har lang erfaring med elektronisk samhandling i global målestokk ved at de har vært ansvarlig for forvaltningen av EDIFACT-standarden. Etter samarbeidet med OASIS om utviklingen av ebXML-rammeverket, har UN/CEFACT tatt ansvaret for videreføringen av de delene av ebXML som standardiserer forretningsdokumenter, semantikk og forretningsprosesser.

UN/CEFACT fokuserer på strukturert informasjon, og tilnærmingsmåten er å definere bibliotek av semantiske entydige kjernekomponenter (Core Components) som skal utgjøre byggesteinene for informasjonsmodeller.

Ved å bruke generelle dataelementer som utgangspunkt for informasjonsmodellering, har man et rammeverk som gjør det mulig å forholde seg til dataelementer på tvers av ulike dokumentstandarder. For en spesifikk informasjonsmodell vil de kontekstuavhengige kjernekomponentene bli tillagt en eller flere kontekstparametere.

For eksempel kan en kjernekomponent tillagt parametere for bransje og geografi definere en informasjonskomponent spesifikk for bygg- og anleggsbransjen i Norge. Semantikken blir dermed formalisert ved hjelp av generelle dataelementer og kontekstparametere som kan tolkes av programvare.

Den faktiske meningen

W3C har lenge jobbet etter de visjoner som Tim Berners Lee har om den "Semantiske web". Semantisk web skal gjøre det mulig for søkemotorer å forstå den faktiske meningen i informasjonen som publiseres på internett, noe som gir en helt annen nytte av nettet enn i dag. Eksempel: "Hvor mange parkeringsplasser finnes i Oslo?".

Søkemotoren vil i dag returnere alle sider som inneholder ordene, mens den semantiske web kun vil returnere avsnitt som besvarer spørsmålet. W3Cs semantiske standarder er mer egnet for håndtering av ustrukturert informasjon da metoden er å annotere meningsinnhold og -strukturer til eksisterende informasjon, men kan også anvendes for strukturert informasjon.

Av Øyvind Aassve, senior rådgiver i NorStella