Dependence analysis underpins many activities in software maintenance such as comprehension and impact analysis. As a result, dependence has been studied widely for programming la...
Kelly Androutsopoulos, Nicolas Gold, Mark Harman, ...
Runtime property checking (as implemented in tools like Purify or Valgrind) checks whether a program execution satisfies a property. Active property checking extends runtime check...
Patrice Godefroid, Michael Y. Levin, David A. Moln...
Concurrent programs are notoriously difficult to debug. We see two main reasons for this: 1) concurrency bugs are often difficult to reproduce, 2) traces of buggy concurrent execu...
—Caches are commonly employed to hide the latency gap between memory and the CPU by exploiting locality in memory accesses. The cache performance strongly influences a system’...
The usefulness of design patterns in forward engineering is already well-known and several tools provide support for their application in the development of software systems. Whil...