English

Creating a Trajectory for Code Writing: Algorithmic Reasoning Tasks

Software Engineering 2024-04-04 v1 Programming Languages

Abstract

Many students in introductory programming courses fare poorly in the code writing tasks of the final summative assessment. Such tasks are designed to assess whether novices have developed the analytical skills to translate from the given problem domain to coding. In the past researchers have used instruments such as code-explain and found that the extent of cognitive depth reached in these tasks correlated well with code writing ability. However, the need for manual marking and personalized interviews used for identifying cognitive difficulties limited the study to a small group of stragglers. To extend this work to larger groups, we have devised several question types with varying cognitive demands collectively called Algorithmic Reasoning Tasks (ARTs), which do not require manual marking. These tasks require levels of reasoning which can define a learning trajectory. This paper describes these instruments and the machine learning models used for validating them. We have used the data collected in an introductory programming course in the penultimate week of the semester which required attempting ART type instruments and code writing. Our preliminary research suggests ART type instruments can be combined with specific machine learning models to act as an effective learning trajectory and early prediction of code-writing skills.

Keywords

Cite

@article{arxiv.2404.02464,
  title  = {Creating a Trajectory for Code Writing: Algorithmic Reasoning Tasks},
  author = {Shruthi Ravikumar and Margaret Hamilton and Charles Thevathayan and Maria Spichkova and Kashif Ali and Gayan Wijesinghe},
  journal= {arXiv preprint arXiv:2404.02464},
  year   = {2024}
}

Comments

Preprint. Accepted to the 19th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE 2024). Final version to be published by SCITEPRESS, http://www.scitepress.org