Skip to main content

Table 1 Studies conducted using a process-oriented approach in the context of novice programming (Continued)

From: A review on process-oriented approaches for analyzing novice solutions to programming problems

Study

What has been done

PL

Tools

Gran.

Heinonen et al. (2014)

Used a browser-side snapshot analysis tool capable of providing functionality for annotating and visualizing code snapshots to seek differences between novice programmer that passed or failed

CodeBrowser

FS, LLE

Hosseini et al. (2014)

Examined programming behavior found along student problem paths that exhibit patterns as Builders, Massagers, Reducers, and Strugglers

Java

JavaParser

FM, FS, E, S

Gatchalian (2014)

Characterized students based on their intention-based score patterns and “update characteristics” of their code compilations

Java

Instrumented BlueJ

C

Ihantola et al. (2014)

Explored factors that may influence the difficulty of programming assignments by applying a recursive partitioning to construct a decision tree of assignment difficulty, and metrics for automatically assessing those factors

Java

KS

Blikstein et al. (2014)

Used machine learning techniques to discover programming behavioral patterns, correlated them with students’ assignment and exam grades, and transformed code snapshots of map of states that show the progress of the students’ work

Java

Instrumented Eclipse

FS, FM

Vihavainen et al. (2014)

Investigated the things that programmers with no previous programming experience struggle with and how their behavior changes over a short period of time

Java

Test My code (NetBeans plugin)

KS

Spacco et al. (2006)

Explored correlation on students’ effort and success on exercises vs. final exam score, attempted to detect “flailing” students early enough, and tried to answer whether students improve during the semester

C, Python

CloudCoder

S, FM

Pettit et al. (2015)

Considered the incremental changes students make and correlating score between sequential submissions using the following metrics: source lines of code, cyclomatic (McCabe) complexity, state space, and the 6 Halstead measure of complexity of the program

C++

Athene online automated system

S