Recognition of roles of variables based on deep learning technologies

Andrew Kwok Fai Lui, Tsz Tik Lui, Tommy Cheuk Hin Leung, Ho Yin Chan

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review


Using variables in regulating computing procedures is a key competence of structured programming. This tacit knowledge, which is highly repetitive and transferrable between programming tasks, may be succinctly described as the roles of variables. The role of a variable defines the pattern of the uses and changes of variable for computing procedures. This notion is an effective pedagogical tool for providing feedback on how to fix faulty computing procedures linked to misuse of variables. This paper proposes the automation of variable role recognition and describes an evaluation study for a variable role classifier based on deep neural network architectures. The classifier is designed to learn the variable roles from execution-time traces of variables. Experimental results showed the classification accuracy reached over 0.95. Other findings indicated that the variable roles revealed diverse temporal characteristics in their execution-time traces, and specifically designed deep learning architectures would be needed for some individual roles. Automated variable role recognition will find applications in intelligent tutoring systems and the feedback to programs will significantly improve learning effectiveness.

Original languageEnglish
Title of host publicationTechnology in Education. Innovations for Online Teaching and Learning - 5th International Conference, ICTE 2020, Revised Selected Papers
EditorsLap-Kei Lee, Leong Hou U, Fu Lee Wang, Simon K. Cheung, Oliver Au, Kam Cheong Li
Number of pages13
Publication statusPublished - 2020
Event5th International Conference on Technology in Education, ICTE 2020 - Macao, China
Duration: 19 Aug 202022 Aug 2020

Publication series

NameCommunications in Computer and Information Science
ISSN (Print)1865-0929
ISSN (Electronic)1865-0937


Conference5th International Conference on Technology in Education, ICTE 2020


  • Deep learning
  • Machine learning
  • Novice programmers
  • Programming
  • Roles of variables


Dive into the research topics of 'Recognition of roles of variables based on deep learning technologies'. Together they form a unique fingerprint.

Cite this