Multiple Representation Perspectives for Supporting Explanation in Context

Abstract : The term perspective is used for a set of properties describing an object with respect to a common theme. The use of a perspectives representation is illustrated and evaluated in a programming tool called EXPLAINER, which supports programmers by providing explanations of examples related to the programmers' current task. Having multiple representation perspectives is essential for supporting people working from examples. Namely, it allows explanations of the examples to be generated according to perspectives that accommodate the changing context and needs of the programmers while they explore an example and develop a solution to their task. The multiple representation perspectives and corresponding perspective explanations support the development of a mental model of the example that can then be used in solving the current task. A formal notion of perspectives as named%d sets of property-value pairs is incorporated in FrameTalk, a frame-based knowledge representation language. It is used to illustrate the representational basis for examples as they occur in the EXPLAINER system. The perspectives mechanism also addresses problems found in term-based knowledge representation languages, problems such as the proliferation of nonintuitive concepts, the misuse of the generalization link as a compositional link, and the differences when using concepts in different application contexts.

[1]  Larry Masinter,et al.  The Interlisp Programming Environment , 1981, Computer.

[2]  Walter Kintsch,et al.  Routine Computing Tasks: Planning as Understanding , 1991, Cogn. Sci..

[3]  Allen Newell,et al.  How can Merlin understand , 1973 .

[4]  David F. Redmiles,et al.  Reducing the variability of programmers' performance through explained examples , 1993, INTERCHI.

[5]  John R. Anderson,et al.  Learning Flow of Control: Recursive and Iterative Procedures , 1986, Hum. Comput. Interact..

[6]  Richard C. Waters,et al.  The programmer's apprentice , 1990, ACM Press frontier series.

[7]  Elliot Soloway,et al.  Designing documentation to compensate for delocalized plans , 1988, CACM.

[8]  Christopher K. Riesbeck,et al.  Inside Case-Based Reasoning , 1989 .

[9]  W Kintsch,et al.  Understanding and solving word arithmetic problems. , 1985, Psychological review.

[10]  Daniel G. Bobrow,et al.  On Overview of KRL, a Knowledge Representation Language , 1976, Cogn. Sci..

[11]  Premkumar T. Devanbu,et al.  LaSSIE—a knowledge-based software information system , 1991, ICSE '90.

[12]  P. Pirolli,et al.  The role of learning from examples in the acquisition of recursive programming skills. , 1985 .

[13]  Marvin Minsky,et al.  A framework for representing knowledge , 1974 .

[14]  Eduard Hovy,et al.  Generating Natural Language Under Pragmatic Constraints , 1988 .

[15]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[16]  Gerhard Fischer,et al.  Supporting Software Designers with Integrated Domain-Oriented Design Environments , 1992, IEEE Trans. Software Eng..

[17]  David F. Redmiles From programming tasks to solutions: bridging the gap through the explanation of examples , 1992 .

[18]  Wolfgang Hoeppner,et al.  Review of Generating natural language under pragmantic constraints by Edward H. Hovy. Lawrence Erlbaum Associates 1988. , 1990 .

[19]  W. Lewis Johnson,et al.  Sharing And Reuse Of Requirements Knowledge , 1991, Proceedings., 6th Annual Knowledge-Based Software Engineering Conference.

[20]  Richard Alterman,et al.  Adaptive Planning , 1988, Cogn. Sci..

[21]  Kate Ehrlich,et al.  Empirical Studies of Programming Knowledge , 1984, IEEE Transactions on Software Engineering.

[22]  Clayton Lewis,et al.  Why and How to Learn Why: Analysis-Based Generalization of Procedures , 1988, Cogn. Sci..

[23]  W. Kintsch,et al.  Strategies of discourse comprehension , 1986 .

[24]  Marvin Minsky,et al.  A framework for representing knowledge" in the psychology of computer vision , 1975 .

[25]  Gerhard Fischer,et al.  Cognitive View of Reuse and Redesign , 1987, IEEE Software.