Towards an Integrated Debugging Environment

With recent research showing that consistency based diagnosis can be used to model programs written in imperative programming languages for debugging purposes, it has been possible to develop debugging environments that provide interactive support to the developer, homing in on individual faults within a few interactions. In addition to complexity results, this paper discusses how the results of the straightforward application of diagnosis models can be improved upon by incorporating information obtained from multiple test cases (i.e., input/output vector specifications). The information from executing such test cases can be used to support heuristic statement selection by assigning fault probabilities, and for elimination of diagnosis candidates. We also discuss how the extended algorithms can be integrated with the consideration of multiple diagnosis models during the diagnosis process.