TY - JOUR
T1 - A code completion problem in java programming learning assistant system
AU - Kyaw, Htoo Htoo Sandi
AU - Wint, Su Sandy
AU - Funabiki, Nobuo
AU - Kao, Wen Chung
N1 - Publisher Copyright:
© International Association of Engineers.
PY - 2020
Y1 - 2020
N2 - As an efficient object-oriented programming language, Java has been extensively used in a variety of applications around the world. To assist Java programming educations, we have developed a Java Programming Learning Assistant System (JPLAS), which provides a great number of programming assignments to cover different levels of learning. For the first learning stage, JPLAS offers the element fill-in-blank problem (EFP) to study Java grammar through code reading. EFP asks students to fill in the blank elements in a given source code. However, EFP can be solved relatively easily, because the choice of the correct answer is limited for each explicit blank. In this paper, we propose a code completion problem (CCP) to overcome this drawback in EFP. To be specific, CCP does not explicitly show the locations of missing elements in the code. Instead, CCP will ask students to complete every statement in the code by filling in the correct elements at the correct locations. When the whole statement becomes equal to the original one, it is regarded as the correct answer. For evaluations, we generated CCP instances in both online/offline JPLAS, and asked university students from Myanmar, Japan, China, Indonesia, and Kenya to solve them. The results confirmed that CCP is harder than EFP, the two-level marking and the hint function are effective in improving solution performances of students, and the difficulty level for EFP is applicable in CCP.
AB - As an efficient object-oriented programming language, Java has been extensively used in a variety of applications around the world. To assist Java programming educations, we have developed a Java Programming Learning Assistant System (JPLAS), which provides a great number of programming assignments to cover different levels of learning. For the first learning stage, JPLAS offers the element fill-in-blank problem (EFP) to study Java grammar through code reading. EFP asks students to fill in the blank elements in a given source code. However, EFP can be solved relatively easily, because the choice of the correct answer is limited for each explicit blank. In this paper, we propose a code completion problem (CCP) to overcome this drawback in EFP. To be specific, CCP does not explicitly show the locations of missing elements in the code. Instead, CCP will ask students to complete every statement in the code by filling in the correct elements at the correct locations. When the whole statement becomes equal to the original one, it is regarded as the correct answer. For evaluations, we generated CCP instances in both online/offline JPLAS, and asked university students from Myanmar, Japan, China, Indonesia, and Kenya to solve them. The results confirmed that CCP is harder than EFP, the two-level marking and the hint function are effective in improving solution performances of students, and the difficulty level for EFP is applicable in CCP.
KW - Blank element selection algorithm
KW - Code completion problem
KW - Difficulty level
KW - Hint function
KW - Index terms-java programming
KW - JPLAS
UR - http://www.scopus.com/inward/record.url?scp=85089798700&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85089798700&partnerID=8YFLogxK
M3 - Article
AN - SCOPUS:85089798700
SN - 1819-656X
VL - 47
SP - 350
EP - 359
JO - IAENG International Journal of Computer Science
JF - IAENG International Journal of Computer Science
IS - 3
ER -