《软件工程》课程教学改革探究
《软件工程》课程是计算机类专业的基础核心课程,用于指导计算机软件开发和维护过程,主要涉及软件工程基本原理、软件开发技术和开发方法、软件项目管理等知识点,具有理论抽象、实践性强等特点[1]。因此,在教学实践中,需要结合软件工程的发展和软件企业的人才需求状况,不断更新教学内容。
本文结合湖北文理学院的《软件工程》课程建设,以培养学生的实践能力和创新意识为核心,探索了课堂教学、网络教学与实践教学相结合的教学模式,有助于激发学生的兴趣和潜能,培养学生的团队协作意识和创新精神,提高学生的软件开发能力和工程素养。
1数字化教学平台构建
在《软件工程》教学过程中,积极探索多媒体课堂教学、网络教学与实践教学相结合的新型教学模式,构建基于网络的《软件工程》课程数字化教学平台,实现立体化的学习、答疑、自测和成果展示环境。《软件工程》课程教学主要由课堂教学、课程设计(实验)、在线辅助教学3部分构成。其中,在线辅助教学可提供丰富的教学资源,包括网络课件、实验指导、试题库、实验平台、电子教材等构成的多媒体数字资源,实现网络平台和教学资源的有机结合[2],开展在线设计、实验、答疑、讲座、案例分析、报告提交、测评等教学活动。
学校通过集中采购,购买一套相对完善的《软件工程》课程实验教学辅助系统软件开发实践能力提升平台。该平台通过提供标准化的企业实战项目案例及系统化的知识体系,让学生在学习-实践-学习模式下,培养其软件工程能力及技术实践能力,同时它还可以作为辅助教学工具被广泛应用于教学领域。
2交互式教学课堂设计
课堂教学是《软件工程》课程的核心,教学过程是师生交流、互动、共同发展的过程,应坚持做中学的教学理念,体现教师为主导,学生为主体的思想。
(1)教学内容设计。及♂时更新教学内容,反映软件工程的最新发展和前沿应用技术。教学目标和内容涵盖软件工程教育知识体系,保证课程内容的科学性和系统性。关于教学内容的选择,在介绍传统软件开发方法的基础上,强化软件生命周期、软件工程过程模型、结构化分析与设计方法、面向对象分析与设计方法和UML建模,重点突出面向对象的软件开发方法及先进的项目管理过程。
(2)教学方法设计。充分利用多种教学策略,如案例教学、情景教学、启发式教学、交互式教学等,激发学生的学习兴趣和潜能,以有效地调动学生的学习积极性和主动性。
(3)教学媒体设计。选择、安排并运用各种素材、媒体,确定各种媒体在何时使用、如何使用,不断优化教学过程。
在《软件工程》课堂教学中,以工程案例为载体,围绕案例开展教学,坚持以做中学为指导,以实际项目的生命周期为主线,重视学生反馈。
3学生实践能力培养
《软件工程》课程的理论知识较抽象,应借助实验、实践、课程设计等方式强化学生对理论知识的理解与应用。结合IT产业或企业需求,设计多层次、一体化的软件工程实践教学内容,由课程单元实验-课程综合实验-课程设计组成,并将其划分为由低到高3个层次:基础课程案例包、专项案例包、团队案例包。以实践能力培养为主线,践行多层次、一体化的实践教学体系,在纵向上按照适应学生能力培养规律的验证性、综合设计性、研究性层层递进,在横向上设立多个专题训练项目,满足学生的多样化需求,注重其多目标应用能力培养[3]。考虑实践教学体系中的多种类型,采用案例导向,项目驱动教学方法,对各实践教学环节进行全面改革。在选择或确定实践ศ项目时,要尽可能来源于学生的现实生活,或能解决学生的的某些需求,♀杜绝让学生做凭空臆想、毫无实际意义的项目。
作为综合性的课程设计,要求学生组成开发小组,在教师指导下,以小组为单位合作完成一个规模适中的☤软件项目,以培养学生的团队协作精神。这种案例导向、项目驱动的实践教学模式,可充分激发学生自主学习的积极性,显著提高教学质量。
在课程设计教学上,采取任务驱动式教学方法,教师讲解基础概念以及课程系统设计思维与方法,学生分析待设计任务,设计、实现、测试与验证,按阶段答辩,讨论发现问题并作修改。目前,综合性的课程设计教学已初步形成了自身特色,即以计算思维能力培养为核心,以设计和实现能力训练为重点,以实际工程项目案例为基础,以工程实施环节为主线和标准,以团队为基本单位,全面提高学生综合素质。
4学生自学能力培养
课堂之外的辅助教学环节,有助于学生进一步掌握课堂讲授的知识,开阔视野,扩展知识面。并且,它还是实现因材施教,优化教学过程的重要途径。
辅助教学活动包括:①在线资料查阅:提供丰富的网络资源,包括论文、刊物、电子教材、电子教案及相关网站等;②在线讨论:教师和学生可通过《软件工程》课程网络教学平台设置的讨论区,进行交流讨论;③在线自测:提供各章的练习题,由学生选择完成,检测自学情况;④网上辅导:教师随时在网上提供辅导材料或通过讨论区和E-mail进行指导;⑤在线案例展示:将学生完成的优秀项目纳入案例库,加以宣传,供学生借鉴。
针对学生的学习兴趣、学习能力,以及实践项目的开发需要,构建学生团队,并由专业教师进行指导,即建立多样化的团队学习小组,达到共同提高实践能力的目标。这是引导学生主动参与,增强其主体意识,培养其搜集和处理信息、获取新知识、分析问题、解决问题以及交流合作能力的重要途径。
学研结合,倡导学生学以致用,通过专业性的学科竞赛和科研活动,以培育、提升和展示学生科研素质和创新能力。以中国软件杯大学生软件设计大赛为例,该竞赛的试题均来源于IT企业的真实项目或问题,属于真题真做性质,学生全程参与,能够真实地理解软件工程生命周期各阶段的内涵,为理论联系实际找到了结合点,有助于锻炼学生分析问题与解决问题的能力。同时,鼓励学生提炼劳动成果,撰写和发表学术论文,或申请软件著作权,为学生创造专业能力展示舞台,以有效地调动学生学习的积极性,增强其成就感。
5结语
《软件工程》课程作为培养学生软件工程能力的一门核心课程,在湖北文理学院计算机科学与技术、软件工程本科专业中开展了为期两年多的教学探索与实践,打破了传统的以验证理论为主的课程教学模式,通过工程化案例将抽象的软件工程方法具体化、实例化,使学生更好地理解软件工程基本原理和方法;通过个人实践项目和团队合作项目开发,使学生增加实践经验,提高动手能力和团队协作能力,体验软件项目开发웃中的岗位角色[4]。这种课程教学改革能够全面提升学生的软件工程应用能力和工程素养,具有一定的借鉴作用。