A Domain-Specific Language for generating tasks from Programs Source Code
https://doi.org/10.25205/1818-7900-2022-20-1-18-27
Abstract
Approaches to task generation for various disciplines are discussed, mentioned that a parameter method cannot be applied to programming. The authors developed an application of the idea of a constructive-selective method for creating programming tasks. A task created for constructive-selective methodical contains a set of components, from which a student makes up his answer (a program). Application of this method allows diversifying of tasks in programming and creates a new way of assessment based on the content of the answer. It’s also allows to grade both fully and partially correct answers. The main concepts of the model for representing programming tasks are illustrated by examples. The domain-specific markup language and its translator that allows generating tasks from a teacher’s program source text are proposed. An example of a translator usage is given.
About the Authors
I. A. ZhukovRussian Federation
Igor A. Zhukov, Post-Graduate Student
Tomsk
Yu. L. Kostyuk
Russian Federation
Yuriy L. Kostyuk, Doctor of Technical Sciences, Professor
Tomsk
References
1. Kasatkina E. P., Khesina E. A., Chakheev E. Ya., Sukhoverkhy V. A. Assignments generator on engineering graphics. In: International Conference on Information Technologies in Engineering Education (Inforino). Moscow, 2016, p 142–145. (in Russ.)
2. Jörg Vollrath. An open access minimum automatic task generation live feedback system for electrical engineering. In: 2015 IEEE Global Engineering Education Conference (EDUCON 2015). (18–20 March 2015, Tallinn University of Technology, Tallinn, Estonia). IEEE, 2015, pp. 494–498. DOI 10.1109/EDUCON.2015.7096015
3. Vlasova E., Popov V., Pugachev O. Creation of a fund of assessment tools and new educational technologies with the use of MATLAB in the study of linear algebra. Bulletin of Moscow Region State University. Series: Physics and Mathematics, 2016, no. 4. pp. 77–85. (in Russ.)
4. Habibulina N. Yu., Afanaseva E. I. Ispol'zovanie generatora individual'nyh zadanij pri razrabotke avtomatizirovannoj obuchajushhej sistemy “Linejnoe programmirovanie” [Usage of the generator of individual tasks in the development of an automated lerning system “Linear programming”]. Elektronnye sredstva i sistemy upravlenija. Materialy dokladov mezhdunarodnoy nauchno-prakticheskoy konferentsii, 2011, no. 1, pp. 230–234. (in Russ.)
5. Obadi A. A. Development of an algorithm and software for a test system tasks generator. Bulletin of the Technological University, 2019, vol. 22, no. 1, pp. 106–111. (in Russ.)
6. Zorin Yu. A. The interpreter of programming language for design generators of tests based on AND/OR trees. Proceedings of TUSUR University, 2011, no. 1 (27), pp. 75–79. (in Russ.)
7. Zhukov I. A., Kostyuk Yu. L. Model of representation of multivariate tasks for automated control of programming knowledge. Tomsk State University Journal of Control and Computer Science, 2020, no. 53, pp. 110–117 (in Russ.) DOI 10.17223/19988605/53/11
8. Aho A., Lam M., Sethi R., Ullman J. Compilers: Principles, Techniques, and Tools. Pearson Education, Inc., 2006, 1010 p.
9. Kostyuk Yu. L. Lektsii po osnovam programmirovaniya [Lectures on the Fundamentals of Programming]. A Study Guide. Tomsk, TSU Press, 2019, 260 p. (in Russ.)
Review
For citations:
Zhukov I.A., Kostyuk Yu.L. A Domain-Specific Language for generating tasks from Programs Source Code. Vestnik NSU. Series: Information Technologies. 2022;20(1):18-27. (In Russ.) https://doi.org/10.25205/1818-7900-2022-20-1-18-27