Intelligent Accounting of Educational Achievements in the "Digital Teaching Assistant" System

Artyom V. Gorchakov, Liliya A. Demidova, Peter N. Sovietov


The ongoing process of digitalization of the economy necessitates the mass training of software developers. With an increase in the number of students, the load on teachers of university programming courses is growing. Automation of programming courses makes it possible to relieve teachers from routine activities. This article discusses the Digital Teaching Assistant (DTA) system that automates the Python programming course at RTU MIREA. The article considers the architecture of the DTA system, the main features of which are the automatic generation of unique programming tasks of eleven different types, including the implementation of author's algorithms, integrated methods of data mining and machine learning to automate the identification of approaches to solving problems in texts of programs sent for verification. The DTA system consists of a core that generates and checks unique programming exercises, an intelligent module for educational achievements accounting designed to motivate students to solve problems using different high-level concepts and ideas, and a web application. Algorithms are presented that automate the determination of methods for solving unique programming exercises in order to identify and record achievements. The statistics collected during the operation of the DTA system are presented.

Full Text:

PDF (Russian)


E.G. Andrianova, L.A. Demidova, P.N. Sovetov, “Pedagogical design of a digital teaching assistant in massive professional training for the digital economy,” In Russian Technological Journal, 2022, vol. 10, No. 3, pp. 7–23.

P.N. Sovietov, A.V. Gorchakov, “Digital Teaching Assistant for the Python Programming Course,” In Proc. 2022 2nd Inter. Conf. on Technology Enhanced Learning in Higher Education (TELE), IEEE, 2022, pp. 272–276.

M.L. Simuni, A.Y. Soloviov, V.I. Shaitan, “Automated problem checking for Functional programming course,” In Modern Infor-mation Technologies and IT-Education, 2016, Vol. 12, No. 3-1, pp. 90–96.

I.A. Zhukov, Y.L. Kostyuk, “A Domain-Specific Language for generating tasks from Programs Source Code,” In Vestnik NSU. Series: Information Technologies, 2022, Vol. 20, No. 1, pp. 18–27.

L. Moussiades, A. Vakali, “PDetect: A clustering approach for detecting plagiarism in source code datasets,” In The computer journal, 2005, vol. 48, no. 6, pp. 651–661.

L. Jiang, G. Misherghi, Z. Su, S. Glondu, “Deckard: Scalable and accurate tree-based detection of code clones,” In Proc. of the 29-th Inter. Conf. on Software Engineering (ICSE'07), 2007, pp. 96–105.

P.A. Gilev, V.K. Kazankov, A.V. Tabieva, “Automatic Generation and Verification of Tasks in the Disciplines of the Mathematical Cycle in Higher Education,” In Modern Pedagogical Education, 2022, No. 11, pp. 142–147.

L.A. Demidova, P.N. Sovietov, A.V. Gorchakov, “Clustering of Program Source Text Representations Based on Markov Chains,” In Vestnik of RSREU, 2022, No. 81, pp. 51–64.

A.V. Gorchakov, L.A. Demidova, P.N. Sovietov, “Automated Program Text Analysis Using Representations Based on Markov Chains and Extreme Learning Machines,” In Vestnik of RSREU, 2022, No. 82, pp. 162–163.

L. Hakulinen, T. Auvinen, A. Korhonen, “The Effect of Achievement Badges on Students' Behavior: An Empirical Study in a University-Level Computer Science Course,” In International Journal of Emerging Technologies in Learning, 2015, vol. 10, № 1, pp. 18–29.

C.H. Su, C.H. Cheng, “A mobile gamification learning system for improving the learning motivation and achievements,” In Journal of Computer Assisted Learning, 2015, vol. 31, № 3, pp. 268–286.

T. Mailund, Introducing Markdown and Pandoc: Using Markup Language and Document Converter Berkeley: Apress, 2019, 139 p.

E. Gansner, E. Koutsofios, S. North, “Drawing graphs with dot,”, 2015, URL: (accessed on 01.28.2023).

M. Peveler, E. Maicus, B. Cutler, “Comparing jailed sandboxes vs containers within an autograding system,” In Proceedings of the 50th ACM Technical Symposium on Computer Science Education, 2019, pp. 139–145.

X. Wang, J. Du, H. Liu, “Performance and isolation analysis of RunC, gVisor and Kata Containers runtimes,” In Cluster Computing, 2022, Vol. 25, № 2, pp. 1497–1513.

M. Fowler, D. Rice, M. Foemmel, E. Hieatt, R. Mee, R. Stafford, Patterns of Enterprise Application Architecture, Addison-Wesley Professional, 2002, ch. 14.

M. Bayer, A. Brown, G. Wilson, “SQLAlchemy,” In The architecture of open-source applications, 2012, vol. 2, p. 20.

S. Lima, J. Correia, F. Araujo, J. Cardoso, “Improving observability in event sourcing systems,” In Journal of Systems and Software, 2021, vol. 181, p. 111015.

A. Marcus, J.I. Maletic, “Identification of high-level concept clones in source code,” In Proc. of the 16th Annual International Conf. on Automated Software Engineering (ASE 2001), IEEE, 2001, pp. 107–114.

M. Shutaywi, N.N. Kachouie, “Silhouette analysis for performance evaluation in machine learning with applications to clustering,” In Entropy, 2021, vol. 23, no. 6, p. 759.

I. Dagan, L. Lee, F. Pereira, “Similarity-based methods for word sense disambiguation,” In Proc. of the Thirty-Fifth Annual Meeting of the Association for Computational Linguistics and Eighth Conf. of the Europ, Chap. of the Association for Computational Linguistics, 1997.

G.B. Huang, Q.Y. Zhu, C.K. Siew, “Extreme Learning machine: Theory and applications,” In Neurocomputing, 2006, vol. 70, pp. 489–501.

L.A. Demidova, A.V. Gorchakov, “Classification of Program Texts Represented as Markov Chains with Biology-Inspired Algorithms-Enhanced Extreme Learning Machines,” In Algorithms, 2022, vol. 15, № 9, p. 329.

W. Guo, T. Xu, K. Tang, J. Yu, S. Chen, “Online sequential extreme learning machine with generalized regularization and adaptive forgetting factor for time-varying system prediction,” In Mathematical Problems in Engineering, 2018, vol. 2018, p. 6195387


  • There are currently no refbacks.

Abava  Кибербезопасность FRUCT 2023

ISSN: 2307-8162