Grip op softwarekwaliteit

De kwaliteit van software is een sluipend probleem. Als fouten aan het licht komen of software helemaal niet meer te begrijpen is, is het vaak te laat en is de schade al geleden. Nieuwe, geautomatiseerde technieken om software te analyseren en kwaliteit te kunnen garanderen zijn daarom hard nodig, betoogde deeltijdhoogleraar Automated Software Analysis Jurgen Vinju in zijn intreerede op vrijdag 12 februari.

Voert de software altijd het beleid uit of juist niet? Lekt deze software mogelijk persoonlijke gegevens? En hoeveel gaat het straks kosten om deze software aan te passen? Het zijn vragen die nu nog vrijwel onbeantwoord blijven voor grote softwaresystemen. De enorme complexiteit van software maakt dat het zicht op fouten ontbreekt en aanpassingen gemaakt worden zonder dat duidelijk is welke consequenties deze hebben voor de kwaliteit.

Onvermijdbaar

"Dat softwaresystemen vaak zo groot en ingewikkeld zijn, is een bijna onvermijdbaar effect bij het maken van software", zegt Jurgen Vinju, deeltijdhoogleraar Automated Software Analysis aan de faculteit Wiskunde en Informatica. Volgens Vinju is de kwaliteit van software op dit moment gewoonweg niet te garanderen. Bovendien rijzen onderhoudskosten door de hoge complexiteit de pan uit: meer dan de helft van de kosten voor software gaat op aan onderhoud.

Niet doen

Vinju adviseert de overheid en andere partijen om bewust te zijn van deze realiteit en anderen de kwaliteit van de software te laten beoordelen dan de eigen leverancier. "En sommige dingen gewoon niet doen", vindt Vinju. "Geen kwetsbaar smart energy grid bijvoorbeeld, geen stemcomputers gebruiken en geen persoonlijke cito-toetsresultaten op een webserver opslaan".

Oogsten en zaaien

Volgens Vinju moet de oplossing gezocht worden in betere geautomatiseerde software-analyse. In zijn oratie ging hij in op nieuwe technieken en gereedschappen om de analyse van software te automatiseren en welke uitdagingen hierin een rol spelen. Vinju pleit voor fors investeren in broncode- en systeemanalyse, naast de relatief gemakkelijke bestaande software-gebaseerde innovaties. Vinju: "Nu wellicht oogsten wat we al hebben, maar ook nu zaaien voor een betere toekomst."

Jurgen Vinju (1977) promoveerde in 2005 aan de Universiteit van Amsterdam. Hij deed als gast-onderzoeker ervaring op bij Alcatel-Lucent Bell Labs en IBM TJ Watson Research. Sinds 2012 is hij groepsleider van de onderzoeksgroep Software Analysis and Transformation (Swat) van het Centrum Wiskunde & Informatica. Per 1 september 2014 is hij aangesteld als deeltijdhoogleraar Automated Software Analysis aan de faculteit Wiskunde en Informatica van de TU/e.