软件工程教学项目教学法应用

软件工程教学项目教学法应用

[摘要]软件工程作为计算机专业的一门核心课程,对提高学生的综合运用知识能力、动手能力、团队合作能力、自学能力及培养创新意识有着重要作用。然而目前我国高校计算机专业学生普遍存在动手能力差的问题,难以满足用人单位的需求。使用项目教学法改进计算机软件工程教学,有利于提高学生动手能力。

[关键词]教学改革;项目教学法;软件工程

一、引言

随着科技和网络的飞速发展,计算机已经覆盖各行各业和人们的日常生活。在我国,计算机软件人才培养还存在不少问题,高校开设的各类课程在教学方案、教学内容、质量考评等方面与企业实际需求有很大差距,动手能力强的毕业生很少,高端软件人才急缺。如何提高软件人才培养,成为亟待解决的问题。在计算机软件课程体系里,软件工程占有重要地位,直接影响软件人才的培养。软件工程是一门研究用工程化方法构建和维护有效、实用、高质量软件的课程,是计算机专业人员必修的一门主干课程[1]。它以数据库、数据结构、算法分析、计算机操作系统等课程为前驱,强调软件开发的过程,让学生在理解软件工程基本原理的基础上,熟悉软件项目开发的各个环节,对培养学生的专业知识、专业技能,提高学生团队的合作能力、软件开发能力、创新能力、项目管理能力具有重要意义。根据社会对软件人才的需要及课程特点,基于项目教学法改进软件工程教学,有利于提高学生的动手能力。

二、项目教学法特点概述

项目教学法以学生为中心,在整个教学过程中,教师是组织者、指导者、帮助者和促进者,利用情境、协作、会话等学习环境要素充分发挥学生的主动性、积极性和首创精神[2]。项目教学强调以工程实际为背景,打破学科知识逻辑的约束,按照工程需要的技术逻辑建构教学内容[3]。第一,项目教学法注重理论联系实际。项目教学法与传统教学方法不同,更强调分析解决真实问题,更注重在实践中进行学习。教师在其中不再是单纯的知识传授者,而是项目执行过程中的监督者、指导者。学生也不再是简单的学习者,而是团队合作中的参与者、创新者。项目教学法要求学生在真实的项目情境中主动学习并掌握与项目相关的专业知识和能力,不仅促进了多学科知识的融合,也实现了理论和实践的结合。第二,项目教学法有利于创新。项目教学法的教授过程是完整的项目开发过程,是从无到有的生产。项目教学不是简单的理论学习,而是注重培养学生面对全新问题时,运用所学知识举一反三、构建新知识并在实践中不断学习和创新,以求解决未知问题的能力。在此模式下,任何项目都没有标准答案,甚至同一个项目随着时代的变化也会有完全不同的解决方案。第三,项目教学法有利于学生自学。授之以鱼不如授之以渔。高校对学生的培养不仅仅是传授知识,更重要的是自主学习能力的培养。项目开发周期往往较长,课堂教学时间根本无法满足需要,这就要求学生必须在课外花费更多的时间自学自练。项目教学以项目为驱动,充实了学生的课外学习内容,形成课堂听课讨论、课外练习与开发的课内外有效结合的学习方式。第四,项目教学法有利于人才培养体系的改革。项目教学法要求教师不仅要具备理论功底,更要具有实践经验,要求教师从主体变为主导、从灌输变为引导。为了紧密结合软件产业发展,教师必须高频率地更新教学内容,从理论型教师向工程型教师转型,通过校企合作,构建包括教师、工程师、设计师在内的多元结构教学团队,深化人才培养体系改革。

三、项目教学法在软件工程教学中的实施方案

