Structural Validation of Expert Systems: Experience Using a Formal Model

Alun D. Preece, Clifford Grossner, P. Gokul Chander, and T. Radhakrishnan

There are two complementary aspects to testing a software system: functional testing determines how well the system performs its required operations; structural testing determines that the components of the system are sufficiently exercised during testing. Functional testing is based upon a specification of the system requirements; structural testing is based upon a model of the structure of the system. For rule-based systems, a structural model explicates the rule execution paths (possible causal sequences of rule firings). In this paper, a formal structural model for OPS5- like rule bases is developed; this model is designed to overcome weaknesses of previous structural models. Two software tools are introduced: Path Hunter uses the structural model to determine the execution paths in a rule base; Path Tracer analyzes dynamic rule firings that occur during functional testing, to determine the extent to which execution paths identified by the structural model are exercised at run-time. We present results obtained from using Path Hunter and Path Tracer on a complex expert system rule base which had previously been subjected to functional testing.

This page is copyrighted by AAAI. All rights reserved. Your use of this site constitutes acceptance of all of AAAI's terms and conditions and privacy policy.