APP下载

促进计算机科学教育的几点思考

2018-06-01郭文平吴高标陈金飚胡永良应国良

计算机教育 2018年5期
关键词:教程计算机科学计算机专业

郭文平,吴高标,陈金飚,胡永良,应国良

(台州学院 数学与信息工程学院,浙江 临海317000)

0 引 言

自世界上第一台电脑ENIAC诞生至今,计算机及其相关技术对人类社会发展产生了深远影响。从20世纪60年代起,美国计算机学会联合其他专业学会陆续发布了Computing Curricula。Computing Curricula代表了国际计算机教育的先进理念,研究Computing Curricula,对于科学设置计算机专业课程、提高计算机专业人才培养质量很有益处。

1 Computing Curricula的演化

美国计算机学会 (Association for Computing Machinery,ACM)于1968年和1978 年发布了计算机科学(Computer Science, CS)教程Curriculum 68和Curriculum 78,并于1972年发布了信息系统(Information Systems)教程IS1972。1985年,信息技术职业学会(Association for Information Technology Professionals, AITP)发布了IS1985。

1991年,ACM和国际电气与电子工程协会计算机分会(Computer Society of the Institute for Electrical and Electronic Engineers, IEEECS)设立联合工作组发布了著名的Computing Curricula1991(CC1991)。1997年,信息系统学会(Association for Information Systems, AIS)联合ACM和AITP发布了IS1997。

2001年,ACM和 IEEE-CS在 CC1991的基础上,把计算机课程划分为计算机科学(Computer Science,CS)、计算机工程(Computer Engineering,CE)、软件工程(Software Engineering,SE)和信息系统(Information System,IS)4个方向,最终形成了Computing Curricula 2001(CC2001)。作为对CC2001模型的响应,ACM、AIS和AITP合作发布了IS2002,IEEE-CS和ACM合作发布了SE2004和CE2004。

随着分报告的逐步完成,2005年ACM、AIS和IEEE-CS联合工作组召集各个方向的专家代表一起撰写了计算机教程总体报告Computing Curricula 2005(CC2005),将它们联系到一起。CC2005之后,各个方向的课程规范发布进程加快,ACM和IEEE-CS发布了IT2008、CS2008和CS2013,ACM和AIS发布了MSIS2006和IS2010,IEEE-CS和ACM发布了GSwE2009和SE2014,ACM和IEEE-CS发布了CE2016。

为方便中国计算机相关专业的院系和教师及时了解、学习国外计算机类专业本科培养方案与课程设置的最新成果,ACM翻译出版了CS2013中文版(计算机科学课程体系规划2013[1])和CE2016中文版(计算机工程课程体系指南2016[2])。截至2017年5月,整个Computing Curricula结构如图1所示。

图1 Computing Curricula结构

从图1可以看出,整个Computing Curricula的核心还是计算机科学,因此本文重点分析计算机科学教程的发展及其变化。

2 计算机科学教程的发展及其变化

2.1 计算机科学教程的发展

从Curriculm 68到CS2013,计算机科学教程共有7个版本,其中CC2005是总体报告,CS2008是对CC2001的中期评估版本。2000年之前,基本按每10年更新,2000年之后,基本按每5年更新,这和计算机科学日新月异的变化以及在各个方向上的快速扩充相适应。

2.2 课程知识体系的组织

Curriculm 68和Curriculm 78对知识体系的组织是以课程为导向的。从CC1991开始用知识领域来组织教程,目的是要适应最新的技术发展并具有广泛的适用性,一个知识领域由多个知识单元组成,一个知识单元由多个知识点组成。

CC2001工作组更新了CC1991的知识领域,从9个扩大到14个,同时意识到学生要掌握所有的知识点是不可能的,因此把每一个知识点又划分为核心和选修,既保证了知识的深度,同时兼顾了广度。

