skip to main content
10.1145/1971681.1971687acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
review-article

An introduction to program comprehension for computer science educators

Published:28 June 2010Publication History

ABSTRACT

The area of program comprehension comprises a vast body of literature, with numerous conflicting models having been proposed. Models are typically grounded in experimental studies mostly involving experienced programmers. The question of how to relate this material to the teaching and learning of programming for novices has proven challenging for many researchers. In this critical review from a computer science educational perspective, the authors compare and contrast the way in which different models conceptualize program comprehension. This provides new insights into learning issues such as content, sequence, learning obstacles, effective learning tasks and teaching methods, as well as into the assessment of learning

References

  1. Abbas, N. Properties of "Good" Java Examples. Umea's 13th Student Conference in Computer Science 1--17.Google ScholarGoogle Scholar
  2. Al-Imamy, S., Alizadeh, J. et al. 2006. On the Development of a Programming Teaching Tool: The Effect of Teaching by Templates on the Learning Process. Journal of Information Technology Education. 5, (2006), 271--283.Google ScholarGoogle Scholar
  3. Arisholm, E., Gallis, H. et al. 2007. Evaluating Pair Programming with Respect to System Complexity and Programmer Expertise. IEEE Transactions on Software Engineering. 33, 2 (2007), 65--86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Astrachan, O., Mitchener, G. et al. 1998. Design patterns: an essential component of CS curricula. Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education (Atlanta, Georgia, United States, 1998), 153--160. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Baldwin, L.P. and Macredie, R.D. 1999. Beginners and programming: insights from second language learning and teaching. Education and Information Technologies. 4, 2 (1999), 167--179. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Bennedsen, J. and Caspersen, M. 2008. Model-Driven Programming. Reflections on the Teaching of Programming. J. Bennedsen, M. Caspersen, et al., eds. Springer Berlin / Heidelberg. 116--129. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Biggs, J.B. and Collis, K.F. 1982. Evaluating the quality of learning : the SOLO taxonomy (Structure of the observed learning outcome) / John B. Biggs, Kevin F. Collis. (1982).Google ScholarGoogle Scholar
  8. Börstler, J., Hall, M.S. et al. 2009. An evaluation of object oriented example programs in introductory programming textbooks. SIGCSE Bull. 41, 4 (2009), 126--143. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Brooks, R. 1983. Towards a theory of the comprehension of computer programs. International Journal of Man-Machine Studies. 18, 6 (1983), 543--554.Google ScholarGoogle ScholarCross RefCross Ref
  10. Burkhardt, J., Détienne, F. et al. 2002. Object-oriented program comprehension: Effect of expertise, task and phase. Empirical Software Engineering. 7, 2 (2002), 115--156. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Chen, T., Monge, A. et al. 2006. Relationship of early programming language to novice generated design. SIGCSE Bull. 38, 1 (2006), 495--499. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Chmiel, R. and Loui, M.C. 2004. Debugging: From novice to expert. ACM SIGCSE Bulletin. 36, 1 (2004), 17--21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Clear, T. 2005. Comprehending large code bases - the skills required for working in a "brown fields" environment. ACM SIGCSE Bulletin. 37, 2 (2005), 12--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Corritore, C. and Wiedenbeck, S. 1991. What do novices learn during program comprehension? International Journal of Human-Computer Interaction. 3, 2 (1991), 199--222.Google ScholarGoogle ScholarCross RefCross Ref
  15. Corritore, C.L. and Wiedenbeck, S. 2001. An exploratory study of program comprehension strategies of procedural and object-oriented programmers. International Journal of Human-Computer Studies. 54, 1 (2001), 1--23. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Cross, J.H., Hendrix, T.D. et al. 1999. Software visualization and measurement in software engineering education: An experience report. FRONTIERS IN EDUCATION CONFERENCE (1999), 12B1/5-12B110.Google ScholarGoogle Scholar
  17. Deek, F.P., Kimmel, H. et al. 1998. Pedagogical changes in the delivery of the first-course in computer science: Problem solving, then programming. Journal of Engineering Education. 87, 3 (1998), 313--320.Google ScholarGoogle ScholarCross RefCross Ref
  18. Denny, P., Luxton-Reilly, A. et al. 2008. Evaluating a new exam question: Parsons problems. Proceeding of the Fourth international Workshop on Computing Education Research (Sydney, Australia, 2008), 113--124. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Détienne, F. 1996. What model(s) for program understanding? Arxiv preprint cs/0702004 (1996).Google ScholarGoogle Scholar
  20. Douce, C. 2008. The Stores Model of Code Cognition. 20th Psychology of Programming Interest Group, Lancaster University, September 2008. (2008).Google ScholarGoogle Scholar
  21. Du Boulay, B. 1986. Some difficulties of learning to program. Journal of Educational Computing Research. (1986), 57--73.Google ScholarGoogle Scholar
  22. Engle, R.W., Tuholski, S.W. et al. 1999. Working memory, short-term memory, and general fluid intelligence: A latent-variable approach. Journal of Experimental Psychology: General. 128, 3 (1999), 309--331.Google ScholarGoogle ScholarCross RefCross Ref
  23. Exton, C. 2002. Constructivism and Program Comprehension Strategies. International Conference on Program Comprehension (Los Alamitos, CA, USA, 2002), 281. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Fincher, S., Petre, M. et al. 2004. A multi-national, multiinstitutional study of student-generated software. Kolin Kolistelut-Koli Calling Proceedings. (2004), 20--28.Google ScholarGoogle Scholar
  25. Fix, V., Wiedenbeck, S. et al. 1993. Mental representations of programs by novices and experts. Proceedings of the INTERACT '93 and CHI '93 conference on Human factors in computing systems (Amsterdam, The Netherlands, 1993), 74--79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Fjuk, A., Holmboe, C. et al. 2006. Contextualizing object-oriented learning. Comprehensive object-oriented learning: the learner's perspective. A. Fjuk, A. Karahasanović, et al., eds. Santa Rosa: Informing Science Press. 11--26.Google ScholarGoogle Scholar
  27. Gerdt, P. and Sajaniemi, J. 2006. A web-based service for the automatic detection of roles of variables. SIGCSE Bull. 38, 3 (2006), 178--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Good, J. and Brna, P. 2004. Program comprehension and authentic measurement:a scheme for analysing descriptions of programs. International Journal of Human-Computer Studies. 61, 2 (2004), 169--185. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Goodyear, P. 1987. Sources of difficulty in assessing the cognitive effects of learning to program. Journal of Computer Assisted Learning. 3, 4 (1987), 214--223.Google ScholarGoogle ScholarCross RefCross Ref
  30. Hundhausen, C.D., Brown, J.L. et al. 2006. A methodology for analyzing the temporal evolution of novice programs based on semantic components. Proceedings of the second international workshop on Computing education research (Canterbury, United Kingdom, 2006), 59--71. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Jones, S.J. and Burnett, G.E. 2007. Spatial skills and navigation of source code. Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education (Dundee, Scotland, 2007), 231--235. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Karahasanović, A., Levine, A.K. et al. 2007. Comprehension strategies and difficulties in maintaining objectoriented systems: An explorative study. J. Syst. Softw. 80, 9 (2007), 1541--1559. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Kintsch, W. 1998. Comprehension : a paradigm for cognition. Cambridge University Press.Google ScholarGoogle Scholar
  34. Kintsch, W. and van Dijk, T.A. 1978. Toward a model of text comprehension and production. Psychological Review. 85, 5 (1978), 363--394.Google ScholarGoogle ScholarCross RefCross Ref
  35. Ko, A. and Myers, B. 2005. A framework and methodology for studying the causes of software errors in programming systems. Journal of Visual Languages & Computing. 16, 1-2 (2005), 41--84. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Kotze, P., Renaud, K. et al. 2008. Don't do this - Pitfalls in using anti-patterns in teaching human-computer interaction principles. Computers & Education. 50, 3 (2008), 979--1008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Kroes, P. 1998. Technological Explanations: The Relation between Structure and Function of Technological Objects. Techné: Journal of the Society for Philosophy and Technology. 3, 3 (1998), 18--34.Google ScholarGoogle Scholar
  38. Kuittinen, M. and Sajaniemi, J. 2004. Teaching roles of variables in elementary programming courses. Proceedings of the 9th annual SIGCSE conference on Innovation and technology in computer science education (Leeds, United Kingdom, 2004), 57--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Kuittinen, M. and Sajaniemi, J. 2004. Teaching roles of variables in elementary programming courses. Proceedings of the 9th annual SIGCSE conference on Innovation and technology in computer science education - ITiCSE '04 (Leeds, United Kingdom, 2004), 57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. LaToza, T.D., Garlan, D. et al. 2007. Program comprehension as fact finding. Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering (2007), 361--370. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. de Lemos, M.A. and de Barros, L.N. 2003. A didactic interface in a programming tutor. Proceedings of 11th International Conference on Artificial Intelligence in Education (AIED2003) (2003).Google ScholarGoogle Scholar
  42. Letovsky, S. 1986. Cognitive processes in program comprehension. Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers (Washington, D.C., United States, 1986), 58--79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Letovsky, S. 1987. Cognitive processes in program comprehension. Journal of Systems and Software. 7, 4 (Dec. 1987), 325--339. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Lister, R., Clear, T. et al. 2009. Naturally occurring data as research instrument: analyzing examination responses to study the novice programmer. SIGCSE Bull. 41, 4 (2009), 156--173. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Lister, R., Schulte, C. et al. 2006. Research perspectives on the objects-early debate. ACM SIGCSE Bulletin. 38, 4 (2006), 146--165. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Lister, R., Seppälä, O. et al. 2004. A multi-national study of reading and tracing skills in novice programmers. ACM SIGCSE Bulletin. 36, 4 (2004), 119--150. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Lister, R., Simon, B. et al. 2006. Not seeing the forest for the trees. ACM SIGCSE Bulletin. 38, 3 (2006), 118--122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Littman, D.C., Pinto, J. et al. 1986. Mental models and software maintenance. Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers (Washington, D.C., United States, 1986), 80--98. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Lopez, M., Whalley, J. et al. 2008. Relationships between reading, tracing and writing skills in introductory programming. Proceeding of the fourth international workshop on Computing education research - ICER '08 (Sydney, Australia, 2008), 101--112. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Mannila, L. 2006. Progress reports and novices' understanding of program code. Proceedings of the 6th Baltic Sea conference on Computing education research: Koli Calling 2006 (Uppsala, Sweden, 2006), 27--31. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Mannila, L. 2007. Novices' progress in introductory programming courses. Informatics in education. 6, 1 (2007), 139--152. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. von Mayrhauser, A. and Lang, S. 1999. A coding scheme to support systematic analysis of software comprehension. IEEE Transactions on Software Engineering. 25, 4 (Aug. 1999), 526--540. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. von Mayrhauser, A. and Vans, A.M. 1994. Program Understanding - A Survey. Colorado State University Computer Science Technical Report CS94-120. (1994).Google ScholarGoogle Scholar
  54. von Mayrhauser, A. and Vans, A.M. 1995. Program comprehension during software maintenance and evolution. Computer. 28, 8 (Aug. 1995), 44--55. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. von Mayrhauser, A. and Vans, A.M. 1996. Identification of dynamic comprehension processes during large scale maintenance. IEEE Transactions on Software Engineering. 22, 6 (1996), 424--437. Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. McCauley, R., Fitzgerald, S. et al. 2008. Debugging: a review of the literature from an educational perspective. Computer Science Education. 18, 2 (2008), 67--92.Google ScholarGoogle ScholarCross RefCross Ref
  57. McCracken, W.M. 2002. Models of designing: understanding software engineering education from the bottom up. 15th Conference on Software Engineering Education and Training (CSEET'02) (2002), 0055. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Mead, J., Gray, S. et al. 2006. A cognitive approach to identifying measurable milestones for programming skill acquisition. SIGCSE Bull. 38, 4 (2006), 182--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Mosemann, R. and Wiedenbeck, S. 2001. Navigation and comprehension of programs by novice programmers. 9th International Workshop on Program Comprehension (IWPC'01) (2001), 79--88. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Naps, T., Cooper, S. et al. 2003. Evaluating the educational impact of visualization. Working group reports from ITiCSE on Innovation and technology in computer science education (Thessaloniki, Greece, 2003), 124--136. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Nevalainen, S. and Sajaniemi, J. 2006. An experiment on short-term effects of animated versus static visualization of operations on program perception. Proceedings of the second international workshop on Computing education research (Canterbury, United Kingdom, 2006), 7--16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. O'Brien, Michael 2001. Software Comprehension - A review and research direction. Technical Report 2003 (2001), 176--185.Google ScholarGoogle Scholar
  63. O'Brien, M.P., Buckley, J. et al. 2004. Expectation-based, inference-based, and bottom-up software comprehension. Journal of Software Maintenance and Evolution: Research and Practice. 16, 6 (2004), 427--447. Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Parsons, D. and Haden, P. 2006. Parson's programming puzzles: a fun and effective learning tool for first programming courses. ACE '06: Proceedings of the 8th Australian conference on Computing education (Darlinghurst, Australia, 2006), 157--163. Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Pennington, N. 1987. Comprehension strategies in programming. Empirical studies of programmers: second workshop. E. Soloway, G. Olson, et al., eds. Ablex Publishing Corp. 100--113. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Pennington, N. 1987. Stimulus structures and mental representations in expert comprehension of computer programs. Cognitive Psychology. 19, 3 (1987), 295--341.Google ScholarGoogle ScholarCross RefCross Ref
  67. Perkins, D.N. 1986. Conditions of Learning in Novice Programmers. Journal of Educational Computing Research. 2, 1 (1986), 37--55.Google ScholarGoogle ScholarCross RefCross Ref
  68. Perkins, D.N. and Fay, M. 1986. Fragile knowledge and neglected strategies in novice programmers. Empirical Studies of Programmers. E. Soloway and S. Ivengar, eds. Ablex Publishing Corp. 213--229. Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. de Raadt, M., Watson, R. et al. 2006. Chick sexing and novice programmers: explicit instruction of problem solving strategies. Proceedings of the 8th Austalian conference on Computing education-Volume 52 (2006), 55--62. Google ScholarGoogle ScholarDigital LibraryDigital Library
  70. Rajlich, V. 2002. Program Comprehension as a Learning Process. Proceedings of the 1st IEEE International Conference on Cognitive Informatics (2002), 343--350. Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Ramalingam, V., LaBelle, D. et al. 2004. Self-efficacy and mental models in learning to program. Proceedings of the 9th annual SIGCSE conference on Innovation and technology in computer science education (Leeds, United Kingdom, 2004), 171--175. Google ScholarGoogle ScholarDigital LibraryDigital Library
  72. Rist, R.S. 2004. Learning to Program: Schema Creation, Application, and Evaluation. Computer Science Education Research. S. Fincher and M. Petre, eds. Routledge. 175--198.Google ScholarGoogle Scholar
  73. Robertson, T.J., Prabhakararao, S. et al. 2004. Impact of interruption style on end-user debugging. Proceedings of the 2004 conference on Human factors in computing systems - CHI '04 (Vienna, Austria, 2004), 287--294. Google ScholarGoogle ScholarDigital LibraryDigital Library
  74. Robins, A., Haden, P. et al. 2006. Problem Distributions in a CS1 Course. Eighth Australasian Computing Education Conference (ACE2006) (Hobart, Australia, 2006), 165--173. Google ScholarGoogle ScholarDigital LibraryDigital Library
  75. Robins, A., Rountree, J. et al. 2003. Learning and teaching programming: A review and discussion. Computer Science Education. 13, 2 (2003), 137--172.Google ScholarGoogle ScholarCross RefCross Ref
  76. Sajaniemi, J. and Kuittinen, M. From procedures to objects: What have we (not) done. Proceedings of the 19th Annual Workshop of the Psychology of Programming Interest Group 86--100.Google ScholarGoogle Scholar
  77. Sajaniemi, J. and Kuittinen, M. 1999. Three-level teaching material for computer-aided lecturing. Comput. Educ. 32, 4 (1999), 269--284. Google ScholarGoogle ScholarDigital LibraryDigital Library
  78. Sajaniemi, J., Kuittinen, M. et al. 2007. A study of the development of students' visualizations of program state during an elementary object-oriented programming course. Proceedings of the third international workshop on Computing education research (Atlanta, Georgia, USA, 2007), 1--16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. Sajaniemi, J., Kuittinen, M. et al. 2008. A study of the development of students' visualizations of program state during an elementary object-oriented programming course. J. Educ. Resour. Comput. 7, 4 (2008), 1--31.1 Google ScholarGoogle ScholarDigital LibraryDigital Library
  80. Schulte, C. 2008. Block Model: an educational model of program comprehension as a tool for a scholarly approach to teaching. Proceeding of the Fourth international Workshop on Computing Education Research (Sydney, Australia, 2008), 149--160. Google ScholarGoogle ScholarDigital LibraryDigital Library
  81. Sfard, A. 1991. On the dual nature of mathematical conceptions: Reflections on processes and objects as different sides of the same coin. Educational Studies in Mathematics. 22, 1 (1991), 1--36.Google ScholarGoogle ScholarCross RefCross Ref
  82. Shaft, T.M. and Vessey, I. 2006. The role of cognitive fit in the relationship between software comprehension and modification. MIS Quarterly. 30, 1 (2006), 29--55. Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Shneiderman, B. and Mayer, R. 1979. Syntactic/semantic interactions in programmer behavior: A model and experimental results. International Journal of Computer & Information Sciences. 8, 3 (1979), 219--238.Google ScholarGoogle Scholar
  84. Simon, B., Fitzgerald, S. et al. 2007. Debugging assistance for novices: a video repository. SIGCSE Bull. 39, 4 (2007), 137--151. Google ScholarGoogle ScholarDigital LibraryDigital Library
  85. Sims-Knight, J.E. and Upchurch, R.L. 1993. Teaching Object-Oriented Design Without Programming: A Progress Report. Computer Science Education. 4, 1 (1993), 135--156.Google ScholarGoogle ScholarCross RefCross Ref
  86. Soloway, E., Adelson, B. et al. 1988. Knowledge and Processes in the Comprehension of Computer Programs. The Nature of Expertise. M. Chi, R. Glaser, et al., eds. Lawrence Erlbaum Associates. 129--152.Google ScholarGoogle Scholar
  87. Soloway, E. and Ehrlich, K. 1984. Empirical studies of programming knowledge. IEEE Transactions on Software Engineering. 10, 5 (1984), 595--609.Google ScholarGoogle ScholarDigital LibraryDigital Library
  88. Soloway, E. and Spohrer, J.C. 1989. Studying the Novice Programmer. L. Erlbaum Associates Inc. Google ScholarGoogle ScholarDigital LibraryDigital Library
  89. Sorva, J., Karavirta, V. et al. 2007. Roles of variables in teaching. Journal of Information Technology Education. 6, (2007), 407--423.Google ScholarGoogle Scholar
  90. Spohrer, J.C., Soloway, E. et al. 1985. A goal/plan analysis of buggy pascal programs. Hum.-Comput. Interact. 1, 2 (1985), 163--207. Google ScholarGoogle ScholarDigital LibraryDigital Library
  91. Storey, M. 2006. Theories, tools and research methods in program comprehension: past, present and future. Software Quality Journal. 14, 3 (2006), 187--208. Google ScholarGoogle ScholarDigital LibraryDigital Library
  92. Tenenberg, J., Fincher, S. et al. 2005. Students designing software: a multi-national, multi-institutional study. Informatics in Education. 4, 1 (2005), 143--162.Google ScholarGoogle ScholarCross RefCross Ref
  93. Thompson, E.L. 2008. How do they understand? Practitioner perceptions of an object-oriented program. Massey University, New Zealand.Google ScholarGoogle Scholar
  94. Thompson, E. 2006. Using a subject area model as a learning improvement model. Proceedings of the 8th Australian Conference on Computing education - Volume 52 (Hobart, Australia, 2006), 197--203. Google ScholarGoogle ScholarDigital LibraryDigital Library
  95. Uwano, H., Nakamura, M. et al. 2007. Exploiting Eye Movements for Evaluating Reviewer's Performance in Software Review. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. 90, 10 (2007), 2290--2230. Google ScholarGoogle ScholarDigital LibraryDigital Library
  96. Vagianou, E. 2006. Program working storage: a beginner's model. Proceedings of the 6th Baltic Sea conference on Computing education research: Koli Calling 2006 (Uppsala, Sweden, 2006), 69--76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  97. Whalley, J.L., Lister, R. et al. 2006. An Australasian study of reading and comprehension skills in novice programmers, using the bloom and SOLO taxonomies. ACE '06: Proceedings of the 8th Austalian conference on Computing education (Darlinghurst, Australia, Australia, 2006), 243--252. Google ScholarGoogle ScholarDigital LibraryDigital Library
  98. Whalley, J.L. and Robbins, P. 2007. Report on the fourth BRACElet workshop. Bulletin of Applied Computing and Information Technology. 5, 1 (Jun. 2007).Google ScholarGoogle Scholar
  99. Wiedenbeck, S. 1986. Beacons in computer program comprehension. International Journal of Man-Machine Studies. 25, 6 (1986), 697--709. Google ScholarGoogle ScholarDigital LibraryDigital Library
  100. Wiedenbeck, S. 2005. Factors affecting the success of non-majors in learning to program. Proceedings of the first international workshop on Computing education research (Seattle, WA, USA, 2005), 13--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  101. Winslow, L.E. 1996. Programming pedagogy - a psychological overview. SIGCSE Bull. 28, 3 (1996), 17--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  102. Wirth, N. 1971. Program development by stepwise refinement.Commun. ACM. 14, 4 (1971), 221--227. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An introduction to program comprehension for computer science educators

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        ITiCSE-WGR '10: Proceedings of the 2010 ITiCSE working group reports
        June 2010
        121 pages
        ISBN:9781450306775
        DOI:10.1145/1971681

        Copyright © 2010 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 28 June 2010

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • review-article

        Acceptance Rates

        Overall Acceptance Rate552of1,613submissions,34%

        Upcoming Conference

        ITiCSE 2024

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader