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 - JPLAS
KW - Java programming education
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
AN - SCOPUS:85019712640
SN - 1819-656X
VL - 44
SP - 247
EP - 260
JO - IAENG International Journal of Computer Science
JF - IAENG International Journal of Computer Science
IS - 2
ER -