Abstract

Intelligent program diagnosis systems are computer programs capable of analyzing logical and design-level errors and misconceptions in programs. Upon discovering the errors, these systems provide intelligent feedback and thus guide the users in the problem-solving process. Intelligent program diagnosis systems are classified by their primary means of program analysis. The most distinct split is between those systems that are unable to analyze partial code segments as they are provided by the user and must wait until the entire solution code is completed before attempting any diagnosis, and those that are capable of analyzing partial solutions and providing proper guidance whenever an error or misconception is encountered. This paper gives an overview of the field and then critically compares work accomplished on several closely related active diagnosis systems, emphasizing such issues as the representation techniques used to capture the domain knowledge required for the diagnosis, ability to handle the diagnosis of partial code segments of the solutions, features of the user interfaces, and methodologies used in conducting the diagnosis process. Finally the paper presents a detailed discussion on issues related to active program diagnosis along with various design considerations to improve the engineering of this approach to intelligent diagnosis. The discussion presented in this paper tackles the issues referred above within the context of DISCOVER, an intelligent system for programming by discovery.

Keywords

Publication details

DOI
10.24200/squjs.vol5iss0pp157-183
Journal
Sultan Qaboos University Journal for Science, 5, 157
Publisher
Sultan Qaboos University
Open access
Gold open access
License
CC BY 4.0

Cite this article

APA 7

Ramadhan, H. A., & Shihab, K. (2000). Intelligent Systems for Active Program Diagnosis. Sultan Qaboos University Journal for Science, 5, 157. https://doi.org/10.24200/squjs.vol5iss0pp157-183

MLA 9

Ramadhan, Haider Ali, and Khalil Shihab. "Intelligent Systems for Active Program Diagnosis." Sultan Qaboos University Journal for Science, vol. 5, 2000, pp. 157. https://doi.org/10.24200/squjs.vol5iss0pp157-183.

Chicago (author–date)

Ramadhan, Haider Ali, and Khalil Shihab. 2000. "Intelligent Systems for Active Program Diagnosis." Sultan Qaboos University Journal for Science 5: 157. https://doi.org/10.24200/squjs.vol5iss0pp157-183.

Harvard

Ramadhan, H. A. and Shihab, K. (2000) 'Intelligent Systems for Active Program Diagnosis', Sultan Qaboos University Journal for Science, 5, pp. 157. doi:10.24200/squjs.vol5iss0pp157-183.

Vancouver

Ramadhan HA, Shihab K. Intelligent Systems for Active Program Diagnosis. Sultan Qaboos University Journal for Science. 2000;5:157. doi:10.24200/squjs.vol5iss0pp157-183

IEEE

H. A. Ramadhan, and K. Shihab, "Intelligent Systems for Active Program Diagnosis," Sultan Qaboos University Journal for Science, vol. 5, pp. 157, 2000, doi: 10.24200/squjs.vol5iss0pp157-183.