A theory of diagnosis from first principles
Artificial Intelligence
Artificial Intelligence
New Generation Computing
Characterizing diagnoses and systems
Artificial Intelligence
Model-based diagnosis of hardware designs
Artificial Intelligence
Programmers use slices when debugging
Communications of the ACM
Automatic Program DeBugging for Intelligent Tutoring Systems
Automatic Program DeBugging for Intelligent Tutoring Systems
Algorithmic Program DeBugging
Dependency-Directed Localization of Software Bugs
Dependency-Directed Localization of Software Bugs
IJCAI'99 Proceedings of the 16th international joint conference on Artificial intelligence - Volume 2
Modeling Programs with Unstructured Control Flow for Debugging
AI '02 Proceedings of the 15th Australian Joint Conference on Artificial Intelligence: Advances in Artificial Intelligence
Model-based debugging with high-level observations
Intelligent information processing II
Model-Based Debugging -- State of the Art And Future Challenges
Electronic Notes in Theoretical Computer Science (ENTCS)
An observation-based model for fault localization
WODA '08 Proceedings of the 2008 international workshop on dynamic analysis: held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2008)
A practical evaluation of spectrum-based fault localization
Journal of Systems and Software
Simultaneous debugging of software faults
Journal of Systems and Software
A diagnostic reasoning approach to defect prediction
IEA/AIE'11 Proceedings of the 24th international conference on Industrial engineering and other applications of applied intelligent systems conference on Modern approaches in applied intelligence - Volume Part II
AI for the win: improving spectrum-based fault localization
ACM SIGSOFT Software Engineering Notes
A test-suite reduction approach to improving fault-localization effectiveness
Computer Languages, Systems and Structures
A dynamic code coverage approach to maximize fault localization efficiency
Journal of Systems and Software
Hi-index | 0.00 |
We describe the extension of the well-known model-based diagnosis approach to the location of errors in imperative programs (exhibited on a subset of the Java language). The source program is automatically converted to a logical representation (called model). Given this model and a particular test case or set of test cases, a program-independent search algorithm determines a the minimal sets of statements whose incorrectness can explain incorrect outcomes when the program is executed on the test cases, and which can then be indicated to the developer by the system. We analyze example cases and discuss empirical results from a Java debugger implementation incorporating our approach. The use of AI techniques is more flexible than traditional debugging techniques such as algorithmic debugging and program slicing.