Roles of Variables Home Page

Byckling P., Sajaniemi J. (2005)

Using Roles of Variables in Teaching: Effects on Program Construction.

P. Romero, J. Good, S. Bryant, E. A. Chaparro (eds.) Proceedings of the 17th Annual Workshop of the Psychology of Programming Interest Group (PPIG 2005). University of Sussex, U.K., 278-303.

Abstract: Roles of variables capture tacit expert knowledge in a form that can, e.g., be taught in introductory programming courses. A role describes some stereotypic use of variables, and only ten roles are needed to cover 99 % of all variables in novice-level procedural programs. This paper presents the results from a protocol analysis of program creation tasks in an experiment where roles were introduced to novices learning Pascal programming. Students were divided into three groups that were instructed differently: in the traditional way with no treatment of roles; using roles throughout the course; and using a role-based program animator in addition to using roles in teaching. The results suggest that the use of the program animator increases novices' ability to apply data-related programming plans in program construction and thus increases programming skill. Plan knowledge and use is analyzed using a new model that is based on Rist's theory of schema expansion.

Back to the literature page


Last updated: July 11, 2005

saja.fi@gmail.com