Effective Use of a Computer Grading System for Teaching Mathematics at a University

In the given work, the technology to create mathematical assignments with an auto-checking system in the MOODLE system to control education was considered. It is shown that due to using the STACK plugin, those assignments can be applied in all main sections of mathematical basics courses for engineering training: vector and matrix algebra, analytical geometry, mathematical analysis. The examples of interactive assignments for the development of mathematical thinking are listed. Two different methods of using auto-checking assignments in the educational program are shown. The first includes work in class with computer facilities and students' self-studies. Thanks to individual assignments for each student, that methodology allows reaching high results in mathematic training. The second based on the organization of student self-studies and applies mostly to underperforming students and allows them to learn how to solve tasks, which are necessary to pass the math exam. Solution's auto-check system and the ability to generate hints in automatic mode helps to reduce the load on the teacher, as eliminating a large amount of verification work and after-hours assistance to students.


Using a computer assessment system in mathematic training in university
Computer assessment (testing) systems intensely are being used in teaching since the late 20 th century. However, the preparation of mathematical assignments for higher education entities usually requires additional software, as we have to deal with symbols, equations, graphics. Besides, mathematical training suggests solving a large number of tasks, with the only difference in numerical or functional parameters, which naturally leads to the necessity of using parameterized tasks, rather than creating multiple copies of the same one. Finally, checking the answers entered by a student also requires special software, as the correct answer can be captured differently.
Since the early 2000s, various solutions were implemented to prepare the materials for computer assessment systems in math for university students. Generally, they rely on CAS (computer algebra system), such as Mapple [1,2], Maxima [3 -10], GeoGebra [11] and other CAS [12] or use custom software, as MathBridge [13], WIRIS [14], IREN [15], etc. Due to the extensive integration of Learning Management System (LMS) MOODLE in Russian education, primarily relevant those software products, which are built into MOODLE as plugins. Probably the most extensive possibilities for the organization of computer mathematical tasks have STACK plugin [3 -10], which is quite widespread both in European universities [4 -9] and, for example, in Japan [3,10].
Researches [16,17] shows that the means of computer knowledge estimation in mathematics, which gives the chance to receive feedback on wrong answers and hints to the solution, are most effective in the education process. Combined with interactive graphic applications and educational animation, these methods lead to the learning results significantly better [4,8] than in regular training.
It should be considered that each university and even departments have their own unique experience in teaching; they are independently developing training plans and educational tools, including computer-based assessment systems. Therefore, preferable the systems where teachers can develop training products with different goals and the broadest functional scope without any accessibility restrictions (freely distributed). One of such technologies is the STACK system, which can be plugged in LMS MOODLE. After evaluating these features, in 2015 STACK plugin was installed in the Tomsk State University (TSU), and at Tomsk University of Control Systems and Radio Electronics (TUSUR) in 2016. Let describe the system's capabilities.

Features of STACK system and its plugin for MOODLE
The STACK system allows us to create mathematical tasks with auto-check using random and programmable numerical variables, enter the numerical answers, formulas, matrices, rows, and others. STACK uses Maxima CAS to create the task, validate the answers, and generate comments.
The structure of a STACK-type question includes determination of the task variables, question text, the general response to the question, correct answers, student answer evaluation tree, additional options, including hints. In service fields (variables, correct answers, evaluation tree), the teacher uses Maxima syntax; in fields visible to the student, LaTeX is used to write formulas; in formulas, you can embed variables, functions and Maxima commands. For example, the entry \[{@diff(g,x)@}\] means that the student will see the Maxima derivative g function by variable x typed in LaTeX style. Thus, the g function can be randomly selected from the list or defined in the field of variables. You can also use Maxima graphics in all fields visible to the student, displaying, among other things, function graphics from the student's task and solution statements. Students enter their answers using the Maxima syntax, which they meet for the first time. Therefore students should have permanent access to "Sudent's MEMO" file with necessary information on the Maxima syntax.
The answers' evaluation tree is used for estimation student's answers with Maxima. Often several actions are required to evaluate one answer. For example, an indeterminate integral must give an initial function during differentiation and contain an arbitrary constant. Occasionally, a student can fill several fields with the solution. The evaluation tree also helps to manage its verifying. Each node in the evaluation tree has the field for comment on a student's response: the first field is if the student gives the correct response in that node, the second field is if the student's response is wrong. When receiving these messages, the student can figure out where exactly they made a mistake. Verification in nodes can be done indirectly. As an example, the presence of an arbitrary constant in the general solution of the differential equation can be checked by differentiation by the C constant. Thus the system offers many different ways of checking the equivalence of answers, although the most used is an algebraic equivalence.
In addition to feedback on the successful and unsuccessful completion of the evaluation tree nodes, you can add hints to the STACK assignment. They will appear when you click the "Verify" button in the "Multiple Attempt Interactive" question mode. Hints are usually organized so that the student gradually goes through the whole solution algorithm and understands how the problem is solved. Of course, you should consider that sometimes there are many ways to solve the same problem and hints may be irrelevant. In extreme cases, this option may not be used and give the student a few attempts to solve the problem.
We use the STACK plugin installed in the MOODLE system, which fully supports the MOODLE features: displaying the results of all attempts by each student with all data (including the time spent on the solution, answers in all attempts, etc.). Test settings allow you to specify the period of passing a test or limit the time that can be spent on it, specify the number of attempts, the mode of passing each attempt, and the method of their evaluation (highest, average, first grade). It is also possible to set a passing grade and the conditions under which a quiz will be available. All this is important in the method of using STACK tasks, which can be several (see p. 3).
Let us turn to examples of creating specific tasks in some sections of higher mathematics.

