TY - JOUR
T1 - An informative test code approach in code writing problem for three object-oriented programming concepts in java programming learning assistant system
AU - Zaw, Khin Khin
AU - Zaw, Win
AU - Funabiki, Nobuo
AU - Kao, Wen Chung
N1 - Publisher Copyright:
© 2019 International Association of Engineers.
PY - 2019
Y1 - 2019
N2 - To enhance Java programming educations, we have developed a Java Programming Learning Assistant System (JPLAS) that offers various types of exercise problems to cover studies at different levels. Among them, the code writing problem asks a student to write a source code that passes the given test code in the assignment. In Java programming, encapsulation, inheritance, polymorphism are the fundamental object-oriented programming (OOP) concepts that every student should master and freely use, which is very hard for novice students. In this paper, we propose the informative test code approach in the code writing problem for studying the three OOP concepts. This test code describes the necessary information to implement the source code using the concepts, such as the names, access modifiers, data types of the member variables and methods. Then, a student is expected to learn how to use them by writing a source code to pass the test code. To evaluate the effectiveness of the proposal, we generated informative test codes for 10 assignments using three concepts, and asked eight students who are currently studying Java programming in Myanmar and Japan to solve them. Then, all of them could complete source codes that pass the test codes, where the quality metrics measured by Metrics plugin for Eclispe were generally acceptable. Unfortunately, due to the insufficiency of test codes, the coverage metric by code coverage tool for Eclipse was not 100% at some source codes. The informative test code generation by a teacher should be assisted to avoid this problem.
AB - To enhance Java programming educations, we have developed a Java Programming Learning Assistant System (JPLAS) that offers various types of exercise problems to cover studies at different levels. Among them, the code writing problem asks a student to write a source code that passes the given test code in the assignment. In Java programming, encapsulation, inheritance, polymorphism are the fundamental object-oriented programming (OOP) concepts that every student should master and freely use, which is very hard for novice students. In this paper, we propose the informative test code approach in the code writing problem for studying the three OOP concepts. This test code describes the necessary information to implement the source code using the concepts, such as the names, access modifiers, data types of the member variables and methods. Then, a student is expected to learn how to use them by writing a source code to pass the test code. To evaluate the effectiveness of the proposal, we generated informative test codes for 10 assignments using three concepts, and asked eight students who are currently studying Java programming in Myanmar and Japan to solve them. Then, all of them could complete source codes that pass the test codes, where the quality metrics measured by Metrics plugin for Eclispe were generally acceptable. Unfortunately, due to the insufficiency of test codes, the coverage metric by code coverage tool for Eclipse was not 100% at some source codes. The informative test code generation by a teacher should be assisted to avoid this problem.
KW - Code writing
KW - Encapsulation
KW - Informative test code
KW - Inheritance
KW - JPLAS
KW - Java programming education
KW - Metric
KW - Polymorphism
UR - http://www.scopus.com/inward/record.url?scp=85077147724&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85077147724&partnerID=8YFLogxK
M3 - Article
AN - SCOPUS:85077147724
SN - 1819-656X
VL - 46
SP - 1
EP - 9
JO - IAENG International Journal of Computer Science
JF - IAENG International Journal of Computer Science
IS - 3
ER -