A graph-based blank element selection algorithm for fill-in-blank problems in Java programming learning assistant system

Nobuo Funabiki, Tana, Khin Khin Zaw, Nobuya Ishihara, Wen Chung Kao

Research output: Contribution to journalArticle

4 Citations (Scopus)

Abstract

As a reliable and portable object-oriented programming language, Java has been extensively used in industries and taught in schools. To assist Java programming educations, we have developed a Web-based Java Programming Learning Assistant System (JPLAS). JPLAS provides a fill-inblank problem for novice students who have started learning Java programming including grammar and basic programming through code reading. In this problem, students are asked to fill in the blank elements in a high-quality Java code. In this paper, we propose a graph-based blank element selection algorithm to select as many blanks as possible that have grammatically correct and unique answers from a given code. First, the algorithm generates a graph by selecting each candidate element in the code as a vertex, and connecting any pair of vertices by an edge if they can be blanked together. Then, it extracts a maximal clique of the graph for a solution. For evaluations, the correctness of the algorithm is verified manually by applying it to 100 Java codes. Eventually, the educational effects in Java programming learning are confirmed by assigning generated fill-in-blank problems to students in our Java programming course.

Original languageEnglish
Pages (from-to)247-260
Number of pages14
JournalIAENG International Journal of Computer Science
Volume44
Issue number2
Publication statusPublished - 2017

Fingerprint

Computer programming
Students
Object oriented programming
Computer programming languages
Education
Industry

Keywords

  • Algorithm
  • Blank element selection
  • Clique
  • Fill-inblank problem
  • Graph
  • Java programming education
  • JPLAS

ASJC Scopus subject areas

  • Computer Science(all)

Cite this

A graph-based blank element selection algorithm for fill-in-blank problems in Java programming learning assistant system. / Funabiki, Nobuo; Tana; Zaw, Khin Khin; Ishihara, Nobuya; Kao, Wen Chung.

In: IAENG International Journal of Computer Science, Vol. 44, No. 2, 2017, p. 247-260.

Research output: Contribution to journalArticle

@article{f3b1c9c67c3a418b82aba379148f26c9,
title = "A graph-based blank element selection algorithm for fill-in-blank problems in Java programming learning assistant system",
abstract = "As a reliable and portable object-oriented programming language, Java has been extensively used in industries and taught in schools. To assist Java programming educations, we have developed a Web-based Java Programming Learning Assistant System (JPLAS). JPLAS provides a fill-inblank problem for novice students who have started learning Java programming including grammar and basic programming through code reading. In this problem, students are asked to fill in the blank elements in a high-quality Java code. In this paper, we propose a graph-based blank element selection algorithm to select as many blanks as possible that have grammatically correct and unique answers from a given code. First, the algorithm generates a graph by selecting each candidate element in the code as a vertex, and connecting any pair of vertices by an edge if they can be blanked together. Then, it extracts a maximal clique of the graph for a solution. For evaluations, the correctness of the algorithm is verified manually by applying it to 100 Java codes. Eventually, the educational effects in Java programming learning are confirmed by assigning generated fill-in-blank problems to students in our Java programming course.",
keywords = "Algorithm, Blank element selection, Clique, Fill-inblank problem, Graph, Java programming education, JPLAS",
author = "Nobuo Funabiki and Tana and Zaw, {Khin Khin} and Nobuya Ishihara and Kao, {Wen Chung}",
year = "2017",
language = "English",
volume = "44",
pages = "247--260",
journal = "IAENG International Journal of Computer Science",
issn = "1819-656X",
publisher = "International Association of Engineers",
number = "2",

}

TY - JOUR

T1 - A graph-based blank element selection algorithm for fill-in-blank problems in Java programming learning assistant system

AU - Funabiki, Nobuo

AU - Tana,

AU - Zaw, Khin Khin

AU - Ishihara, Nobuya

AU - Kao, Wen Chung

PY - 2017

Y1 - 2017

N2 - As a reliable and portable object-oriented programming language, Java has been extensively used in industries and taught in schools. To assist Java programming educations, we have developed a Web-based Java Programming Learning Assistant System (JPLAS). JPLAS provides a fill-inblank problem for novice students who have started learning Java programming including grammar and basic programming through code reading. In this problem, students are asked to fill in the blank elements in a high-quality Java code. In this paper, we propose a graph-based blank element selection algorithm to select as many blanks as possible that have grammatically correct and unique answers from a given code. First, the algorithm generates a graph by selecting each candidate element in the code as a vertex, and connecting any pair of vertices by an edge if they can be blanked together. Then, it extracts a maximal clique of the graph for a solution. For evaluations, the correctness of the algorithm is verified manually by applying it to 100 Java codes. Eventually, the educational effects in Java programming learning are confirmed by assigning generated fill-in-blank problems to students in our Java programming course.

AB - As a reliable and portable object-oriented programming language, Java has been extensively used in industries and taught in schools. To assist Java programming educations, we have developed a Web-based Java Programming Learning Assistant System (JPLAS). JPLAS provides a fill-inblank problem for novice students who have started learning Java programming including grammar and basic programming through code reading. In this problem, students are asked to fill in the blank elements in a high-quality Java code. In this paper, we propose a graph-based blank element selection algorithm to select as many blanks as possible that have grammatically correct and unique answers from a given code. First, the algorithm generates a graph by selecting each candidate element in the code as a vertex, and connecting any pair of vertices by an edge if they can be blanked together. Then, it extracts a maximal clique of the graph for a solution. For evaluations, the correctness of the algorithm is verified manually by applying it to 100 Java codes. Eventually, the educational effects in Java programming learning are confirmed by assigning generated fill-in-blank problems to students in our Java programming course.

KW - Algorithm

KW - Blank element selection

KW - Clique

KW - Fill-inblank problem

KW - Graph

KW - Java programming education

KW - JPLAS

UR - http://www.scopus.com/inward/record.url?scp=85019712640&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85019712640&partnerID=8YFLogxK

M3 - Article

VL - 44

SP - 247

EP - 260

JO - IAENG International Journal of Computer Science

JF - IAENG International Journal of Computer Science

SN - 1819-656X

IS - 2

ER -