Original scientific paper Traditional static defect detection tools can detect software defects and report alarms, but the correlations among alarms are not identified and massive independent alarms are against the understanding. Helping users in the alarm verification task is a major challenge for current static defect detection tools. In this paper, we formally introduce alarm correlations. If the occurrence of one alarm causes another alarm, we say that they are correlated. If one dominant alarm is uniquely correlated with another, we know verifying the first will also verify the others. Guided by the correlation, we can reduce the number of alarms required for verification. Our algorithms are inter-procedural, path-sensitive, and scalable. We present a correlation procedure summary model for inter-procedural alarm correlation calculation. The underlying algorithms are implemented inside our defect detection tools. We chose one common semantic fault as a case study and proved that our method has the effect of reducing 34,23 % of workload. Using correlation information, we are able to automate the alarm verification that previously had to be done manually.
Keywords: abstract interpretation; alarm correlations; alarm verification; correlation summary; state slicing
Istraživanje korelacija alarma na temelju detekcije statičkog kvaraIzvorni znanstveni članak Tradicionalni alati za detekciju statičkog kvara mogu detektirati kvarove softvera i objaviti alarm, ali korelacije između alarma nisu identificirane i masivni nezavisni alarmi protivni su razumijevanju. Pomaganje korisnicima u verifikaciji alarma predstavlja veliki izazov postojećim alatima za detekciju statičke greške. U ovom radu mi formalno uvodimo korelacije alarma. Ako postojanje jednog alarma uzrokuje drugi, kažemo da su u korelaciji. Ako je jedan dominantni alarm jedinstveno povezan s drugim, znamo da će se verifikacijom jednoga također verificirati drugi. Na osnovu korelacije možemo reducirati broj alarma potrebnih za verifikaciju. Naši su algoritmi inter-proceduralni, osjetljivi na putanju i podesivi (scalable). Mi prikazujemo sumarni model postupka korelacije za računanje inter-proceduralne korelacije alarma. Osnovni algoritmi su implementirani u naše alate za detekciju kvara. Izabrali smo jednu uobičajenu semantičku pogrešku za analizu slučaja i dokazali da naša metoda rezultira smanjenjem radnog opterećenja za 34,23 %. Primjenom korelacijeske informacije možemo automatizirati verifikaciju alarma, što se ranije moralo raditi ručno.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.