前言:寻找写作灵感?中文期刊网用心挑选的计算机专业软件工程课程改革与实践,希望能为您的阅读和创作带来灵感,欢迎大家阅读并分享。
摘要:从市场需求的角度分析《软件工程》课程人才培养需求,对《软件工程》课程知识、能力、素养体系,教学模式,教学方法,考核机制等进行了研究,以此激发学生学习该学科内容的主动性和自主学习能力,从而提高《软件工程》课程教学质量.
关键词:项目导向;软件工程;教学改革
近年来,移动互联网络已经融入传统行业与社会的方方面面,计算机及软件应用已成为现代社会、经济和科技的基石之一,软件产业已经成为未来信息产业的灵魂.随着产业规模持续扩大,行业发展不断更新,未来的软件更会往智能化、个性化发展.因此,对于软件工程学科人才培养,不仅仅是掌握专业理论知识,更应该适应新经济发展需要,德智体美全面发展,具有职业道德和社会责任感,具有团队精神,组织沟通能力,持续学习以及终身学习的能力.《软件工程》是计算机专业的一门工程性基础课程,以培养软件工程师为目标[1,2],在软件工程学科人才培养体系中占有重要的地位.目前主流的软件工程课程还是没有脱离传统的知识传授模式,缺乏以真实市场需求为背景,基于现实主题运用知识习得必要的技能和素养的过程,导致缺少对能够面向未来复杂多变情况的知识应用能力、抽象思维能力、批判性思维能力、团队协作能力、沟通与表达能力、自主学习与探究能力;导致当前方式培养出来的人才难以适应日新月异的行业发展.特别是随着AI时代的来临,未来社会对于人才的需求类型将发生根本性的变化.如何顺应市场需求,进行软件工程课程的改革与实践,如何充分利用有限的课堂教学时间,来完成该课程的理论与实践行之有效的结合,仍然缺乏一定的方法.本文结合安徽信息工程学院多年的教学实践经验,重构课程知识体系、提出“以市场需求为导向”的课程教学模式等改革,并将其应用于实践.
1面向产业行业岗位能力要求,重构知识、能力和素养体系
软件工程课程理论性和专业性都非常强,结合市场对软件工程行业人才的需求,基于此,我们将软件工程课程模块划分为《软件工程Ⅰ》和《软件工程Ⅱ》两门课程.软件工程Ⅰ:注重培养学生理论应用,通过引入学生以往参与的真实项目及其过程中存在的问题,来说明软件工程的重要性及如何通过软件工程理论来解决以上这些问题,通过本课程的学习,要求学生了解软件工程的发展历史以及为什么要学习和掌握软件工程基本概念、常规模型、原理和方法,掌握项目管理应具备的条件,以此来培养学生的实践应用能力与创新能力,为学生能从事一定复杂程度的软件项目开发和维护奠定基础,从而达到学会控制时间、成本、完成预期质量项目开发的期望.该阶段,老师以企业真实经典项目为主线开展相关原理技术方法等教学,学生围绕经典案例进行自我学习,摒弃传统的“教师满堂灌、学生随意学”的被动,在项目驱动下,通过案例设计来突出每堂课的重点非常重要[3].工程化案例是软件工程课程诠释相关原理和方法,提高学生理解和掌握速度的关键[4].老师借助真实工程案例进行理论拆解分析,帮助学生了解工程思想,掌握案例文档编辑要责.学生在教学过程中,结合自身技术水平,选择适宜的合作伙伴共建小组,确定组长,组长协助制定小组学习计划.小组在整个案例学习过程中,明确课题,分工合作,共同协作,完成需求说明书、设计说明书等的撰写,分工合作,各司其职一定程度上可以培养学生的责任感.软件工程Ⅱ:本门课程的目标是让学生将《软件工程Ι》课程阶段学过的概念、原理、技术方法等付诸应用和实践;了解软件开发过程中,围绕质量和生产率这一中心矛盾而产生的一系列问题及解决方法.重点培养学生的分析设计、批判性思考、解决问题的能力,提高学生工程意识、自我管理、团队协作、等基本的项目管理能力.突破传统的知识点分散式课堂理论讲授模式,以市场需求为导向,按照项目式教学方式,或者以赛代训的模式,讲师围绕一个项目主线,根据项目阶段的推进带动课程推进的方式进行授课,让学生置身于真正的软件工程管理活动中,从而切身感受该活动中出现的问题,并亲自动手验证解决方法的可行性.《软件工程Ⅱ》整体上分为六大阶段,主要包括:选题与调研、需求分析、系统概要设计、模块详细设计、编码与单元测试、系统测试与项目部署.将《软件工程》课程分为Ⅰ、Ⅱ,理论与实践分开但不分离,理论用实践真实案例来讲解,实践又由理论来支撑.一定程度上帮助学生快速掌握软件工程的工程化思想以及项目实践的能力.
2依托博思项目学习平台,构建以实际项目为主线的项目化教学方法
2.1什么是博思项目学习平台
该平台目前作为项目式教学支撑平台,依据企业真实项目过程而设计,目前有经过专业工程师评审筛选的较为完善的真实项目资源库,可以支撑不同实践课程需求,同时满足高校项目教学所必备的全部功能,重点支撑项目过程的管理:项目在先申请与审核,项目计划定制、审核与跟踪,项目过程产物提交与审核,如:概要设计、详细设计等;答辩材料提交与审核,标准的评价标准(需求文档、概要设计、详细设计、代码评审和答辩审查),学生参照项目流程提交相关材料,老师按照里程碑点进行评审,整个过程清晰、透明、规范,在一定程度上避免了老师主观评价和人情评价.
2.2什么是项目化教学
项目化教学是基于理论指导实践,师生共同实施完整项目的一种“行动导向”教学模式.具有强实践性、强自主性、方法的开放性、能突显学生综合能力以及评价客观等特点.在真正实施过程中,学生是项目化教学的主体,主动学习知识,推进项目进度,在过程中获得技术锻炼,老师一定程度上给予技术支持,起指导作用,项目化教学重视阶段考核,阶段、期末考试相结合的方式,可以较大程度上检测学生的学习成果.
2.3如何利用博思项目学习平台进行项目化教学
博思平台提供的大量真实项目,可以让学生更大程度上选择自己感兴趣的项目,进而创造出一种对技术知识的市场需求.项目期间,老师全程参与过程技术指导,疑难知识点解答,也在一定程度上扮演“客户”,给学生提出一些技术要求.(1)项目安排阶段.本阶段由教学管理人员在博思项目学习平台设置项目教学安排,设置项目评分组成,设置项目开发周期、参加项目开发的学生群体、可选项目范围等.(2)项目过程阶段.本阶段学生自由组队,举荐组长,在线申请项目、教师在线审核项目,把控项目重复率,学生制定项目计划、教师审核项目计划的可行性,学生提交阶段产物(含概要设计、技术调研、详细设计、代码提交等)、教师审核阶段产物并评分,教学管理每日跟踪项目进度.(3)项目答辩阶段.学生提前在线提交答辩材料、教师审核答辩材料(一般为ppt或3-4分钟短视频),现场答辩时、答辩老师现场随机抽取组员进行项目展示且接受现场技术和业务提问.随机组员答辩成绩即为小组整体答辩成绩,一定程度上可以把控小组成员不参与项目研发情况的发生.
3基于项目过程实践,建立标准规范的评审考核机制
软件工程课程摒弃了原有完全期末考试闭卷理论考试方式,调整为期末考试、过程考核及最终项目答辩的考核方式.《软件工程I》课程,采用过程考核(50%)+卷面理论考试(50%)的考核方式,其中,过程考核根据博思项目学习平台的行为数据及过程产物的评审数据进行评价.《软件工程Ⅱ》课程考核方式由项目总分*综合因子构成.项目总分:由考勤(10%)+需求分析(30%)+概要设计(30%)+详细设计(30%)构成.综合因子:由团队贡献(5%)+主讲老师评价(45%)+答辩老师A(25%)+答辩老师B(25%)构成.其中,团队贡献由组长评分,超过85分和低于60分,需组长举证,主讲老师评价主要是来源于项目,与平时考勤等因素无关,答辩老师评分主要由现场表现、语言表达,项目创新等项目构成.一次性闭卷笔试考试一定程度上考核的是学生对理论知识的记忆能力,考核方法的优化,增加平时阶段考核,有助于学生注重平时学习,使学生投入更多的精力在平时的项目研发阶段.
4实践应用
安徽信息工程学院《软件工程》课程的改革,获得2017年省级教学成果奖,且该项成果已纳入我校计算机学院《软件工程》课程常规教学当中,以2014级学生为例,2016年9月—2017年1月完成《软件工程Ⅰ》学习与验收,2017年3月—2017年5月,完成《软件工程Ⅱ》项目指导与验收.取得很好成绩,针对参与《软件工程Ⅱ》课程学习的学生,进行问卷调查,有79%的学生认为真实项目训练对自己的项目实操能力和整体素养能力都有所提高.以市场需求为导向的《软件工程》课程的改革模式,也已在全国多个地区高校进行推广合作应用(如:合肥、蚌埠、常州、贵州、重庆、天津等).从2012年起,陆续在合肥学院、新华学院、遵义师院、常州信息职业技术学院、安徽电子信息职业技术学院等院校推广该实施模式,且得到了高度认可.
5总结
综上所述,《软件工程》是一门兼具理论和实践性的课程,不断完善教学方法,形成有体系、有特色的《软件工程》课程,才能激发学生学习该课程的主动性和自主学习能力,提升实操能力,规范项目开发行为,满足社会发展的人才需求,做到共同解决问题,共同创新.
参考文献:
〔1〕陈朔鹰,李志强,李仲君.软件工程实践类课程体系的建设和探索[J].北京理工大学学报(社会科学版),2007(4):85-87.
〔2〕金孟霞.创建《软件工程》实践教学改革新模式[J].海南广播电视大学学报,2008(2):57-58.
〔3〕张佩云.项目驱动的软件工程课程[J].计算机教育,2013(17):77-79.
〔4〕董宗然.应用型院校软件项目管理课程教学探讨[J].计算机教育,2015(3).
作者:雷大正 范玲红 单位:安徽信息工程学院