基于项目的实验课程改革探索与实践

时间:2022-08-19 11:09:00

基于项目的实验课程改革探索与实践

摘要:本文首先提出了一种“案例型”计算机实验教学改革方案,即通过一个项目来统领和组织一门课的实验内容,让学生在项目中既掌握技术技能又掌握工程素养,同时鼓励学生创新。本文还详细讨论了在“嵌入式系统实验”课程中实施案例型实验的具体做法和经验得失。

关键词:案例教学;课程改革;实验;学生项目

中图分类号:G642

文献标识码:B

文章编号:1672-5913(2008)02-0030-04

1引言

1.1企业需求与学生能力的矛盾

近年来,国内的教育事业得到了飞速的发展。据国家教育部统计,截止至2006年,中国高校的在校生人数已经突破了2300万。2006年一年,中国高校毕业生人数为413万,其中有17万以上为计算机相关专业学生。但是我们也不得不承认,高校计算机毕业生数量的增加并没有很好的为国内蓬勃发展的软件产业输送大量的高素质人才。很多软件企业在招聘的时候依然在抱怨毕业生中人才难求。甚至很多企业都要在毕业生进入实际工作岗位之前实行“再教育”,这无疑又为企业增加了不必要的开支。因此,计算机软件复合人才的缺乏依然是国内计算机软件产业可持续发展的瓶颈。

在与多家大型软件公司和跨国软件企业的沟通与交流中,我们发现对于大多数学生的专业基础知识和技术技能都基本可以满足需求,学生无法满足企业的用人需求的地方往往是两个环节:软件工程素养和实践创新能力。软件工程素养的缺乏表现在学生难以用工程的观点去参与项目开发、难以在项目中与合作人有效的沟通和合作、难以对项目的规划、进度、分析、设计等流程有良好的认识、对常用的软件工程管理工具不熟悉等。实践创新能力的缺乏表现为学生难以用创造性思维解决问题,难以突破传统的思维模式寻求创新思路。

针对问题反思计算机教学,我们认为解决问题可以从专业技术课配套的实验课程入手。通过全面改革实验课程的授课思路、内容和方式,来锻炼学生的工程素养和创新能力。

1.2目前实验课程的问题

目前高校中的计算机实验普遍为单一的“验证型”实验。所谓“验证型”实验即通过一次实验,验证一个某个教学的知识点或者某个已知的系统功能的正确性。验证型实验的典型设置是把一个学期的实验分为多个实验,每一个实验课有一个唯一的实验目标与结果。

让我们以某嵌入式系统课程的实验方案为例,配套的实验方案可能会这样安排:实验一:串口读写实验。实验二:LED输出实验。实验三、DMA操作……等等。

我们承认,“验证型”实验对于学生更好的理解课堂知识点和掌握必要的技术技能是有帮助的。但是仔细推敲不难发现,“验证型”实验存在如下几点“软肋”:

首先,验证型实验的一个实验与另外一个实验彼此的耦合性和联系性并不是很强,往往它们之间都是孤立的。这就导致一个比较严重的问题,学生在做完一个学期的实验之后,对于具体的知识点有了一定程度的掌握,但是依然不知道如何去搭建一个完整可用的嵌入式系统。也就是说,孤立的验证型实验会导致“只见树木,不见森林”的窘境。

其次,验证型实验的实验结果往往是一个既定的事实。学生按照实验步骤去做,结果只有唯一的一个,如果结果与预期不一致,就意味着学生的实验过程有误。这种“只许成功不许失败”的实验设置对培养学生的主动创新能力不但没有益处,往往会扼杀学生的兴趣与主观能动性。由于实验的结果是唯一的,没有差异性。所以很容易导致学生互相抄袭实验报告的情况。

再次,孤立的实验也很难保证实验的系统性。因此,我们觉得工程类课程的配套实验改革势在必行。

2基于项目的实验教学

2.1整体思路

对于计算机类课程的改革探索,我们认为需要从如下四个方面入手:

第一,对于实验内容应该由传统的“单元式”向“项目式”过渡。即把整个学期的实验课程通过一个项目来组织。在一个学期的实验课程中,学生通过完成一个项目,来达到掌握技术技能的目的。

第二,对于实验类型应该由传统的“验证型”向“创新型”过渡。在项目的选题和内容方面,充分激发学生的主观能动性,让学生发挥创意,通过自己的创新思维,在项目中解决现实生活中的问题。

第三,对于实验主体应该由传统的“教师讲”向“学生做”过渡。在实验过程中,老师的讲解退居次位,主要的时间留给学生动手做。

