lu.se

Denna sida på svenska This page in English

MedSoft - Programvaruutveckling för medicinska system

Forskningsprofil

Christin Lindholm är universitetslektor i programvaruteknik vid Lunds Tekniska högskola, Lunds universitet med placering vid Campus Helsingborg.

Nyckelord

Programvara, medicinteknik, säkerhetskritisk, utvecklingsprocesser, programvarukvalitet, granskningar, riskanalys, riskbenägenhet, beslutsstöd.

Forskning

Hälsovårdssektorn är idag en av de snabbast växande ekonomiska sektorerna av idag där den medicintekniska domänen är en del av denna sektor. En ökande del av funktionaliteten i medicinteknisk utrustning utgörs av programvara och många egenskaper skulle inte vara möjliga att implementera utan programvara.

Användningen av medicinsk programvara är en risk för patienter och konsekvenserna av ett fel kan variera mellan död och nästan ingen effekt alls. Risk och riskhantering är hårt kopplat till den medicintekniska domänen och det är ytterst viktigt för alla medicintekniska företag att ha en bra riskhanteringsprocess. Det är även föreskrivet i lag att medicintekniska företag måste ha en etablerad riskhanteringsprocess.

En del av forskningen i projektet Programvaruutveckling i medicinska system har varit att kartlägga praxis för medicintekniska företag. Kartläggningen har lett fram till att vissa problemområden och områden med förbättringspotential för industrin har utkristalliserat sig. Inom medicinteknik arbetar man med kvalitetssäkring genom att använda generella standarder och tekniker som t ex CE-märkning och speciellt utformade regler av FDA. Ett medicintekniskt företag har många olika standarder, lagar och regler att anpassa sig till. Programvaran räknas in i den medicintekniska produkten och ska följa samma lagar och regler. Komplexiteten hos programvara gör att validerings- och certifieringsprocesserna är både tids och resurskrävande. Idag är standarder, lagar och regler inte direkt anpassade efter utveckling av programvara.  Som resultat av forskningen har också behovet av högkvalitativ programvara i den medicintekniska domänen identifierats och också behovet av nya tekniker, metoder och processer för ytterligare förbättring av programvarukvalitet i den medicintekniska domänen. Resultaten har använts till att ta fram en mängd krav för nya processer, metoder och tekniker inom området för att användas av forskare som en guide vid utveckling av mer anpassade processer, metoder och tekniker för programvaruutveckling inom den medicintekniska domänen.

Den andra delen av forskningen i projektet fokuserar på risk och baserar sig på två experiment. Vid utveckling och användning av säkerhetskritiska system finns det flera olika typer av risker som kan påverka. Dessa risker behöver identifieras och hanteras på ett korrekt sätt. En riskhanteringsprocess med identifiering, analys och uppföljning av risker är viktig. Att mäta riskbenägenhet hos olika personer kan vara av stort intresse för att se om olika grupper av personer och hur de roller de innehar är relaterade till olika riskbenägenhet. Riskbenägenheten påverkar de beslut och lösningar av ett problem som en person väljer. Genom att mäta riskbenägenheten med en speciell metod i ett experiment har vi sett att olika personer är olika riskbenägna.  Ett antal beslut gällande risker fattas under riskhanteringsprocessen i programvaruprojekt och det är de personer som är involverade i processen som tar dessa beslut. Olika personer syn på hur allvarliga identifierade risker är, har undersökts i experimentet och de slutsatser som dragits är att olika personer har olika syn på hur allvarlig en risk är när det gäller kvarvarande fel efter test. Sannolik är det möjligt att generalisera detta och dra slutsatsen att när det gäller programvaruprocessen så är olika personer mer eller mindre riskbenägna. Vi skulle nu vilja gå vidare och i samarbete med något företag se om denna metod skulle kunna användas som beslutsstöd i riskhanteringsprocessen.

Det andra experimentet gäller det första steget i riskhanteringsprocessen som är riskidentifikation. Experimentet involverar läkare, programvaruutvecklare samt utvecklare inom medicinteknik och slutsatsen som kan dras är att olika kompetenserna och därmed olika erfarenheter påverkar riskidentifikationsprocessen. Genom att involvera multipla kompetenser får man en mer komplett mängd av identifierade risker än om endast en typ av kompetens inkluderas i processen.

Målet med det fortsatta forskningsarbetet är att bidra med resultat som kan leda till fortsatta förbättringar av programvarukvalitén inom det medicintekniska området. Detta ska ske i nära samarbete med industrin.

Mer specifikt är målet att utreda följande frågor så som; Hur kan tekniker, processer och metoder inom programvaruutveckling och riskhantering specialanpassas för att bättre passa programvara och underlätta för industrin? Hur kan de specifika krav som identifierats i tidigare studier användas i form av checklistor, frågelistor eller riktlinjer för stöd till den medicintekniska industrin? Kan listor på identifierade risker i riskhanteringsprocessen bli mera kompletta om användare, utvecklare, riskexperter samt checklistor används? Skulle ett verktyg som bygger på Trade-off metoden vara till stöd i beslutsprocessen vid riskhantering? Olika personer har olika riskbenägenhet. Hittar riskbenägna färre risker än riskobenägna?

Resultaten av projektet är tänkt att användas av företag som utvecklar programvara för medicinska system. Detta, i sin tur, kommer att innebära att de medicinska system som används blir säkrare och färre incidenter behöver inträffa.

Finansiering

Gyllenstiernska Krapperupstiftelsen och fakultetsmedel: Gyllenstiernska Krapperupstiftelsen

Publikationer

State of the Practice in Software Development for Medical Device Production
Christian Denger, Raimund L. Feldman, Martin Höst, Christin Lindholm and Forrest Shull
IESE-Report No. 071.07/E, Fraunhofer Institute for Experimental Software Engineering, February 2007.

Software Engineering Techniques in Medical Device Development
Raimund L. Feldman, Forrest Shull, Christian Denger, Martin Höst and Christin Lindholm,
In workshop on High Confidence Medical Devices, Software and Systems (HCMDSS) and Medical Device Plug-and Play (MD PnP), Boston, USA, June 2007, pp. 46-54.

A Snapshot of the State of Practice in Software Development for Medical Devices
Christian Denger, Raimund L. Feldman, Martin Höst, Christin Lindholm and Forrest Shull,
In proceedings of International Symposium on Empirical Software Engineering and Measurement (ESEM), Madrid, Spain, September 2007, pp. 485-487.     

Development of Software for Safety Critical Medical Devices – an Interview-Based Survey of State of Practice
Christin Lindholm and Martin Höst, In proceedings of the eighth Conference on Software Engineering Research and Practice in Sweden (SERPS´08), Karlskrona, Sweden, November 2008.

Different Conceptions in Software Project Risk Assessment
Martin Höst and Christin Lindholm, In proceedings of the Software Engineering Track at the 22:nd Annual ACM Symposium on Applied Computing (SAC), Seoul, Korea, March 2007, pp. 1422-1426.

Risk Identification by Physicians and Developers – Differences Investigated in a Controlled Experiment
Christin Lindholm and Martin Höst, In proceeding of the ICSE 2009 Workshop on Software Engineering in Healthcare, Vancouver, Canada, May 2009.

Software Development and Risk Management in the Safety Critical Medical Device Domain
Christin Lindholm, Licentiate Thesis, Lund University, March 2009.