当前位置:首页 > 专题范文 > 公文范文 >

基于项目驱动模式的C++教学研究

时间:2022-11-20 20:35:08 来源:网友投稿

【摘要】本文提出将小型项目开发模式引入“C++语言程序设计”课程的教学过程,让学生组建项目小组,以团队合作开发软件项目的形式引导学生完成课程内容的学习;改变传统的上课理论讲解,上机分散实验的学习方式,由教师集成讲解知识重点,指导学生按照软件工程及项目管理的思想和方法完成项目开发任务,提高学生自主学习能力,培养学生的创新意识和团队合作精神,创建一种有利于学生综合素质培养的可持续发展的新型教学模式。

【关键词】C++语言程序设计;项目驱动;软件工程;项目管理Teaching Research of Programming with C++

Based On Project Driven

【Abstract】This paper introduced the mode of small project development into the teaching process of "Programming with C++". The new teaching method makes active efforts to lead to the changing of students" way of learning by teaches the students to develop a project in a collaborative environment. It changes the traditional classroom teaching methods from cramming method of teaching & verifying each knowledge point on the machine to teacher-directed group activities. The idea is that the teacher integrates key knowledge and helps students to complete projects according to the thought and method of software engineering and project management. This teaching reform can help to enhance the self-directed learning ability of students, to inspire their sense of innovation, to cultivate their team spirit, and to create a sustainable development teaching mode for the training of student integrative quality.

【Keywords】Programming with C++, Project Driven, Software Engineering, Project Management

【中图分类号】G722.2 【文献标识码】B【文章编号】2095-3089(2012)09-0019-02

1 引言

随着高等教育的发展,高等教育大众化的普及,人们对于传统的、学术型的人才培养模式理念及目标正在发生改变,应用型本科人才在我国逐渐成为一种新的人才培养模式,越来越成为普通本科尤其是新建本科院校的共同选择。同时,在《国家中长期教育改革与发展规划纲要(2010-2020年)》中提出在未来10-20年的时间里,我国的高等教育要以提高人才培养质量为核心,突出应用型、创新型人才培养[1]。如何建立创新人才培养模式,提高大学生解决实际问题的实践能力和创新创业能力,解决影响和制约高等教育教学质量的关键领域和薄弱环节,培养高素质多样化人才,以适应当前经济社会对应用型专门人才的需求,就成为目前本科教育教学中的首要问题。

目前,计算机专业人才存在的主要问题是缺乏抽象分析问题,独立解决问题的能力;动手能力差,对工具和方法的应用不熟练,缺少一定的实践经验;缺乏团队精神,沟通能力较差;责任心和纪律性不强等。针对以上存在的问题,在专业课教学的同时,应改革原有课堂教学模式,根据社会需求注重培养学生的专业素质,根据IT行业特点,把项目驱动模式引入课程教学,尤其是核心程序设计语言类课程中。通过这种新的教学模式,在模拟项目实践的过程中培养学生持续学习的能力,让学生通过课程学习逐渐养成独立解决问题的能力、沟通能力、职业道德、责任心和团队合作意识,帮助学生提早适应行业工作模式,满足社会需求[2]。

2 将项目驱动模式的教学思想应用于C++语言课程

“C++语言程序设计”是计算机科学与技术、软件工程专业的一门重要的专业基础课程。C++语言作为一门混合型语言,在增加对于面向对象方法的支持的同时,还继承了传统程序设计语言C的优点,克服了其不足之处,使得自身既适用于结构化程序设计,又能满足面向对象程序设计的要求,完美地体现了面向对象的各种特性,在IT行业得到了广泛的应用,是软件开发等项目中常用的重要工具之一。把项目驱动模式引入C++教学中,改变传统的顺序讲解每个知识点的理论授课方式,以项目小组为学习单位,以团队合作完成一个小型项目为目标,让学生在模拟项目工程实践中积极自主学习,树立团队合作精神。整个教学过程中,弱化教师的纯讲解角色。由教师突出重点、难点的讲解课程,提出项目完成的要求和规范,引导学生讨论、思考问题,在实际的项目工作中自主学习所需的课程相关知识,指导学生按照软件项目开发管理的步骤完成课程学习。为了让学生在完成项目之前对整个学习开发过程有较完整的初步认识,将选择C++开发的一个典型案例在课堂上进行讲解和讨论,采用知识点的集成化教学方式,启发学生把具体案例与C++语言联系起来,对知识结构具有一个整体的概念,理解功能模块化设计、了解功能组合方式,激发学生的学习兴趣[3,4]。通过这种新型教学方式,学生一方面可以结合课程的教学内容循序渐进地进行上机设计方面的实践训练;另一方面,在项目完成过程中,还能提高如何综合运用所学知识解决实际问题的能力,以及获得有关项目管理和团队合作等方面的经验。

3项目准备

在课程一开始就向学生介绍所需要完成的工作——组建团队、完成一个小型项目,让学生在一种全新的学习方式下,带着跃跃欲试的兴趣开始C++课程的学习。

3.1项目选题:首先,给出各项目小组所需完成的项目题目。由于学生在学习C++语言之前已经学习掌握了C语言,并进行过C语言的课程设计训练,所以在项目的选题方面可以适当增加难度,选择一些功能需求较多的题目,如开发打字练习程序、检索汉字文本程序及学生选课系统等。这样的题目即贴近学生生活,又带有一点的难度,可以让学生在使用C++语言解决现实问题的同时,进一步激发学生的学习热情。

