Automated Program Analysis for Novice Programmers

by   Tim Blok, et al.

This paper describes how to adapt a static code analyzer to help novice programmers. Current analyzers have been built to give feedback to experienced programmers who build new applications or systems. The type of feedback and the type of analysis of these tools focusses on mistakes that are relevant within that context, and help with debugging the system. When teaching novice programmers this type of advice is often not particularly useful. It would be instead more useful to use these techniques to find problem in the understanding of students of important programming concepts. This paper first explores in what respect static analyzers support the learning and teaching of programming can be implemented based on existing static analysis technology. It presents an extension to static analyzer PMD was made so that feedback messages appear which are easier to understand for novice programmers. To answer the question if these techniques are able to find conceptual mistakes that are characteristic for novice programmers make, we ran it over a number of student projects, and compared these results with publicly available mature software projects.


Open Source Software Utilization in Student Software Projects: A Study on Student Preferences

Teaching computer science is a challenging experience. Especially, the a...

Parallel Programming Applied Research Projects for Teaching Parallel Programming to Beginner Students

In this paper, we discuss the educational value of a few mid-size and on...

Write a Line: Tests with Answer Templates and String Completion Hints for Self-Learning in a CS1 Course

One of the important scaffolding tasks in programming learning is writin...

An Exploratory Analysis of Feedback Types Used in Online Coding Exercises

Online coding environments can help support computing students gain prog...

Generating Language Corrections for Teaching Physical Control Tasks

AI assistance continues to help advance applications in education, from ...

Exploring Programming Task Creation of Primary School Teachers in Training

Introducing computational thinking in primary school curricula implies t...

Please sign up or login with your details

Forgot password? Click here to reset