A study of errors, error-proneness, and error diagnosis in Cobol
Communications of the ACM
DITRAN—a compiler emphasizing diagnostics
Communications of the ACM
Quantitative aspects of software validation
Proceedings of the international conference on Reliable software
An analysis of errors and their causes in system programs
Proceedings of the international conference on Reliable software
Types, distribution, and test and correction times for programming errors
Proceedings of the international conference on Reliable software
A language, a procedure, and automated tools for analysis of problems and design of algorithms in a student-oriented environment.
Hi-index | 0.00 |
This paper presents the results of a survey of programming errors in an introductory programming class conducted at Kansas State University. The objective of the study was to gain a better understanding of some of the errors made by beginning student programmers, particularly those effors normally detected by run-time packages (e.g., undefined variables, division by zero, arithmethic overflow) as well as the many effors that pass undetected by compilers and run-time tools (e.g., logic and conceptual effors). The survey involved the analysis of 1088 program runs collected from approximately 50 students in a FORTRAN programming course.The effors were tallied and analyzed, and were then recorded under eight general categories: Input/Output (e. g., missing I/O statements, missing or incorrect I/O variables or data); Assignment (e. g., incorrect operators, missing assignments); Loops (e. g., incorrect loop parameters, missing or extra loops); Decision and Branching (e. g., jump to wrong places, incorrect decisions; Arrays (e. g., incorrect subscripts, missing array); Subprograms (e. g., incorrect or missing parameters, incorrect number of calls); Declarations (e. g., issing or wrong declaration statements, wrong names in declaration statements); and Miscellaneous (e. g., unused variables, redundant decisions, wrong logic). The study found that two classes of errors accounted for over half of all noncompiletime errors: those errors related to input/output and assignment statements. Further analysis showed that less than half of the run-time error messages generated by the compiler actually pinpointed the cause of error or provided a meaningful hint.