The examples of the assignments in the STACK system for different sections of higher mathematics
Below we will demonstrate various tasks that display the capabilities of the STACK system. These tasks are used in TSU and TUSUR education processes.   1 shows a STACK type question. First, there is no specific order in which the roots should be entered. That is why the check must be done through the equality of sets or through the Vieta theorem. The question's author chose the second method, but Maxima did not always correctly simplify the left parts to coincide with the right parts in the control relations. Therefore, the author compares the canonical forms generated from the student's answer with similar canonical forms of the correct answer obtained in the block of the parameter setting [18]. As a feedback, the author presents the theory for finding the roots of a complex number and the creation in the Maxima graphical editor initial number on the complex plane and its three roots.   The task of finding a derivative of an exponential-logarithmic function (Fig. 3.) shows that in STACK, you can qualitatively check the response as a complex function. The indefinite integral (Fig. 4) can be found in different ways, which will lead to different primaries, but any answer will be counted as correct. The verification of solutions of the differential equation (Fig. 5) consists of the substitution of the student's solution in the equation (Maxima make differentiation) and checking the presence of an arbitrary constant. As feedback, the student gets a description of the linear differential equation solution via the Lagrange method. Of course, the student can solve the equation using the Bernoulli method as well -it will not affect the answer evaluation. The authors do not consider it necessary to cite two methods of solution. In conclusion, we demonstrate the non-obvious possibilities of STACK type questions. Fig. 6 shows that a student can independently model the correct answer: the majoritarian he enters in the second field, he should integrate in the third. The system allows verifying the correctness of the student's answer.

Training in a computer-equipped classroom
Let us describe the method of the practical lesson in the computer-equipped classroom, which is implemented in TUSUR [19]. On the PC, students simultaneously with the teacher open a task which is marked as "solved jointly with the teacher." The teacher sets up a discussion about the solution while explaining the required theoretical material or interviewing students on lecture materials. Everyone has the same task, with the only difference in individual parameter values.
Additionally, students have access to an e-file with the theory supported by animated illustrations. Each student solves the problem with individual parameter values, and, after entering the answer, gets a number of points. While solving, the student can get hints that refer to the corresponding paragraphs in theory (thanks to STACK). After entering the answer, the student receives a complete detailed solution with references to definitions and theorems. This method is proposed in [16,17] as the most efficient one, and we agree with the authors of these works that it gives positive results. The results are presented in p. 4.
After all the necessary theoretical material and algorithms for solving typical tasks have been studied, and the solutions of problems have been written down in the notebook, the students begin to solve the tasks independently. Students solve tasks in their notebooks and enter the answers in the corresponding fields of STACK for Moodle. The student can solve the same problem several times, but each time with new parameter values.
The homework is a test task on the topic being studied. Each assignment sets separately so that the student can solve multiply only the tasks they had problems with. Thus, a student obtained an average score for all passes of each test. The teacher tracking students work in MOODLE, and at the end of studying each theme, students offer a regular test (pen, paper, without using any computer equipment and internet). The main goal of the work in STACK for Moodle is the training on how to solve typical tasks.

