Detecting the error threshold for rule-based programs: a logit model
Two measures of error-proneness for rule-based programs are proposed and empirically tested using a set of 80 commercially developed rule-based programs. The measures are derived by representing a rule-based (Prolog) program in its most abstract graphical form as calls between predicates, and then counting the number of unique predicate names (UPN), and the number of calls between UPNs (ARCS). Correlation and t-tests show the veracity of the measures in detecting errors. Finally, logistic regression is applied to determine the threshold point at which programs become error-prone. This threshold represents a quality mark that can be used to control the development of future rule-based programs. When a rule-based program exceeds this threshold, the program is significantly more likely to develop an error.
error-proneness software measures program structure