分类筛选
分类筛选:

教学改革类有关论文如何写 跟竞赛项目驱动的软件工程课程教学改革方面论文例文

版权:原创标记原创 主题:教学改革范文 类别:职称论文 2024-01-22

《竞赛项目驱动的软件工程课程教学改革》

该文是关于教学改革方面毕业论文模板范文跟软件工程和教学改革和竞赛方面毕业论文怎么写。

0引?言

软件工程课程是计算机科学与技术方向的核心专业课程,主要从基本原理、开发方法、开发工具等几个方面讲述软件开发的全过程,是计算机相关专业的重要专业课程.然而,在软件工程课程实际教学过程中,其教学效果并不令人满意,教与学的付出和收获没有成正比,难以实现该课程的教学目的和预期教学效果,尤其是学生对于理论教学内容的掌握和理解,往往低于预期.如何提高学生对软件工程知识点的理解能力和运用能力,是软件工程课程任课教师一直努力和关注的方向.

1软件工程课程教学现状

1.1理论教学知识点更新快,内容多

软件工程是一门理论性、实践性和工程性都很强的课程.新技术、新理论的不断提出,使得软件工程知识点急剧膨胀,内容多,更新快[1].一方面,授课教师在兼顾课时的同时要更新和补充更多的教学内容;另一方面,学生连续接受几种不同的开发思想和方法,对于各种方法之间的利弊和取舍难以真正把握,给学生真正学会和运用软件工程的方法和技术带来困扰[2].

1.2案例式教学效果未达预期

案例式教学是当前软件工程课堂教学的一个重要手段[3],但是案例式教学在软件工程课程教学中的局限性主要体现在案例的选择上.一类是简单易懂的案例,如图书管理系统、教学管理系统;另一类是典型的真实案例,如清单类App、项目管理类App甚至支付宝等.学生对于简单易懂的案例能够理解,却无法与自己的实践项目建立对应关系或转换.真实案例与知识点的相关性或紧密程度不佳,且外部影响因素多,因此给学生理解知识点带来困惑.

1.3项目驱动式教学效果有待提升

项目驱动式教学也是近几年广泛采用的教学手段[4-9],但是很多学生为确保好成绩,会选择一些简单、易于开发的管理类项目,而在未来的实际应用中几乎不会有同等难度层次的类似开发.同时,管理类项目也限制了授课教师在知识点讲授过程中的全面性和应用性,给学生造成软件工程课程的知识技能仅适用于管理类软件项目开发的印象,而一旦面对其他类型软件开发,就不知道如何应用课程知识和技术予以解决处理.

1.4研讨式教学内容需增强代入感

研讨式教学中发现,学生在研讨时常常是对研讨内容的表面论述和泛泛而谈,缺乏深刻理解.以“阿里云存储技术”研讨为例,参与研讨的学生通过阿里云网站、知乎等收集素材和信息,对其对象存储、表格存储、块存储、文件存储等进行分类介绍,而对更有意义的存储对比、适用性选择等几乎未涉及.这样的研讨效果远没达到题目设计的要求,一个重要原因就是学生对题目涉及内容没有切身体验,无法深刻理解题目内容.

1.5实践教学与理论教学脱节严重

软件工程课程实践通常在学期末以课程设计方式进行,多门课程的课程设计都集中在这一阶段,压缩了软件工程课程设计的可用时间;同时,2周的开发时间也限制了学生能独立完成的软件内容.因此,课程设计的题目很多是“图书管理系统”“宿舍管理系统” “贪吃蛇” “俄罗斯方块”等简单开发项目.这些项目限制了学生对开发技术和开发过程的思考和理解,造成课程实践与理论知识脱节.

2竞赛驱动的项目式软件工程课程教学改革实践

通过对我校计算机学院学生的调查发现,选修软件工程课程的学生中超过50%以上参与了各种竞赛项目或创新实践项目,而这些项目绝大部分与软件开发紧密相关,因此在软件工程课程教学中引入竞赛项目,是解决案例化及项目驱动教学问题的重要手段.教师可以在软件工程课程开始阶段收集学生参与的竞赛项目或其他项目题目,并让学生用一段话描述自己的项目意图和主要内容,以此为基础进行针对性的案例化和项目驱动式教学.

2.1个性化的知识点转换

