梁君霞
摘要:软件工程专业以培养在软件工程应用领域从事软件开发、软件项目管理和软件服务等工作的应用型人才为目标。软件工程课程是计算机相关专业的一门重要的专业课程。传统教学过程中,本课程主要在课堂上介绍软件开发的原理、方法及应用,学生的学习效果不明显,基于混合模式教学可以依托线上教学结合线下课堂,线上线下课堂设计,真正做到以“学生为中心”,采用案例教学,引导式教学,课堂讲授式多种教学方法教学模式,培养学生具备自学能力和创新能力,符合应用型本科人才培养模式,具有良好的教学效果。
关键詞:软件工程;混合模式;以“学生为中心”
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2021)28-0052-02
开放科学(资源服务)标识码(OSID):
1引言
软件工程课程是软件工程专业一门核心课程,课程涉及的知识点多、需要实践的环节要求高,本课程内容主要有软件危机的产生、软件工程、软件开发方法、软件工具和软件项目管理,软件质量管理及软件配置管理等多方面,同时介绍现在市场上不断涌现出新的技术方法和工具。本课程的学习目标是通过学习,从工程化角度培养学生从事大型软件特别是面向对象系统开发方法、软件测试与管理能力同时训练学生的软件分析能力,提高软件分析及设计水平,为学生毕业 后成为一名优秀的软件工程师,准备了丰富的理论知识和强大的实践技术。
混合模式教学法颠覆传统教学中的模式,在传统教学中,大部分时间在课堂上灌输知识,这样的模式课堂内容枯燥、课程理论性太强、以致学生难以理解并进行现实应用的状况,利用混合模式教学可以激发学生主动学习,主动思考,学生的积极性,学习兴趣得到了大大提高,线上线下混合模式课堂可以让学生在轻松的课堂中学习,同时教学质量进一点提高。
2传统教学中存在的问题
2.1 课程综合性强
软件工程是计算机科学与技术专业的一门专业核心课,综合性和实践性很强,课程内容包括软件过程模型,软件方法,软件项目管理,质量管理,软件测试,软件工具等,课程中的综合性和复杂性在教学过程中很难充分体现, 课堂实践教学通常以固定课时、学生选择项目,教师给定任务和要求的方式进行训练,这种方式对学生工程实践能力及素养方面的训练达不到良好的效果, 学生对软件工程的内涵也很难能真正理解和掌握。
2.2 课堂形式难把握
这门课程对于教师教学不容易、学生学起来难,因为课程教学是以“教师对知识点进行讲授,学生单一形式听”的模式为主。课堂上以学生选择项目形式进行软件的分析,设计,实现及运行,因为学生基本没有项目经验,没有项目开发经历,所以在项目的选择上比较难,是否贴近学生生活,是否学生在有限的课堂学习中可以把握,是否项目中可以较好应用软件工程理论,这些问题都是需要去控制。对于项目功能需求简单的,不需要软件工程的理论同样可以完成,所以软件工程化的方法和工具体很难有促进作用。由于以上原因会使学生学完软件工程这门课程后,感觉课程的理论与实践需求过多全分离,大大地降低了学生学习软件工程课程的兴趣。
2.3 课堂实践时间太少
运用软件工程思想分析,设计,实现系统,学生需要更多实践时间运用理论知识进行项目开发,但由于课堂教师讲授基本知识点后所剩实践课时太少,一学期下来,学生也只能完成分析与设计文档,其他工作很难得到监督。
3混合模式教学研究
3.1 开展混合式教学的思路
此课程混合式教学的思路是:线上教学主要依托网络教学平台覆盖课前和课后的日常教学全过程。以“学生为中心”的课堂模式,改变了 “教师满堂灌,学生不想听”的教学模式,改变了教师课堂唱独角戏的情况,教师由讲台上的“讲”走下去,变为“引导”学生参与项目实践。线上教学活动中,教师在线上平台上规划及整体设计课程教学,包括录制课程视频、制作课程课件、设置知识点讨论主题,编制习题库等课程资源的建设。
学生课前在线上平台进行课程的预习; 课中,学生把在线平台上学习的问题带进课堂,变“要我学”为“我要学”,教师从学生问题出发解析所用知识点,启发学生讨论,让学生从问题知识点切入解决系列问题。课后,学生通过课程视频进行复习基本知识点,并在线上提交每节课开发任务, 教师在平台上批改作业,实时了解学生的学习进度、 任务完成情况及完成质量, 同时可以通过平台对学生进行讨论,督学。
3.2 混合式教学设计方案
3.2.1根据学生实际需求选择项目并组团队
此课程以小组形式完成项目开发,课程学习前期, 教师通过在线问卷调研了解学生专业学习情况,选择有软件开发经验的几位学生担任组长,组长招募组员组成小团队,团队中根据每个人特点分配不同角色进行项目的需求调研,分析,设计,编码,测试,数据库设计等。
项目选择“以学生为中心”,每个小组自行选题,教师引导,选题原则:贴近身边生活,功能需求大家都熟悉的题目,例如:大学生社团管理系统,学生宿舍管理系统等。
3.2.2教学设计方案
混合式教学采用“以学生为中心”教师为主导进行课前,课中,课后三段式课堂模式教学。每一阶段的课程活动教师与学生一起参与,教师在整个教学过程中起引导、讲授、帮助学生梳理知识体系的作用。图1是以“学生为中心”教学活动图:
课前,教师录制视频以一个实际项目的开发过程为主线,讲授软件开发的全过程,讲解时贯彻理论与实践相结合的原则,从工具、方法、技巧各个角度,对学生进行实用性培养,同时重点培养管理和设计能力。学生通过观看视频对课程内容有一个大概认识,对重点内容有了初步的了解,对存在的问题在讨论区提出。
课中,进入线下课堂,教师通过项目设计成多个小项目,对每个小项目重点知识点进行讲解,对难点重点分析,讲解讨论区提出的问题,同时和学生互动解决疑惑。布置相关内容任务课下完成,学生带着问题完成一个一个小项目,最后小项目组合成一个整体项目。同时将软件工程中的精确观、一致观、合作观、领域观和创新观等与师德师风建设中的人生观、价值观、公平观、正义观有机结合,使学生更容易理解和接触。
课后,学生完成每次项目任务并提交,教师进行批改,发现学生项目处理的问题,走下课堂和学生共同解决问题。
3.2.3以“建立功能模型”一堂课为例分析具体操作
1)课前:学生利用线上资源进行预习功能模型的作用,为什么建立功能模型,如何建立功能模型。
2)课中:案例导入+问题引导。首先使用案例:人人皆用的“网上购物系统”,引出话题“我们熟悉的购物系统都有什么功能”跟学生互动,继续提出新的问题“作为开发人员要完成系统功能的开发如何和客户确认,满足客户的需求,如何让后期设计开发人员理解系统的需求”在这个话题的基础上,引出为什么使用功能模型,功能模型的优点有哪些?教师是在超星平台的讨论区提出问题,学生通过学习通发表各自的想法;
采用讲授式+提问教学法,讲授主动参与者与被动参与者的概念以及如何寻找参与者。提问法:寻找参与者,通过三个模拟小系统提问:参与者分别是谁?引导学生清楚参与者是系统外的人,事或硬件,软件,同时分辨主动参与者和被动参者。通过练习与学生互动讨论“网上购物系统”的参与者是谁?素养目标:对于系统中参与者管理员:让学生理解作为系统管理员要懂得诚信,保护商业秘密的职业道德。
采用讲授+案例互动教学法:讲解用例是系统的功能,如何寻找用例,从参与者角度寻找,也就是参与者使用系统要“做什么”。案例:采用“E_mail客户端”小案例分析如何从需求中找到用例。学生掌握寻找用例方法互动:老师与学生进行互动,学生思考“网上购物系统”有哪些用例。素养目标:所有用例的寻找必须是在客户认可下才能确认的,在与客户沟通过程中注意友善以及沟通技巧。
采用讲授+案例类比的教学方法。讲授用例之间的四种关系:关联、泛化、包含、扩展。案例类比法:通过例子思考识别用户与指纹识别,视网膜识别是什么关系,是包含关系还是泛化关系,讲解泛化与包含概念的不同,比较两种关系建模的不同。比较包含关系与扩展关系的不同。
3)课后:要求学生对自选项目进行功能模型建模,不理解可以参考本课程线上资源视频,完成作业后在超星平台提交。教师批改反馈知识点掌握情况。
4混合模式課程教学效果与反思改进
1)评价机制的多样化
线上,线下混合模式充分利用智能化技术和工具,收集学生线上线下学习的数据。对学生每个阶段进行分析,提出建议。例如:根据学生回答的问题记录学生掌握基本知识能力;根据课后作业提交的项目文档资料记录学生的文档编辑能力;根据课堂讨论和项目答辩,记录了学生的沟通交流能力;根据项目规划和实施进展记录学生的项目管理能力;根据项目需求规格说明书评审,记录学生解决问题的能力。
2)总结经验,继续探索
混合模式教学是“学生线上自学找出不足-交流汇报找出解决办法-线下教师总结理论经验”的项目驱动教学方法,大大提升了学生的学习积极性和兴趣,取得了满意的教学效果。项目开发过程成绩评定=项目团队对软件工程体系的执行情况+项目团队的分工与协作情况+软件的复杂程度和最终实现情况。此种考核方式要求学生小组圆满地完成项目各个过程开发,并在各个阶段提交项目文档,强调了项目文档的重要性,将理论和实践紧密结合,取得了不错的效果。
5 结束语
以“学生为中心,项目开发为驱动”的线上线下混合模式教学将学习的角色从被动者变成主动者,学生从枯燥的理论学习环境中解脱出来,全面深入体验软件工程中对项目的分析、设计、编码、测试的开发过程以及软件项目管理,软件质量管理,软件配置管理的工程化的思想,更好地培养了学生的理论与实践应用能力,团队合作交流能力,问题分析解决能力,从而提高了工程实践能力。
参考文献:
[1] 张海藩,牟永敏.软件工程导论[M].6版.北京:清华大学出版社,2013.
[2] 王辰尹,衣杨.面向应用型IT人才培养的软件工程教改关键问题研究[J].计算机教育,2014(8):27-31.
[3] 李锋,夏小玲.计算机软件工程专业卓越计划实践教学[J].计算机教育,2013(13):18-21.2013
[4] 吕云翔.软件工程实用教程[M].北京:清华大学出版社,2015.
[5] 谭貌,李友芝,陈良军.软件工程专业多课程协作项目驱动教学模式研究[J].计算机教育,2011(4):26-29.
[6] 彭焕峰,吴晓彬.面向卓越工程师培养的软件工程教学改革与实践[J].软件导刊(教育技术),2015,14(11):12-13.
[7] 田怀凤.软件工程案例教学的不足反思与对策研究[J].电子商务,2017(8):83-84.
【通联编辑:闻翔军】