During the past decades research in automated debugging has led to several approaches. Some of them are based on structural and some of them on behavioral characteristics of the source code. The quality of the obtained results in terms of computed fault candidates compared to the overall number of statement usually is better when considering the program's behavior or even more sophisticated models representing the structure and the semantics of the program. However, for larger programs such approaches are not feasible and more light-weighted techniques have to be used in order to keep running time as small as possible. In this paper, we introduce an approach that combines dynamic slicing with constraint computation in order to increase the debugging quality while retaining small computational footprint. Using the presented approach it was possible to remove all fault candidates except the correct root cause for a particular program.
展开▼