Abstract
Intelligent tutoring systems play an essential role in learning. In programming learning, the specificity of the learning process is related to creating code in a programming language and developing appropriate skills. One of the basic skills in code development is designing functions and their interfaces in a programming language. For these skills mastering using ITS, it is important to detect the student’s mistakes early and provide formative explanatory feedback for the student to help them find and fix the errors. In this paper, we propose the intelligent approach to explanatory feedback generation for the task of function prototype creation training. We developed an approach to automatic teaching function design, a formal model of the subject domain based on OWL ontology and Jena rules to detect errors in the students’ answers using software reasoners, and intelligent tutor based on the developed formal model.
The reported study was funded by RFBR, project number 20-07-00764.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
The fullscreen figures for all the stages are available at: https://github.com/Kirill34/PrototypeCreatingTutor.
References
Brusilovsky, P., Su, H.-D.: Adaptive visualization component of a distributed web-based adaptive educational system. In: Cerri, S.A., Gouardères, G., Paraguaçu, F. (eds.) ITS 2002. LNCS, vol. 2363, pp. 229–238. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-47987-2_27
Cavalcanti, A.P., et al.: Automatic feedback in online learning environments: a systematic literature review. Comput. Educ. Artif. Intell. 2, 100027 (2021). https://doi.org/10.1016/j.caeai.2021.100027
Denisov, M., Anikin, A., Sychev, O.: Dynamic flowcharts for enhancing learners’ understanding of the control flow during programming learning. In: Basu, A., Stapleton, G., Linker, S., Legg, C., Manalo, E., Viana, P. (eds.) Diagrams 2021. LNCS (LNAI), vol. 12909, pp. 408–411. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-86062-2_42
Fabic, G.V.F., Mitrovic, A., Neshatian, K.: Adaptive problem selection in a mobile python tutor. In: Adjunct Publication of the 26th Conference on User Modeling, Adaptation and Personalization. ACM (2018). https://doi.org/10.1145/3213586.3225235
Jeuring, J., Gerdes, A., Heeren, B.: A programming tutor for haskell. In: Zsók, V., Horváth, Z., Plasmeijer, R. (eds.) CEFP 2011. LNCS, vol. 7241, pp. 1–45. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-32096-5_1
Kim, T., Kim, S., Ryu, D.: Coding™: development task visualization for SW code comprehension. In: 2021 Working Conference on Software Visualization (VISSOFT), IEEE, September 2021. https://doi.org/10.1109/vissoft52517.2021.00012
Kumar, A.N.: Generation of problems, answers, grade, and feedback–case study of a fully automated tutor. J. Educ. Resour. Comput. 5(3), 3 (2005). https://doi.org/10.1145/1163405.1163408
Kumar, A.N.: An epistemic model-based tutor for imperative programming. In: Roll, I., McNamara, D., Sosnovsky, S., Luckin, R., Dimitrova, V. (eds.) AIED 2021. LNCS (LNAI), vol. 12749, pp. 213–218. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-78270-2_38
Le, N.T.: A classification of adaptive feedback in educational systems for programming. Systems 4(2), 22 (2016). https://doi.org/10.3390/systems4020022
Liu, F., Li, G., Fu, Z., Lu, S., Hao, Y., Jin, Z.: Learning to recommend method names with global context (2022). https://doi.org/10.48550/arXiv.2201.10705
Nie, P., Zhang, J., Li, J.J., Mooney, R.J., Gligoric, M.: Evaluation methodologies for code learning tasks, August 2021. https://arxiv.org/pdf/2108.09619.pdf
O’Rourke, E., Butler, E., Díaz Tolentino, A., Popović, Z.: Automatic generation of problems and explanations for an intelligent algebra tutor. In: Isotani, S., Millán, E., Ogan, A., Hastings, P., McLaren, B., Luckin, R. (eds.) AIED 2019. LNCS (LNAI), vol. 11625, pp. 383–395. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-23204-7_32
Papadakis, S., Kalogiannakis, M., Zaranis, N.: Developing fundamental programming concepts and computational thinking with Scratch Jr in preschool education: a case study. Int. J. Mob. Learn. Organ. 10(3), 187 (2016). https://doi.org/10.1504/ijmlo.2016.077867
Psotka, J., Mutter, S.: Intelligent Tutoring Systems: Lessons Learned. Lawrence Erlbaum Associates, Mahwah (1988)
Rathore, A.S., Arjaria, S.: Intelligent Tutoring System, pp. 121–144 (01 2020). https://doi.org/10.4018/978-1-7998-0010-1.ch006
Sirkiä, T.: Recognizing programming misconceptions. An analysis of the data collected from the UUhistle program simulation tool. Master’s thesis, Aalto University. School of Science (2012). http://www.uuhistle.org/publications/sirkia_masters_thesis.pdf
Sychev, O., Anikin, A., Penskoy, N., Denisov, M., Prokudin, A.: CompPrehension - model-based intelligent tutoring system on comprehension level. In: Cristea, A.I., Troussas, C. (eds.) ITS 2021. LNCS, vol. 12677, pp. 52–59. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-80421-3_6
Uehara, M.: Programming learning by creating problems. In: 2020 Eighth International Symposium on Computing and Networking Workshops (CANDARW), IEEE, November 2020. https://doi.org/10.1109/candarw51189.2020.00059
Yoo, J., Pettey, C., Seo, S., Yoo, S.: Teaching programming concepts using algorithm tutor. In: EdMedia+ Innovate Learning, pp. 3549–3559 (2010)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Litovkin, D., Anikin, A., Kulyukin, K., Sychev, O. (2022). Intelligent Tutor for Designing Function Interface in a Programming Language. In: Crossley, S., Popescu, E. (eds) Intelligent Tutoring Systems. ITS 2022. Lecture Notes in Computer Science, vol 13284. Springer, Cham. https://doi.org/10.1007/978-3-031-09680-8_27
Download citation
DOI: https://doi.org/10.1007/978-3-031-09680-8_27
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-09679-2
Online ISBN: 978-3-031-09680-8
eBook Packages: Computer ScienceComputer Science (R0)