于宁 安继芳
摘 要: 分析了计算思维能力培养与面向应用的计算机教学之间关系。以Access数据库应用课程为例,结合文科专业学生学习特点,从课堂教学和实践环节两方面,提出将计算思维能力培养贯穿于教学过程的基本思路,并加以实践。
关键词: 计算思维; 面向应用; 文科专业; Access数据库应用; 教学
中图分类号:G642 文献标志码:A 文章编号:1006-8228(2015)11-71-04
Abstract: This paper analyzes the relationship between the computational thinking ability training and application-oriented computer teaching. Taking the Access database application course as an example, combining with the characteristics of liberal arts student, from two aspects of classroom teaching and the practice, the paper puts forward the basic idea of training the computational thinking ability throughout the teaching, and makes it practiced.
Key words: computational thinking; application-oriented; liberal arts majors; Access database application; teaching
0 引言
自2006年3月,美国卡内基·梅隆大学周以真教授系统地阐述了计算思维,2010年9月中国科学技术大学陈国良院士在“第六届大学计算机课程报告论坛”倡议将计算思维引入大学计算机基础教学后,计算思维得到了国内计算机基础教育届的广泛重视。以九校联盟(C9)为代表的我国高水平研究型大学就大学计算机基础教学中的计算思维培养问题进行了探讨,并达成共识:将“计算思维能力的培养”作为计算机基础教学的核心任务。之后43所院校厦门会议就大学计算机体系研讨也一致认为,计算机教学面向应用是大学计算机教育的出发点和归宿,计算思维应成为大学生的普适能力,应该在坚持计算机教学面向应用的过程中培养计算思维能力[1]。同时呼吁大学计算机相关教学指导委员会、计算机基础教育研究会及广大教师,积极行动起来,旗帜鲜明地研究、建设基于计算思维能力培养的大学计算机体系。
1 文科学生计算思维培养
1.1 计算思维培养的重要性
当前,随着整个社会计算机应用水平的提高,对于高校计算机基础课程的教学内容提出了新的要求,即计算机基础教学内容不能仅仅着眼于软件工具的使用,而应有相对稳定的,能体现计算机学科思想和方法的核心内容,同时需要更加突出学生的思维方式、思想方法、价值取向,以及做人、做事、与人合作共处能力的培养,以提升学生多元能力——问题求解能力、实际应用能力、自我学习能力、沟通表达能力及团队合作能力。培养和推进计算思维包含两个方面:一是深入掌握计算机解决问题的思路,总结规律,更好更自觉地应用信息技术;二是把计算机处理问题的方法用于各个领域,推动在各个领域中运用计算思维,使各学科更好地与信息技术相结合[2]。
1.2 文科学生计算思维培养与面向应用的关系
高校文科计算机教学任务是培养学生应用计算机的能力。文科专业学生相对于理工科学生,在知识结构上数理知识较少,在思维方式上更多地是从事实、现象得出结论,而不是运用概念、逻辑关系进行推理[3]。因此,对于文科学生的计算思维培养,首先要构建一种计算机文化氛围,让学生充分理解和认识计算机的特点和用途;其次是要结合学生日常学习中生动形象的实例,有目的、适度地引入思维训练,引导学生对问题进行解释、分析、抽象、提取,帮助他们形成问题求解的思路。
计算思维培养与面向应用的计算机教育之间应该是相辅相成的。培养计算思维的目的是使学生更深入地认识计算机知识背后的思维训练,从而学会应用计算机技术去解决问题的思路和方法,而在计算机应用过程中不断理解计算思维,逐步训练,使自己具备计算思维的能力,进而提高分析问题、解决问题的能力。
2 Access数据库应用教学中计算思维培养
利用数据库工具对数据进行基本的管理、分析、加工和利用,对于当代大学生是非常必要的。我校针对文科学生开设的Access数据库应用课程是数据库技术的入门课程,也是培养计算思维的重要课程。数据库课程理论知识较多,所涉及的数据库模型、数据完整性约束、数据库设计、数据操纵、数据查询等方法,在本质上是一种思维方式的体现。下面从课堂教学和实践环节两方面,探讨如何将计算思维培养贯穿于课程教学中。
2.1 教学中有目的地突出思维训练
根据文科学生的认知能力和形象思维能力较强的特点,在教学过程中,应注重由浅入深、循序渐进、用具体实例引导学生学会数据处理的方法。重点把握好第一课导入、数据库基础理论等关键内容的教学设计。
2.1.1 重视教学第一课
教学第一节课是课程导入,使学生认识数据库,了解其应用,是激发学生学习兴趣的关键一节课。我们特别重视第一节课的教学设计,首先从学生身边的实例,例如学生校园一卡通、考试题库、图书信息检索等应用引入数据库,让学生体会到在日常学习生活中数据库技术的应用无处不在。接下来通过演示网上购物的一次交易,让学生体会商品购物过程中包含着用户相关信息、商品信息的读取;商品库存信息、商品销售信息的更新;用户付款信息、商品销售金额的统计;商品订单的生成等数据库知识与操作。最后教师给出数据库知识结构图,如图1所示。学生初步认识到学完这门课程后,能运用数据库基本原理及其数据库技术建立数据库,编写简单的应用程序,完成大量数据的管理工作。
2.1.2 以具体案例引导学生理解数据模型的建立过程
在教学内容上,以学生较为熟悉的教务管理系统为切入点,从系统分析、数据收集、建立模型、数据入库开始到最终设计出一个完整的应用系统。其中如何抽取、组织现实世界中的教务管理数据,并转化成计算机能识别的一种结构保存,即合理建立教务管理数据库是课程的教学重点。以往讲授这部分内容时,让学生按照教材指示直接进入数据库,完成数据表结构设计。其实建立数据库、数据表的操作并不难,难点是如何对现实世界的事物抽取、转化为数据库中的数据,这个知识点不讲授清楚,学生就不会理解,当学生独立完成数据库综合作业时,问题就会暴露出来,对于所要设计的数据库,不会分析、抽象现实世界中的哪些事物及其属性将由计算机处理,不理解信息世界中的概念模型如何转化为计算机世界中的关系模型等等。现在我们在讲授这部分内容时,不直接将已设计好的数据库提供给学生,而是要有意识、有目的地引导学生分析、抽象出现实世界事物及其属性,由于现实世界的复杂性,不可能直接从现实世界建立模型,因此用信息世界的E-R(实体-联系)方法建立概念模型,再转化为计算机世界所识别的关系模型来存储,并通过图示帮助学生认识抽象的意义,理解模型转化的过程,如图2所示。
经过对教务管理业务分析,将部门(系)、教师、学生、课程、教材等基本信息抽象为实体。一个部门(系)拥有多个教师或学生,一个教师或学生只能在一个部门(系)中工作或学习;一个学生可以选修多门课程,一门课可被多个学生所修;每个学生选修的每门课只有一个课程成绩;一本教材可用于多门课,一门课有一本主教材为实体间联系,用E-R方法描述,如图3所示。
根据概念模型设计,转化为教务管理数据库关系模式如下(以部门、学生、课程为例):
⑴ 部门(部门编号,部门名称,部门主任,办公室,联系电话…);
⑵ 学生(学号,姓名,性别,出生年月,籍贯,所在部门编号,住址,联系电话…);
⑶ 课程(课程编号,课程名称,学时,学分,所用教材编号…)。
分析、讲授到这一步,学生便可以根据关系模式用数据库建立一张张关系表了。学生只有认识到建立数据库系统的目的,是要实现计算机对现实世界中各种信息的处理,掌握了数据库设计的关键环节后,围绕教务管理的表、查询、窗体、报表等数据库对象展开设计就变得轻松了。
现实世界中教务管理涉及的每一个学生、老师、课程、教材等映射成信息世界的一个个实体,再到计算机世界的一条条记录,这一过程实际上就是一种分层次、逐步抽象的过程。抽象是一种精确表达问题和建模的方法,也是计算思维的一个重要本质[4]。基于“抽象思维”,采用约简、聚类、分解等方法就能够将一个复杂的客观现实形象化地描述出来[5]。数据库基础理论中有很多计算思维思想的体现,我们要根据文科学生的学习特点,适度地、逐步地引入,同时结合实践环节使学生理解、掌握。
2.2 实践环节为学生预留思考的空间
计算思维是按照预防、保护及通过冗余、容错、纠错的方式,并从最坏情况进行系统恢复的一种思维方法。数据库管理系统中控制功能(安全性、完整性、并发性等)是计算思维的最好体现之一[6]。如关系的完整性约束,保证了数据处理过程中的正确、有效和相容。对于这个概念,如果直接讲授,文科学生不一定都能理解,而将这部分知识结合实验内容,让学生在实践过程中理解关系完整约束,可收到较好效果。
学生在完成数据表结构设计后,按照要求录入数据。实践环节教材一般都是按照实验目的、实验要求、实验方法及步骤进行组织的,学生按照步骤一一完成即可。实验所用数据都是符合字段属性设计及数据完整性要求的,学生按部就班完成就不会出错,但这样也体会不出数据完整性在数据库中所起的作用。现在我们改变一下方式,提供数据源时有意给出一些违反字段属性或数据完整性要求的数据,例如在学生表中,对于学号字段给出重复值或空,那么在定义学号字段为主键时,由于不能通过学号识别每个学生,由此产生错误提示信息。对于学生所在部门编号字段,实验数据有意给出某个学生的所在部门编号字段值不是部门表中给出的部门编号,学生在录入数据时不会有任何问题,但在建立部门和学生的一对多关系时,无法实施参照完整性,因为将学生分配给一个不存在的部门,违反参照完整性原则。再有对于出生年月字段,在其字段属性的有效性规则设计时,设置规则为出生年月在1990年至1999年之间。给出的实验数据,有的学生出生年月不在这个范围内,数据就无法录入,因为违反了用户定义的完整性约束。当学生遇到上述种种错误时,必然产生困惑,从而会思考引发错误的原因,寻求解决问题的办法,教师通过指导学生改正错误,挖掘出隐含在操作背后的关系完整性约束知识点,学生也就能够理解了。
在实验环节,针对每个知识点,我们利用事先设计好的实例,先讲授要实现的目标和基本方法,在完成实验过程中,不断引出问题,启发学生对知识点理解和掌握,给学生预留一些思考的空间,让学生带着各自的理解和问题完成实验内容。
2.3 应用数据库技术培养求解问题意识
每年度学校举办程序设计竞赛(数据库类),我们积极引导、鼓励学生参加,从班级选拔开始,再进行院级选拔,最终到校级参加现场答辩。在自拟主题的数据库设计中,学生需要自己去识别问题域,根据主题数据需求自行设计数据库。在每年度文科创新性实验项目的申报与立项工作之初,我们采用多种形式向学生宣传,从申报题目、学生组队等方面给予必要的指导。结合所学数据库知识,学生成功立项“人文北京之北京传统饮食文化信息查询系统”、“历代帝王墓葬发掘史数据库”等项目,经过一年的项目研究,顺利结题。参加竞赛、项目研究的学生感受颇多,不仅能够学以致用,亲身实践了课堂所学及课外拓展的知识,提高了动手能力,同时也提升了应用数据库技术求解问题意识的培养。
3 结束语
面对非计算机专业的学生,课程应该注重培养学生的思维、方法、意识、兴趣和能力,而不是灌输一大堆概念与知识[7]。数据库课程教学的培养目标是以提高学生的应用能力为根本,学生首先要熟练掌握数据库基本技术,学会利用数据库解决实际问题,进而能综合应用计算机技术为本专业领域服务。目前,经过两轮教学实践,我们的体会是教学过程较为顺畅了,学生学习兴趣提高了,数据库综合作品设计质量提高了。在本年度进行的北京联合大学程序设计(数据库组)竞赛中,我院有19组参赛,2组获得一等奖,8组获得二等奖,7组获得三等奖,取得可喜成绩。数据库应用课程中如何更好地培养学生计算思维能力的教学研究还将继续深入开展,对于教与学,都是挑战,我们将不断探索与实践。
参考文献(References):
[1] 卢湘鸿.大学计算机体系研讨—43所院校厦门会议共识[J].
计算机教育,2014.13:27-31
[2] 谭浩强.研究计算思惟,坚持面向应用[J].计算机教育,
2012.21:45-49
[3] 钟伟,刘佳.高校文科计算机基础教育教学方法探析[J].河北
大学学报(哲学社会科学版),2000.4:88-90
[4] 程春玲,张少娴,陈蕾.基于计算思维能力培养的数据库课程
教学研究[J].中国电力教育,2012.8:81-82
[5] 李雁翎,李鹏谊.知识的内化:计算思维的培养与数据库教学[J].
中国大学教学,2013.7:33-35
[6] 李雁翎,李鹏谊.知识的内化:计算思维的培养与数据库教学[J].
中国大学教学,2013.7:33-35
[7] 唐培和,徐奕奕,李威龙,朱亚超.关于计算思维教学改革面临
的思考[J].工业和信息化教育,2013.6:82-86