Data races occur when multiple threads are about to access the same piece of memory, and at least one of those accesses is a write. Such races can lead to hard-to-reproduce bugs t...
We propose a new language-independent, structural test adequacy criterion called state coverage. State coverage measures whether unit-level tests check the outputs and side effect...
Atomicity is a desirable property that safeguards application consistency for service compositions. A service composition exhibiting this property could either complete or cancel ...
Little is known about how developers think about design during code modification tasks or how experienced developers' design knowledge helps them work more effectively. We pe...
Thomas D. LaToza, David Garlan, James D. Herbsleb,...
Automatic bug-finding tools have a high false positive rate: most warnings do not indicate real bugs. Usually bug-finding tools assign important warnings high priority. However, t...
Studies show that programs contain much similar code, commonly known as clones. One of the main reasons for introducing clones is programmers' tendency to copy and paste code...
There has recently been a great deal of interest in search? based test data generation, with many local and global search algorithms being proposed. However, to date, there has be...
Mark Harman, Youssef Hassoun, Kiran Lakhotia, Phil...
With the growing complexity of web applications, identifying web interfaces that can be used for testing such applications has become increasingly challenging. Many techniques tha...
Use case diagrams (UCDs) are widely used to describe requirements and desired functionality of software products. However, UCDs are loosely linked to source code, and maintaining ...
Mark Grechanik, Kathryn S. McKinley, Dewayne E. Pe...