A Knowledge-Based Interface to Promote Software Understanding
Abstract
A prerequisite to the reuse and maintenance of a software system is the study and understanding of that system. Understanding a software system requires extensive expertise and knowledge in the problem domain and in design and programming techniques. Knowledge-based tools offer promising support for this effort. We describe a system called KBSUNG which emphasizes both the representation and presentation of knowledge for software. The knowledge analysis used by KBSUNG is based on the text comprehension theory of microstructure and macrostructure. The representation and presentation techniques emphasize the use of multiple perspectives. We discuss an evaluation of the KBSUNG tool in the context of an advanced LISP programming class. We also compare KBSUNG to related tools and research.