一、以计算思维能力培养为导向构建化工学科计算机教学模式
近几年来,国内外高校都加强了计算机知识与专业学科的结合来培养学生能力,如同济大学、西安交通大学、大连理工大学、清华大学等。[5-10]我们结合本部门教学情况,经过与化工学院多次讨论,[4]明确了该院学生的需求,然后深入理解计算思维在创新实践和教学中的应用,结合计算思维本质对教学课程体系和创新实践平台进行了改进和优化,最后形成模式并实施。实施过程中再根据出现的问题进行研究,改进并优化现有的模式。经过不断改进,我们设计和实现了一种新的面向化工学科的、计算思维与创新实践并重的计算机基础教育实践平台(见图1),该平台建设主要包括如下部分:面向化工学科教学体系建设,计算思维驱动的研究和创新基地的建设,多元评价方法与质量评价体系的建设等。下面对每个部分进行具体描述。
(一)面向化工学科的教学课群体系建设
由于学生对所学计算机课程设置和创新实践基地种类不太理解,导致有多种问题发生,如创新学分的混乱、计算机知识抽象、计算思维知识的欠缺,因此我们引入了开课引导篇。在每一门课程开篇,教师要通过实例告诉学生初步计算思维的概念和重要性,该课程在整个计算机体系结构中处于什么位置,学完后能干什么,很多化工软件以后有什么用,以及创新实践基地的种类和联动关系,如何使用初步计算思维的思想进行创新实践活动等。通过引导篇的学习,学生初步认清了该课程在所学平台中的位置,有的放矢地进行学习和提高创新实践能力,初步形成了计算思维意识,为以后在化工专业中灵活运用计算机打下了基础。1.大学计算机基础课程的研究针对化工学院的学生,该部分讲解设置为40(24理论+16实验)课时。理论中除了讲述计算机基础、文档处理与排版、数据处理与输出技术、多媒体制作、网页技术与信息安全等知识点外,还讲述计算思维的概念,并通过视频讲解一些简单的例子。数据处理与输出技术中的Excel知识重点讲述其高级应用,如函数、数据处理等,对Ori-gin、Aspen Plus、MATLAB等一些常用的软件仅作初步讲解。实验课中开设一个化工软件认知实验,学生根据实验讲义,完成对上述化工学科通用软件的认知学习。2.改进计算思维驱动程序设计课群教学模式,真正提高学生编程能力程序设计公共课群的教学目的是使学生的“程序设计”能力达到一定的水平。该课群重点培养学生读程序、写程序和调试程序的能力,突出实际编程能力的训练,使其理解人的思维方式与计算机执行方式的差别,以期把人的思想通过程序设计表达出来,进而培养计算思维能力。学生应掌握分析问题和数据表达的能力,以及对问题的抽象与基本算法实现的能力,掌握模块化的程序设计方法和调试方法,具备利用程序设计技术解决化工学科各个专业实际问题的能力。该课群开设了C语言程序设计、Python程序设计语言和VB.NET程序设计语言三门课程。教学分为两步:先讲解程序设计内容和MATLAB语言,然后进行各种实验和实践。具体讲解中,我们以计算思维能力培养为导向,多讲程序设计共性的部分,少讲专业中很少用到的知识。如针对C语言程序设计,指针、链表、结构体和详细的输入输出可以略讲或者不讲(该部分需要花费大量时间,但是以后应用该部分很少,难度也大)。上述三门课程中还须各抽出三分之一学时来进行MATLAB语言的教学,尽量向该专业所要求掌握的计算机知识过渡。程序设计课群具体改进内容由以下4个部分组成。(1)以程序设计为主线的宏观组织程序设计类课程传统的宏观组织方式是以语言知识为主线,注重语法知识的完整性,侧重以语法理解带动程序设计能力的提高。项目组设计了以培养计算思维能力和编程为主线的组织方式。以程序设计为主线的教学方式重点培养学生程序设计和计算思维能力,以程序设计学习进程为主,打破语言模块的完整性,循序渐进地组织相关教学内容,将某些难以理解的内容(如C语言中的递归、各种查询)分离出来,放到课程的后期讲解。以程序设计为主线的教学内容组织如下:概论—初识程序设计—语句级控制—数组应用—模块级控制—指针、结构应用—程序设计进阶(递归)—文件应用—MATLAB认知—MATLAB程序设计—简单的数据处理与多项式计算等。教学内容均涉及计算思维能力的培养和提高。(2)以案例教学为特征的微观组织由于学生难以理解程序设计思维方式,在具体讲授课程知识模块时,我们主张结合化工各个专业的案例来组织和实施教学(如判断烃类别程序、处理酸碱中和滴定实验数据等),通过案例讲解程序设计的思想和方法、引出知识点,使用多种方法(如Flash)进行深入地讲解,针对程序设计知识模块采取如下教学方式:提出有意义的问题→抽象并设计算法→关注度分离并分析算法特点→编写程序→介绍使用到的语言成分→配合讲述大量例题→课后习题。(3)课程中贯穿培养计算思维能力的研究我们把计算思维的知识融入课程中,并贯穿于教学大纲。图2为程序设计公共课群中计算思维培养导向图。该培养导向图在程序设计语言和MATLAB语言学习中均使用。教学针对化工学科程序设计课群中各课程共性的内容展开:①类型、输入输出、程序结构等冗余、约简、转化类型、规则、启发等:输入输出的冗余、分段取值的约简问题、问题的转化、各种类型的关系和启发、各种规则的定义等。②数组、函数、查询、排序、数据处理、优化模型等递归、嵌入、折中、纠错、转化、类型、规则等:多种问题的递归、DLL的嵌入、多种排序的折中、校验的纠错、问题的转化、规则的制订等。经过初级计算思维的学习,学生对于计算思维有了一定的认识。在此基础上,针对该部分内容,我们主要讲述如何使用计算机共性的知识,比如计算思维的20个概念要点(包括计算、通信、协调、自动化、设计、约简、嵌入、转化、仿真、递归、并行、抽象、分解、保护、冗余、容错、纠错、系统恢复、启发式、调度)。具体讲解时,针对不同的对象教学上有所侧重。如在化工学科卓越工程师班级的大学计算机基础课程中讲解计算思维概念,但程序设计课程中可以讲解计算、通信、协调、自动化、设计、约简、嵌入、转化、仿真、递归、并行、抽象、分解、保护、冗余。再如化工学院非卓越工程师班级,其大学计算机基础课程中也要讲计算思维的概念,而程序设计课群中可少讲一些计算思维的知识点及其应用例子,以方便学生消化。总而言之,程序设计课程中关于计算思维能力的培养,要讲解程序设计基本思想,针对C语言,少讲输入输出细节,指针等可以更少讲,将时间集中在MATLAB的教学上,主要讲解程序设计理念和计算思维的本质(如递归、问题转化、嵌入、约简、分解及程序设计三大结构)。同时,在程序设计课程中,我们采取了“讲解(Instruct)—阅读文献(Literature review)—反思(Reflection)—运用(Practice)—反馈(Feedback)”这样一个(ILRPF)教学过程。我们首先讲解计算思维的理念(In-struct),要求学生阅读关于计算思维的一些国内外文献资料(Literature review),然后要求学生针对每个章节的知识点,列举出其关于计算思维的理解和反思(Reflection),接着要求学生列举其在现实生活中的运用(Practice),最后把理解形成文字,作为一个作业提交(Feedback)。教师可以通过课程教学平台的后台管理功能了解学生的所有活动。当然,针对理工科学生的教学方法与细化优势学科的培养方法,二者是不矛盾的,都是在加强计算思维能力培养。细化优势学科的计算思维培养更加侧重专业的应用。其中的实践运用环节(Practice)鼓励有兴趣的学生进一步提交自己设计的大作业,然后参加学校的创新实践和各级计算机大赛。(4)实践教学的内容组织课程实验与课堂讲授内容同步,形成配套的实验训练单元,鼓励学生从第一周开始练习编程。课程实验的主要目的是使学生通过训练,加深对某个知识点的理解,实验题目的规模不求大,包括程序跟踪、程序改错、编程、大型框架式程序、MATLAB编写的系统和计算思维训练实例等多种类型,从多角度培养学生的编程能力。实验通过结合本专业的大作业实践活动,进一步培养学生的程序设计能力、计算思维能力和进行初步团队合作的能力。教学中最后一个实验是一个大的实验,提出了框架式程序的概念,设计了点名系统、身份证号码系统、蒸馏塔实验模拟系统和一些简单的计算问题(单循环迭代收敛)等。这些框架式程序的特点是大框架已经调试好,学生只要往里面添加合适的内容就可以完成作业。完成这种实验让学生非常有成就感。同时,我们还加强了MATLAB中部分实验的应用性,如其在优化方面的应用性。3.面向化工学科的专业相关技术课群计算中心专门为化工学院开设了一系列具有化工特色的选修课程,以缩小学生计算机应用能力与后续课程要求的能力之间的差距。开设课程包括网络技术与应用、多媒体技术与应用、MAT-LAB与并行计算、软件工程与应用。这是经过多30基于计算思维和创新实践的化工学科计算机教学的研究和建设次调研后确定下来的。网络技术与应用可以解决各种网络问题和安全问题,多媒体技术与应用可以实现一些化工模拟的可视化,MATLAB与并行计算可以加强学生对专业知识的掌握,软件工程与应用可以使学生学会从软件工程角度出发选择化工学科中各种实验软件的方法。在这些课程的教学中,计算思维的方法始终贯穿其中,如问题的转化、系统容错、仿真等,老师会根据实际问题对学生进行计算思维的培养。
(二)依托多层实践基地,优化对象间关系,构建计算思维和创新能力培养方法
我们依托多层基地,构建了计算思维和创新能力培养体系,如图3所示。第一层次是大作业课程综合训练,学生自由组合,2~3人组成一组,初步完成与本专业结合的作业,教师根据完成情况引导他们进入实践活动平台中。在每学年3~4月份,中心会开设专题讲座,公布17个与程序设计有关的题目;学生在4月份根据讲座内容和实践专题内容,网上报名选择专题和老师,进行实践,接受教师指导,6月份做出作品。此后,教师积极引导学生进入下一阶段的创新实践中。第二层次,教师依托大学生创新实践活动实验室的7个子基地,对学生进行针对性的培养,注重学生计算思维能力的训练,一定要让学生知道针对具体项目,计算机是采取何种方式解决问题的,培养学生计算思维的概念。同时中心针对化工学科专门开设了并行计算实验课程,进一步提高学生的计算机应用能力。第三层次,教师依托大学生创新实践科研团队的力量,选择好的学生参加与科研相关的实践活动。在ACM的实例和队员辅助下,教学要逐步求精,精讲计算思维,反复强调,逐步培养学生的计算思维。第四层次(竞赛层次),中心组织学生参加各级计算机竞赛,包括市级和国家级的竞赛,通过实践指导和竞赛的方式,进一步培养学生的计算思维和创新能力。在创新实践指导过程中,指导教师、学生和实验室工作人员联动可以取得理想的效果。三者相辅相成,互相支撑,缺了一方,都不能取得好的成绩,也无法贯彻学校关于创新实践的方针。计算机教学实验中心有多个实践基地,包括科研团队入驻奉贤基地、大学生创新实践活动实验室的7个子基地、教务处指导的计算中心创新实践基地等,这些都需要实验室教师的配合和管理。根据我校计算中心的实际情况,我们明确了三者之间的关系:实验室工作人员管好设备,优化环境,指导教师指导学生实践(特别是与化工学院教师联合指导),学生获取知识。由此我们提出了项目驱动创新实践项目方式,即指导教师带领学生参与创新实践,向负责管理基地机房的实验室工作人员提出申请,同时报给实验室管理人员。
(三)多元评价方法与质量监控体系建设
大学计算机基础和程序设计课群是化工学科学生必修的计算机课程。根据计算思维驱动的“目标—内容”二维模型(简称CT-CDT模型),并结合我校化工学科学生小班教学的特色和学生入校素质高的特点,我们在教学中强调激发学生的学习自主性,采用内省式教学(Reflection)策略,即学生自评(Self Assessment)和小组互评(PeerAssessment)的方法(如图4所示),针对每章和计算思维概念相关的最重要的知识点,评价学生自主设计的案例。在学习过程中,质量保证和评价环节很重要。在教学方面,我们每月组织3次以上的教学和实验室研讨会,来保证学生掌握计算思维的知识并解决创新实践中出现的问题;邀请ACM队员辅导学生的创新实践;联合化工学科名师听课、教师互听、单位领导听课,来分析该课群具体实施情况和学生评测情况。上述综合措施用来保证质量。评价方面,我们建立了教授责任制,责任教授组成一个团队,共同完成该课群评价体系建设。他们会根据学生作业情况、大作业情况、实验情况、创新实践情况、评测情况,来评价课题实施效果。此外,教学模式在实施中,还要研究多个实践基地联动(化工学科的基地和信息学院计算中心的基地)、信息教学平台等问题。
二、结论
化工学科的计算机课程教学改革是一个值得深入探讨的课题。不仅教学内容要适应计算机技术的发展需求,教学模式也应做相应的改革。课程内容的设置不仅要考虑计算机技术在化工学科的实际运用情况,还要考虑是否同化工学科的整体教学目标相一致,以避免课程仅仅单纯向化工学科学生传授计算机技术。因此,我们提出了以计算思维能力培养为导向的适合化工学科的计算机教学模式。对化工学院学生的教学创新实践成果分析证明此教学模式是合理有效的。但是每一种模式都有两面性,实施过程中还需教师根据本校的实际情况量体裁衣,因地制宜,才能收到好的效果。
作者:王占全 文欣秀 杨泽平 刘江 顾春华 单位:华东理工大学信息学院计算机教学实验中心 上海电力学院
相关专题:法学论文写作 pdf 巢湖学院学报编辑部