PELAS-program error-locating assistant system
- 1 September 1988
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 14 (9) , 1253-1260
- https://doi.org/10.1109/32.6169
Abstract
Error localization in program debugging is the process of identifying program statements which cause incorrect behavior. A prototype of the error localization assistant system which guides a programmer during debugging of Pascal programs is described. The system is interactive: it queries the programmer for the correctness of the program behavior and uses answers to focus the programmer's attention on an erroneous part of the program (in particular, it can localize a faulty statement). The system differs from previous approaches in that it makes use of the knowledge of program structure, which is derived automatically. The knowledge of program structure is represented by the dependence network which is used by the error-locating reasoning mechanism to guide the construction, evaluation, and modification of hypothesis of possible causes of the error. Backtracking reasoning has been implemented in the reasoning mechanism.Keywords
This publication has 22 references indexed in Scilit:
- PROUST: Knowledge-Based Program UnderstandingIEEE Transactions on Software Engineering, 1985
- Diagnostic reasoning based on structure and behaviorArtificial Intelligence, 1984
- EMERGE-A Data-Driven Medical Decision Making AidPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1984
- A Data Flow Oriented Program Testing StrategyIEEE Transactions on Software Engineering, 1983
- Stereotyped program debugging: an aid for novice programmersInternational Journal of Man-Machine Studies, 1982
- The Programmer's Apprentice: Knowledge Based Program EditingIEEE Transactions on Software Engineering, 1982
- Understanding and debugging programsInternational Journal of Man-Machine Studies, 1980
- An experiment in knowledge-based automatic programmingArtificial Intelligence, 1979
- Aladdin: Assembly Language Assertion Driven Debugging InterpreterIEEE Transactions on Software Engineering, 1979
- A fast algorithm for finding dominators in a flowgraphACM Transactions on Programming Languages and Systems, 1979