摘要:目前,计算思维能力的培养备受关注,相关教学研究多集中在程序设计等内容上,对软件应用教学涉及较少。为探索计算思维在软件应用教学中的培养,在ISTE和CSTA给出的计算思维操作性定义指导下,在“表格信息加工”教学中,引导学生经历“分解形成问题——建构模型——逻辑化组织数据——自动化计算——推广”的学习之旅,努力摆脱软件应用教学中单纯技能操作的局限,从思维层面提升学生利用信息技术解决问题的能力。
关键词:计算思维;软件应用教学
以周以真为代表的研究者认为,计算思维可以成为读、写、算之后的第四种基本能力,将在本世纪中叶成为人人必备的基本技能[1]。计算思维提出了面向问题解决的系列观点和方法,这些观点和方法有助于人们更加深刻地理解计算的本质和计算机求解问题的核心思想,引起了学界的广泛共鸣,教学者也开始关注如何通过课程教学培养学生的计算思维能力,并将其视为信息技术课程的内在价值[2]。
一 、计算思维的含义与发展
计算思维不是今天才有的,只是与之前相比,计算思维已经深入到了前所未有的广阔领域。人们对计算思维的理解也存在多样性,存在着问题解决说、抽象说、自动化说、构造说等多种不同认识,其中“问题解决说”得到了比较多学者和机构的认同[3]。
2006年,卡内基·梅隆大学周以真教授首次明确提出了计算思维的概念:计算思维是运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解等涵盖计算机科学之广度的一系列思维活动[4]。2011年,她修正了相关描述,认为“计算思维是形式化表达问题和解决方案,使之成为能够被信息处理代理有效执行的思维过程”[5]。中国科学院计算所李国杰院士在第26届全国青少年信息学奥林匹克竞赛开幕式上发言时指出:“计算思维运用计算机科学的基础概念求解问题、设计系统和理解人类行为,它选择合适的方式陈述一个问题、对一个问题的相关方面建模,并用最有效的办法实现问题求解。”英国皇家科学院将计算思维定义为认识周围世界所存在的不同层次的计算,应用计算机科学工具和技术理解并辨析自然系统和人工系统及其运行过程[6]。这些定义强调了计算思维在问题解决过程中的作用,描述了计算思维的外延,但从操作层面上来说,操作性不佳。
2011年,国际教育技术协会(ISTE)联合计算机科学教师协会(CSTA)共同给出了计算思维的操作性定义。他们认为计算思维是一个问题解决的过程,该过程包括确认问题、分析数据、抽象、设计算法、选择最优方案、推广等六大要素[7]。在这个过程中,首先需要形成一个能够用计算机和其它工具来解决的问题,在此基础上逻辑地组织和分析数据,通过抽象(例如模型、仿真)的方法来表示数据,通过算法设计实现自动化的解决方案,并确定、分析和实施可行的解决方案,最后将解决方案进行总结,以迁移到更广泛的问题解决与应用中。这样,基于计算思维的较为清晰的问题解决步骤出现了。
二、信息技术课程中
软件应用内容教学现状
信息技术课程以全面提升学生的信息素养作为课程总目标,课程内容包括“信息技术基础”一个必修模块和“算法与程序设计”“多媒体技术应用”“ 络技术应用”“数据管理技术”“人工智能初步”五个选修模块。在这些课程中,有相当部分内容要求学生能够使用文字处理、表格处理、图像处理、音频处理、视频处理、 页制作等各种应用软件解决实际的具体问题。
然而,由于缺少思想和方法层面的支撑,使得软件应用类教学存在着诸多问题。如只停留于单个软件菜单功能的教学,不注意提炼不同软件界面风格一致性,归纳它们使用方法的共通之处,从而教会学生使用这一类技术或工具解决问题的基本策略和基本方法,也就无法实现有效迁移和学生发展之目的[8];只注意教会学生软件的操作技能,而没有将这些技能揉合于与学生生活密切相关的具体情境之中,这种去情境化的教学使学生难以实现知识的灵活应用,带来的是孤立的知识与零散的技能,缺少了解决问题能力的培养;为了应付考试,只让学生练习与考试相关的所谓“操作题”,而在这些操作题中,学生只能使用某种预设的操作方式,而不能根据自己的个人情况,自由选择软件、自由选择功能、自由选择方法去解决问题,只能检测学生对特定软件某个微观层面上功能的掌握情况,无法检测学生基于大众信息技术工具的问题解决能力[9];日常教学主要以老师的讲解演示和学生的机械模仿为主,忽略了学生探究能力的培养,即使有所谓的探究环节,也只是把详细的操作步骤以“操作秘籍”的形式交给学生,这种极其详尽的学习资源使学生失去了探究的空间,也失去了学习的热情。
当前的这种教育方式忽视了学生能力的培养,使得学生的思维方式僵化,缺乏发现问题、分析问题、解决问题的思维能力,失去探究的积极性,学生只能停留于浅表层面而缺乏创新能力,无法应对复杂局面,不能解决面对的新问题,阻碍了学生的长远发展。
三、软件应用教学中融入计算思维的意义
计算思维的根本目的是解决问题。在信息技术课程中培养学生的计算思维,确立以信息技术解决问题的概念、方法与原理为主的稳定的课程内容,真正摆脱软件操作的局限,可以提高学生利用信息技术解决问题的能力,使信息技术课程从实用性教育转变为基础性教育。
但是,通过对现有研究的梳理发现,尽管计算思维不仅仅是程序设计,但是程序设计仍然是理解计算思维的最佳途径。在设计问题求解方法时,会用到递推法、迭代法、递归法等;在维护和修正程序的过程中,要用到测试和调试的技术……这些技术都是计算思维中的核心概念[10]。所以在程序设计课程中引入“计算思维”,以培养计算思维为核心的程序设计教学研究屡见不鲜。
实际上,软件应用类的学习同样符合计算思维中通过工具实现问题解决的目标。计算思维的操作性定义和特征描述,为通过软件应用的学习进行计算思维能力培养提供了可能。通过这种思路对软件应用开展学习,不仅有助于快速掌握软件操作,也从软件产品的角度来学习了一个技术制品的整体架构和处理过程,也可以从设计层面深入理解计算思维[11]。软件应用教学中常常借助层层递进的系列活动引领课堂教学,而计算思维则可以为各个活动提供切实可行的具体操作思路和方法,以提高学生的问题求解能力。同时,各种应用软件都具有自己独特的功能和操作流程,这也体现了计算机应用不同工具解决特定类型的问题。所以,计算思维能力的培养需要一系列的软件应用学习作支撑和拓展,以引导学生运用计算思维解决各种问题。
四、融入计算思维的软件应用教学评析
表格信息加工是当今学习、工作和生活中最基本也是最常用的一种信息加工类型。通过对表格中数据的计算,得到更有价值的信息,可以更好地指导并服务于我们的学习和生活。然而,学生在面对一个现实的“复杂”问题时,往往“想不到”也不知道如何利用表格解决问题。为此,笔者尝试在《表格信息加工——让数据说话》的教学中,按照ISTE和CSTA提出的计算思维的操作性定义,初步尝试了融入计算思维的软件应用教学。在原有定义的基础上,结合实际课例做了相应的简化,整个教学经历了“分解形成问题——建构模型——逻辑化组织数据——自动化计算——推广”这一计算思维的思考过程,引导学生像计算机科学家一样思考解决问题的方式。
(一)分解形成问题
本节课的主题是“让数据指导我们健康生活”,因此首先引导学生思考什么样的数据可以指导我们健康生活,利用计算思维中关注点分离法(SoC方法)将问题分解成两个能够用计算机解决的子问题:一是通过计算体重指数BMI来判别胖瘦程度;另一个是通过计算一日食物提供的热量,分析胖瘦产生的原因。
(二)建构模型
建构模型是将实际问题用简洁的数学语言表述出来。在建模过程中,引导学生不断思考,不断对各种信息进行加工、转换,对当前问题进行分析、推论、综合、概括。本课教学中需要解决的第一个问题的模型是“胖瘦程度”,这个模型的功能是,根据给定的年级、身高、体重,计算出BMI的具体数值,并参照评分表给出等级。
当我们需要比较及分析一个人的体重对于不同身高的人所带来的健康影响时,BMI值是一个中立而可靠的指标:
我国国家学生体质健康标准中的体重指数BMI评分表如下:
表1 体重指数(BMI)评分表(单位:公斤/米2)
模型建立后,引导学生发现问题,在缺少“性别”信息的情况下无法判断等级,所以需要回溯。进而得到胖瘦程度和身高、体重、年龄、性别都有关系,从而建构出“胖瘦程度”的数学模型。
(三)逻辑化组织数据
有了模型就可以针对性地进行组织数据,思考需要收集哪些数据。建立表格的过程就是逻辑化组织数据的过程,其目的就是将实际问题转化成能进一步处理的结构化组织形式,有助于利用电子表格解决问题。
“逻辑化组织数据”活动设计:
(1) 创建全班同学的体质健康状况表,确立所需字段。
(2) 在线收集体质健康状况表中数据。
此环节引导学生学会逻辑化组织数据,将具体数值“剥离”出来,了解单元格是数值的载体,理清数值和单元格之间的关系,表格的每个字段是对实际数据的替代。从而将现实世界中的问题抽象成“一个可以在计算机上运行的以抽象符 表示的系统”。
(四)自动化计算
自动化计算是指用计算机作为工具辅助,以实现计算过程的自动化或半自动化。学生利用公式和函数计算个人的BMI时,已经将具体的数值用单元格地址表示出来,所以参与运算的是单元格地址。因为计算关系不变,通过拖动填充柄可以完成自动填充,计算出所有全班同学的BMI,在这个过程中学生经历了自动化计算的过程,体会自动化计算的优势。
“自动化计算”活动设计:
(1) 利用公式计算BMI。单元格中输入“=F2/(E2*E2)”计算第一位同学的BMI,回车确定后,拖动单元格右下角的填充柄,完成自动填充即可。
(2) 利用函数实现自动判别等级。(提示:女生判别函数:=IF(G2
自动化计算的关键点是将具体的数值用单元格地址表示,在此过程中,有的学生使用到了中文标点符 ,还有的学生缺少配对括 或括 位置错误,还有的学生少输“=”,需要不断调试,进而得到正确结果。这样一个调试过程,也是计算思维中的一个重要方面。
至此,借助计算思维的思考方式,经历了建构模型、逻辑化组织数据和自动化计算这几个环节后,得到了每个同学的BMI数值和胖瘦等级。
(五)推广
针对第二个问题:通过计算一天食物提供的热量,分析胖瘦产生的原因。其解决过程又是计算思维的推广,同样经历了建构模型、逻辑化组织数据、自动化计算这样一个计算思维的思考过程。
“推广”活动设计:
研究表明,产生低体重或者超重的原因是热量供需不平衡。给出一名女生和一名男生的一日食谱,通过计算食谱提供的热量判断能否满足一天的热量需求。
(1) 创建热量供给表,确立各个字段。
(2) 根据百克食物的热量,利用公式计算出该食物的实际热量。
(3) 计算一天摄入的总热量,并与需求量进行比较(16岁女生一天需要热量2400千卡,16岁男生一天需要热量2800千卡)。
整节课的教学以培养计算思维为目标,引导学生掌握建构模型和逻辑化组织数据的方法,实现自动化计算的处理。这样的思维方式,改变了学生“想不到”利用表格来解决问题的现状,从思维层面和能力层面进行了提升。
参考文献:
[1][4]J M Wing.Computational Thinking[J].Communications of the ACM, 2006,(3):33-35.
[2]李锋,王吉庆.计算思维:信息技术课程的一种内在价值[J].中国电化教育,2013,(8):19-23.
[3]钟柏昌,李艺.计算思维的概念演进与信息技术课程的价值追求[J].课程·教材·教法,2015,(7):87-93.
[5]J M Wing.Research Notebook:Computational Thinking-What and Why?The Link Magazine.Carnegie Mellon University,Pittsburgh[DB/OL].http://www.cs.cmu.edu/link/research-notebook-computational-thinking-what-and-why.2015-02-12.
[6]Royal Society.Shut down or restart: The way forward for computing in UK schools[DB/OL]. http://royalsociety.org/education/policy/computing-in-schools/report/,2014-06-20.
[7]Anon.Operational Definition of Computational Thinking for k-12 Education [DB/OL].http://www.iste.org/Libraries/PDFs/Operational_Definition_of_Computational_Thinking.sflb.ashx,2012-04-15
[8]曹恒来,钟柏昌.开源软件与商业软件的教育价值比较研究[J].中国远程教育,2015,(6):47-52
[9]曹恒来,薛冲.信息技术新课程实验的成绩,问题与对策[J].中小学信息技术教育,2008,(4):19-22
[10]曹恒来,陈宏斌,钮洪斌,仇大成.基于计算思维的小学程序设计教学研究与实践[J].中小学信息技术教育,2016,(12):39-42.
[11]林旺,孙洪涛.基于软件应用的计算思维能力培养教学设计[J].中国电化教育,2014,(11):122-127.
热文推荐
曹恒来 | 高中信息技术课程陈述性技术知识的教学策略
曹恒来 | 德国中小学STEM教育的经验与启示
曹恒来 | 基于活动理论的信息技术学习活动设计与实施
米说IT教育
ID: Xiaomi_ITEdu
如果你喜欢这篇文章,
记得先分享,再点赞,后在看
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!