Håper på færre blindveier

Hvis man kan identifisere problemer så tidlig som mulig i utviklingen av nye datasystemer, slipper man å bruke mye tid i blindveier.

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

SARDAS: Securing Availability by Robust Design, Assessment and Specification

Prosjektleder: Ketil Stølen, sjefsforsker ved SINTEF IKT og professor II ved UiO
Kontraktspartner: UiO
Samarbeidspartnere: Telenor FoU, Institutt for informatikk ved UiO, Institutt for telematikk ved NTNU
Stipendiater: Mass Soldal Lund, Atle Refsdal, Judith Rossebø, Ragnhild Kobro Runde
 

Forskere ved UiO, SINTEF IKT og NTNU har videreutviklet verdens ledende modellspråk innen programvareindustrien – UML – og gjort det mulig å analysere tilgjengelighet på en mye mer presis og prinsipiell måte.

Hvis nettbanken er stengt, eller tekstmeldingen kommer fram dagen etter, blir du irritert. I utviklingsarbeidet er det viktig å analysere tilgjengelighet på en presis måte. Foto: Shutterstock

Hver gang du bruker nettbanken eller sender en tekstmelding, får du samtidig en opplevelse av tilgjengeligheten i bankens eller teleselskapets datasystem.

Du blir irritert hvis nettbanken er stengt, og du godtar ikke at tekstmeldingen kommer fram etter ett døgn istedenfor etter noen sekunder.

Tilgjengelighet er altså en viktig faktor i mange datasystemer, også de som styrer samfunnets store infrastrukturer som kraftforsyning og telekommunikasjon.

– Det har hittil vært vanskelig å spesifisere krav til tilgjengelighet, fordi kravene ikke er absolutte. For eksempel: Vi kan ikke kreve at et datasystem skal være 100 prosent tilgjengelig, for man må alltid regne med vedlikehold og omlegginger.

– Derfor er det mer vanlig å definere tilgjengelighet i form av såkalte «myke» sanntidskrav, forteller sjefsforsker Ketil Stølen ved Sintef IKTs Avdeling for samvirkende og tiltrodde systemer.

En viss «utilgjengelighet» kan godtas

Et «hardt» sanntidskrav kan defineres for eksempel som «Hvis du ber et datasystem om en spesifikk tjeneste, skal du få svar innen fem sekunder».

Men det er mer vanlig å utforme kravene på en myk måte, for eksempel av typen «Hvis du ber om en tjeneste, skal du få svar i løpet av fem sekunder i 98 prosent av tilfellene». Man kan godta en viss «utilgjengelighet», hvis den bare er liten nok.

Kravene til sanntidsytelser, enten de er harde eller myke, blir ofte omtalt som ikke-funksjonelle krav og utelatt fra de funksjonelle kravspesifikasjonene. De blir isteden beskrevet i vanlig språk i et tilleggsdokument eller en servicenivå-avtale.

Dette innebærer at viktige systemegenskaper blir utelatt fra spesifikasjonen, og at de kan bli utelatt også når spesifikasjonen skal analyseres.

Ketil Stølen har ledet forskningsprosjektet SARDAS, som gikk ut på å utvikle språk, metoder og verktøy for modellering og analyse av tilgjengelighet i datasystemer.

Dette er et teoretisk arbeid som de fleste systemutviklere vil forstå verdien av, fordi det baserer seg på UML og den type verktøy som allerede er i bruk i industrien.

På skuldrene til Nygaard og Dahl

Startpunktet for prosjektet var programmeringssspråket UML (Unified Modeling Language) som er verdens suverent ledende modelleringsspråk innenfor programvareindustrien.

Prosjektet står på skuldrene til professorene Kristen Nygaard (1926–2002) og Ole Johan Dahl (1931–2002), som utviklet verdens første objektorienterte programmeringsspråk Simula på 1960-tallet.

De objektorienterte språkene brakte viktige elementer fra menneskets egen tenkemåte inn i programmeringen, og er i dag like grunnleggende innen informatikken som multiplikasjon er i matematikken.

Ketil Stølen er tidligere student hos Dahl, mens to andre seniorer i prosjektet – Birger Møller Pedersen og Øystein Haugen ved UiO – var studenter hos Nygaard. I tillegg har også Rolf Bræk ved NTNU spilt en sentral rolle i prosjektet.

I SARDAS-prosjektet har forskerne utvidet UML-språket og dermed styrket mulighetene til å modellere og analysere tilgjengelighet. Når man skal lage for eksempel en nettbank, har man et åpenbart behov for å karakterisere hvor tilgjengelig banken skal være.

Men det finnes også mange andre krav, som kan komme fra både kunder, brukere og systemutviklere. Det er ofte slik at kravene spriker i flere retninger, og da har man behov for å sammenlikne og raffinere disse kravene.

Verktøy

Sjefsforsker Ketil Stølen. (Foto: Sintef)

– Det er et verktøy for dette vi har utviklet, forklarer Stølen.

– Det fantes verktøy fra før, men ikke noe som kunne brukes i UML-språkets grafisk orienterte modelleringsverden. Det vi har prøvd å gjøre, er å løfte denne typen analyser høyere opp i systemutviklingsprosessen.

– Da skal det bli mulig å identifisere problemer på et tidligere tidspunkt i prosessen, og man slipper forhåpentligvis å kaste bort en hel masse tid på blindveier.

Metoden som SARDAS-forskerne har utviklet heter STAIRS og finnes i tre utgaver med fokus på henholdsvis generelle problemstillinger, tidsaspekter og sannsynlighetsaspekter.

Språket understøttes av et verktøy som heter ESCALATOR. Begge navnene illustrerer altså ønsket om å løfte seg til nye nivåer.

– Tilgjengelighet er helt essensielt når vi snakker om samfunnets infrastrukturer. Kraftforsyningen i Norge er for eksempel avhengig av kraftforsyningen i Sverige, som igjen kan sies å ha et avhengighetsforhold til kraftforsyningen i Danmark, som igjen har avhengigheter til kraftforsyningen i Norge…

– Og hvis strømmen går, trenger man telekommunikasjon for å få den tilbake igjen. Men telekommunikasjonen er igjen avhengig av strøm. Alt henger sammen med alt, og det er behov for bedre modeller for å analysere disse sammenhengene og bygge en tryggere infrastruktur, forklarer Stølen.

Lenke:

Forskningsrådets program: Grunnleggende IKT-forskning (IKT-2010)

Powered by Labrador CMS