前言:寻找写作灵感?中文期刊网用心挑选的软件工程课程教学改革与创新,希望能为您的阅读和创作带来灵感,欢迎大家阅读并分享。
摘要:软件工程课程教学内容具有较强的理论性和抽象性,需要重视软件研发教学的实践。传统教学存在教学偏重理论、各内容知识整合难度较大、教材知识时效性不足、工程实践缺乏、轻视实现、忽视运作等问题。基于CDIO理念的软件工程课程教学改革与创新,应结合软件工程专业特点,以CDIO的理念组织、优化教学过程。实践证明,基于CDIO理念的软件工程课程教学模式能够激发学生的自主学习能力、创新能力和思维能力,提升软件工程师分析问题、解决问题的能力。
关键词:CDIO理念;软件工程课程;教学改革与创新
软件工程课程教学内容具有较强的理论性和抽象性,并注重专业知识的时效性和软件的研发实践性[1,2]。合格的计算机方向的毕业生需要具有较强的软件研发能力和创新意识,符合市场需求,在专业的软件专业理论基础上,深刻把握软件行业和软件项目的内涵;此外,还应具有较强的沟通交流能力、团队协作精神等。传统教学存在重视理论和技术、轻视实践、忽视运作等问题,基础知识教学存在偏重理论、各内容知识整合难度较大,以及教材知识时效性不强的问题。CDIO(Conceive,Design,Implement,Operate)由构思、设计、实现和运作构成,强调产品的全过程指导工程教学。本文将根据CDIO理念对软件工程课程的教学改革与创新进行探讨,采用问卷调查的方式对某校CDIO教学模式实践情况进行调查,并分析实施CDIO教学模式前后的学生满意度,以及影响软件工程课程教学质量和效率的关键因素。实践证明,CDIO教学模式改变了传统的以教师主导“填鸭式”的教学模式,培养学生的主动性学习能力,丰富教学内容,优化教学体系,提升了软件工程教学质量与效率。
1软件工程课程教学内容特点及存在问题
1.1软件工程课程教学内容
国内许多高校都开设计算机科学与技术专业或其他涉及软件开发类的专业,这些专业的课程体系基本上都具有“一体化、分阶段、多层次”的特征,既培养专业基础知识,又注重实践的专业实践层次能力[3]。软件工程课程将计算机知识、技术和工程管理方法等进行有效融合,并将其运用在软件开发过程中[4,5]。该课程的教学目的是提高软件研发的质量和效率,实现产学研的工业化生产。通过本课程的学习,熟悉并掌握项目确定、项目需求分析、概要详细设计、代码设计和软件测试等软件研发工作中的各个环节;学生能够考虑研发成本和项目进度,研发出具有可修改性、可靠运行、可维护且满足用户需求的软件工具,并进行全过程管理的能力,进一步提高软件的研发质量与效率,实现软件的社会化生产。
1.2软件工程课程教学特点
软件工程课程教学内容具有较强的理论性和抽象性,并注重专业知识的时效性和软件的研发实践性。因此教学过程中,不仅要深入学习软件算法相关概念、原理和方法等专业知识,还要注重软件研发实践,学以致用,参透软件工程的原理和方法[6]。软件工程学科的理论性较强,并强调实践。注重“点”与“面”的结合,强调基本概念和专业知识的理解与掌握,要求具备软件项目需求分析、研发、实现和维护等技能。
1.3软件工程课程教学存在的问题
在软件工程课程学习过程中,需要明确课程内容、原理及特点,提高学生的学习积极性和主动性;培养学生善于协作、善于研究、善于主动学习的能力,培养其创新和开拓意识及能力,提升软件工程师分析问题、解决问题的能力。然而现阶段软件工程课程教学以教师课堂授课为主导,学生主动性不突出,听课方式较为被动,教学内容重理论而轻实践,即传统教学模式存在问题主要体现在基础知识教学偏理论、各内容知识整合难度较大、知识时效性不强以及工程实践较弱等方面。现阶段软件工程教学,专业实践不够,使得专业知识联系实际工作不够紧密[7]。因此,学生感觉软件工程的原理课程和教学内容方法较为空洞、枯燥。教学过程缺乏典型实例支撑,知识和技能不易掌握导致较难在实践中应用。软件工程教学内容涉及需求分析、框架设计、算法实现和软件测试维护等多个环节,各内容自成体系,学生对上述知识的有效整合存在困难。在软件构思与设计能力、团队协作、沟通交流等方面培养不足。以教师讲授为主的传统的填鸭式教学方法,不够重视学生的主观能动性和互动参与性;实践教学中,学生被动按照作业模式进行练习,强调背诵记忆、应付考试,使得学生的分析问题、解决问题的能力不足,缺乏必要的软件工程实训。
2CDIO主要内容及软件工程教学中的作用分析
2.1CDIO主要内容
CDIO教育理念突出培养学生的工程能力,包括专业基础知识、专业能力、项目团队协作和企业-社会环境下的构思运作四个方面[8]。CDIO培养大纲如图2所示。CDIO通过综合培养方式使学生掌握扎实的专业理论知识和技术技能,培养软件研发全过程管控能力和软件系统建造与运行能力。
2.2CDIO在软件工程课程教学的作用
CDIO继承和发展了发达国家的工程教育理念,提出了软件工程师的能力培养、实施指引以及实践过程和结果检验等标准。CDIO以软件运行的全过程为载体,鼓励学生主动进行学习。CDIO教学模式突出学生主体,强调理论联系实际,调动学生学习积极性和主动性。通过技能培养、操作实训,促进并巩固其专业知识的学习。团队合作,锻炼其团队协作能力和个人交际能力。CDIO教学模式从培养方案、教学目标、课程体系等方面,培养软件工程人才的专业基础知识的学习能力和工程实践能力,强调个人专业技能与交流沟通技能。CDIO教学模式能够改变传统的以教师主导“填鸭式”的教学模式,突出学生的主动性学习,让学生在“做中学”和“基于项目的教育和学习”,同时让每个学生都参与到班内组建的软件项目组中,模拟完成若干在教学周期内可控和具有操作性的软件项目。
3CDIO理念下软件工程课程的教学改革与创新
以CDIO的理念组织教学过程,丰富教学内容,优化教学体系,提升软件工程教学质量与效率。第一,加强基础知识教学。要结合学生特点和软件工程课程特点设计教学内容。通过增加工程案例教学内容、“互联网+”等手段,教授软件工程重点基础知识内容,采用发散式方法,激发学生的主动性和参与性。根据软件工程课程培养目标,重点教授该学科的相关概念、原则、方法和实现工具,适当剔除不必要的内容,保留基础部分,简化学生较难理解的深奥内容;完善与补充相关技术研究,跟进最新技术方法动态。第二,要加强工程能力培养。转变应试教育的理念,突出工程能力的培养,使得学有所用,而不是仅仅为了毕业。着重培养学生的工程价值观,激发学生的学习动力,培养学生软件研发逻辑思维,提高其团队协同合作能力,加深所学知识的实际运用,激发学习积极性。分析现阶段教学的薄弱环节,找准切入点;结合自身情况建立合适的工程能力培养方案,提高教学质量和效率。第三,充分利用多媒体教学、“互联网+”、移动客户端微课堂等,搭建全方位、立体的教学环境,加强培养学生挖掘信息、分析、应用及处理信息的能力,促进其自我探究和知识建构。将企业软件成功或失败研发的典型工程案例引入课程教学,丰富内容,激发兴趣;学生小组内部互动,分析讨论典型案例,教师侧重指导学生需要关注的关键点和问题;根据CDIO模式组织课堂形式,播放学习视频、挑战赛和综合讨论等环节,锻炼学生的分析问题能力和交流沟通能力。
4CDIO教学模式实践效果
将CDIO教学模式实践应用于某校。在实践前,采用问卷调查方式摸底学生需求,深入分析影响软件工程课程教学质量和效率的关键因素。调查结果显示,师生间的互动程度、课程内容和授课条件对软件工程课程教学的影响程度分别为40%、34%和26%。结合我校软件工程课程特点和学校资源情况,将CDIO教学模式引入本校软件工程教学工作中,有效促进了学生间互动、师生互动,提高学生的综合能力,提高人才培养质量。如图4所示,学生对课堂效果的满意度从实施前的75%提升至98%,课程内容满意度从实施前的67%提升至94%,实践质量满意度从实施前的45%提升至90%。基于CDIO理念的软件工程课程组织教学,能够很好地激发学生的自主学习能力、创新能力和思维能力,提高学生的综合研发能力,提升软件工程师分析问题、解决问题的能力。
5结语
基于CDIO理念的软件工程课程改革,能够让学生经历理论、技术、研发和应用的全过程,提高其理论专业水平、技术能力、软件实现能力和工程运作能力等,激发学生的学习兴趣,提高学生的综合研发能力。CDIO通过综合培养方式使学生掌握扎实的专业理论知识和技术技能,培养软件研发全过程管控能力和软件系统建造与运行能力。
作者:景雯 张杰 傅文博 单位:山西大同大学计算机与网络工程学院