Roles of Variables in Experts' Programming Knowledge

Jorma Sajaniemi; Raquel Navarro Prieto

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.

Type of Publication: Paper
Conference: PPIG 2005 - 17th Annual Workshop
Publication Year: 2005
Paper #: 13
TitleRoles of Variables in Experts' Programming Knowledge
Publication TypePaper
AuthorsSajaniemi, J, Prieto, RNavarro
PPIG Workshop: 
2005-06-17th