第四,对于实验目的应该由传统的“掌握技术”向“积累工程经验”过渡。通过项目组织整个实验的同时,需要在项目的过程中贯穿软件工程的思想。例如借助于软件工程管理工具进行进度管理、代码管理、缺陷管理等。让学生在项目中不但可以掌握具体工程技术,还可以积累工程素养。

2.2具体做法

按照上述的思路,整个实验设计在一个学期内完成,分为若干个阶段:

第一阶段是前期准备工作(2~3周)。在这个阶段中,教师会指导学生明确实验意图、了解实验内容、熟悉实验平台。其中包括指导学生阅读相应的设备规范、指导学生进行项目分组等前期工作。

第二阶段是项目策划与启动阶段(2~4周)。在这个阶段中,学生被分成若干个小组,每个小组确定小组成员与角色分工,然后决定每个小组的实验案例题目。接下来,学生可以根据实验指导材料要求,完成项目的初步分析、设计等相关计划文档。

第三阶段是项目的实施阶段(6~8周)。在这个阶段中,学生需要根据实验指导材料,完成实验项目的整个流程。包括开发环境搭建、编码、测试、项目管理等。

第四阶段是项目的完工阶段(2~3周)。在这个阶段中,学生需要最终的实验结果。同时,完成项目展示和公开答辩。

在项目的每个阶段开始,教师都会根据每个阶段的不同要求,向学生介绍本阶段需要完成的任务;在项目每个阶段结束,教师都会对学生本阶段的工作进行评估。只有前一个阶段合格才可以进入下一个阶段,如果不合格需要尽一步修订。最后的课程分数将是每一个阶段评估结果的综合。在阶段评估的时候不仅要考核嵌入式系统知识的熟练运用,而且要考核软件工程管理的规范性。

3在“嵌入式系统实验”课程中的实践

3.1实践情况

“嵌入式系统实验”是同济大学软件学院“嵌入式软件开发导论”课程的配套实验课程。2个学分,36个学时,从2004年起对软件工程和计算机专业本科生和研究生开放选课。在2004~2005年,我们也采用的是“验证型”实验。从2006年起,我们在这门实验课中首先进行改革,引入了基于案例的实验教学。

在一个学期中,我们的课时安排如表1所示。每次上课教师负责把需要做的事情做简单介绍,主要的时间交给学生动手做。

同时,我们抛弃了传统的实验报告,取而代之为项目的各种文档、会议记录以及软工工具中的数据,这样,不同的小组之间的文档差异性明显。不但可以杜绝抄袭,而且文档的结果是不唯一的,从成功和失败两方面都可以获取经验。

同时,在实验项目的过程中,我们引导学生使用多种软件工程管理工具,让学生通过工具的使用,来提高自身的软件工程素养。整个学期中用到的软工工具如表2所示。

3.2经验得失

在2006~2007学年一个学期的实践当中,有经验也有不足。引入基于案例的实验之后,指导老师的工作量更大了,要求也更高了。老师要参与各种评审:报题、进度、文档、报告等等,同时还要解决各种技术问题,并要组织和管理多个学生项目。对学生而言,最大的反馈是可以体会到一个完整的嵌入式项目流程,并且可以掌握许多业界广泛使用的软件工程管理工具,这对于他们将来的实习和就业都大有好处。

实践中主要存在的问题是一个项目不太可能百分之百覆盖课堂教学的知识点,因此课程知识点的覆盖率比较难以统计。其次,一周一次课,时间分散,导致项目连续性并不好,也造成了难以管理的问题。对于第二点,如果可以把整个实验放在暑假实训学期中集中完成,可能效果会有所改观。

4结束语

本文提出了一种基于项目的高校计算机类实验课程改革方案,并介绍了我们在课程中的一些实践的经验总结。下一步我们筹划能够在总结目前经验教训的同时,进一步提炼可以通用的内容,把基于项目的实验改革思路推广到更多适用的工科课程中去。为提高学生的综合素质和就业竞争力做更大的贡献。

收稿日期:2007-10

参考文献

[1] 田金兰. 国外大学计算机系“软件工程”系列课程分析[J]. 计算机教育,2004,(5).

[2] 马燕, 张根耀, 王文发. 软件工程实验教学模式改革与实践研究[J]. 教育与职业,2006,(36).

[3] 周苏, 王文. 软件工程实验教学的设计与创新[J]. 计算机教育, 2006,(10).

[4] 郑宏,吴沛. 创新人才培养与大学教学模式改革[J]. 大学教育科学,2004,(3):34-37.

[5] 张日欣. 启发式、自主式实验教学方式探究[J]. 实验技术与管理,2005,(12).

[6] 叶佩青. 综合性实践课程教学改革探索[J]. 实验技术与管理,2005,22(2):22-24.

上一篇:上海交通大学“操作系统”精品课程的立体化建... 下一篇:平面图形图像教学中培养学生创新能力的思考