Many software testing and automated debugging tools rely on structural coverage techniques. Such tools implicitly assume a relation between individual control-flow choices made i...
One prevalent method for evaluating the results of automated software analysis tools is to compare the tools’ output to the judgment of human experts. This evaluation strategy i...
Andrew Walenstein, Nitin Jyoti, Junwei Li, Yun Yan...
Assertions, or more generally “Programming by contract”, have gained widespread acceptance in the computer science community as a means for correct program development. Howeve...
One of the most important steps towards effective software maintenance of a large complicated system is to understand how program features are spread over the entire system and th...
W. Eric Wong, Swapna S. Gokhale, Joseph Robert Hor...
A typical approach to software maintenance is analyzing just the source code, applying some patches, releasing the new version, and then updating the documentation. This quick-fix...