Intellectual code analysis in automation grading
Grades for programming assignments continue to be difficult to assign despite the fact that students have a wide variety of strategies available to address challenges. The primary factor is the existence of several technological frameworks and a range of coding methodologies. The subject matter of t...
Saved in:
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
National Aerospace University «Kharkiv Aviation Institute»
2024-11-01
|
Series: | Радіоелектронні і комп'ютерні системи |
Subjects: | |
Online Access: | http://nti.khai.edu/ojs/index.php/reks/article/view/2650 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | Grades for programming assignments continue to be difficult to assign despite the fact that students have a wide variety of strategies available to address challenges. The primary factor is the existence of several technological frameworks and a range of coding methodologies. The subject matter of this article is the process of intelligent evaluation of students’ knowledge based on code written by students during regular practical work. The goal is to develop an approach for intellectual code analysis that can be easily implemented and integrated into the most widespread grading systems. The tasks to be solved include: formalization of code representation for intellectual analysis by applications; analysis of the current state of research and development in the field of automated analysis and evaluation of software codes; introduction of a technique that offers substantial feedback through the integration of intelligent code analysis via code decomposition and providing grading systems an “understanding” of program log. The research subjects are methods of the programming code evaluation during distance learning. The methods used are: tree classification code analysis and graph traversing methods adopted for the tree linearization goal. The following results were obtained: 1. An examination of the current state of automated software code analysis and evaluation reveals that this issue is intricate due to the challenges involved in manually assessing programming projects. These challenges are further exacerbated by the intricate nature of the code, subjective judgment, and the need to adapt to various technical structures. Consequently, there is an urgent demand for automated assessment methods in educational settings. 2. The technique of representing the code structure as syntactic trees was employed to create an automated tool for analyzing software code. This facilitated the decomposition of the code into interrelated logical modules, enabling the analysis of the structure of these modules and the relationships between them. 3. The used methodologies and techniques were used for the analysis of Java code. The syntactic analysis enabled the detection of problematic and erroneous code blocks and the identification of fraudulent attempts (manipulating the program's output instead of performing the algorithm). Conclusions. Most current automatic student work evaluation systems rely on testing, which involves comparing the program's inputs and outputs. Unlike the other methods, the approach presented in this study examines the syntactic structure of the program. This enables precise identification of the position and type of mistakes. An astute examination of the gathered data will enable the formulation of precise suggestions for students to enhance their coding skills. The suggested instruments can be incorporated into the Intelligent Tutoring System designed for IT majors. |
---|---|
ISSN: | 1814-4225 2663-2012 |