Programs written in languages that provide direct access to memory through pointers often contain memory-related faults, which may cause non-deterministic failures and even securi...
James A. Clause, Ioannis Doudalis, Alessandro Orso...
Software engineering researchers have long been interested in where and why bugs occur in code, and in predicting where they might turn up next. Historical bug-occurence data has ...
Christian Bird, Adrian Bachmann, Eirik Aune, John ...
Five modern static analysis tools (ARCHER, BOON, PolySpace C Verifier, Splint, and UNO) were evaluated using source code examples containing 14 exploitable buffer overflow vulnera...
Program differencing is a common means of software debugging. Although many differencing algorithms have been proposed for procedural and object-oriented languages like C and Ja...
Dynamic test generation consists of executing a program while gathering symbolic constraints on inputs from predicates encountered in branch statements, and of using a constraint ...
Bassem Elkarablieh, Patrice Godefroid, Michael Y. ...