Examples of Unsuccessful Use of Code Comprehension Strategies: A Resource for Developing Code Comprehension Pedagogy

被引:2
|
作者
Lewis, Colleen M. [1 ]
机构
[1] Univ Illinois, Dept Comp Sci, Urbana, IL 61820 USA
关键词
code comprehension; introductory programming; CS1; conceptual change; explain in plain English; KNOWLEDGE;
D O I
10.1145/3568813.3600116
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Background: Code comprehension research has identified gaps between the strategies experts and novices use in comprehending code. In computer science (CS) education, code comprehension has recently received increased attention, and research has identified correlations between code comprehension and code writing. While there is a long history of identifying expert code-comprehension strategies, there has been less work to understand and support the incremental development of code comprehension expertise. Purpose: The goal of the paper is to identify potential code-comprehension strategies that educators could teach students. Methods: In this paper, I analyze and present examples from a novice programmer engaged in a code-comprehension task. Findings: I identify five code-comprehension strategies that overlap with previously identified, expert code-comprehension strategies. While an expert would use these strategies to produce correct inferences about code, I primarily examine a novice's unsuccessful attempts to comprehend code using these strategies. Implications: My case study provides an existence proof that shows that these five strategies can be used by a novice. This is essential for identifying potential strategies to teach novices. My primary empirical contribution is identifying potential building blocks for developing code-comprehension expertise. My primary theoretical contribution is proposing to build code-comprehension pedagogy on specific, expert strategies that I show are usable by a novice. More broadly, I hope to encourage CS education researchers to focus on understanding the complex processes of learning that occur in between the end points of novice and expert.
引用
收藏
页码:15 / 28
页数:14
相关论文
共 50 条
  • [31] Developing Application Specific Ontology for Program Comprehension by Combining Domain Ontology with Code Ontology
    Zhou, Hong
    Chen, Feng
    Yang, Hongji
    QSIC 2008: PROCEEDINGS OF THE EIGHTH INTERNATIONAL CONFERENCE ON QUALITY SOFTWARE, 2008, : 225 - 234
  • [32] Automated Assessment of Students' Code Comprehension using LLMs
    Oli, Priti
    Banjade, Rabin
    Chapagain, Jeevan
    Rus, Vasile
    AI FOR EDUCATION WORKSHOP, 2024, 257 : 118 - 128
  • [33] An empirical approach to understand the role of emotions in code comprehension
    Singh, Divjot
    Mishra, Ashutosh
    Aggarwal, Ashutosh
    JOURNAL OF COMPUTER LANGUAGES, 2024, 79
  • [34] Improvised Software Code Comprehension Using Data Mining
    Gupta, Ram Gopal
    Dumka, Ankur
    Mazumdar, Bireshwar Dass
    INTERNATIONAL ARAB JOURNAL OF INFORMATION TECHNOLOGY, 2024, 21 (03) : 531 - 547
  • [35] Detecting Important Terms in Source Code for Program Comprehension
    Rodeghero, Paige
    McMillan, Collin
    PROCEEDINGS OF THE 52ND ANNUAL HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES, 2019, : 7493 - 7502
  • [36] Towards automated code parallelization through program comprehension
    Martino, B.Di.
    Iannello, G.
    Program Comprehension, Workshop Proceedings, 1994, : 108 - 115
  • [37] Program Comprehension and Code Complexity Metrics: An fMRI Study
    Peitek, Norman
    Apel, Sven
    Parnin, Chris
    Brechmann, Andre
    Siegmund, Janet
    2021 IEEE/ACM 43RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2021), 2021, : 524 - 536
  • [38] Attempting to break the code in student comprehension of genetic concepts
    Marbach-Ad, G
    JOURNAL OF BIOLOGICAL EDUCATION, 2001, 35 (04) : 183 - 189
  • [39] Coding™: Development Task Visualization for SW Code Comprehension
    Kim, Taeyoung
    Kim, Suntae
    Ryu, Duksan
    2021 WORKING CONFERENCE ON SOFTWARE VISUALIZATION (VISSOFT 2021), 2021, : 23 - 32
  • [40] An Empirical Study Assessing Source Code Readability in Comprehension
    Johnson, John C.
    Lubo, Sergio
    Yedla, Nishitha
    Aponte, Jairo
    Sharif, Bonita
    2019 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2019), 2019, : 513 - 523