ERIC Number: ED237053
Record Type: Non-Journal
Publication Date: 1983-Aug
Reference Count: N/A
Classifying Bugs Is a Tricky Business.
Johnson, W. Lewis; And Others
Argues that a computer-based programming tutor for novice programmers needs to take into account not only the types and frequency of bugs found in the programs, but the intentions and knowledge state of the programmer. A first version of such a program was developed on the basis of the bug types found in a number of pencil-and-paper studies with student programmers, and was classroom tested with students learning to program in Pascal. In the process of testing, the operating system automatically collected a copy of each syntactically correct program the student programmers attempted to execute while sitting at the terminal. This paper focuses on the hand analysis of the first syntactically correct program that students generated for their first looping assignment, i.e., 204 programs. Observations made while trying to build a bug classification scheme are described, including the actual details of the bugs found and their frequency. Techniques for specifying the programmer's intention are presented, and problems associated with each type of specification in developing an accurate picture of bug types and bug frequency are pointed out. It is argued that the understanding provided by a plan analysis of the buggy program stands a better chance of reflecting the origins of bugs than other techniques currently used. Twelve references are provided. (LMM)
Publication Type: Reports - Descriptive
Education Level: N/A
Sponsor: Office of Naval Research, Arlington, VA. Personnel and Training Research Programs Office.
Authoring Institution: Yale Univ., New Haven, CT. Dept. of Computer Science.