在软件工程课堂理论教学中,有很多的一级知识点或者二级知识点都可以应用案例化教学进行阐述,而以往在选择案例讲解知识点的过程中,学生对于案例中知识点的理解不够深刻,存在浮于表面的问题.通过收集学生亲身参与的项目题目和内容,可以从这些项目中选择适用于某知识点的案例,并以此为基础进行该知识点讲解.在上课之前,先请该项目的学生事先预习这部分知识点内容,然后结合自身的理解对该项目应用这个知识点与否进行考虑,并在班上进行讲解.最后,教师对这部分知识点和这个项目进行讲评,如此便能够加深学生对这类知识点的理解和认识.由于学生亲身参与了竞赛项目,因此同学之间不存在沟通障碍,知识点转换方式也更能够被学生接受,而且全班60多名学生往往有不少于15个项目,也使得软件工程课程中的案例丰富多彩且易于理解.

以某组学生的计算机大赛题目“馨家”为例,当课程讲述到用例图的绘制和User Story转换过程时,该组学生会结合他们在“馨家”项目中的用例分析来讲述某个场景的Story,并基于这个故事画出对应的用例图,然后针对这个Story和转换的用例图进行讲评和修改完善.这样的过程可以加深学生对于从Story中转换用例图的方法和过程的理解,也更有代入感.

2.2针对性的项目过程化管理

由于软件工程课程自身的特点,可把软件开发的全过程分解成多个章节进行讲述,而主要的章节顺序也基本是软件过程、需求分析与设计、软件质量管理、软件项目管理与配置管理几个部分,这样基本跟软件开发过程保持一致.在实际教学过程中,首先讲述软件过程及软件项目分组策略,同时重点介绍敏捷开发和其他一些适用于中小型项目的过程化管理方法(同时介绍甘特图);然后再对需求分析与设计(结合UML的相关图形化工具)、软件系统架构设计、编码实现的语言选择和编码风格、软件测试几个部分按顺序进行软件工程课堂教学;最后介绍软件配置管理和软件项目管理的相关知识,让学生在学习过程中结合自己参与的项目进行分析和操作,并根据每个阶段的内容提交相关文档,如项目分工甘特图、项目需求分析说明书、项目UML设计图、部分模块开发代码、测试报告等.虽然针对同一个作业要求提交的文档各不相同,加大了教师批改的工作量,但是对于学生而言,他们真正在软件工程课程学习中理解了软件开发的过程化管理和相关知识技术,并学会了在自己的真实项目中应用软件工程的理论和技术.随着课程学习结束,学生项目开发的主要工作也随之完成,学生对这样的教学方式表示认同和获益匪浅.

2.3良好的研讨式教学效果

以1.4节中提到的“阿里云存储技术”研讨题目为例,在引入竞赛驱动的项目式软件工程课程教学方法后,选择进行App项目开发的小组负责这个研讨题目.在软件体系架构设计阶段,教师与该组学生共同设计该项目的体系结构,并分析其可能存在的数据存储内容,然后很明确地告诉学生在该项目实现时必须用到阿里云的云存储.这样,该组学生在项目开发时就会主动分析阿里云存储技术,决策到底哪种或哪几种阿里云存储技术会在该项目中被使用,与教师交流后,甚至可以在研讨前完成部分云存储代码的开发.在进行该题目研讨时,该组学生对这个题目的内容有了充分体会和理解,使得整个研讨内容详尽、表述清晰,并且充分达到了研讨式教学的目的.

2.4全课程贯通的实践教学

由于在软件工程的课堂教学中已经让学生进行分组工作,并且每个组都有自己切实可行的软件开发项目,因此在课堂教学过程中,该软件开发项目各个阶段的开发内容和相关文档也都得以完成并且以作业的方式提交,确保了相关文档的质量.软件工程课程设计作为课堂教学结束后的集中实践教学阶段,更多地侧重于最后阶段的编码实现和模块整合工作以及配套的系统测试,从而使得课程设计不再脱离课堂教学存在,而真正成为软件工程课堂教学的延续和收尾.软件工程课程实践教学环节的内容不再枯燥无味,学生也不再抱怨2周时间无法完成一个有一定规模的软件产品,因为整学期的时间都用在了完成这个软件产品上.

3结?语

将竞赛驱动的项目式教学方法引入软件工程课程的教学中,使软件工程课程不再只有理论,而是看得着、摸得到、有体会、能接触的教学课程.学生在学习理论知识和技术的同时,能够直接与自己参与的项目相结合;学习软件工程课程的过程,实质也是自身竞赛项目的开发、完善和改进过程,对于培养学生的专业技能和实际动手能力,实现教学与实践的有机结合,都起到了重要作用.

教学改革论文参考资料:

教学改革论文

科学教学论文

教育教学论坛杂志

外语教学期刊

教学论文范文

教育教学论坛期刊

评论,本文是关于经典教学改革专业范文可作为软件工程和教学改革和竞赛方面的大学硕士与本科毕业论文教学改革论文开题报告范文和职称论文论文写作参考文献。

和你相关的