To assist Java programming learning of novice students, we have developed the web-based Java programming learning assistant system (JPLAS). JPLAS provides several types of exercise problems to cultivate code reading/writing skills at various levels. In JPLAS, the code writing problem (CWP) asks a student to write a source code that will pass the test code given in the assignment where the correctness is verified by running them on JUnit. In this paper, to reduce the teacher load at marking process, we present the answer code validation program that verifies all the source codes from a lot of students for each assignment at a time and reports the number of passing tests for each source code in the CSV file. Besides, to test a source code with various input data, we implement the test data generation algorithm that identifies the data type, generates a new data, and replaces it for each test data in the test code. Furthermore, to verify the correctness of the implemented procedure in the source code, we introduce the intermediate state testing in the test code. For evaluations, we applied the proposal to source codes and test codes in a Java programming course in Okayama university, Japan, and confirmed the validity and effectiveness.
Currently, C programming is taught as the first programming language in many universities around the world due to the easy-to-learn and middle-level nature. However, the confusing concepts of keywords and unfamiliar formality make it difficult for students to study. Therefore, we have previously developed C programming learning assistance system (CPLAS) for self-studies of novice students. CPLAS offers several types of exercise problems with the automatic answer marking by string matching. In this paper, we propose a mistake correction problem (MCP) for code debugging study as a new problem type in CPLAS. MCP requests to answer every mistaken element and its correction in a given corrupt source code. We list up reserved words and common library functions in C programming for candidates of mistaken elements, and implement the MCP instance generation algorithm. To help solving MCP instances by a student, we implement the answer interface that shows the line number of each mistake, the corrupt code and answer forms in parallel, and the hint of suggesting the first character of each answer. For evaluations of the proposal, we generate 20 instances with 91 mistakes for basic grammars, and assign them to 18 university students in Japan, China, and Indonesia. Their answer results confirm the effectiveness of MCP.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.