Som hånd i hanske

Den såkalte mellomvaren er en usynlig, men likevel svært viktig, del av den moderne IKT-hverdagen. Hver gang du går på Internett, er det mellomvaren som sørger for at applikasjonen du bruker kommuniserer med selve nettet. Mellomvaren er for applikasjonen som hansken er for hånden.

Publisert

Denne artikkelen er over ti år gammel og kan inneholde utdatert informasjon.

Mellomvaren er for applikasjonen som hansken er for hånden. (Foto: Shutterstock)

Quality of Service Aware Component Architecture (QuA)

Prosjektleder: Professor Frank Eliassen
Kontraktspartner: Simula Research Laboratory AS
Samarbeidspartnere: Universitetet i Tromsø, SINTEF IKT
Stipendiater: Viktor Eide, Arnor Solberg, Sten Amundsen Lundesgaard, Sharath Babu Musunoori, Arne Munch-Ellingsen.

En hanske gjør at hånden kan fungere bedre i ulike omgivelser.

Hansken må imidlertid ha mange ulike egenskaper avhengig av hvor og til hva hånden skal benyttes; i kulde eller varme, i våte eller tørre omgivelser, til arbeid som krever finmotorikk eller grovere motorikk.

Internett omfatter et mangfold av teknologier, fra gamle metallkabler til optiske fibrer og trådløse nett.

Maskinene som er koblet til Internett varierer fra mobiltelefoner og minidatamaskiner opp til klynger av superdatamaskiner.

Det er den såkalte mellomvaren som sørger for at applikasjonene kan «snakke» med hverandre på en ensartet måte på tross av dette mangfoldet.

– Det går an å sammenlikne mellomvaren med en hanske som skal passe til ulike applikasjoner. Hvis applikasjonen din for eksempel kjører på en pc, trengs det en spesiell hanske som besørger kommunikasjonen mot internett.

– Hvis du surfer fra en mobiltelefon isteden, eller skal arrangere en videokonferanse, trengs det andre slags hansker, forklarer professor Frank Eliassen ved Simulasenteret.

Hanskefabrikk for tilpasningsdyktige hansker

Eliassen har ledet et prosjekt som gikk ut på å utvikle en generell plattform kalt QuA, som automatisk kan skreddersy mellomvaren til ulike applikasjoner og ulike omgivelser.

Eliassen ville utvikle en mellomvare som kunne brukes av ulike applikasjoner med hver sine krav til tjenestekvalitet, og med evne til å tilpasse seg dynamisk til endringer i brukernes behov og omgivelser.

– Hvis vi holder oss til hanskemetaforen, så var det behov for en «hanskefabrikk» som kunne produsere og modifisere hanskens egenskaper alt etter situasjon og behov, og det mens hansken var i bruk.

– Den nye mellomvareplattformen kan produsere hansker som passer til bruk både hvis det trengs en vanntett hanske, en vindtett hanske, eller en hanske som tåler mange kuldegrader. Dersom alternativet var å utvikle en eneste hanske for alle disse omgivelsene, ville den antakelig ikke passet godt til noe som helst, forklarer Eliassen.

Ved hjelp av QuA-plattformen er det i prosjektet også utviklet metoder og verktøy for utvikling, eksekvering og vedlikehold av distribuerte applikasjoner som har krav til tjenestekvalitet og krav om å kunne tilpasse seg dynamisk til endringer i brukernes behov og omgivelser.

Dette er viktig for mobile applikasjoner, og for applikasjoner beregnet for GRID-omgivelser.

En hanske som tilpasser seg

Frank Eliassen.

Det er også utviklet et mellomvare-rammeverk som kalles ARGOS.

– Hvis du sitter med hånden i hansken, og forflytter deg til en ny og annerledes omgivelse, så ønsker du at hansken skal tilpasse seg mens du hele tiden har den på. Hvis du for eksempel har programvaren kjørende på en mobil enhet, så skal du kunne veksle mellom ulike trådløse nett eller starte nye programmer uten å få problemer.

– ARGOS-rammeverket kan benyttes til å samle inn det vi kaller kontekstuell informasjon om omgivelsen du befinner deg i. «Mellomvarefabrikken» vår inneholder logikk som benytter denne informasjonen til å resonnere omkring applikasjonens behov når omgivelsene endrer seg, forteller Eliassen.

Lego-prinsippet

Prosjektet omfattet også utviklingen av en såkalt demonstrator-applikasjon som viste hvordan QuA kan benyttes til å sende den samme videoen til flere mottakere med ulike kvalitetskrav.

Avsenderen sender altså kun én videostrøm, men denne kan betraktes like godt på naboens store plasmaskjerm som på din egen mobiltelefon-skjerm.

Moderne programvareutvikling på Internett-området er basert på «Lego-prinsippet», det vil si at man stadig utvikler nye byggesteiner (programvarekomponenter) som kan settes sammen på ulike måter. Dette prinsippet er beholdt i QuA-prosjektet.

– Motivet for hele prosjektet var at vi forutså utviklingen av applikasjoner med ulike krav til for eksempel ytelse og kvalitet. Derfor var det viktig å utvikle mellomvareteknologi som kunne gi en form for garanti: Når du har plassert applikasjonen din på en server, skal serveren også sørge for at den spesifiserte kvaliteten blir oppfylt. Vi ville finne metoder som kunne løse dette problemet på en generell måte, forklarer Eliassen.

Ekspertbygde biter

Dette problemet var tidligere løst ved å legge en logikk for tjenestekvaliteten inn i selve applikasjonene.

– Men vi ville heller utvikle en metode som kunne håndtere tjenestekvaliteten, applikasjonslogikken og forretningslogikken separat. Dette ville åpne for utviklingsmetoder som gjør det mulig å ha eksperter på hvert sitt felt som kan bidra til den samlede utviklingen med hver sine biter av beste kvalitet. Til slutt kan mellomvaren/plattformen sy det hele sammen, forklarer Eliassen.

Løsningene som er utviklet i QuA-prosjektet ble blant annet tatt i bruk i det store EU-prosjektet MADAM, som nå er avsluttet. Arbeidet blir nå videreført i det Forskningsråd-finansierte prosjektet ROMUS og i det store EU-prosjektet MUSIC. Der skal resultater fra QuA-forskningen bli videre utprøvd i en industriell sammenheng.

Lenker:

Forskningsrådets programmer: Grunnleggende IKT-forskning (IKT-2010) ,Kommersialisering av FoU-resultater (FORNY), og

Simula Research Laboratory

Powered by Labrador CMS