header-pattern-bg

Effektiv testning av mjukvara blir allt viktigare

Del av fokusområde Smarta städer och samhällen

Den massiva ökningen av processorer och datorer integrerade i enheter och system ställer höga krav på en effektiv mjukvaruutveckling. I så kallade mjukvaruproduktlinjer (software product lines) används gemensamma byggstenar, vilket kan minska både utvecklingskostnader och tid. För att garantera produkters kvalitet och säkerhet måste deras mjukvara testas noggrant. Ny forskning från Högskolan i Halmstad föreslår två olika sätt att testa mjukvaruproduktlinjer.

Forskningen kan gynna konformitetstestning av mjukvaruprodukter genom lägre testningskostnader och en högre feldetektering. På så sätt undviks mjukvaruproblem i säkerhetskritiska inbyggda system som till exempel autonoma fordon.

– Vanderson Hafemann Fragal

Prylar i vår omgivning, till exempel digitala klockor, medicintekniska produkter och smarta telefoner, utrustas allt oftare med inbyggda datorer som förbättrar funktionen. Större och mer komplexa inbyggda system, som till exempel bilar och maskiner vid industriell tillverkning, kallas för säkerhetskritiska inbyggda system. Eftersom allt fler produkter och system tillverkas med inbyggda datorer måste utveckling och testning av deras mjukvara vara effektiv och kvalitetssäker för att hantera den ökade komplexiteten. I säkerhetskritiska inbyggda system är en pålitlig mjukvara avgörande – när en bil automatiskt och hastigt ska bromsa in gäller det att mjukvaran snabbt och korrekt hanterar sensorernas signaler och skickar order till bromssystemet på ett tillförlitligt sätt.

Det gäller att mjukvaran har testats noggrant och är tillförlitlig i säkerhetskritiska system, till exempel vid en hastig inbromsning av en självkörande bil. Foto: iStock.

Hög tröskel för att införa testning

Under de senaste åren har tillverkningssättet Software Product Line Engineering (SPLE) utvecklats. På svenska kan det översättas till teknik för mjukvaruproduktlinjer. Det syftar till att systematiskt återanvända delar av mjukvaran i utveckling av produkter som liknar varandra. Vanderson Hafemann Fragal, doktorand vid Högskolan i Halmstad, har nyligen publicerat en doktorsavhandling om testning av mjukvaruproduktlinjer för säkerhetskritiska inbyggda system.

– Tröskeln för att införa testning av mjukvara är vanligtvis hög och det är en stor utmaning för dagens producenter att öka testeffektiviteten vid tillverkning. Ett vanligt sätt att öka effektiviteten är genom automatisering av testdesign. Flera tekniker, processer och strategier har utvecklats för SPLE-testning, men många problem kvarstår inom detta forskningsområde, säger Vanderson Hafemann Fragal.

Vanderson Hafemann Fragal

Vanderson Hafemann Fragal disputerade den 24 augusti och planerar att fortsätta med undervisning i och forskning om mjukvaruproduktlinjer.

Doktorsavhandling

Automatic generation of configurable test-suites for software product lines. Länk till annan webbplats.

Disputationen ägde rum den 24 augusti på Högskolan i Halmstad.

Handledare:

Professor Mohammad Reza Mousavi, Högskolan i Halmstad (tidigare verksam) och University of Leicester (nuvarande).

Professor Adenilso da Silva Simao, University of Sao Paulo.

Opponent:

Professor Andrzej Wasowski, University of Copenhagen.

Tid och pengar kan sparas om rätt testmetod väljs

Utmaningen är att minska den totala testmängden som krävs för SPLE-produkter. Detta kan göras genom att använda modeller som drar nytta av likheter mellan produkter.

– Målet i min forskning har varit att automatisera framställningen av små testsviter med hög feldetektering och låg testredundans mellan produkter från en mjukvaruproduktlinje, säger Vanderson Hafemann Fragal.

För att göra detta har Vanderson Hafemann Fragal undersökt två testmetoder: produktcentrerad och produktlinjecentrerad. De två tillvägagångssätten har utvecklats och implementerats och båda genererade testsviter för en komplett analys av mjukvara. Forskningsexperimenten visar att det produktcentrerade tillvägagångssättet ger en minskning på upp till 36 procent av antalet testfall som behövs. Det produktlinjecentrerade tillvägagångssättet ger en minskning med 50 procent av antalet testfall, genererade med hjälp av konfigurerbara testpaket. Genom att minska antalet testfall kan både tid och pengar sparas vid testning av nya produkter.

– Vår slutsats är att det produktcentrerade tillvägagångssättet bör användas när färre än 20 produkter kräver testning. Och produktlinjemetoden bör väljas när ett stort antal produkter, det vill säga fler än 20, kräver testning, säger Vanderson Hafemann Fragal.

– Forskningen kan gynna konformitetstestning av mjukvaruprodukter genom lägre testningskostnader och en högre feldetektering. På så sätt undviks mjukvaruproblem i säkerhetskritiska inbyggda system som till exempel autonoma fordon, säger Vanderson Hafemann Fragal, som planerar att fortsätta med undervisning i och forskning om mjukvaruproduktlinjer.

Text: LOUISE WANDEL

Bild: JOACHIM BRINK