TU/e-onderzoeker versnelt automatisch debuggen

Promovendus Tukaram Muske ontwikkelt techniek om aantal alarmmeldingen te verkleinen

Statische code-analyse, waarbij softwareprogramma’s automatisch worden gecontroleerd zonder ze daadwerkelijk te draaien, is een belangrijke techniek om veelvoorkomende programmeerfouten op te sporen en te rapporteren. Vaak geven tools voor deze analyse echter valse alarmmeldingen. Hiervoor ontwikkelde Tukaram Muske, promovendus aan TU Eindhoven (TU/e), een oplossing.

Het verminderen van het aantal statische analysemeldingen is een belangrijke uitdaging, waaraan zowel de academische wereld als de industrie werkt. Een mogelijke oplossing is het negeren van een subset van de meldingen. Dat is echter niet ongevaarlijk, doordat je kritische fouten over het hoofd kunt zien. Muske, werkzaam bij een Indiaas r&d-lab van dienstverlener TCS, pakt het probleem van de grote aantallen meldingen daarom anders aan: hij analyseert ze nadat ze zijn gegenereerd, door middel van postprocessing.

36 procent minder alarmmeldingen

Deze technieken werken onafhankelijk van de gebruikte statische-analysetool en slagen erin om het aantal alarmmeldingen met 36 procent te verminderen. De tijd die nodig is om fout-positieven automatisch te elimineren, vermindert met 60 procent. Dit kan een belangrijke tijd- en kostenbesparing opleveren en een snellere en nauwkeurigere reactie op softwarefouten mogelijk maken.

Postprocessing vermindert het aantal meldingen dat moet worden gecontroleerd en de inspanning die nodig is om ze handmatig te inspecteren. Muske en zijn collega’s evalueerden bestaande technieken en stelden vast waar deze kunnen worden verbeterd. Vervolgens bedachten zij op basis van die evaluatie werktechnieken en evalueerden deze op verschillende industriële en open source-systemen. De nieuwe technieken waren beter in het groeperen van vergelijkbare alarmen en het automatisch elimineren van valse alarmmelding. Ze presteerden ook beter in het onderdrukken van meldingen die werden gegenereerd bij continu veranderende code.

Inspectie

Een andere verbetering is de inspectie van meldingen die worden gegenereerd op code die deel voor deel wordt geanalyseerd: de technieken identificeren of het alarm uniek is en wordt geactiveerd binnen één software-partitie, of dat het een dubbelalarm is, geactiveerd als gevolg van de onderliggende code die door verschillende partities wordt gebruikt.

De belangrijkste manier waarop Muske de bestaande technieken heeft verbeterd, was door rekening te houden met waar de tools worden gebruikt en op welk soort toepassingen ze worden gebruikt. ‘De resultaten laten een enorme verbetering zien, die nog verder kan verbeteren door zijn nieuwe technieken te combineren met bestaande’, aldus de onderzoeker.

Het volledige onderzoek is hier te vinden.

x

Om te kunnen beoordelen moet u ingelogd zijn:

Dit artikel delen:

Uw reactie

LET OP: U bent niet ingelogd. U kunt als gast reageren maar dan wordt uw reactie pas zichtbaar na goedkeuring door de redactie. Om uw reactie direct geplaatst te krijgen moet u eerst rechtsboven inloggen of u registreren

Vul uw naam in
Vult u een geldig e-mailadres in
Vult u een reactie in
Jaarbeurs b.v. gaat zorgvuldig en veilig om met uw persoonsgegevens. Meer informatie over hoe we omgaan met je data lees je in het privacybeleid
Als u een reactie wilt plaatsen moet u akkoord gaan met de voorwaarden

Stuur dit artikel door

Uw naam ontbreekt
Uw e-mailadres ontbreekt
De naam van de ontvanger ontbreekt
Het e-mailadres van de ontvanger ontbreekt

×
×
article 2020-07-13T10:47:00.000Z Christel Dieleman
Wilt u dagelijks op de hoogte worden gehouden van het laatste ict-nieuws, achtergronden en opinie?
Abonneer uzelf op onze gratis nieuwsbrief.