English >>

Du er her: Home Projekter Afsluttede projekter - case stories Find fem fejl

Print   Sitemap   Siteindex

Find fem fejl


Test og validering af indlejrede softwaresystemer er en stor byrde for software-virksomheder. Utallige timer og store budgetter bliver brugt på at køre den ene test efter den anden - uden at det nødvendigvis sikrer et fejlfrit produkt. Det skal et samarbejde mellem CISS og IAR Systems rette op på.

 

På skærmen ligner det et avanceret pilediagram. En masse kasser er forbundet med pile i et sindrigt system, som det kan være svært for en udenforstående at finde hoved og hale i. Men for det trænede øje er det en nem og overskuelig opstilling af et stykke software. Programmet kan endda selv oversætte tegningen til program-kode, og på den måde er software-udviklerens hverdag blevet noget nemmere. Men i virkeligheden er det først, når programmet er færdigt, at det rigtig svære arbejde begynder.

 

Matematisk umuligt

”Med den modelbaserde softwareudvikling er det blevet meget nemmere at udvikle software, men når programmet er færdigt, skal vi i gang med at teste, at programmet også virker, som det skal - og at det er robust og sikkert. Og her bliver det meget vanskeligt og ressourcekrævende,” forklarer ph.d.-studerende Ulrik Larsen, der i snart to år har arbejdet på at lette denne test-procedure.

Programmerne kan godt nok testes på modellen, men det skal stadig ske manuelt, og når programmet så er indlejret på en chip, begynder hele test-proceduren forfra.

”Der opstår et utal af nye fejl-muligheder, når et stykke software bliver lagt ned på en chip. På samme chip ligger nemlig en række andre programmer, og i samspil med disse eksploderer antallet af mulige tilstande, som systemet kan indtage. Derfor er det i mange tilfælde matematisk umuligt at udregne og teste alle systemets tilstande,” forklarer Ulrik Larsen.

Det er baggrunden for, at han sammen med IAR Systems arbejder på at automatisere og forenkle disse test-procedurer.

 

CISS kender virkeligheden

På IAR Systems i Århus ved man, at der ligger et meget stort marked og venter, hvis det lykkes at gøres testarbejdet bare lidt nemmere.

”Vores kunder følger meget nøje med i dette udviklingsarbejde. Hvis vi kan gøre testarbejdet bare 15 procent nemmere, er der mange penge at spare,” siger direktør i IAR Systems, Henrik Leerberg. Han har arbejdet sammen med Aalborg Universitet siden 1996 og kender mange af de folk, der i dag arbejder på CISS. Derfor havde han ingen betænkeligheder ved at kaste sig ud i et samarbejde.

”Aalborg Universitet og nu CISS har over flere år bevist, at de er meget dygtige til at gøre deres forskning erhvervsrettet. Vi kan bruge deres arbejde i dagligdagen, og vores kunder spiller med i processen, så der hele tiden er en kanal ud til virkeligheden,” siger Henrik Leerberg. 

 

Angreb bagfra

Udgangspunktet for arbejdet er IAR Systems’ program til softwareudvikling, VisualSTATE, og målet er at skabe nogle automatiserede test-modeller i dette program.

”Vi skal både have automatiseret testene på modellen og gjort det nemmere at teste det endelige produkt. Det kan vi blandt andet gøre ved at bruge en metode, som kaldes Compositional Backwards Reachability. Populært sagt går vi baglæns igennem systemet. I stedet for at starte ved begyndelsen og gå alle programmets tilstande slavisk igennem, begynder vi ved slutningen. Fra det ønskede resultat går vi baglæns og finder ud af, hvad der er nødvendigt for at nå derhen. Alt andet kan vi skrælle fra. På den måde kan vi begrænse antallet af tilstande og generere nogle testcases, som vi også kan køre på det endelige produkt,” forklarer Ulrik Larsen.

 

Kunsten at begrænse

Men selv denne proces løber ofte ind i problemer. Nogle gange ’forgrener stien sig’ så voldsomt, at det ikke er muligt at teste alle mulighederne. Der findes simpelthen ikke den nødvendige regnekraft i verden - endnu. Derfor må IAR Systems finde nye metoder.

”Selvom det absolut ikke huer softwareudviklerne, bliver vi nødt til at begrænse deres udtryksmuligheder. Jo flere måder, de kan skrue et program samme på, jo sværere bliver det også at teste bagefter. Derfor går en del af arbejdet også ud på at finde nogle standarder. Hvis udviklerne er villige til at holde sig til dem, vil vi til gengæld kunne garantere, at systemet kan testes automatisk. Det er i hvert fald målet med hele øvelsen,” siger Henrik Leerberg.

 

 

FAKTABOKS:

 

IAR Systems er en af verdens førende leverandører af værktøjer og ekspertise inden for udvikling af software til indlejrede systemer. Virksomheden har afdelinger i USA, Japan, England, Tyskland, Sverige og Danmark og beskæftiger på verdensplan cirka 150 mennesker. IAR Systems’ produkter forhandles i mere end 30 lande. Hvis du vil vide mere om IAR Systems, kan du få oplysninger på www.iar.com.

Den trådløse marksprøjte
Forestil dig, at du ejer en maskinstation, og at du gerne vil kunne se, hvor alle dine maskiner er lige nu, og hvad de laver. Eller at du er landmand, der sidder hjemme foran pc’en og gerne vil planlægge morgendagens sprøjtning af dine marker – og sende sprøjteplanen tilbage til traktorens ’computer’.