Loading…
A hybrid approach for program understanding based on graph parsing and expectation-driven analysis
Program understanding is an important part ofthe domain expertise required for programming language tutoring systems. However, the understanding ofstudent programs by a computer is extremely difficult because ofthe tremendous scope of variability in student solutions for nontrivial tasks. This artic...
Saved in:
Published in: | Applied artificial intelligence 1998-09, Vol.12 (6), p.521-546 |
---|---|
Main Authors: | , |
Format: | Article |
Language: | English |
Citations: | Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | Program understanding is an important part ofthe domain expertise required for programming language tutoring systems. However, the understanding ofstudent programs by a computer is extremely difficult because ofthe tremendous scope of variability in student solutions for nontrivial tasks. This article aims to handle such variability and improve understanding performance by a hybrid approach based on two complementary methods of graph parsing and expectation-driven analysis. The graph parsing method by Wills is utilized to recognize the programming plans in the code. At the same time, a new expectation-driven analysis is devised to generate expectations about the program design using such knowledge as the programming goals, plans, and information about the problem task. The analysis guides the plan recognition process through confirming, amending, or rejecting the expectations by checking them against the given code. Expectation-driven analysis can recognize the function and implementation level variations and errors. Unknown goal-implementing plans are also detected. These advantages are demonstrated in an experiment ofa set ofstudent programs. |
---|---|
ISSN: | 0883-9514 1087-6545 |
DOI: | 10.1080/088395198117659 |