Automated Program Analysis for Novice Programmers

Tim Blok, Ansgar Fehnker

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

25 Downloads (Pure)

Abstract

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.
Original languageEnglish
Title of host publicationProceedings of the 3rd International Conference on Higher Education Advances, HEAd '17
EditorsJosep Domenech, M. Cinta Vincent-Vela, Elena de la Poza, Desamparados Blazquez
Place of PublicationValència
PublisherEditorial Universitat Politècnica de València
Pages1138-1146
Number of pages9
ISBN (Print)9788490485903
DOIs
Publication statusPublished - 2017
Externally publishedYes
Event3rd International Conference on Higher Education Advances, HEAd '17 - Valencia, Spain
Duration: 21 Jun 201723 Jun 2017

Conference

Conference3rd International Conference on Higher Education Advances, HEAd '17
Abbreviated titleHEAd '17
Country/TerritorySpain
CityValencia
Period21/06/1723/06/17

Keywords

  • Programing education
  • Tool support
  • Static analysis

Fingerprint

Dive into the research topics of 'Automated Program Analysis for Novice Programmers'. Together they form a unique fingerprint.

Cite this