由于计算机领域知识的不断增长并趋于多样化,CS2013重新思考了计算机科学的基本要素,进而对整个计算机科学的知识体系做了重新定义,用层次化的形式对知识体系进行布局,每一知识单元形成核心一级、核心二级和选修3个层次。所有的计算机科学课程体系都应该包含核心一级内的内容,但可以灵活选择核心二级内的知识点。

整个计算机科学教程的知识体系组织演化过程如图2所示。

图2 计算机科学教程知识体系组织演化过程

2.3 知识体系核心学时数比较

知识体系核心学时数(Lecture time, 指的是授课时间,不包括与讲课相关的其他任务的时间)的设计一向具有很强的挑战性。工作组需要很强的平衡技巧才能顾及计算机领域知识增长对内容的扩展要求,从而建立起切实可行的本科课程体系。4个版本的核心学时数比较见表1。

CS2013的核心一级学时数加上核心二级的学时数略高于前几个版本课程规范的核心学时数,但CS2013层次化的结构为院系从核心二级选择知识点(至少包含80%)明显提供了灵活性。

表1 核心学时数比较

2.4 教学目标的转变

从Curriculm68到CS2013,教学目标经历了从以教师为中心到以学生为中心的转变,见表2。

2.5 课程样本

CC2001工作组为了不同的教育机构能更好地使用教程,采用“定制课程”的方法来引导,将其定义的所有知识领域设计到6个课程体系模板和47门示范课中,但通过对CC2001和CS2008的使用情况调研来看,这样的定制课程在各大教育机构实践中没有起到太大的作用。

CS2013采用了一个不同的方法:收集已经取得成功的课程及课程体系,用它们来描绘各相关知识单元是怎样贯穿在实际教学中的。CS2013提供了不同大学和学院的课程案例84门,这些课程从不同侧面体现了知识领域中各个知识单元组合成课程的不同方式:一门课程可能包含有多个知识领域中的知识单元,涵盖某个知识领域也可能需要多门课程。CS2013 也提供了4所不同层次的大学(Bluegrass Community and Technical College、Grinnell College、Stanford University、Williams College)计算机专业不同学位(即培养目标不同)的核心课程设置案例,这些案例展示了如何将人才培养目标所需的知识体系分解到一系列核心课程中,充分体现不同大学的教育理念。

表2 教学目标转变

3 促进计算机科学教育的几点思考

ACM、IEEE-CS及其他专业协会推出的计算机系列教程对全世界的计算机教育发展产生了巨大的推动作用,国内有不少学者开始分析相关教程[3-6]。笔者展示了整个Computing Curricula的演化,重点分析了计算机科学教程的发展及变化,得出以下几点启示。

3.1 制定定位清晰、特色明显的计算机人才培养方案

我国绝大多数本科高校均开设了“计算机科学与技术”专业,计算机类专业布点总数为2 481个,这些专业大量分布在地方高校[6]。各高校计算机类专业的师资队伍、学生素质、办学条件等方面差异较大,在制定人才培养方案时,要及时跟踪信息技术的发展趋势,结合各自学校的办学定位,制定特色明显的计算机专业人才培养方案,这是办好一个专业的基础。

3.2 及时更新计算机专业规范

在借鉴CC2001的基础上,教育部高等学校计算机科学与技术教学指导委员会2006 年发布了《高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)》[7]。2015年ACM中国教育委员会与中国教育部计算机类专业教学指导委员会合作翻译了CS2013中文版。考虑到中美两国在信息技术产业结构、人才需求、教学理念、培养要求、学生素质等方面的差异,教育部计算机类教学指导委员会应及时成立工作组,颁布新的专业规范,以适应不同高校计算机专业的人才培养需求。

3.3 设计切实可行的课程体系

CS2013的知识体系规定了哪些内容应该包含在计算机科学的本科培养方案中,但一个机构的课程体系既不是从CS2013中简单选取知识点,也不是从课程到知识领域的一一映射,而是在平衡社会需求、学生素质、教学目标、师资力量、支撑条件的基础上,将知识点整合成为一个独特的、切实可行的课程体系来支撑人才培养目标的实现,如图3所示。

图3 课程体系设计要点

