Automatic Problem Description from Model Program for Knowledge-based Programming Tutor

  • Authors:
  • S.-H. Hahn;J. Kim

  • Affiliations:
  • Dept. of Computer Science, KAIST, 373-1, Kusong-Dong, Yusong-Gu, Taejon, 305-701, Korea;Dept. of Computer Science, KAIST, 373-1, Kusong-Dong, Yusong-Gu, Taejon, 305-701, Korea

  • Venue:
  • Automated Software Engineering
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Knowledge-based programming tutors are supposed to analyze thestudents‘ programs using knowledge of the concepts of programminglanguage, skills to build programs, misconceptions of noviceprogrammers, and information about the programs to be analyzed. Thelast one provides the programming tutor with the intentions ofprogrammers, and this allows the tutor to do an intention-baseddiagnosis (Johnson, 1996). This is given to the system in the formof a problem description by human instructors. However, it is veryhard for instructors to write a problem description. For instructors,the simplest way to describe a problem may be to write a modelprogram of that problem. This paper describes the system named GOES,a GOal Extraction System, which extracts the purposes (Goals) of amodel program automatically.GOES is a susbsystem of C-Tutor, a knowledge-based C ProgramingTutor (Hahn et al., 1996). GOES extracts implemented plans from a modelprogram, and then extract goals from the plans according to goal/planhierarchies. The efficiency of GOES depends on the process of planextraction. In GOES, only pairs of labels and variables of eachstatement are used to extract candidate plans. Exact matching isfollowed only for theses candidate plans. In addition, to extractplans more efficiently, we introduce the concept of necessary andsufficient conditions of a plan to the model program. Using thismethod, plan candidates can be extracted efficiently andsuccessfully.