Abstract

To enhance Java programming educations, we have proposed a Web-based Java Programming Learning Assistant System (JPLAS) that provides a variety of programming assignments to cover different learning levels. As fundamental programming exercises for novice students, JPLAS offers the Code Fill-in-blank Problem (CFP) and the Code Fixing Problem (CXP), to learn Java grammar and basic programming skills through code reading. A CFP instance requires filling in the blank elements in the problem code generated by applying the coding rule check function and the blank element selection algorithm. A CXP instance involves correcting the error elements made by the error injection algorithm. In both problems, all answers from the students will be marked through string matching with the stored correct one. In this paper, we propose the Code Amendment Problem (CAP) as a practical problem for learning the debugging process by combining CFP and CXP in JPLAS. As a mixture of CFP and CXP instances, a CAP instance is generated by randomly selecting either blank or error for each element with a given blank probability BP. For evaluations, we apply 12 CAP instances to 21 students in Japan and Myanmar, where the results show that BP = 50% offers the highest difficulty level, and CAP is harder than CFP and CXP.

Highlights

  • Nowadays, the object-oriented programming language Java has been widely applied in various systems in societies and industries due to its exceptional reliability, portability, and scalability

  • The results show that blank probability (BP) = 50% offers the highest difficulty level among them, and Code Amendment Problem (CAP) is harder than Code Fill-in-blank Problem (CFP) and Code Fixing Problem (CXP)

  • These results indicate that CAP is harder than CFP and CXP

Read more

Summary

INTRODUCTION

The object-oriented programming language Java has been widely applied in various systems in societies and industries due to its exceptional reliability, portability, and scalability. A CFP instance requires filling in the blank elements in the problem code that is generated by applying the blank element selection algorithm to a high-quality source code. This code is generated by applying the coding rule checking function. The coding rule check function will examine the adherence of the coding rules of a given Java source code, return the locations that do not follow them By applying this function, only a readable source code is used to generate CFP and CXP instances. The algorithm injects errors into the source code by changing the data type, the name of a class, a method or a variable, and important Java Keywords.

RELATED WORKS IN LITERATURE
Coding Rule Check Function
Blank Element Selection Algorithm
Error Injection Algorithm
Error Name Generation Method
PROPOSAL OF CODE AMENDMENT PROBLEM
Assigned Problems in Evaluation
Solution Results by Students
CONCLUSION
CONFLICT OF INTEREST
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call