3.2组建团队:确定题目后,就将学生分为不同的项目小组,每组分别负责一个不同的项目。在组建团队时,以自由结合为主,重点考虑团队融洽性。各项目组成员合作完成各自题目,即可锻炼能力,也可建立团队成员之间亲密的友谊,提高工作效率。如果在组队之前,有些队员已经合作完成过其他项目,在此次课程学习中,很可能希望仍然在一起完成工作。

3.3确定团队工作方式:完成选题和组队后,指导学生协商确定团队的工作方式。团队的沟通方式应以会议为主,确定会议的方式、时间、频率,明确小组成员之间的联系方式及讨论方式。目前C++课程理论课与上机实践的课时安排比例为1:1,学生可充分利用上机的时间,在学院提供的实践机房内进行团队交流和沟通,结合项目进展情况,关注项目的推进速度。课后团队的交流可采用QQ、MSN等即时通信工具完成,保证队员之间能够及时的讨论解决问题[5]。

3.4制定项目进度:因为C++课时有限,为了更好地控制时间,必须提醒各项目组对项目的进度、工作量估计以及人员分工做出详细的计划安排。要求项目组利用Microsoft Project进行项目管理,执行项目的控制、跟踪、详细时间安排和关键路径分析等工作,使学生熟悉目前软件项目管理常用的自动化工具,掌握比较简单的项目管理方法和软件工具,学会用规范的方式方法实施自己的项目。

4 项目启动与实施

在讲授C++程序的基本结构和重点知识的同时,向学生简要介绍软件项目开发的过程、方法和步骤,指导学生使用软件工程的方法开展项目,按照软件的需求分析,软件设计,软件实现,软件测试的步骤完成项目的启动与实施,实际工作中所需的具体知识则由学生自己通过图书馆、网络等途径,在课后自主学习掌握。

4.1 需求分析:向学生简要介绍软件开发过程,明确需求分析的目标及重要性,指导各项目小组明确分工,通过不同的方式获取详细需求。通过小组讨论最终对需求进行确认。在学生确定软件需求的同时,要指导学生控制项目的规模。规模不能太大,否则在课程规定的时间范围内将很难完成。但规模也不能太小,太过简化的项目就失去了团队合作的意义。

在需求分析阶段要求各项目小组需提交阶段性成果——需求规格说明书。要求规格说明书的撰写应由组员共同完成,包括确定规格说明书的模板,形式化工具的选用,需求内容的选择取舍以及名词、概念的统一化。

4.2设计实现:完成了需求分析之后,项目小组即依据需求规格说明书中的说明设计并实现软件。设计时应指导学生注重系统结构设计、接口设计、运行设计、功能模块设计、系统数据设计、系统出错处理设计等。由于学生没有参与开发项目的经验,所以在设计阶段依然是充分发挥团队优势,让所有项目组成员多讨论、多交流,互相启发,认真记录。在设计阶段,就将软件分割成可独立设计、实现的部分,分配给不同的组员完成。要求在设计阶段完成后提交设计说明书,做到过程规范化。

编码实现阶段是学生“C++语言程序设计”课程内容掌握情况的体现,在项目驱动模式依托的教学方法下,要重点关注、强调编码阶段的成果。课堂讲解C++语言的重点知识,让学生在项目的实施中理解掌握知识点并做到熟练运用,其他需要扩展的部分,由学生根据现有的知识去自学,提升自主学习能力。密切关注各项目小组的项目实现,指导学生养成良好的编程习惯,领悟面向对象的编程思想。在项目实现的同时,将课程中所有的知识点集成起来,培养学生融会贯通,提高其学习积极性和综合应用所学知识解决实际问题的能力。

4.3测试收尾:在设计阶段完成之后,测试工作应与编码工作同时开始。以需求规格说明书为依据,采用白盒测试与黑盒测试相结合的方法对系统设计测试方案,进行系统测试。因为项目完成时间有限,同学们对于测试工具也不熟悉,所以主要采用人工测试方法。

5项目评述

项目完成之后的评述,是基于项目驱动模式的C++教学中非常重要的一个环节。通过组织各项目小组进行汇报答辩,结合项目报告,点评项目优缺点,对各项目完成情况进行综合分析评价,给出相应的分数,作为该门课程总成绩的一部分。

6 结束语

将小型项目开发模式引入“C++语言程序设计”的教学中,改变传统教学方法、模式,锻炼学生自主学习、勇于创新、团队合作的能力,为社会培养创新型、团队型、实践性、复合型的工程技术人才,是计算机专业课程教学中的一次重要改革,在今后的工作中,将不断完善教育教学方法,创建一种有利于学生素质培养的可持续发展的教学模式。

参考文献

[1]吴磊. 浅谈应用型本科人才培养. 长春理工大学学报, Vol.7, No.7, 2012.7

[2] 杭州弄潮网络科技有限公司. 关于计算机专业人才需求的分析. /p-186331252587.html,2010.2

[3] 顾国松. 基于M-CDIO的C语言课程教学研究. 计算机时代, 2012.6

[4] 肖明. 案例教学法在“C++语言程序设计”教学中的应用. 计算机教育, 2012.3

[5] 吕云翔. 软件工程课程设计. 机械工业出版社, 2009.1

推荐访问:教学研究 驱动 模式 项目