摘 要:基于项目的教学与学习方式已经被国内外多所大学证明是提高大学生创新能力和综合素质的有效途径 文章介绍哈尔滨工业大学计算机科学与技术学院本科生培养中的专业实践教学体系,阐释其创新机制,提出将课内学习与课外学习相结合,将软硬件实践课程相结合,形成贯穿4年本科教育的项目学习实践教学体系和较为完善的过程管理方法,为高水平计算机专业人才培养作出有益尝试;指出基于项目的学习对培养学生的主动学习意识、问题分析、问题求解以及综合创新能力有重要意义
关键词:项目学习;实践课程体系;年度创新项目;创新实验课;设计与实践课
1 背 景
项目学习(PjBL,project based learning)的基本形式是以项目(组)形式完成一项或多项任务,设计并实现一个具体的作品,如计算机专业中的硬件设备或软件系统等,并以书面或口头的形式总结表达完成任务的过程及产出物。其主旨是让学牛积极主动学习,完成知识体系的构建,强调了教学过程中“做”的重要意义;既增强了学生的动手能力,又培养了学生的创新意识、项目设计的能力和团队协作的精神。
国外一流大学非常强调基于项目的学习,如美国大学的“Gordon-MIT工程领导力培养计划”、英国大学“基于项目的学习方式”、澳大利亚大学的“无边界工程师培养计划”等。以MIT为例,MIT所有工科专业的培养方案都包括以项目为基础的学习课程,让学生亲自动手参与工程项口:大一学生不分专业,完成基础课程,在这些课程中,有一部分工学院开设的项目课程,学生需要组成团队,完成老师指定或者自选的项日,其目的主要是为了让学生亲自动手参与一些简单的项目,培养他们对工程学科的兴趣;大二到大四的学生每年至少有一门围绕本专业基础知识的项目课程,训练学牛解决专业相关问题的能力。有的课程跨度为2-3个学期,学牛有充分的时间完成相对较大的工程项目。学生在完成本科四年的课程和实践项目后,才能获得工学学士学位。
2 计算机专业项目学习体系的创新机制
2008年,哈尔滨工业大学计算机科学与技术学院(以下简称计算机学院)开展了项目学习方而的研究、规划、实施等工作。经过多年的建设,学院已形成一个立体化、个方位的项目学习体系。它包括大一年度创新项同,大二、大三年级的专业设计项目课程,大四年级的毕业设计项目,再配合大学生创新科技项目、课程大作业练习、创新实验课、研究实验室科研项目、企业实习项目等,如图1所示。
2.1 大一年度创新项目
大一年级的学生在知识储备和实践能力训练上存在较大的欠缺,所以设置大一年度创新项目的日标并不是让大一学生做出一个大型的完整项目,而是让学生在具体的项目实践中走一遍,提升兴趣、积累经验、形成认识。具体来说,人一年度创新项曰的目标是:提升学生求知、探索新事物和从事科学研究的兴趣;让学生学会自主学习和问题求解,能够观察、思考和发现问题;培养学生搜集资料、查阅文献的基本能力;引导学生进行团队协作,培养其沟通交流及与人协作的能力。
在这样的日标下,大一年度创新项目具有严格的、与科研项目类似的工作流程:申报立题一开题答辩一过程监控和管理一中期检查一验收答辩。学生认真走完全过程就能熟悉和了解科研的基本方法。同时以项目为驱动可以培养学生的专业兴趣。在开题环节,学生自立题目、自由申报、自主选择导师,培养自身观察和发现问题的能力;开题答辩采取poster方式,张贴海报、茶话交流,师生共同评审投票,培养学生表达与自我推销的能力;在项目工作过程中,依靠项目管理网站记录项目进展和师生交流情况,让学生体会工程实践中的过程控制;中检和验收答辩采用的形式是检查项目组进展和结果,要求书面和口头报告,完成对学生自我总结和表达能力的训练。
2.2 创新实验课
设置创新实验课的目的是将教师的科研、教学的最新成果,业界的前沿内容(如移动计算、云操作系统等),引入到本科生课堂中,让学生尽早接触学科前沿。表1给出了计算机学院目前已经开设的创新实验课,从课程名称可以看出,低功耗嵌入式系统、高级网络、系统软件、脑机接口等内容都是目前业界的热点领域。
以“低功耗嵌入式系统设计与实现”为例,教师首先需要明确给出设计项目的要求,如要实现如图2所示的嵌入式板子;或者是由学生自主选题,实现一款自行设计的低功耗产品。教师可根据现实世界中常使用的设备,如iPad、MP3播放器等进行启发设计,但必须要有明确的目标
在这个课程中,学生需要完成一个完整的系统,包括项目设想、方案设计(包括电路没汁和软件设计)、安装和调试(包括制作电路板、焊接器件和调试电路)、测试和验收等环节。
创新课程可以调动学生的兴趣。学生通过选择元器件,设计原理图和制版图,参与焊接、州试、组装、生产工艺等,实现一款融入自己设计思想的低功耗产品,培养自身的动手能力和系统观,将所学的多个知识点应用于一个实际的产品设计开发中,实现了知识的有机融合。
2.3 设计与实践类课程
计算机学院的设计与实践课程主要包括硬件设计实践和软件设计实践两个部分,其中硬件设计实践对应的课程是计算机设汁与实践,在这个课程中,学生要设计计算机系统的主要部件(状态机、元件例化、I/O接口与简单的CPU设计,最基本支持LDA、STA、MOV、MVI、ADD、SUB、JZ、JMP、IN、OUT 10条指令),要培养学生的硬件系统设计能力以及硬件实现能力
软件设计与实践对应的课程有两门,其中软件设计与实践I是针对数据结构、算法等应用级软件的设计与实践。在这个实践课程中,要让学生完成如“社交网络数据的建模、分析与信息扩散模拟”等大型的软件类项目,项目实践过程中涉及问题的抽象、综合知识的应用、软件实现等内容。以社交网络模拟为例,其涉及的问题抽象是如何将社交网络抽象为图,将社交网上的相关应用抽象为图上的算法;这涉及图论、大图的数据结构、扩散算法等相关知识的应用和实践。软件设计与实践II是针对操作系统、网络等系统级软件的设计与实践,如“小Linux上的鼠标驱动与图形界面开发”项目涉及设备驱动、鼠标硬件、事件处理框架、图形模式等,学生需要在现有的操作系统中增加大型模块。
设计与实践类课程采取的教学管理方式也是项目式管理,即由“开题一平时讨论一中期检查一结题验收一答辩”构成,其中开题的核心是要明确方案和结题的目标;平时讨论的核心是技术难点和下一步的工作计划;结题验收答辩的核心是验收开题时的结题目标以及团队合作情况。表2是软件设计与实践II课程的一个小组在课程教学过程中产生的一些中间结果,其中结题目标取自其开题报告;讨论记录记录了该小组平时讨论的主题和达成的共识;组员分工取自课程的结题验收报告。
3 计算机专业项目学习体系的支撑平台建设
为了支持高水平的项目式学习,计算机学院在实践平台建设等方面做了大量工作,取得了一定的成果。目前已经实现物联网技术研发平台、小区智能交通管理系统、类人形机器人等多个硬件嵌入式实践平台。同时在教学辅助软件系统建设上实现了基于C/S结构的“C语言编程题考试自动评分系统”,该系统获得国家自然科学基金项目资助,目前已经有包括国防科学技术大学、北京工业大学、北京邮电大学等在内的119所院校免费申请试用;同时也实现了面向学生自主学习的作业在线测试系统,正在学校内部使用。另外,计算机学院基于云计算理念,采用虚拟化与SDN等技术构建了一个虚拟仿真实验教学平台,供学生以虚拟化的方式完成信息安全相关的课程实验和自主实验。
4 结语
计算机学院在项目学习的课程体系、教育管理体系、具体课程的实施过程管理与学生学习情况考核等方面边实施边探索,形成具有科学性、系统性、可实施性的、较为完整的人才培养体系。项目学习实施7年来,学院共毕业约1500名本科毕业生,以2012年为例,毕业本科生217人,其中出国深造16人,读研84人(占总人数38.7%)。应就业人数117人,实际就业人数113人,一次就业率达到96.58%。在北京就业的39人,深圳21人,就业主要集中于大型企事业单位。毕业2-3年后,部分学生自主创业。多年的毕业生跟踪调查表明,这些毕业生的专业能力和创新意识深受用人单位好评。笔者在此撰文分享哈工大计算机学院在人才培养方面所做的一些工作,希望能为本科专业人才培养体系的设计者和实现者提供参考。