Alexander Felfernig, Gerhard Friedrich, Dietmar Jannach, and Markus Stumptner
Configuration problems are a driving application area for declarative knowledge representation that experiences a constant increase in size and complexity of knowledge bases. Automated support of the debugging of such knowledge bases is a necessary prerequisite for effective development of configurators. We show that this task can be achieved by consistency based diagnosis techniques. Based on the formal definition of consistency based configuration we develop a framework suitable for diagnosing configuration knowledge bases. During the test phase of configurators, valid and invalid examples are used to test the correctness of the system. In case such examples lead to unintended results, debugging of the knowledge base is initiated. The examples used for testing are combined to identify faulty chunks of knowledge. Starting from a clear definition of diagnosis in the configuration domain we develop an algorithm based on conflicts and exploit the properties of positive examples to reduce consistency checks. Our framework is general enough for its straightforward adaptation to diagnosing customer requirements. Given a validated knowledge base our approach can then be used to identify unachievable conditions during configuration sessions.