查飛琴 吳偉敏
摘 要:回顧國外K-12階段計算思維教學相關實證研究,并在此基礎上探討計算思維教育研究前景。采用關鍵詞檢索對網絡數據庫進行系統檢索,共收錄34篇SSCL期刊實證類論文。研究考察因素包括參與者年級或年齡、樣本組、教學策略、教學工具、編程語言、研究內容。研究結果表明,相關研究內容可歸為4個主題:采用某個軟件或課程培養學生計算思維、以提升吸引力為主的可視化少兒編程課程、開發量表或工具評價計算思維、從變量角度分析計算思維技能組成部分。
關鍵詞:計算思維;教學活動;K-12;培養方式
DOI:10. 11907/rjdk. 192367 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP434文獻標識碼:A 文章編號:1672-7800(2020)008-0281-04
Abstract: This paper aims to review foreign empirical studies on the teaching and learning of computational thinking in k-12 stage, and discuss the future research prospects of CT education on this basis. A total of 34 empirical papers of SSCL journals were included in the systematic retrieval of online database by keyword retrieval. Each paper focuses on the following factors: participant grade or age, sample group, teaching strategies, teaching tools, programming language, and research content. The research results show that the research content of the thesis can be classified into the following four topics: adopting a certain software or course to cultivate students computational thinking; Visual children programming courses focusing on improving attractiveness; Develop a scale or tool to evaluate computational thinking; Analyze the components of computational thinking skills from the perspective of variables.
Key Words: computational thinking; teaching activities; K-12 course; cultivating way
0 引言
計算思維(Computational Thinking,CT)是一種解決問題的方法,其應用貫穿于整個K-12課程。將CT整合到傳統核心和選修科目中可幫助學生建立跨課程聯系,提高學生學習成績,有利于其技能培養和未來職業發展。隨著CT的普及,其與學科相關性越來越明顯,很多國家和機構將其納入課程,CT對學生未來發展與教學方式多樣性的影響愈加明顯。
本文圍繞“如何培養K-12階段孩子們的計算思維”、“怎樣把計算思維融入到其它學科中”、“計算思維與編程、程序設計的關系”等問題,對目前國外教學機構如何展開計算思維教與學進行描述和總結,希望通過總結國外K-12培養計算思維的教學方式和應用實踐,為我國計算科學發展提供借鑒,指導我國教育工作者、研究者更好地開展中小學生計算思維訓練與培養。
1 研究回顧
計算思維由周以真[1]于2006年在《Computational Thinking》中首次提出。Grover&Pea[2]在此基礎上,總結計算思維研究進展及研究者如何解釋周以真提出的定義;Lye& Koh[3]從編程學習的角度探究K-12階段學術計算思維培養與教學方法。論文對現有27項干預研究進行分析,指出基于程序設計的計算思維發展實證研究發展趨勢與指導意義,并在教學策略方面,提出基于建構主義的學習環境建構與反思活動,以培養學生計算實踐與計算觀點;Brown& Sentence[4]提到英國計算機科學變革明確將計算機科學作為5歲兒童必修課,雖然地區間改革進度不一樣,但均取得一定進展。隨著近年機器人課程逐漸與CT教學交叉,Xia&Zhong[5]針對機器人技術如何被納入K-12課程、哪些干預方法在教學和學習機器人內容知識方面有效等問題,結合22篇SSCI期刊論文進行研究,以樣本組、持續時間、機器人類型、機器人內容知識、研究類型、干預方法、測量工具為主要考察因素,為機器人教學提供了指導建議;Hsu& Chang[6]認為 CT主要應用于程序設計和計算機科學活動,通過編碼分析發現大多數研究在CT活動中采用基于項目的學習、基于問題的學習、合作學習和基于游戲的學習,并與其它學科有交叉聯系。為了解學習編碼的學生是在學習編碼和計算思維,還是通過編碼過程學習其它技能,Popat& Starkey[7]回顧了相關研究,對兒童接受編碼教學的成果進行分析。結果發現,學生通過編碼教學可學習或實踐一系列其它教育內容,包括數學問題解決、批判性思維、社交技能、自我管理和學術技能。
綜上所述,國外教育關注建立計算思維與不同學科之間的關聯,試圖打破計算思維理念的邊緣化,使計算思維融入普通必修課程。積極探索學習編程語言以外的教學工具,嘗試從更具體的角度分析計算思維內涵,研究內容不僅包括如何展開計算思維教學活動,還逐步關注如何評價計算思維,試圖建立一個完整的評價體系。
總結已有計算思維教學活動,本文針對近10年計算思維研究成果進行評述,討論近年國外展開思維教學與實踐的方式,包含使用何種教學工具、與哪些學科交叉融合及相應課程形式。
2 研究設計與方法
2.1 納入納出標準
相較于已有分析,本文在篩選文獻時不限年級、學科,不對具體教學軟件或硬件進行區分。具體來說,本文研究文獻納入的標準為:①必須是圍繞計算思維怎樣展開教與學的研究,即教學過程中涉及的教學方法、教學工具、策略、應用課程等;②研究對象為中小學生及幼兒,大學生和成人不予考慮;③文獻必須是實證類論文,綜述類論文不納入考慮;④2019年之前正式發表的研究。
2.2 文獻篩選與檢索
本文選取在Web of Science的SSCI上搜索核心期刊中關于“computational thinking”的相關文章。檢索日期為2006—2018年。共檢索出113篇文獻。排除與研究主題無關的48篇文獻,剩余65篇;再排除31篇敘述性論文、非實證性論文和綜述類論文,剩余34篇為本文研究文獻。
2.3 文獻編碼與效應量提取
本文編碼項分為4類:①描述性變量,主要包含第一作者與其所在國家、發表期刊名稱及發表年份;②研究問題項,即對該篇論文研究問題進行提煉和總結;③教學情境項,主要包含年級或年齡、樣本量大小、主題或科目、教學策略、教學時長、學習媒體或教學工具、編程語言、學習情境:正式教學或非正式教學;④研究方法項,主要包括研究設計方法、數據收集方法、數據分析方法。
3 研究結果
在統計的34篇文獻中,通過仔細閱讀全文,將研究主題分為以下4種;①實施某個軟件或課程以培養學生計算思維;②以提升吸引力為主的可視化少兒編程;③開發某個量表或者工具評價計算思維;④從變量角度分析計算思維技能組成部分。
(1)采用某個軟件或課程以培養學生計算思維。經文獻統計后可知,一半的研究主題是通過開展某個課程或軟件學習以培養學生計算思維,但研究對象和課程性質劃分不一致。如 Israel[8]的研究目的是調查具有有限計算機科學經驗的小學教師如何在高需求學校中將計算思維融入教學,教師在計算機科學課程中引導學生學習Etoys和Scratch兩種編程語言,實驗者在不同的教學環境(課堂、圖書館、藝術館)下展開教學活動;Snodgrass[9]主要研究特殊兒童如何展開計算能力的學習,實驗對象為兩名殘疾兒童,采用一對一的教學方式指導他們學習編程語言,以此得出殘疾兒童應該且可以參與計算機科學相關學習的結論;Filiz[10]為了解小學生在解決問題時反思性思維技能方面是否存在性別差異,在編程課程在線教學中,通過反思性思維技能量表分析性別差異;Basogain[11]根據拉丁美洲初中和美國高中實施的PC-01(計算思維導論)和ECE130(計算機思維與編程導論)兩門課程,討論將CT融入課堂學習環境的好處,并介紹了兩門課程教學大綱,分析了這兩門課程對教育機構、教師和學生的影響。
雖然研究主題一致,但學者們嘗試從不同角度探究計算思維教學方式。在課程設置方面,計算思維作為一種跨學科知識體系,需從計算機科學中分離出來[12]。因此在教師意識、教師培訓和資源服務方面需加大投入,以滿足實踐教學中的需求。此外,由于計算思維大多嵌入在信息技術課程或計算機課程中,原有課程對兒童計算思維培養起重要作用,但原有課程注重技能培養,而計算思維教學實踐聚焦于兒童思考方式和問題解決能力培養,因此教師在開展計算思維培養時,需將編程能力、數學思維、工程思維等內在的培養任務合理地安排在中小學信息技術課程中[13-14]。在課程工具方面,針對K-12階段的學生而言,有效培養計算思維的工具必須包含“低門檻”和“高上限”兩個特征,既易于初學者入門,又能很好地促進學生能力發展[15]。可視化編程工具[16-18[和教育機器人[19]是近年教學實踐中常用的計算思維培養工具,它們可克服傳統計算思維培養方法的枯燥和繁瑣,激起學生主動性,使學生突破代碼語法的門檻,更加關注創造和設計本身。
(2)以提升吸引力為主的可視化少兒編程課程。一直以來,兒童早期教育課程主要集中在識字和數學方面。近年來,TEM學習和數字化學習受到教育界持續關注[20,教育機構陸續制定了新的技術學習標準,并不斷開展將技術融入中小學信息技術教育的相關實踐。一些研究者認為早期計算機科學概念經驗至關重要,應該普及至學前兒童。關于兒童早期編碼和編程課程的研究[21-26]表明,5歲兒童可學習基本編碼技能(如排序、條件等)、建立簡單的機器人項目。基于以上原因,許多涵蓋數字技術應用的課程被引入小學信息技術教學,為了使學生直觀、飽含趣味地學習編程,可視化編程工具被廣泛運用于教學。如谷歌公司開發的手機編程軟件App Inventor、麻省理工學院“終身幼兒園團隊”開發的圖形化編程工具Scratch和各種在線拖拽編程。
這些可視化編程工具不需要孩子認識較多的英文或漢字,大幅降低了中小學生學習編程知識的門檻,且注重建立程序的過程,利用涂鴉、錄音、圖片搜索等有趣工具,通過拖拽、拼圖設計出小游戲,不需要掌握任何程序編制技術。可視化編程工具已事先將軟件代碼全部編寫完畢,學生只需根據需求添加服務選項,編寫簡單的代碼拼裝程序。這類課程旨在以一種有趣的、類似游戲活動的教學方式培養兒童編程能力,同時培養其計算思維技能。雖然大多數編程語言的學習在大學階段才開始,但在中小學時期教授這些課程,也是一種開拓兒童思維,培養邏輯能力、計算能力的重要方式。
(3)開發某種量表或工具評價計算思維。在本研究收集的文獻中,11篇論文的研究主題是開發一個工具或量表進行CT評價。計算思維是運用計算機科學基礎概念進行問題求解、系統設計及人類行為理解等涵蓋計算機科學廣度的一系列思維活動,其本質是抽象化和自動化[1]。因此,如何對抽象思維進行合理評價是當前教學的重要領域。Chen[27]研制了一種用于評估五年級學生CT水平的工具(物理機器人),可用于前測和后測。學生通過對兩種類型的CT應用程序(機器人編碼和日常事件推理)進行模擬學習,然后進行物理機器人實體操作,使學生體驗編程帶來的成效,進而理解計算思維這一高階理念的含義;Roman-Gonzalez[28]利用心理測量方法定義、測量CT 。一方面對學生進行一項聲譽思維測試,對其進行描述性統計和信度分析。另一方面對CT信元效度與其它標準化心理測試進行研究,其它心理測試包括初級心理能力和RP30問題解決測試。通過明確CT與相關關鍵心理理念的關聯,為CT作為一種解決問題能力的概念化性質提供證據;Zhong[29]設計了三維綜合評估(TDIA)框架對CT進行評價,通過對學生實施3對任務:封閉式正向任務和封閉式逆向任務、半開放式正向任務和半開放式逆向任務、開放式任務有創意設計報告與開放式任務沒有創意設計報告,利用TDIA評價學生在不同任務情形下的計算思維能力。
計算思維的本質之一是抽象化,注重學生運用計算機科學知識進行問題求解并理解人類的行為。因此,計算思維培養不同于計算機技能操作和計算機理論學習,其評價需包括學生在計算活動中的行為過程、能力變化及思維轉變等各方面,涉及知識、技能和態度。評價者需根據學生學習過程中的表現,將其放在不同維度的指標上,考慮個體在不同學習情境中的反應,盡可能全面展現學生在學習過程中的發展情況和細節表現,從而真實而有效地反映學生計算思維水平。
(4)從變量角度分析計算思維技能的組成部分。早期,計算機科學被認為是計算機科學家必須掌握的一種技能,但目前這種認識已發生改變,尤其是Wing(2006)認為計算機是每個人應掌握的基本能力之一,如同閱讀、寫作和算術一樣。該主題從計算思維的概念和含義出發,分析計算思維技能與哪些因素相關。Durak[30]試圖分析哪些變量可解釋計算思維,因此建立一個模型預測、解釋計算思維各種技能與各個變量之間的關系,研究發現,計算思維能力被預測為3個方面:思維方式、數學課堂上的學術成就、反對數學課堂的態度;Kong[31]以Seymour Papert“通過掌握編程賦予學生權力”的觀點為基礎,將“編程賦予權力”總結為4部分:“意義—聰明”、“影響”、“創造性自我效能”和“編程自我效能”。
通過上述研究發現,“計算思維”不是一個新概念,而是一項重要技能。計算思維技能指學生結合技術獲得創造力和解決問題的技能,可培養學術批判性思維能力。因此,在培養學生計算思維技能時需考慮個體對自身認知能力、能力偏向、興趣動機的差異。計算思維技能培養不是教學內容的調整,還需從個體認知能力出發,關注學生態度、技能和知識,關注性別差異和年齡需求。
4 結語
本文采用系統化綜述的方法,對2006—2018年發表的K-12階段CT實證研究論文進行回顧分析和討論。結果表明,計算思維活動主要用于藝術、計算機科學、數學、機器人設計等課程,可以看出國外計算思維相關培養與教學基于基本課程的方式,將其整合到不同主題中。這與周以真[26]提出的概念相呼應,即計算思維代表一項普遍的認知和普適的技能。研究者總結了兒童學習計算思維的益處,進行了基于計算機輔助的各種學習策略和教學應用,包括可視化編程(Scratch、Alice、App Inventor)、教育機器人及低成本編碼設備(code.org網站)。未來研究應該嘗試引入不同的學習策略,包括腳手架式學習策略、講故事學習、審美體驗等,以多種方式幫助學習者進行學科發展或高層次能力培養,如批判性思維和問題解決能力的培養。
綜上所述,對我國學生計算思維培養提出以下建議:①在課程設置方面需體現遷移性。在我國,計算思維培養主要依賴信息技術課程,很少關注跨學科應用。因此對原有信息技術課程內容需進行合理調整,是替代已有課程還是開設全新課程,是未來教育學者需思考的問題; ② 擴大培養對象范圍。研究結果顯示,4歲兒童即可學習基本編碼技能(如排序、條件等),而在我國計算思維教學大多在初高中課程中開展,這在一定程度上忽略了年齡優勢。如Kong[31]的研究表明,低年級學生比高年級學生更能感受到編程意義。因此,學前兒童計算機科學態度培養至關重要,計算思維培養主要是對人的思維完整性和邏輯性進行訓練,在該過程中,可建立一種看待和處理問題的態度[32],讓兒童從小養成邏輯性思考方式,在未來接受高階抽象課程時理解力更強。此外,關注特殊兒童計算思維訓練也是不可忽視的教學活動。神經學家的研究表明,雖然特殊兒童在肢體協調、腦部活動上低于常人,但不代表可剝奪其學習權力。相反由于某些方面的缺失,特殊兒童大腦活躍區域異于常人,學習特質也會表現出某方面的突出優勢。因此,在計算思維教學活動中應更多地關注殘障及兒童的培養,開發其潛在機能,給予他們平等的受教育權利; ③建立合理的評價指標。我國2017版《普通高中信息技術課程標準》將計算思維分為4個等級,且每個等級下的計算思維素養包含不同指標。計算思維作為一種抽象化的概念,對其評價不僅需觀察學習者外顯行為變化,也要關注其內顯意識轉變,這涉及知識、態度和技能等多個方面。在未來評價體系中,評價者需根據學生在學習過程中的表現,將其放在不同維度的指標上,考慮個體在不同學習情境中的反應,盡可能全面地展現學生在學習過程中的發展情況和細節表現,從而真實而有效地反映學生計算思維水平。
參考文獻:
[1] WING J M. Computational thinking[J]. Communications of the ACM, 2006, 49(3):33-35.
[2] GROVER S,PEA R. Computational thinking in K-12: a review of the state of the field[J]. ?Educational Researcher, 2013,42(1):38-43.
[3] LYE S Y,KOH J H L. Review on teaching and learning of computational thinking through programming: what is next for K-12?[J]. Computers in Human Behavior, 41, 51-61.
[4] BROWN N C C, SENTANCE S, CRICK T,et al. ?Restart: the resurgence of computer science in UK schools[J]. ?ACM Transactions on Computing Education14(2), 1-22.
[5] XIA L, ZHONG B. (2018). A systematic review on teaching and learning robotics content knowledge in K-12[J]. ?Computers&Education,2018,127:267-282.
[6] HSU T C, CHANG S C, HUNG Y T. How to learn and how to teach computational thinking: suggestions based on a review of the literature[J]. ?Computers&Education,2018,126:296-310.
[7] POPAT S, STARKEY L. ?Learning to code or coding to learn? a systematic review[J]. ?Computers & Education, 2019, 128, 365-376.
[8] ISRAEL M, PEARSON J N, TAPIA T, et al. Supporting all learners in school-wide computational thinking: a cross-case qualitative analysis[J]. ?Computers&Education, 2015, 82, 263-279.
[9] SNODGRASS M R, ISRAEL M, Reese G C. ?Instructional supports for students with disabilities in K-5 computing: findings from a cross-case analysis[J]. ?Computers&Education, 2016,100:1-17.
[10] KALELIO LU F. A new way of teaching programming skills to K-12 students: Code.org[J]. Computers in Human Behavior, 2015,52: 200-210.
[11] BASOGAIN X,OLABE M á,OLABE J C,et al. Computational thinking in pre-university blended learning classrooms[J]. ?Computers in Human Behavior, 2018,80:412-419.
[12] BARR V,STEPHENSON C. Bringing Computational Thinking to K-12:What is Involved and What is the Role of the Computer Sci-nce Education Community[J]. ACM Inroads,2011,2(1):48-54.
[13] KALELIO LU F. A new way of teaching programming skills to K-12 students: Code.org[J]. ?Computers in Human Behavior, 2015,52: 200-210.
[14] BASOGAIN X,OLABE M á,OLABE J C,et al. Computational Thinking in pre-university Blended Learning classrooms[J]. ?Computers in Human Behavior, 2018, 80: 412-419.
[15] 郁曉華,肖敏,王美玲. ?計算思維培養進行時:在K-12階段的實踐方法與評價[J]. 遠程教育雜志, 2018,36(2):18-28.
[16] SAEZ-LOPEZ J M,ROMAN-GONZALEZ M,VAZQUEZ-CANO E. Visual programming languages integrated across the curriculum in elementary school: A two year case study using《Scratch》in five schools[J]. ?Computers & Education, 2016,97:129-141.
[17] BASOGAIN X, OLABE M A, OLABE J C, et al (2018). ?Computational Thinking in pre-university Blended Learning classrooms[J]. ?Computers in Human Behavior, 2018,80:412-419.
[18] PELLAS N,PEROUTSEAS E. Gaming in Second Life via Scratch4SL: Engaging High School Students in Programming Courses[J]. Journal of Educational Computing Research, 2016,54(1):108-143.
[19] BERS M U, FLANNERY L, KAZAKOFF E R, et al. Computational thinking and tinkering: Exploration of an early childhood robotics curriculum[J]. ?Computers & Education, 2014,72:145-157.
[20] GELMAN R, BRENNEMAN K. Science learning pathways for young children[J]. ?Early Childhood Research Quarterly (Special Issue on Early Learning in Math and Science),2004, 19(1):150-158.
[21] FESSAKIS G, GOULI E, MAVROUDI E. Problem solving by 5-6 years old kindergarten children in a computer programming environment[J]. ?Computers &Education, 2012,63:87-97.
[22] KARADENIZ S, SAMUR Y, OZDEN M Y. Playing with algorithms to learn programming: a case study on 5 years old children[C]. ?Sydney: The International Conference on Information Technology and Applications,2014.
[23] KAZAK E R, BERS M U. Put your robot in, put your robot out: sequencing through programming robots in early childhood[J]. ?Journal of Educational Computing Research, 2014, 50(4), 553-573.
[24] BERS M U,PONTE I, JUELICH K, et al. Teachers as designers: integrating robotics into early childhood education[J]. ?Information Technology in Childhood Education,2002(1):123-145.
[25] CEJKA E,ROGERS C,PORTSMORE M. Kindergarten robotics: using robotics to motivate math, science, and engineering literacy in elementary school[J]. International Journal of Engineering Education, 2006,22(4):711-722.
[26] KAZAKOFF E,SULLIVAN A,BERS M. The effect of a classroom-based intensive robotics and programming workshop on sequencing ability in early childhood[J]. ?Early Childhood Education Journal, 2012,41(4):245-255.
[27] CHEN G, SHEN J, BARTH-COHEN L,et al. Assessing elementary students computational thinking in everyday reasoning and robotics programming[J]. ?Computers & Education, 2017(109): 162-175.
[28] ROMáN-GONZáLEZ M,PéREZ-GONZáLEZ J C, JIMéNEZ-FERNáNDEZ C. Which cognitive abilities underlie computational thinking? Criterion validity of the computational thinking test[J]. ?Computers in Human Behavior, 2007(72): 678-691.
[29] ZHONG B C,WANG Q Y,CHEN J,et al. An Exploration of Three-Dimensional Integrated Assessment for Computational Thinking[J]. ?Journal of Educational Computing Research, 2016,53(4): 562-590.
[30] DURAK H Y, SARITEPECI M. Analysis of the relation between computational thinking skills and various variables with the structural equation model[J]. ?Computers & Education, 2018(116):191-202.
[31] KONG S C, CHIU M M,LAI M. A study of primary school students interest, collaboration attitude, and programming empowerment in computational thinking education[J]. ?Computers & Education, 2018,127:178-189.
[32] 中華人民共和國教育部制定. ?普通高中信息技術課程標準(2017年版)[M]. 北京:人民教育出版社,2017.
(責任編輯:江 艷)