Seesoft-A Tool for Visualizing Line Oriented Software Statistics
IEEE Transactions on Software Engineering - Special issue on software measurement principles, techniques, and environments
Software Visualization in the Large
Computer
Artificial Intelligence: A Modern Approach
Artificial Intelligence: A Modern Approach
3D representations for software visualization
Proceedings of the 2003 ACM symposium on Software visualization
Algorithm visualization in CS education: comparing levels of student engagement
Proceedings of the 2003 ACM symposium on Software visualization
Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software
Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software
Algorithm visualization: a report on the state of the field
Proceedings of the 38th SIGCSE technical symposium on Computer science education
Introduction to Information Visualization
Introduction to Information Visualization
Taxonomies of visual programming and program visualization
Journal of Visual Languages and Computing
Algorithm Visualization: The State of the Field
ACM Transactions on Computing Education (TOCE)
Visualizing Prolog: a "jigsaw puzzle" approach
ACM Inroads
Hi-index | 0.00 |
In this paper, we introduce an approach to visualize the inference process in a rule engine -- Drools, which employs Rete as its pattern matching algorithm. As a software visualization work, our approach is focused on both static structure of the Rete network and dynamic behavior of the inference process. Since logic programming is distinct from other traditional programming paradigms, our approach is also different from traditional program/algorithm visualization methods. In this paper, we first introduce the target we choose to visualize, and then provide a description of the problem and our visualization approach. Finally, with an implementation and an interesting case -- sudoku solving, we show that the visualization work is helpful to understanding not only the Rete algorithm, but also the rules used in the inference. Besides, our work supports debugging, tracing and analyzing the rule engine, which is useful in finding errors and optimization.