How to enhance novice learners' understanding of programs is a major issue in programming education. Our approach to this issue is to provide them with fill-in-blank program problems. A fill-in-blank program problem gives learners a program of which part is blanked out and the program specification. They are required to fill in the blank so that the program specification can be fulfilled. In solving the problem, they need to trace data and control flows of the program. This induces them to think of the processes embedded in the program, enhancing their learning. However, whether learning is enhanced depends on how to make a blank. This paper proposes a method of blanking out an important point of data or control flow of a program to make instructive a fill-in-blank problem. The essence of this method is to find out the important point with program dependence graph in no consideration of semantic aspects of the processes in the program. It can be consequently incorporated into computer-based educational systems. This paper also describes an experiment on the blank-making method with subjects who have experience of programming education. In this experiment, we have ascertained that blanks made by hand follow the blank-making method. The results suggest that it is valid.
CITATION STYLE
Kashihara, A., Kumei, K., Umeno, K., & Toyoda, J. (2001). How to make fill-in-blank program problems and its evaluation. Transactions of the Japanese Society for Artificial Intelligence, 16(4), 384–391. https://doi.org/10.1527/tjsai.16.384
Mendeley helps you to discover research relevant for your work.