Examining the significance of high-level programming features in source code author classification

  • Authors:
  • Georgia Frantzeskou;Stephen MacDonell;Efstathios Stamatatos;Stefanos Gritzalis

  • Affiliations:
  • Department of Information and Communication Systems Engineering, University of the Aegean, Samos 83200, Greece;School of Computing and Mathematical Sciences, Auckland University of Technology, Private Bag 92006, Auckland 1020, New Zealand;Department of Information and Communication Systems Engineering, University of the Aegean, Samos 83200, Greece;Department of Information and Communication Systems Engineering, University of the Aegean, Samos 83200, Greece

  • Venue:
  • Journal of Systems and Software
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

The use of Source Code Author Profiles (SCAP) represents a new, highly accurate approach to source code authorship identification that is, unlike previous methods, language independent. While accuracy is clearly a crucial requirement of any author identification method, in cases of litigation regarding authorship, plagiarism, and so on, there is also a need to know why it is claimed that a piece of code is written by a particular author. What is it about that piece of code that suggests a particular author? What features in the code make one author more likely than another? In this study, we describe a means of identifying the high-level features that contribute to source code authorship identification using as a tool the SCAP method. A variety of features are considered for Java and Common Lisp and the importance of each feature in determining authorship is measured through a sequence of experiments in which we remove one feature at a time. The results show that, for these programs, comments, layout features and package-related naming influence classification accuracy whereas user-defined naming, an obvious programmer related feature, does not appear to influence accuracy. A comparison is also made between the relative feature contributions in programs written in the two languages.