Knowledge-based fault localization in debugging: preliminary draft

Fault localization in program debugging is the process of identifying program statements which cause anomalous behaviour. We have developed a prototype, knowledge-based model of the fault localization process. Novel features of the model include multiple localization tactics and a recognition-based mechanism for program abstraction. An explicit division of knowledge from the applications, programming and language domains facilitate model tuning within as well as across applications domains. We describe model structure and performance for a class of faults associated with master file update programs. We foresee applications of the model as an initial cognitive theory of expertise in fault localization and as a partially automated debugging tool.

[1]  Peter Grogono,et al.  Programming in Pascal, With Pascal/1000 , 1980 .

[2]  Edward H. Shortliffe,et al.  Chapter 3 – Consultation System , 1976 .

[3]  Randall Davis,et al.  Diagnosis Based on Description of Structure and Function , 1982, AAAI.

[4]  Mark David Weiser,et al.  Program slices: formal, psychological, and practical investigations of an automatic program abstraction method , 1979 .

[5]  Peter Szolovits,et al.  Causal Understanding of Patient Illness in Medical Diagnosis , 1981, IJCAI.

[6]  John D. Gould,et al.  An Exploratory Study of Computer Program Debugging1 , 1974 .

[7]  田中 穂積 E.H.Shortliffe 著, "Computer-Based Medical Consultations : MYCIN", American Elsevier, A4判, 264ぺージ, \10,080, 1976 , 1978 .

[8]  Barry Dwyer One more time — how to update a master file , 1981, CACM.

[9]  Lance A Miller Behavioral Studies of the Programming Process. , 1978 .

[10]  Michael R. Genesereth,et al.  Diagnosis Using Hierarchical Design Models , 1982, AAAI.

[11]  Edward H. Shortliffe,et al.  Computer-based medical consultations, MYCIN , 1976 .

[12]  Meilir Page-Jones,et al.  The practical guide to structured systems design , 1980 .

[13]  John A. Gould,et al.  Some Psychological Evidence on How People Debug Computer Programs , 1975, Int. J. Man Mach. Stud..

[14]  Drew McDermott,et al.  ARBY: Diagnosis With Shallow Causal Models , 1982, AAAI.

[15]  Michael R. Levy Modularity and the sequential file update problem , 1982, CACM.

[16]  Peter Grogono Programming in PASCAL , 1980 .

[17]  B. Chandrasekaran,et al.  Deep versus Compiled Knowledge Approaches to Diagnostic Problem-Solving , 1982, Int. J. Man Mach. Stud..