PPIG 2005 - 17th Annual Workshop
Roles of Variables in Experts’ Programming Knowledge
Jorma Sajaniemi, Raquel Navarro Prieto
Abstract: Roles of variables capture the dynamic nature of variables, i.e., their behavior. Only ten roles are needed to cover 99%of variables in novice-level procedural programs. Roles were originally identified by studying variables in existing programs and creating a classification for them. In order to find out whether roles are a part of experts’ programming knowledge, we conducted a knowledge elicitation investigation where professional programmers studied programs and the resulting mental representations were elicited using card sorting and interviews. This paper presents the analysis of the results from the point of view of the role theory. All roles appearing in the materials were identified by participants. There was some variation in perceiving the nature of behavior from the lifetime of a variable and in considering the similarity of behaviors. The roles could however be easily found in the participants’ card sorting results and in the dendrogram obtained by hierarchical cluster analysis.