簡易檢索 / 詳目顯示

研究生: 廖宜志
論文名稱: 基於腦波活動之程式理解認知探究
Exploring the cognition during program comprehension based on EEG activities
指導教授: 林育慈
學位類別: 碩士
Master
系所名稱: 資訊教育研究所
Graduate Institute of Information and Computer Education
論文出版年: 2014
畢業學年度: 102
語文別: 中文
論文頁數: 88
中文關鍵詞: 腦電波程式理解認知認知神經科學
英文關鍵詞: EEG, program comprehension, cognition, cognitive neuroscience
論文種類: 學術論文
相關次數: 點閱:195下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 對於電腦科學領域而言,程式設計是一門極為重要的基礎技能,其涉及一些專業知識、抽象概念與問題解決策略等,是一個相當複雜的認知歷程,學生在學習的過程通常遭遇許多困難。過往的研究大都透過訪談、放聲思考(think aloud)與問卷來瞭解學生理解程式時的認知歷程,但這些方法較無法客觀量測精確的結果,本研究則嘗試透過腦波儀記錄參與者進行程式理解時腦電波各頻帶的強度,比較高、低成就兩者腦電波的差異,以更直接的生理證據探究、分析其認知。
    本實驗的參與者為33位資工系所的學生,透過閱讀二題程式題目來記錄其間腦電波情況,為能清楚知曉參與者觀看何處,以便瞭解所觀看之程式碼與腦電波之關聯,本研究同時輔以眼動儀抓取參與者瞳孔位置,最後再透過問卷及訪談幫助釐清參與者的理解狀況。實驗結果發現,高成就者在較複雜的函式與程式結構上,例如遞迴函式、巢狀for迴圈等,顯著展現出較高的theta波、lower alpha、upper alpha、與beta波。theta波(頻率介於4-7Hz)和工作記憶有關,較高的theta波代表高成就者程式理解過程中較能成功將變數、陣列值等新資訊編碼進工作記憶;lower alpha(頻率介於8-9Hz)和注意力歷程有關,較高的lower alpha代表高成就者在程式理解過程中擁有較好的記憶與注意力表現;較高的upper alpha(頻率介於10-12Hz)則代表高成就者在程式理解過程中能較快從長期記憶中提取程式相關知識,進而理解出程式目的;另外高成就者在遞迴呼叫、遞迴結束條件等這些在整體程式運作中扮演重要角色的程式碼上有較強的beta波(頻率介於13-30Hz),beta波與由上而下注意力機制有關,表示高成就者能將注意力投注在Beacon(為程式碼中關鍵的程式敘述,代表著程式中特定的結構或操作)上,且以較有效率、有策略的方式理解程式。本研究亦發現對於一些較為困難的程式結構,例如for迴圈和if搭配運用、巢狀for迴圈、結構較大的遞迴程式等,低成就者會因有限的記憶力與注意力資源而影響認知表現,在程式設計教學時應提供變數提示或其他視覺化輔助工具以幫助學習者追蹤並理解程式。

    Computer programming is a critical skill in computer science, which is a complex
    cognitive activity involving programming knowledge, retrieval, logical thinking, and
    problem solving. However, it is challenging for most novice programmers. Much existing
    research have been trying to find the reasons why learners have difficulties in learning
    programming, and most research studied learners’ programming by observing their
    behavior by the methods of interview, thinking aloud, or the questionnaire study. But these
    methods lack objective evidences about participants’ inner cognition. Instead of observing
    learners’ outer behavior, this research investigated learners’ inner cognition during
    program comprehension by the EEG techniques. The differences of EEG oscillations
    between low and high-proformance students were discussed to find how they thought in
    different ways while tracing and comprehending the programs.
    In the experiment, thirty-three nudergrauate students were asked to wear the EEG
    system for recording EEG activities while reading two programs. This research also
    utilized the eye-tracker to record the participants’ eye movements to facilitate
    understanding the EEG activities. Finally, interview and questionnaire were used to figure
    out the situation of the participants’ comprehension was found from the experiment results
    that high-proformance students showed significantly higher mean power of theta, lower
    alpha, upper alpha, and lower beta. Theta band activity is related to the encoding and
    retrieval of episodic memory, and the relational decoding of different types of information
    in working memory. The high-performance students had higher theta power, which might
    imply that they involved more in the transformation of current information and in the
    encoding and retrieving information (e.g., the variable values) in episodic memory. The
    lower alpha power (8-9Hz) is related to attentional processes. The high-performance
    students had higher lower alpha power, which indicates that they had better memory and
    attention performance. The high-performance students with higher upper alpha power
    means they were faster in retrieving related programming knowledge while
    comprehending the program. Besides, the high-performance students showed higher beta
    power while reading key statements of the program. Beta power (13-30Hz) is related to
    top-down attentional mechanism. It implies that the high-performance students could
    focus on the Beacons (key statements of the program) and trace the program in more
    iv
    logical and strategical manner. This research also found the low-performance students had
    worse performance on tracing programs with more complex construct, such as
    combination of ‘if statement’ and ‘for loop’, ‘nested for loop’, and ‘large structure of the
    recursive function’, due to their limited working memory capacity and attention resources.
    Therefore, this research suggests that it is necessary to provide visualization tools to help
    students grasp the program logic and process complex information to assist
    comprehending programs while learning.

    第一章 緒論.......................................... 1 第一節 研究背景與動機.................................. 1 第二節 研究目的與待答問題............................... 4 第三節 名詞釋義....................................... 5 第二章 文獻探討....................................... 7 第一節 程式理解....................................... 7 第二節 認知神經科學.................................... 11 第三節 腦電波與認知的關聯............................... 13 第三章 研究方法....................................... 18 第一節 參與者......................................... 18 第二節 研究設計....................................... 19 第三節 研究工具....................................... 25 第四節 資料蒐集與分析.................................. 27 第四章 結果與討論..................................... 31 第一節 直述題......................................... 31 第二節 遞迴題......................................... 47 第三節 特定程式結構理解與腦電波.......................... 67 第四節 高難度程式結構.................................. 69 第五章 結論與建議..................................... 71 第一節 結論.......................................... 71 第二節 建議.......................................... 73 參考文獻............................................... 74 附錄一 問卷內容......................................... 81 附錄二 序列分析殘差表.................................... 85 表2 1程式理解模型關鍵元素彙整.............................. 10 表3 1高、低成就人數及分數統計.............................. 28 表3 2各函式答題狀況人數統計................................ 28 表3 3程式結構分類........................................ 29 表4 1直述題程式功能與架構................................. 32 表4 2直述題各頻帶強度獨立樣本t檢定摘要表..................... 32 表4 3直述題-函式1各頻帶獨立樣本t檢定摘要表................... 33 表4 4直述題-函式2各頻帶獨立樣本t檢定摘要表................... 35 表4 5直述題-while迴圈各頻帶獨立樣本t檢定摘要表............... 36 表4 6直述題-函式3各頻帶獨立樣本t檢定摘要表................... 39 表4 7直述題-質數判斷各頻帶獨立樣本t檢定摘要表................. 40 表4 8直述題-變數宣告凝視次數獨立樣本t檢定摘要表............... 42 表4 9直述題-變數宣告各頻帶獨立樣本t檢定摘要表................. 42 表4 10直述題-for迴圈凝視次數獨立樣本t檢定摘要表 ............... 43 表4 11直述題-for迴圈各頻帶獨立樣本t檢定摘要表................ 43 表4 12直述題-if敘述式凝視次數獨立樣本t檢定摘要表.............. 44 表4 13直述題-if敘述式各頻帶獨立樣本t檢定摘要表................ 44 表4 14直述題函式2-if敘述式各頻帶獨立樣本t檢定摘要表........... 45 表4 15直述題函式3-if敘述式各頻帶獨立樣本t檢定摘要表........... 45 表4 16遞迴題程式功能與架構................................ 47 表4 17遞迴題各頻帶獨立樣本t檢定摘要表....................... 47 表4 18遞迴題-函式1各頻帶獨立樣本t檢定摘要表................. 48 表4 19遞迴題-函式1遞迴呼叫各頻帶獨立樣本t檢定摘要表........... 50 表4 20遞迴題-函式2各頻帶獨立樣本t檢定摘要表................. 52 表4 21遞迴題-函式2遞迴呼叫各頻帶獨立樣本t檢定摘要表........... 53 表4 22遞迴題-函式3各頻帶獨立樣本t檢定摘要表.................. 55 表4 23遞迴題-函式3各頻帶逐行分析摘要表(低成就)............... 56 表4 24遞迴題-函式3各頻帶逐行分析摘要表(高成就)............... 56 表4 25遞迴題-巢狀for迴圈各頻帶獨立樣本t檢定摘要表............ 59 表4 26遞迴題函式3-遞迴呼叫各頻帶獨立樣本t檢定摘要表........... 60 表4 27高、低成就程式理解歷程及相對應電腦波彙整................ 62 表4 28遞迴題-變數宣告凝視次數獨立樣本t檢定摘要表.............. 64 表4 29遞迴題-變數宣告各頻帶獨立樣本t檢定摘要表................ 64 表4 30遞迴題-for迴圈凝視次數獨立樣本t檢定摘要表 ............... 65 表4 31遞迴題-for迴圈各頻帶獨立樣本t檢定摘要表................ 65 表4 32遞迴題-if敘述式凝視次數獨立樣本t檢定摘要表.............. 66 表4 33遞迴題-if敘述式各頻帶獨立樣本t檢定摘要表............... 66 表4 34高、低成就總答題描述統計............................. 68 表4 35特定程式結構腦電波描述統計........................... 68 表4 36特定程式結構腦電波t檢定結果.......................... 69 表4 37高難度程式結構答錯人數及記憶負荷人數統計................ 70 表4 38高難度程式結構腦電波差異統整.......................... 70 圖2 1程式理解模型關鍵元素.................................. 9 圖3 1直述題:印出雙生質數.................................. 21 圖3 2遞迴題:數字系統轉換.................................. 23 圖3 3眼動儀校正.......................................... 24 圖3 4實驗流程示意圖....................................... 24 圖3 5 NeuroSky頭戴式腦波耳機.............................. 25 圖3 6 Tobii X120眼動儀.................................. 26 圖3 7 Tobii X120組態設定................................. 26 圖3 8凝視次數計算......................................... 27 圖4 1凝視次數百分比圖(直述題-函式1):(a)低成就組,(b)高成就組.. 34 圖4 2凝視次數百分比圖(直述題-函式2):(a)低成就組,(b)高成就組.. 36 圖4 3低成就多出之顯著序列(直述題-函式2)..................... 38 圖4 4高成就多出之顯著序列(直述題-函式2)..................... 38 圖4 5凝視次數百分比圖(直述題-函式3):(a)低成就組,(b)高成就組.. 40 圖4 6凝視次數百分比圖(遞迴題-函式1):(a)低成就組,(b)高成就組.. 50 圖4 7凝視次數百分比圖(遞迴題-函式2):(a)低成就組,(b)高成就組.. 53 圖4 8凝視次數百分比圖(遞迴題-函式3):(a)低成就組,(b)高成就組.. 59 圖4 9低成就多出之顯著序列(遞迴題-函式3)..................... 61 圖4 10高成就多出之顯著序列(遞迴題-函式3).................... 63

    中文部分
    高慧君、吳正己(2002)。美國高中的先修大學電腦科學課程(APCS)簡介。科學教育,(247),64-73。
    洪蘭、曾志朗(2005)。認知神經科學的新頁: 腦照影技術。應用心理研究,(28),23-24。

    英文部分
    Al-Fedaghi, S. (2012). Conceptual framework for recursion in computer programming. Journal of Theoretical and Applied Information Technology, Vol. 46 No. 2.
    Aschwanden, C., & Crosby, M. (2006). Code scanning patterns in program comprehension. In Proceedings of the 39th Hawaii International Conference on System Sciences.
    Bakeman, R. (1986). Observing interaction : an introduction to sequential analysis. Cambridge ;New York: Cambridge University Press.
    Bayman, P., & Mayer, R. E. (1983). A diagnosis of beginning programmers' misconceptions of BASIC programming statements. Communications of the ACM, 26(9), 677-679.
    Bednarik, R. (2012). Expertise-dependent visual attention strategies develop over time during debugging with multiple code representations. International Journal of Human-Computer Studies, 70(2), 143-155.
    Burkhardt, J. M., Détienne, F., & Wiedenbeck, S. (1997, January). Mental representations constructed by experts and novices in object-oriented program comprehension. In Human-Computer Interaction INTERACT’97 (pp. 339-346).
    Buschman, T. J., & Miller, E. K. (2007). Top-down versus bottom-up control of attention in the prefrontal and posterior parietal cortices. Science, 315(5820), 1860-1862.
    Buzsáki, G., & Draguhn, A. (2004). Neuronal oscillations in cortical networks. Science, 304(5679), 1926-1929.
    Brooks, R. (1983). Towards a theory of the comprehension of computer programs. International journal of man-machine studies, 18(6), 543-554.
    Brook, A., & Mandik, P. (2004). The philosophy and neuroscience movement. Mind,29(1).
    Cañas, J. J., Bajo, M. T., & Gonzalvo, P. (1994). Mental models and computer programming. International Journal of Human-Computer Studies, 40(5), 795-811.
    Canolty, R. T., Edwards, E., Dalal, S. S., Soltani, M., Nagarajan, S. S., Kirsch, H. E., Berger, M. S., Barbaro, N. M., & Knight, R. T. (2006). High gamma power is phase-locked to theta oscillations in human neocortex. science, 313(5793), 1626-1628.
    Caplan, J. B., Madsen, J. R., Raghavachari, S., & Kahana, M. J. (2001). Distinct patterns of brain oscillations underlie two basic parameters of human maze learning. Journal of Neurophysiology, 86(1), 368-380.
    Corritore, C. L., & Wiedenbeck, S. (1991). What do novices learn during program comprehension?. International Journal of Human‐Computer Interaction,3(2), 199-222.
    Crosby, M. E., Scholtz, J., & Wiedenbeck, S. (2002, June). The roles beacons play in comprehension for novice and expert programmers. In 14th Workshop of the Psychology of Programming Interest Group (pp. 58-73).
    Détienne, F. (2001). Software Design–Cognitive Aspect. Springer.
    De Smedt, B., Grabner, R. H., & Studer, B. (2009). Oscillatory EEG correlates of arithmetic strategy use in addition and subtraction. Experimental brain research, 195(4), 635-642.
    Dicheva, D. & Close, J. (1996). Mental Models of Recursion. Journal of Educational Computing Research, 14(1), 1-23.
    Dietrich, A., & Kanso, R. (2010). A review of EEG, ERP, and neuroimaging studies of creativity and insight. Psychological bulletin, 136(5), 822.
    Earle, J. B., Garcia-Dergay, P., Manniello, A., & Dowd, C. (1996). Mathematical cognitive style and arithmetic sign comprehension: a study of EEG alpha and theta activity. International journal of psychophysiology, 21(1), 1-13.
    Eivazi, S., & Bednarik, R. (2010, October). Inferring problem solving strategies using eye-tracking: system description and evaluation. In Proceedings of the 10th Koli Calling International Conference on Computing Education Research(pp. 55-61). ACM.
    Engel, A. K., & Fries, P. (2010). Beta-band oscillations—signalling the status quo?. Current opinion in neurobiology, 20(2), 156-165.
    Fitzgibbon, S. P., Pope, K. J., Mackenzie, L., Clark, C. R., & Willoughby, J. O. (2004). Cognitive tasks augment gamma EEG power. Clinical Neurophysiology,115(8), 1802-1809.
    Fix, V., Wiedenbeck, S., & Scholtz, J. (1993, May). Mental representations of programs by novices and experts. In Proceedings of the INTERACT'93 and CHI'93 conference on Human factors in computing systems (pp. 74-79). ACM.
    Gevins, A., Smith, M. E., McEvoy, L., & Yu, D. (1997). High-resolution EEG mapping of cortical activation related to working memory: effects of task difficulty, type of processing, and practice. Cerebral Cortex, 7(4), 374-385.
    Govender, I., & Grayson, D. (2006). Learning to program and learning to teach programming: A closer look. In World Conference on Educational Multimedia, Hypermedia and Telecommunications (Vol. 2006, No. 1, pp. 1687-1693).
    Gog, T. V., Kester, L., Nievelstein, F., Giesbers, B., & Paas, F. (2009). Uncovering cognitive processes: Different techniques that can contribute to cognitive load research and instruction. Computers in Human Behavior, 25(2), 325-331.
    Goswami, U. (2004). Neuroscience and education. British Journal of Educational Psychology, 74(1), 1-14.
    Götschi, T., Sanders, I., & Galpin, V. (2003). Mental models of recursion (Vol. 35, No. 1, pp. 346-350). ACM.
    Haier, R. J., Siegel, B., Tang, C., Abel, L., & Buchsbaum, M. S. (1992). Intelligence and changes in regional cerebral glucose metabolic rate following learning. Intelligence, 16(3), 415-426.
    Hohmann L. (1996). Journey of the Software Professional: The Sociology of Software Development. Prentice Hall.
    Jaušovec, N. (1996). Differences in EEG alpha activity related to giftedness. Intelligence, 23(3), 159-173.
    Jaušovec, N. (2000). Differences in cognitive processes between gifted, intelligent, creative, and average individuals while solving complex problems: an EEG study. Intelligence, 28(3), 213-237.
    Kaczmarczyk, L. C., Petrick, E. R., East, J. P., & Herman, G. L. (2010, March). Identifying student misconceptions of programming. In Proceedings of the 41st ACM technical symposium on Computer science education (pp. 107-111). ACM.
    Kahana, M. J., Seelig, D., & Madsen, J. R. (2001). Theta returns. Current opinion in neurobiology, 11(6), 739-744.
    Kahana, M. J., Sekuler, R., Caplan, J. B., Kirschen, M., & Madsen, J. R. (1999). Human theta oscillations exhibit task dependence during virtual maze navigation. Nature, 399(6738), 781-784.
    Kamiński, J., Brzezicka, A., Gola, M., & Wróbel, A. (2012). Beta band oscillations engagement in human alertness process. International Journal of Psychophysiology, 85(1), 125-128.
    Klimesch, W., Schimke, & Pfurtscheller, G. (1993). Alpha frequency, cognitive load and memory performance. Brain topography, 5(3), 241-251.
    Klimesch, W., Doppelmayr, M., Russegger, H., & Pachinger, T. (1996). Theta band power in the human scalp EEG and the encoding of new information. Neuroreport, 7(7), 1235-1240.
    Klimesch, W. (1997). EEG-alpha rhythms and memory processes. International Journal of Psychophysiology, 26(1-3), 319-340.
    Klimesch, W., Doppelmayr, M., Pachinger, T., & Ripper, B. (1997). Brain oscillations and human memory: EEG correlates in the upper alpha and theta band. Neuroscience letters, 238(1), 9-12.
    Klimesch, W. (1999). EEG alpha and theta oscillations reflect cognitive and memory performance: a review and analysis. Brain research reviews, 29(2), 169-195.
    Klimesch, W., Schack, B., & Sauseng, P. (2005). The functional significance of theta and upper alpha oscillations. Experimental Psychology (Formerly Zeitschrift Für Experimentelle Psychologie), 52(2), 99-108.
    Klimesch, W., Sauseng, P., & Hanslmayr, S. (2007). EEG alpha oscillations: the inhibition–timing hypothesis. Brain research reviews, 53(1), 63-88.
    Klimesch, W. (2012). Alpha-band oscillations, attention, and controlled access to stored information. Trends in cognitive sciences, 16(12), 606-617.
    Lahtinen, E., Ala-Mutka, K., & Järvinen, H. M. (2005, June). A study of the difficulties of novice programmers. In ACM SIGCSE Bulletin (Vol. 37, No. 3, pp. 14-18). ACM.
    Letovsky, S. (1987). Cognitive processes in program comprehension. Journal of Systems and software, 7(4), 325-339.
    Lisman, J. (2010). Working memory: the importance of theta and gamma oscillations. Current Biology, 20(11), R490-R492.
    Pea, R. D. (1986). Language-independent conceptual" bugs" in novice programming. Journal of Educational Computing Research, 2(1), 25-36.
    Pennington, N. (1987). Stimulus structures and mental representations in expert comprehension of computer programs. Cognitive psychology, 19(3), 295-341.
    Picton, T. W., Lins, O. G., & Scherg, M. (1995). The recording and analysis of event-related potentials. Handbook of neuropsychology, 10, 3-3.
    Pfurtscheller, G., & Lopes da Silva, F. H. (1999). Event-related EEG/MEG synchronization and desynchronization: basic principles. Clinical neurophysiology,110(11), 1842-1857.
    Pfurtscheller, G. (2003). Induced oscillations in the alpha band: functional meaning.Epilepsia, 44(s12), 2-8.
    Rayner, K. (1998). Eye movements in reading and information processing: 20 years of research. Psychological bulletin, 124(3), 372.
    Renumol, V. G., Janakiram, D., & Jayaprakash, S. (2010). Identification of cognitive processes of effective and ineffective students during computer programming. ACM Transactions on Computing Education (TOCE), 10(3), 10.
    Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Millner, A., Rosenbaum, E., Silver, J., Silverman, B., and Kafai Y. (2009). Scratch: Programming for All. Communications of the ACM, 52(11), 60-67.
    Robins, A., Rountree, J., & Rountree, N. (2003). Learning and teaching programming: A review and discussion. Computer Science Education, 13(2), 137-172.
    Sandkühler, S., & Bhattacharya, J. (2008). Deconstructing insight: EEG correlates of insightful problem solving. PLoS One, 3(1), e1459.
    Sauseng, P., Klimesch, W., Schabus, M., & Doppelmayr, M. (2005). Fronto-parietal EEG coherence in theta and upper alpha reflect central executive functions of working memory. International Journal of Psychophysiology, 57(2), 97-103.
    Sauseng, P., & Klimesch, W. (2008). What does phase information of oscillatory brain activity tell us about cognitive processes?. Neuroscience & Biobehavioral Reviews, 32(5), 1001-1013.
    Schulte, C., Clear, T., Taherkhani, A., Busjahn, T., & Paterson, J. H. (2010, June). An introduction to program comprehension for computer science educators. In Proceedings of the 2010 ITiCSE working group reports (pp. 65-86). ACM.
    She, H. C., & Chen, Y. Z. (2009). The impact of multimedia effect on science learning: Evidence from eye movements. Computers & Education, 53(4), 1297-1307.
    She, H. C., Jung, T. P., Chou, W. C., Huang, L. Y., Wang, C. Y., & Lin, G. Y. (2012). EEG Dynamics Reflect the Distinct Cognitive Process of Optic Problem Solving. PloS one, 7(7), e40731.
    Soloway, E., & Ehrlich, K. (1984). Empirical studies of programming knowledge. Software Engineering, IEEE Transactions on, (5), 595-609.
    Stein, R., & Brennan, S. E. (2004, October). Another person's eye gaze as a cue in solving programming problems. In Proceedings of the 6th international conference on Multimodal interfaces (pp. 9-15). ACM.
    Storey, M. A. (2006). Theories, tools and research methods in program comprehension: past, present and future. Software Quality Journal, 14(3), 187-208.
    Taherkhani, A. (2013). Automatic Algorithm Recognition Based on Programming Schemas and Beacons. Retrieved from http://lib.tkk.fi/Diss/2013/isbn9789526049908/isbn9789526049908.pdf
    Ward, L. M. (2003). Synchronous neural oscillations and cognitive processes.Trends in cognitive sciences, 7(12), 553-559.
    Wiedenbeck, S. & Ramalingam, V. (1999). Novice comprehension of small programs written in the procedural and object-oriented styles. International Journal of Human-Computer Studies, 51(1), 71-87.
    Winslow, L. E. (1996). Programming pedagogy—a psychological overview. ACM SIGCSE Bulletin, 28(3), 17-22.
    Xu, S., & Rajlich, V. (2004, August). Cognitive process during program debugging. In Cognitive Informatics, 2004. Proceedings of the Third IEEE International Conference on (pp. 176-182). IEEE.

    無法下載圖示 本全文未授權公開
    QR CODE