Managing student self-study in MOODLE
In TSU, alongside STACK, other types of tests in MOODLE are using for generating and verification of the solutions for linear algebra tasks, on differential equations, on equations in private derivatives, and in campus course "Measure and Lebesgue integral" [20]. In any case students solve test tasks out of the classroom, which allows to organize the students' self-studies and make it more individual. When solving tasks with educational purposes, student receives hints that lead him to the solution, and if it is the control tasks the hints are disabled -another testing mode is selected. The professor exempts from checking student's solutions, but has complete insight on how they work.
Special application of STACK-type exercises is in preparation for a credit or exam for students who are lagging behind. If a student wants to take credit in a semester different to the one in which the course was taken, we enroll them in the corresponding course in MOODLE and offer to take available tests with the hints. This way, the student repeats required practical and some theoretical background, and the professor ensures that it is reasonable for the student to take credit or an exam.

Results of applying STACK-type assignments in mathematical training in university 4.1 Results of applying the first method
The method of using STACK tasks with individual parameters in practical lessons at TUSUR has proved to be effective. Table 1 shows the comparative results of tests for students who studied with and without using this technology. Typically in both cases the same tasks are solved in the practical lessons, but in the first case all students solve the same task, which solution is written on the board, and not everyone wants to think about it. And if the task of each student differs from the task on the whiteboard by some parameters, then it is necessary to figure out how to solve it. The same can be said about homework. Therefore, the results of the tests in groups using computer technologies described in p. 3.1 are much higher than in the "classical system of teaching" within solving of the same examples by the whole group. Besides, fascinating to observe the score students gain when solving tasks in class and at home with STACK technology. These statistics show the amount of work done by students (each task is scored from 1 to 3 points), as well as its regularity. Table 2 shows the students' score when answering STACK-type questions. Score range (Table 2) is wide, but highest and median values indicate that the groups are performing well during the whole semester.
Students are diving into work in this system, which confirmed by the result of the survey [19].

Results of applying the second method
The application of STACK-type tasks for organization of students' self-studies at TSU has shown that students actively solve tasks in MOODLE, which are included in the credit or exam. For example, in 2018 the task of finding a fundamental system of solutions to the system of differential equations was solved by 10 people (25% of students studying on the course), the average time of passing the test is 89 minutes. This indicates that the students' solutions were mainly found individually. It should also be noted that students prefer this way to pass credit or debt, as it is not bound to the time when the professor is available. Training tasks are solved at will, not so actively. Table 3 shows the results of the training test on the topic "Differential equations of the first order" in 2019 and the corresponding test. The test consists of five tasks, each has 4 hints. Tasks evaluated of 1 point, if the answer is fully correct. After taking the each tip, 0.2 points are deducted. The test can be solved in steps with the breaks and returns to the exercises. According to the data in Table  3, this is exactly what students did. After sending the final answers, student gets a complete solution for each task. It may also be noted that nearly all students, successfully solved their training versions, successfully pass the handwritten control test.

Conclusion
The efficiency of utilization computer assessment systems in mathematics training can be assessed from different points of view. For example, from the education quality improvement (level of knowledge of fundamental competencies) we see that a significant benefit can be achieved, conclusion based on results of the applying the first of listed methods (p. 4.1).
From the aspect of the efficiency of professor's work, the second method, as well as the first one, show that the time saving occurs due to the lack of verification of students' selfstudies, as they are verified by the STACK system.
Speaking of involving in the educational process lagging students, the method from p. 3.2 quite effectively solves this problem.
However, there are technical problems that complicate the work with these methods. First, STACK plugin support for MOODLE should be implemented by a professional web programmer, as sometimes there are problems with connection to Maxima.
Secondly, generation of each STACK-task is quite a laborious process, requiring from the teacher both professional qualification and knowledge of the STACK system functionality. In [3,10] the authors offer technologies that simplify the work with STACK. Another opportunity to make this work more efficient is to unite the efforts of different teaching units, create tasks together and use them as widely as possible. This work has started in Tomsk and everyone is welcome to join it. This process is also underway worldwide. In 2015, a consortium of ABACUS universities was established [21], it currently includes 32 universities from Finland, Norway, Germany, the UK and other countries. Each university brings their own STACKtype tasks to the consortium, and gets access to the entire database. The existence of this consortium indicates that the STACK system is accepted as effective, but creating tasks is laborious enough to multiply repeat this process in different universities.