3.4 开发与CS2013知识体系配套的课程教材

我国计算机专业教材来源大致有两种:一是国外原版或翻译的经典教材,二是国内高校教师编写的教材。现有的计算机专业教材在组织知识体系和评估学生学习成果方面还无法适应CS2013的知识体系,因此需要精心组织和统筹规划,开发一批与CS2013知识体系配套的核心课程教材。

3.5 遴选一批典型核心课程案例

CS2013 提供了不同类型大学和学院的成功案例课程和不同层次大学的核心课程设置案例,借用这种方式,我们需要及时从国内计算机类专业本科办学经验丰富、培养学生质量较好的高等学校中,遴选一批典型核心课程案例,发挥其示范作用。

3.6 保持师资队伍的活力和健康

拥有足够经验丰富的师资队伍是办好计算机科学专业的必要条件。为了应对计算机领域的快速变化,学校必须建立终身学习机制(如脱产攻读博士学位、到国内外高校做访问学者等),让教师有机会了解新知识,与新技术的发展同步,改进教学内容和方法。

3.7 大力提升实验室条件

计算机科学是一个理论与应用并重的专业,其课程的实验部分对计算机软硬件的需求往往超出一般高校计算机实验室的配置条件,特别是在大数据时代,需要提供专用的实验平台来提高学生的软件开发和工程能力,因此需要投入大量人、财、物去提升实验室的计算机资源,以满足学生的实验教学需求。

3.8 解决人才培养方案中知识域的缺失问题

尽管计算机类课程是以技术问题为中心的,但技术问题并不构成该领域教育计划的全部。学生还必须了解更大的社会环境,以培养对相关社会、伦理、法律和专业问题的理解。这实际上是通识教育问题,我们应当借助中国加入《华盛顿协议》的契机,大力推进工程教育认证,促进通识教育的普及。

4 结 语

Computing Curricula系列代表了国际计算机教育的先进理念,这种理念下培养出的学生,支撑了世界上最发达的信息技术产业。作为计算机专业的教育工作者,应该研究和借鉴Computing Curricula系列思想,制定合理的人才培养目标,科学设置计算机专业课程,关注学生的产出并持续改进,最终提高我国的计算机专业人才培养质量。

[1] ACM、IEEE-CS、ACM中国教育委员会、教育部计算机类专业教学指导委员会. 计算机科学课程体系规划2013[EB/OL].[2017-12-10]. http://www.acm.org/binaries/content/assets/education/cs2013_chinese.pdf.

[2] ACM、IEEE-CS、ACM中国教育委员会、教育部计算机类专业教学指导委员会. 计算机工程课程体系指南2016[EB/OL].[2017-12-10]. http://www.acm.org/binaries/content/assets/education/ce2016-final-report-chinese.pdf.

[3] 赵一鸣. ACM/IEEE-CS2001与计算机专业课程设置[J]. 高等理科教育, 2002(1): 43-47.

[4] 胡永良.“CC2005教程”的分析与思考[J]. 台州学院学报, 2008(6): 61-65.

[5] 李晓静, 王昊鹏, 潘彤.“计算机科学教程2013”概况分析、启示与思考[J]. 计算机教育, 2014(16): 31-34.

[6] 古天龙, 周娅. CS2013对本科计算机类应用型人才培养的启示[J]. 中国大学教学, 2015(7): 90-93.

[7] 教育部高等学校计算机科学与技术教学指导委员会. 高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)[M]. 北京: 高等教育出版社, 2006.

猜你喜欢

教程计算机科学计算机专业
新工科背景下计算机专业创新创业人才培养探究
高职计算机专业教学中融入课程思政的实践路径
中职计算机专业产教融合混合式教学研究与实践
互联网+环境下的高校计算机专业课堂教改现状及建议
试论计算机科学与技术的现代化运用
探讨计算机科学与技术跨越式发展
新英镑
挽碧制作教程
“不插电的计算机科学”,你试过吗?
一绾青絲深,此意最绵绵——古风发型教程