廉文如 宁晓芳 张明明
摘 要 高中信息技术课程旨在培养学生的信息素养,以帮助其更好地适应未来信息社会。STEM教育注重通过跨学科教育培养学生在真实情境中的问题解决能力和实践能力,有利于高中信息技术学科核心素养的培养。以“算法与程序实现”为例,从设计思路、内容设计和课例设计三方面对融入STEM教育理念的课程教学设计进行探究。
关键词 STEM教育;高中信息技术;学科核心素养;课程设计
中图分类号:G632.0 文献标识码:B
文章编号:1671-489X(2021)11-0081-03
1 STEM教育与信息技术学科核心素养
我国核心素养的发展起步较晚。2016年9月发布的《中国学生发展核心素养》明确了学生应具备的必备品格和关键能力。2017年发布各学科课程标准,其中《普通高中信息技术课程标准》中明确提出信息技术学科核心素养为信息意识、计算思维、数字化学习与创新、信息社会责任。
为了应对社会对综合型人才培养的要求,STEM教育理念受到广泛关注。2010年左右,STEM教育理念传入我国,并因其培养学生解决真实问题和创新等适应未来社会的能力素养而逐渐受到重视。STEM教育鼓励学生将多学科知识有机融合以解决真实问题,尽可能多地获得各学科知识并内化为自身能力[1]。信息技术学科教学通常以学生已有学习和生活经验为切入点,在使用信息技术解决真实问题的过程中发展学生的计算思维,增强其信息社会责任。
2 STEM教育理念下的“算法与程序实现”内容分析
2.1 从课程标准的角度分析
根据新课标要求,“算法与程序实现”部分要求在之前学习的基础上,可以使用算法程序解决真实生活问题,在解决问题的过程中深入体会真实问题抽象化的过程,了解算法的特征,掌握算法编程的应用与优化。
2.2 从教材内容组织的角度分析
2.2.1 培养学生算法解决问题的思维 “算法与程序实现”以问题为主线,要求学生可以使用编程解决;理解穷举法和排序法等基本算法思想;能够掌握解析法、递归的算法思想,能够用数学模型帮助问题的解决。
2.2.2 培养学生的综合素养 在STEM视角下的“算法与程序实现”教学中,学生从真实的问题情境出发,通过搜集资料、分析问题、讨论解决方案以及方案的实施等整个过程中,积极参与学习活动,充分思考并在问题解决中发挥自身能力。学生在思考交流、动手实践中习得各种知识、技能,学会多学科知识内容的迁移应用。
3 STEM教育理念下的“算法与程序实现”内容设计
3.1 设计思路
3.1.1 设计课程内容 信息技术课程教学强调学生在解决问题的过程中能够有效处理数据信息、熟练使用信息技术软件,培养学生的信息素养。在信息技术课程中,程序设计的内容难度较大且抽象。从学生认知发展水平来看,信息技术课程内容应结合学生生活经验和生活情境[2],让学生体会使用编程解决问题的简便快捷。通过程序设计的过程,提升学生信息技术学科素养,体会计算机、人与社会的关系。
3.1.2 设计课程内容结构 信息技术课程教学内容多与当前社会所需技术相关,如之前学习的Word、Flash等技术软件,目前热议的掌控板、3D打印等内容。在信息技术课程内容结构方面,以学生思维培养为目标,以技术工具的教学为依托,进行课程内容的结构设计。在“算法与程序实现”中,可以以编程软件的使用为基础,以问题解决的实践探究为中心环节,以学科核心素养为根本目标,进行课程内容设计。
3.2 内容设计
在“算法与程序实现”中共六节内容,前两节为算法方法的讲授,中间三节为基本算法程序的讲解,还有一个综合活动的内容。各小节内容首先通过真实问题的内容分析、设计算法、编写程序和调试程序得到问题解决,提出本节所学内容的概念和基本思路等,最后通过实践练习巩固知识。
3.2.1 问题设计 在真实情境下学习到的知识,可以灵活迁移到其他问题的解决。STEM课程中的问题情境来源于真实场景,学生需要运用多学科知识、跨学科思考以解决实际问题。在STEM课程中,学生是课堂的主体,通过小组协作讨论等活动,综合考虑问题的方方面面,解决真实情境下的问题[3]。在此过程中,学生运用多学科知识小组协作真实解决问题,培养跨学科思考、协作学习和问题解决的能力。
3.2.2 内容设计 基于STEM理念进行“算法与程序实现”的教学设计,以真实问題导入,学生通过任务驱动、小组合作探究解决问题。将每小节问题引入和学生的知识背景或生活经验联系,开展教学和合作探究,具体内容见表1。
3.3 5E教学模型
5E教学模型是STEM教育在与其他学科整合过程中形成的,包括参与(Engagement)、探索(Exploration)、解释(Explanation)、阐释或延伸(Elaboration or Exten-sion)、评估(Evaluation)。5E教学模式的特点是以学生为中心,基于问题和合作开展探究活动。
3.3.1 参与阶段 在这一阶段,主要是教师根据对学生学习背景和生活条件的掌握,选取与学生密切相关的问题引入课堂。在教学过程中,学生在教师创设的问题情境中理解问题并进行初步思考。
3.3.2 探索阶段 在这一阶段,学生根据教师所给提示信息进行问题和解决方法的搜集和整理,并通过小组合作探究问题的解决方案。
3.3.3 解释阶段 在这一阶段,学生进一步交流分享自己的观点,解释自己的想法,深入探讨具有可行性的问题解决方案。
3.3.4 阐释或延伸阶段 在这一阶段,学生从方案实施的角度探讨问题的解决方案,修改或利用实验开展进一步的探究活动。
3.3.5 评估阶段 评估贯穿于5E模式,在这一阶段以学生互评、回答问题等形式,评定学生对知识的掌握情况。
4 “算法与程序实现”教学设计
4.1 教材分析
本节课选自粤教版选修1“算法与程序实现”第4章,设计算法并编写程序以解决现实问题。本节课前学生已经学习了程序设计和开发的基本语言,了解可视化编程的概念和方法以及程序调试的方法。本章节内容通过简单的数学问题学习用解析法和穷举法设计程序和查找、排序与递归三种算法。
4.2 教学对象分析
学生通过前面几节课已经学习了程序开发的基本流程和程序语言,并且会用简单的流程图编写程序设计代码。本节课主要让学生通过分析数学问题、设计解决数学问题的算法、根据算法编写程序、调试程序以解决问题,熟悉使用编程解决问题的过程,培养学生的计算思维。高中阶段学生能够理性控制自己的思想和行为,抽象逻辑思维和创造性逐步发展。使用的教学案例多为高一年级学生熟悉的初中数学相关知识点[4]。
4.3 教学目标分析
根据对新课标的分析,以及上述“算法与程序实现”教学设计的前期分析,归纳总结出本章教学目标。
4.3.1 信息意识 能够理解解析法和穷举法的概念与解决问题的思路;能够分析、描述实际问题,使用流程图描述算法并完成程序编写。
4.3.2 计算思维 通过问题解决,掌握解析法和穷举法分析与设计程序的一般方法和过程;能够编写程序并调试;了解查找算法、排序算法和递归算法的内涵与程序,可以熟练使用。
4.3.3 数字化学习与创新 比较不同场合使用不同算法的优缺点(如顺序查找算法与对半查找算法的不同),体会算法效率的差别[5],根据实际情况选择最优解。
4.3.4 信息社会责任 了解查找算法、排序算法和递归算法的应用场景,并在生活和学习中实践算法思想。
4.4 课例设计
根据上述STEM理念下“算法与程序实现”设计思路、内容设计和教学模型,采用第一节“怎样计算树的高度”进行课例说明,具体如表2所示。用解析法设计程序包括代数模型和递推模型两种类型,分为两课时,在之前学习基础上,学会使用解析法设计程序。
4.4.1 第1课时
1)内容介绍。教师给出问题情境,带领学生分析任务情境,明确学习任务。通过分析,学生需要了解解析法的概念以及用解析法设计程序的基本思路,并能够使用解析法设计程序解决简单问题。
2)教学目标:理解解析法的概念;了解用解析法设计程序的基本思路。
3)教学过程。
①创设问题情境。小明家最近想搭建一个停车场,需要将院子里的树砍掉。为了不让倒下的树砸到院子里的花花草草,需要测量树的高度。在测量树的高度时,为了安全,可以采用的测量方法为:在地面上选取一条与树木在同一平面的水平线段AB为基线(如图1所示),测量A点向树最高点张望的仰角和B点向树最高点张望的仰角,通过三角函数计算可以得出树的高度。测得AB的长为20米,在A点向M点张望的仰角α=38.4°,在B点向M点张望的仰角β=22.8°。
②教师提问:根据学过的知识,怎么解决这个问题呢?而且角度不是特殊角,运用计算机又该怎么具体解决这个问题呢?因为问题比较简单,可以请学生自己分析问题。
【分析过程】树MN是垂直于地面的,所以△ANM和△BNM都是直角三角形。在△ANM中,AN=MN/tanα;在△BNM中,BN=MN/tanβ。又因为AB已知,AB=BN-AN,带入数值就可以求出MN的高度。
③教师带领学生编写程序解决问题,提出本节课学习内容解析法设计程序的概念和基本思路。
④教师提出问题:“小明家打算用铁丝圈一块地用来种菜,现在家里只有一根长l的铁丝,如果要将面积为S的地圈起来,请同学们帮忙计算出满足这种条件的地的长l和宽w,如图2所示。请同学们运用解析法分析问题并完成程序设计。”
4.4.2 第2课时
1)内容介绍。教师给出任务情境,指出与上节课不同之处,在学生无法推导出代数解析式的时候,了解递推模型的特点,学习迭代算法并进行程序设计和编写。
2)教学目标:了解递推模型问题的程序设计(迭代算法);熟练使用解析法进行程序设计和编写。
3)教学过程。
①教师创设任务情境。将两只大兔子(一雄一雌)放到一个封闭的空间繁衍生息,假设大兔子每个月就可以生出一对小兔子,小兔子一个月长大成大兔子,并且这些兔子都不会死。提出问题:一年后总共有多少对兔子?小组合作学习:分析问题,描述算法并进行程序设计编写与调试。
②教师讲解递推算法的特点与算法实现,详细讲述算法设计并对学生任务探究过程中的疑问进行解答。
③教师再次提出问题:“小球从10米高处自由下落,再次弹起的高度是下落高度的70%。当小球弹起的高度不足原高度的千分之一时,小球就会停止跳动。计算小球在整个弹跳过程中所经历的总路程(忽略弹起高度不足原高度千分之一的部分)。”学生结合之前的探究经验分析并解决问题。
5 总结
伴隨着社会对综合型人才的迫切需求,STEM教育的发展如火如荼。STEM教育要求教学做到以学生为中心,教师只是教学活动的引导者和促进者,在真实的问题情境下引导学生发现问题,以学生的问题探究活动为中心进行跨学科知识的学习[2]。高中信息技术课程作为技术类综合课程,具有操作性强和知识覆盖面广等特点。在STEM教育视角下,高中信息技术课程设计可以打破原有按照知识主线进行教学的形式,教学内容的组织具有较强的综合性,可以综合考虑生活中的实际问题并选取可行的措施。
参考文献
[1]杨开城,窦玲玉,李波,等.STEM教育的困境及出路[J].现代远程教育研究,2020(2):20-28.
[2]殷慧.STEM教育理念下高中信息技术课程设计[D].成都:四川师范大学,2017.
[3]李克东,李颖.STEM教育与跨学科课程整合[J].教育信息技术,2017(10):3-10,13.
[4]薛语.基于计算思维培养的高中信息技术课程教学设计与实践[D].黑龙江:牡丹江师范学院,2019.
[5]陈静.初中信息技术课程教学中学生计算思维能力的培养策略研究[D].兰州:西北师范大学,2017.