小学高年级学生计算思维能力评价及培养策略
2020-09-06刘宝龙郑秋辉崔海涛
刘宝龙 郑秋辉 崔海涛
摘 要 以小学高年级学生为研究对象,根据在解决问题过程中表现出来的形式化、模型化、自动化和系统化这四个计算思维具体形式设计测试卷,通过答卷情况汇总分析小学高年级学生计算思维能力现状并尝试结合Scratch编程教学、机器人教育提出相应培养策略。
关键词 计算思维;小学高年级学生;Scratch编程教学;机器人教育
中图分类号:G625.5 文献标识码:B
文章编号:1671-489X(2020)03-0062-04
1 基于试卷的评价设计和实施
《普通高中信息技术课程标准(2017年版)》将“计算思维”作为信息技术学科四大核心素养之一提出[1]。笔者认为,计算思维要从小学生抓起,要把它作为每个人的基本技能。
计算思维(Computational Thinking,简称“CT”)由美国卡内基·梅隆大学计算机科学系主任周以真教授于2006年提出,她认为计算思维应当同阅读、写作和算术位于同等地位教给学生[2]。近十几年来,国内外很多学者和权威机构对于计算思维的内涵和定义继续做了大量深入的研究。湖南师范大学丁珺进行了比较详细的梳理,并将新课标中“CT”的四个具体形式及内涵归纳描述如下。
1)形式化:界定问题,抓住关键,提取特征,抽象处理和形式化地表述。
2)模型化:抽象特征,建立結构模型。
3)自动化:判断、分析、综合信息资源,运用算法形成方案。
4)系统化:总结利用计算机解决问题的过程与方法,将解决方案迁移[3]。
本测试卷重点围绕计算思维这四个具体表现形式进行设计,共分四个部分,第一部分“学生信息”不计分;第二部分“对计算机基本知识的认识”共六题,每题2分,共12分;第三部分“对计算思维的认识”共12题,每题3分,共36分;第四部分“计算思维能力情况”共13题,每题4分,共52分,试卷满分100分。
前三部分为笔者基于相关课题研究自行拟定,第四部分“计算思维能力情况”是测试卷的重点内容,以Bebras国际计算思维挑战赛相应学段试题为主要参考进行编制。Bebras国际计算思维挑战赛通过浅显易懂的方式呈现题目,多为情境性任务,让学习者利用已有知识运用计算思维完成测试题目。
由于即将在开展相关课题研究的四所学校的五年级开设Scratch编程教学课程,为充分了解该年级段学生现有计算思维能力,将测试卷发放给这四所小学的五年级学生进行填写,一共发放836份,回收有效测试卷812份。
2 试卷评价结果分析
学生对计算机基本知识的认识 此部分题目相对比较基础,全部答对的学生占到82%。错误的试题中有13%是最后一个题目出现错误,即没有搞清“计算机能够直接识别的语言是什么”。可以看出,学生的计算机基础知识掌握较好,但对于机器语言、汇编语言、高级语言的概念还没有建立。虽然教师对这三个概念在教学中也曾提及,但对于小学五年级学生来说,它们相对比较抽象,需要在编程实践中去体会和理解。
学生对计算思维的认识 此部分题目主要考察学生对计算思维的理解和态度。学生大多对计算思维比较陌生,其中知道这个概念的学生只占2.56%;所有学生都没有接受过计算思维的专门训练;认为计算思维非常重要的学生占70.61%;70.45%的学生认为有必要接受计算思维的培训。针对以上分析,可以得出这样的结论:小学高年级学生能够接受计算思维的概念及其重要意义,乐于接受与计算思维相关的培养和学习。
学生计算思维能力现状分析
1)形式化思维能力。形式化思维能力也可以理解为抽象思维能力。测试卷第26题:
假设有一对兔子,从出生后第三个月起,每个月都生一对小兔子;小兔子长到第三个月后,每个月又生一对小兔子。如果这些兔子都不死,请你算一算到第12个月时,兔子的总数为多少?
这是典型的斐波那契数列(Fibonacci sequence)问题,有较强规律性,一部分学生在演算纸上按照条件要求逐月推导,得到正确答案,正确率达到16.4%。不难发现,从第三个月开始,兔子总对数为前两个月兔子对数之和,第12个月的兔子对数为10月和11月兔子对数之和,即从表面问题抽象出特定的规律。总体来看,学生的形式化思维能力有待加强。
2)模型化思维能力。模型化思维能力也可称为模式识别能力。测试卷第34题:
海狸Bert有一段长长的彩色纸,用来开派对。彩带由三种不同颜色(黄色Y,红色R,蓝色B)的方块组成,有重复的规律。Bert的朋友James剪下了一段纸,如表1所示,你知道剪去的方块有多少个吗?
在信息中找到一种模式很重要。通过观察表1,对这一长串的彩带进行模式识别,发现规律为YRRB,图片中缺失的部分分别为B和Y、R,通过规律得出公式4x+3为这条彩带的方块总个数,这里的x即为YRRB重复的次数。此题仅有10.5%的学生得到正确答案,可见学生的模型化思维能力比较欠缺。
3)自动化思维能力。自动化思维能力可以理解为解决实际问题的具体方法。测试卷第36题:
假设我们需要打印两份一样的文件,但是由于设置错误,实际打印出来文件的页码是1、1、2、2、3、3、4、4、5、5这样的顺序。现在要把它分为两份文件,左右两边摆放,问哪种分法最优?
本题有两个选项可以完成任务,代表了解决问题的两种算法:逐页摆放需要10个动作;而将第1页单独放在左
边,然后将第1、2页放在右边,再将2、3页放在左边,依次放完需要六个动作,比A选项的方法效率提升40%,这就是计算思维带来的最佳算法。此题比较简单,选项答案比较明确,有68.4%的学生能够得到正确答案。
4)系统化思维能力。系统化思维能力要求学生总结使用计算机解决问题的过程与方法,并迁移到其他实际问题中。测试卷第25题:
小海狸家小区的停车场共有12个停车位,每个停车位都标有数字。图1中显示了周一和周二停车位的情况,请问有多少个停车位在周一和周二都是空位?
在计算机世界里,所有数据都是由0和1组成的。这个题目中可以将有汽车存放的位置假設为1,将没有汽车存放的停车位假设为0,每一个停车位对应1位二进制数。如果按照从上到下、从左到右顺序给停车场赋予0或1的值,会获得一个二进制数列。周一停车场对应的二进制数列为101001001010,周二停车场对应的二进制数列为100100000111。将这两个二进制数列做“或”逻辑运算,结果为10110100111,其中有四个0,即有四个停车位在周一和周二都是空位。此题相对简单,不使用这种方法,直接归纳也可得到正确答案,有78.3%的学生答对。
为充分了解测试卷的评价效果,笔者对部分学生进行访谈,主要询问对试题的理解和解题思路。大部分学生感觉题目很有趣,题目正确答案体现的思维方式也很容易理解和接受,有些题目颠覆了学生之前对计算机程序的认识,对计算机编程产生浓厚的兴趣;但其计算思维四个维度的能力整体水平较低,还有待提高。
3 培养策略建议
通过开展Scratch编程教学培养计算思维能力 测试卷中的题目都可以通过纸笔验算得出正确的结果,但是一旦问题变得复杂,比如第26题,问36个月后会有多少对兔子?那么必须要通过编写程序运算来解答。对于小学高年级学生来说,可以首先学习Scratch编程。Scratch编程使用鼠标拖动相应模块到程序编辑栏后,再进行部分参数设定,就可以完成程序,实现一段动画、一个小游戏等,能够让小学生获得较强的成就感。对于初学编程的小学生来说,从“拖拽编程”起步是最好的选择。
Scratch编程软件作为一种程序设计语言,具有计算机语言的结构特征[4]。Scratch在程序设计时还引入事件、线程、同步的概念。如判断角色是否碰到边界;多线程让舞台上的不同角色各自执行不同的脚本;在程序中不同角色间可以通过发送广播和接收广播实现同步。学生在使用过程中自然而然就掌握了正确的编程概念,为日后学习更深层次的编程语言打好基础。笔者根据计算思维重点体现内容,设计教学内容,见表2。
通过开展机器人教育培养计算思维能力 机器人教育,最开始是由教育机器人比赛发展而来,是指通过设计、组装、编程、运行机器人等方式激发学生的学习兴趣、培养学生的综合能力,融合了机械原理、电子传感器、计算机软硬件及人工智能等众多先进技术。目前,机器人教育的教学内容主要围绕竞赛任务展开:结构分析—设计搭建—程序编写—运行调试。通过竞赛,培养学生解决问题的能力和创新能力,学生也乐于接受,基本不用担心学生学习兴趣方面的问题。
从教学实践过程来看,机器人教育与项目式学习非常相似,机器人教育内容容易理解,有较强的启发性,学生搭建机器人结构各不相同,编写的程序各有特色,得到的成果是开放的。在整个项目活动中,学生可以通过解决问题理解掌握用到的方法,从而建立自己的认知结构,最终形成思维能力[5]。
笔者经过调研发现,目前机器人教育比较注重学生拼搭作品和编程完成项目任务的过程与完成情况,教师指导和教学过程中对学生思维方式的培养有所缺失。因此,机器人项目式教学可以按照以下流程开展:
首先,根据师生实际水平和发展方向选择合适的机器人项目;
其次,结合机器人竞赛规则制定具体学习任务;
再次,创建合作小组,分享学习资源,引导学生运用计算思维的方法解决问题;
最后,在项目开展过程中对学生进行辅导和评价。
基于机器人项目教学培养计算思维的模型构建如图2所示。
4 结语
计算思维培养被越来越多的教育者所关注,本研究也尝试提出对应的培养策略,Scratch编程教学和机器人项目教学是培养小学高年级学生计算思维的两个有效途径。从测试评价的结果可以得出,学生对于计算思维学习有较高的兴趣和意愿,教师在具体实施时要充分利用这个优势,在教学中对计算思维的培养要循序渐进,立足学生的水平和接受能力。Scratch编程容易上手,学生乐于接受,是适合小学生的入门级编程课程。机器人教育在小学生计算思维培养中具有一定潜力,其潜力来源于科学严谨的课程体系,以及为计算思维培养准备的教学支架、教学策略、教学过程、学习评价等,值得从事这一方向研究的教育者进一步研究和挖掘。
参考文献
[1]中华人民共和国教育部.普通高中信息技术课程标准(2017年版)[S].北京:人民教育出版社,2017:5.
[2]Wing J M. Computational Thinking[J].Communication of the ACM,2006,49(3):33-35.
[3]丁珺.小学高年级信息技术课程中的学生计算思维评价研究[D].长沙:湖南师范大学,2019.
[4]谭国聚,孟延豹.基于程序结构讲授程序设计培养小学生计算思维能力:以Scratch 2.0程序设计为例[J].中国信息技术教育,2019(23):74-76,109.
[5]张婷.小学生机器人教学中计算思维培养的实践研究[D].成都:四川师范大学,2019.