Programvare på liv og død

Bente Anda ved Institutt for informatikk, Universitetet i Oslo er den første forskeren i verden som har studert effekten av et nytt metodespråk som ble brukt til utvikling av programvare. Konklusjon: Bedre kvalitet, men like dyrt.

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

Tenk deg at du er leder for 230 programmerere fordelt på 20 team i tre land som på et år skal lage verdens største sikkerhetskritiske programvare på nesten fire millioner linjer programkode. Programmet skal brukes i oljeindustrien i Nordsjøen. Den minste programmeringsfeil kan få fatale konsekvenser. Liv kan gå tapt.

Utfordringen er større enn som så. En del av programvaren bygger på gammel programkode. Koden er verken dokumentert eller systematisert. Programmererne må lete med lupe for å finne hvilke av de 1 000 nye kravene som henger sammen med hvilke kodelinjer. Små feil i én programlinje kan føre til uforutsigbare konsekvenser et helt annet sted i programmet.

Ikke et skrekkscenario

Dette er ikke et tenkt skrekkscenario. Dette er virkeligheten for industrikonsernet ABB som har brukt 200 millioner kroner på programvaren. Det er ekstremt sjeldent at et så stort prosjekt blir utviklet i Norge.

For å komme i mål tok ABB i bruk det internasjonalt standardiserte modelleringsspråket UML (Unified Modelling Language), som mange programvareeksperter mener er svært velegnet til forbedret programvarekvalitet.

Men problemet til ABB var at det aldri er gjennomført et eneste forskningsarbeid som sier noe om den dokumenterte effekten av UML. Med tanke på fremtidige kostbare prosjekter ville ABB vite hvordan UML fungerer, hvordan de kunne bruke UML på en bedre måte og hvor mye penger de kunne spare.

Ekspertråd

Det var da førsteamanuensis Bente Anda på Institutt for informatikk ved Universitetet i Oslo og Simulasenteret kom inn i bildet. Hun er en av landets fremste eksperter i UML.

Nå fikk hun analysere verdens første case-studie av UML i et stort industriprosjekt. Hun mener analysen er interessant også for andre programvareprodusenter.

- UML kan sikkert være utmerket, men man må studere UML i praktisk bruk for å si noe om hvor skoen trykker. Når man studerer reelle problemstillinger, blir overføringsverdien større, for industrien har vanskeligheter med å ta inn erfaringer fra eksperimenter.

Presis dokumentasjon

- Poenget var å studere hvordan UML-basert utvikling foregår i store systemer med mange team og der man må utvide gamle programmeringssystemer, sier Bente Anda.

Ideen med UML er å forsikre seg at alle involverte i et prosjekt tolker problemstillingen på samme måte. For å komme i mål bruker man et utvalg av et titalls forskjellige diagrammer for å definere og beskrive datasystemet ut fra forskjellige perspektiver. En slik metode gir en langt mer presis dokumentasjon enn vanlig tekstprosa og reduserer faren for udefinerbare problemstillinger.

Les hele saken i Apollon.

Powered by Labrador CMS