Spårbarhet ska minska sårbarhet

2014-10-13 | Forskning/Samverkan

Idag är många system stora, komplexa och svåra att överblicka. Med hjälp av en ny metod för kravvalidering vill Jiale Zhou göra dem säkrare. Måndag 13 oktober försvarar han sin licentiatavhandling på Mälardalens högskola (MDH) i Västerås.

System finns i många olika former runt omkring oss. De finns i smått, som i appen på våra mobiltelefoner, eller i stort, som i styrsystemet på ett flygplan. När ett system utvecklas följer man normalt en viss arbetsprocess. Kristina Lundqvist, professor i tillförlitlig programvaruteknik vid MDH och handledare åt Jiale Zhou, förklarar:

 – När ett system utvecklas så skriver en ingenjör först ett antal krav som talar om vad systemet ska göra. Sedan ska nästa ingenjör designa det, nästa implementera det och åter nästa testa det. Om man själv utvecklar ett mindre system som till exempel en app så kanske man struntar i förarbetet, men om man gör som man ska, och om man jobbar med större system, så börjar man med att skriva kraven. Men vad händer om någon, långt fram i processen, får en idé som verkar jättebra och bestämmer sig för att förändra något? Hur tar man då reda på hur den förändringen påverkar resten av systemet?

Jiale Zhous fokus ligger på kravställningen och hans nisch är säkerhetskritiska system, det vill säga system som, ifall de inte fungerar, kan innebära stor fara för människor, exempelvis styrsystemet på ett flygplan. Han drar en parallell:

– Tänk vad som skulle kunna hända en fiskebåt om en fyr ligger på fel ställe. Konsekvenserna kan bli allvarliga eller till och med livshotande. Liknande saker kan ske inom kravhantering, särskilt när systemkrav spelar en allt viktigare roll för att vägleda senare aktiviteter i systemutvecklingen. En uppsättning felaktiga systemkrav, precis som en felaktigt placerad fyr, kommer oundvikligen att leda till att man hamnar fel. Därför blir validering, det vill säga kontroll, av systemkraven viktigt för att nå framgång.

Kristina Lundqvist använder ett annat exempel.

 – Tänk dig att din chef kommer till dig och säger att hen vill förändra en rutin inom organisationen och ni bestämmer er för att genomföra förändringen direkt. Då finns ju en stor risk att förändringen påverkar någon annan, på någon annan plats i organisationen, negativt. Rutinen fanns förmodligen där av en anledning.

Automatiserad kravvalidering

Jiale Zhou vill ha spårbarhet genom hela systemet, att det ska finnas kvar en tråd från kravet hela vägen genom de senare utvecklingsstegen. Brister och avvikelser som döljs i systemkrav är svåra att upptäcka och därför tror han inte på manuell kontroll av dem.

 – Manuell validering av systemkrav, till exempel inspektion av krav, är en felbenägen, tidskrävande och ineffektiv process. Modellbaserad utveckling är en lovande teknik för att uppnå kostnadseffektiv kravvalidering.

Det Jiale Zhous forskning har hjälpt till att ta fram är en automatiserad metod för att kontrollera kraven hos ett system.

– Metoden är lätt att förstå för de ingenjörer som ska jobba med den, och den är lätt att genomföra för utvecklare. Jag försöker bidra till utvecklingen av pålitliga realtidssystem som finns inbyggda i till exempel fordon, flygplan, maskiner och apparater i vår vardag, säger han.

På frågan om vad han ska göra härnäst råder ingen tvekan.

– Jag ska definitivt fortsätta emot en doktorsavhandling efter det här.