软件工程强调软件的开发过程。一个完整的软件开发过程是包含软件需求分析、软件设计、软件测试、软件维护和软件项目管理在内的一个完整项目。因此,如何合理设计项目开发的各个阶段、合理分组与指导及建立正确的评价体系等是项目教学法实施的重点。第一,合理设计项目。项目教学应以实践能力、创新能力培养为教学目标,注重与其他学科知识结合的综合运用能力。因此,应以真实项目为佳,避免对已有项目的简单抄袭,因为在正式的工作环境中,没有成品可供抄袭;项目应完整,体现出包含需求分析、团队管理、角色分工、应用前景、测试等多环节的开发过程。项目教学不是对已有知识的简单使用,必然要包含新知识的学习和运用,所以项目应具有一定的难度和探究性。一些未知的难以解决的问题可以对学生起到引导作用,让学生在啃硬骨头的过程中不断进步,毕竟工作中不可能一帆风顺,应该具备迎难而上的精神。但是,一定要注意难度不应过高,避免学生完全无法适应,对项目开发失去信心。第二,合理分组与指导。应根据项目难度合理分组,简单项目可以单人完成,复杂项目三四人一组。在教学过程中,可以先由简单项目开始,让学生对项目开发有一个整体的认识和体验并培养出一定的动手能力和创新能力,然后进行复杂项目的开发,由三四人一组完成。复杂项目的开发应采用分组协作方式,每个组员既要完成自己的分工,又要考虑项目的整体进度,以培养团队合作精神。项目教学法注重的是让学生自己发现问题、解决问题,提高综合能力。因此,教师一定要把握好尺度,不应过多干预学生项目的开发,做学生的“保姆”,而应激发学生自己解决问题的兴趣,提高其解决问题的能力。教师应组织和鼓励学生在遇到问题时先自行解决,解决不了再进行分组讨论,如果全组成员都无法解决才求助于教师。教师的指导应具有针对性,根据项目难度和学生能力的不同实施分层教学,尽量避免直接告诉学生答案,应以启发式方法让学生自行思考解决问题。第三,构建网络学习空间。在网络和多媒体技术飞速发展的今天,构建网络学习空间有利于学生自主学习能力的培养。网络学习空间应以项目内容为基础,包含教学视频、参考资料、教学图片、在线交流、在线测试、在线作业、在线论坛等功能。学生可以使用电脑或手机随时随地访问网络学习空间,进行资源浏览。网络学习空间不仅可以弥补传统教学过程中的遗漏,也为学生搭建了自主学习和互动的平台,促进了学生和教师之间的互动,为课外问题的及时解决提供了保障。网络学习空间的建设有利于激发学生的学习兴趣、提高学生的自主学习能力、挖掘学生的潜能、发挥学生的个性和特长,为学生探究更为丰富的教学资源提供动力。第四,构建合理的评价体系。评价体系是项目教学中的重要一环,是项目教学的“指挥棒”,只有正确评价才能保证学生的学习兴趣和积极性,才能促进项目的健康快速开发。项目教学不应仅采用书面考试方式进行评价,而应以项目进度为评价基础,针对项目的各个环节进行打分。评价体系应包含教师评价、学生互评、学生自评3部分。教师制定详细的评价标准,对项目开发过程中的各个环节打分,参考项目完成程度给出项目的整体教师评价得分。学生组内同样依据一定的标准进行打分,不过组内标准应偏重团队合作及具体分工,分工不同得分也不同。最后,由学生个人进行微观自评,综合3级评价得分作为总成绩。此外,教师要参考学生的日常出勤率及学习态度对总成绩进行适当调整,得出学生的最终成绩。评价绝对不是简单地给学生打分,不仅仅是为了考查学生知识的掌握情况,更重要的是督促和鼓励学生努力学习,在困难面前永不言弃。第五,完善实验室。项目开发需要使用大量的计算机设备。与普通机房相比,软件工程实验室对计算机硬件和网络有更高的要求。一方面,使用距今五六年的电脑和实验环境进行开发,很难满足实际项目的需求,体现不出项目教学法要求的真实性,这就要求学校根据科技的发展,有计划地逐步更新实验室设备;另一方面,实验室网络带宽要满足所有学生同时在线开发测试,还应在课外对学生开放实验室,以满足课外开发的需要,避免实验室利用率过低。在计算机技术、大数据、云计算飞速发展的今天,计算机遍布各行各业,国家对软件人才的需求日益增大,对软件人才能力的要求越来越高。希望项目教学法的施行能够为计算机软件人才的培养找到一条可行的路线。项目教学法对教师提出了更高的要求,教师的综合能力将直接决定项目教学法的效果,如何提高教师的实践能力将是下一步要解决的问题。

作者:马杰 单位:河南财政金融学院