您好, 访客   登录/注册

软件工程方向课教学改革的探索和实践

来源:用户上传      作者:

  摘 要 在传统的软件工程教学中,教师教授大量的理论知识,这些知识比较抽象,学生缺乏学习兴趣,课堂氛围陷入僵化,教学效果不好。对于计算机专业的学生来说,他们除了需要具有基本理论知识外,还要具有扎实的工程实践能力。因此,除了开设软件工程理论课外,还需要根据学生的个人兴趣和职业方向开设方向课。这能够提升学生的学习兴趣,增强其工程实践能力,为后面的顺利实习和就业环节提供先决条件。多年的理论课和方向课结合的教学实践证明,这种教学改革能够适应就业市场的需求,学生受到用人单位的肯定。
  关键词 软件工程 方向课 工程实践
  中图分类号:G642                                   文献标识码:A    DOI:10.16400/j.cnki.kjdkz.2019.04.021
  Abstract In traditional software engineering teaching, teachers teach a lot of theoretical knowledge, which is abstract, students lack interest in learning, classroom atmosphere is rigid, teaching effect is not good. For students majoring in computer science, they need not only basic theoretical knowledge, but also solid engineering practice ability. Therefore, besides offering software engineering theory courses, we also need to offer orientation courses according to students' personal interests and career orientation. This can enhance students' interest in learning, enhance their engineering practice ability, and provide preconditions for the smooth internship and employment. Many years of teaching practice combined with theoretical courses and orientation courses has proved that this kind of teaching reform can meet the needs of the employment market, and students are affirmed by employers.
  Keywords software engineering; direction lesson; engineering practice
  1 传统软件工程课堂教学的问题
  软件工程是运用工程的思想、原理、理论、方法、技术、管理和工具,研究开发较大规模软件系统的学科,在计算机软件领域中占有中心地位。[1]传统的软件工程课堂教学以教师为主导,学生只是被动地听课;没有安排实践课或者虽然安排,但是,学生仅仅编写项目文档,理论知识和实践环节严重脱节;学生到用人单位往往需要一段时间的培训才能真正将学到的理论用到企业的项目当中。[2]这些问题背后的根本原因在于以下方面:
  1.1 软件工程课程要求既要重视理论知识也重视实践能力的培养
  软件工程课程是高校计算机专业重要的专业基础课程,是指导软件开发、管理和维护的工程学科,涉及计算机、工程学、管理学以及经济学等多个学科领域的知识。[3]软件工程理论主要辅导学生掌握软件开发过程从需求分析,概要设计,详细设计,系统实现,测试和维护全过程的理论知识,为毕业后从事软件领域相关工作打下坚实的理论基础。[4]同时,对于计算机专业的学生,其未来的职业方向决定了需要具有扎实的工程实践的能力,因此,软件工程课程需要传授学生怎样使用理论知识应用于工程实践,应该既重视理论知识也重视实践能力的培养。[5]
  1.2 软件工程理论抽象,学生没有学习兴趣,理解起来困难
  软件工程理论知识比较抽象,如果教师在课堂上直接按照书本或者课件进行讲解,学生听起来比较枯燥,久而久之,学生将失去学习这门课程的兴趣。在课堂当中,教师在讲台上讲课,学生在下面不知所云,学生没有求知欲望去探知教师所教理论的来源,质疑理论知识的真伪和局限性,学生和教师没有达到对课程内容的共鸣,学生没有发挥到应有的主动性和创造性。[6]考试前夕,学生按照通常的应试方式,对知识点死记硬背,试图通过理论考试。
  1.3 软件工程理论没有和项目实践结合,学生无法用理论指导实践,将理论变成行之有效的工具
  软件工程理论的价值在于教授学生从事软件领域相关的理论知识,使得学生能够更好地从事项目实践。[7]教师在讲授理论知识时,如果只是照本宣科,理论没有令人信服,学生对理论只是停留在一知半解的阶段。当在企业项目中遇到类似的场景,需要学生进行一定的决策时,学生回忆教师讲解的软件工程理論,由于没有和项目实践结合,没有经过反复推敲,学生只能记得教师如此讲解,而不知道所以然,很难将理论变成行之有效的工具。[8-10]   1.4 缺乏模拟真实企业运作的环境,学生需要企业的定向培训才能进入项目
  软件工程课程在讲解期间,缺乏模拟真实企业运作的环境,学生在学校停留在大作业的阶段,即4到5个人,合作完成一个大作业,真实情况是,只有其中的1到2个人真正投入进来,其他的学生都充当看客,没有发挥应有的作用。大部分学生都不清楚企业的软件开发流程和项目管理的基础知识。学生进入企业后,企业仍然需要花费大量的时间对学生进行定向的培训,内容包括,企业的产品概要,软件开发所用的技术,团队合作,项目管理和其他企业文化相关的知识。
  2 学生和用人单位的需求阐述
  从学生的角度来看,软件工程理论理解起来需要浅显易懂,每个理论知识具有充足的企业项目案例支撑,并且分别从正面和反面角度来阐述;[11]课堂教学具有趣味性,学生愿意参与到课堂教学当中,和教师一起进行理论探讨,课堂气氛活跃;项目案例具有一定的覆盖性和代表性,从知名企业到创业公司等,不同的企业应用不同的理论指导。
  从用人单位的角度来看,软件工程理论需要能够指导学生从事企业的真实项目,学生熟练掌握企业需要的技术,能够快速进入到项目中,认同企业的文化,具有良好的团队协作能力和勇于奉献和承担的能力。用人单位希望在学生上花费的成本尽可能控制在预算之内,学生不需要经过培训或者较少时间的培训就可以直接在项目中发挥作用。
  3 软件工程方向课教学改革的探索和实践
  根据学生和用人单位对软件工程课程的需求描述,软件工程除了开设理论课,还根据开设了技术方向课。学生在大一,大二学习计算机专业基础知识,在大三实习前一学期,按照个人兴趣和职业方向分到不同的方向班,进行方向课的学习。
  3.1 基于企业项目情境的软件工程理论课
  软件工程理论需要结合真实的企业项目情境讲解,即教师在讲解理论知识时,不能仅仅照本宣科,而是要结合企业项目案例进行阐述。教师组织学生针对理论知识进行讨论,允许学生对某些理论质疑,教师不是直接说出答案,而是让学生参与到讨论中来,经过充分思考,得出書本中的结论。在这种课堂教学中,学生愿意积极参与进来,在讨论中发挥主动性和创造性,这有助于培养学生对课程的兴趣,对知识追根求源和探索新知的能力。[12]
  3.2 基于企业项目实践的软件工程方向课
  方向课侧重于培养学生的工程实践能力,为将来从事软件领域的工作奠定坚实的基础。具体方向有,Java企业软件开发,.NET项目实践,软件测试,软件运维和大数据方向等。在方向课教学中,教师讲解特定的企业实践课程:模拟企业运营的环境,组织学生团队,完成项目从立项到上线和维护的整个过程。学生在大三学期,在方向课上锻炼了工程实践能力,为实习和就业环节顺利通过用人单位的面试,获得良好的就业机会准备了先决条件。
  3.3 软件工程理论课和方向课互相补充,构建扎实理论和实践能力
  软件工程理论课侧重讲授理论知识,方向课则培养学生的工程实践能力,两者互相促进,相辅相成,缺一不可。[13]理论课是方向课的前提条件,没有理论课的方向课的讲授,对于一些高职院校,重视技能能力的培养是可行的,但是却不满足普通本科高校学生的培养方案的需求。[14-16]而没有方向课的理论课的讲授,学生不能有效掌握理论知识并应用到项目实践中。在方向课上,学生的工程实践能力以及其他的团队协作能力等都能够得到充分锻炼,这些恰恰是学生敲开用人单位的大门,找到满意的工作机会所必备的能力。
  4 结束语
  将软件工程方向课和理论课结合起来,学生不仅能够掌握专业的理论知识,而且能具备扎实的工程实践能力。根据过去几年的统计数据显示,学生受到了用人单位的肯定,这充分证明了在理论课之外开设方向课的教学改革探索和实践的正确性。
  参考文献
  [1] 李庆.浅析计算机软件工程管理与应用策略[J].中国管理信息化,2019.22(02):63-64.
  [2] 薛宁.计算机软件工程的管理与应用[J].计算机产品与流通,2019(01):22.
  [3] 章宗长,王艺深.以开源项目为驱动的软件工程课程改革与研究[J].计算机教育,2019(01):84-87.
  [4] 邓娜,林松,熊才权,康瑞华,閤大海.工程教育认证下基于项目驱动的软件工程教学设计[J].计算机教育,2019(01):104-107.
  [5] 李晶,诸任飞,张阳.软件工程方法学在信息类专业中教学模式的探索[J].电脑迷,2019(01):41.
  [6] 王莉萍.软件工程教学方法研究[J].电脑迷,2019(01):51.
  [7] 孙耀,陈圣国,王智钢,张海涛,张燕.基于真实项目案例的“软件体系结构”课程建设[J].金陵科技学院学报(社会科学版),2018.32(04):58-62.
  [8] 兰婷婷,朱玉娟.以就业为导向的软件工程专业人才综合素质研究[J].湖北农机化,2018(12):33.
  [9] 秦琳媛.计算机专业的软件工程课程教学[J].南方农机,2018.49(24):223.
  [10] 程志平,徐涢基.数据挖掘技术在软件工程中的应用探究[J].信息技术与信息化,2018(12):210-212.
  [11] 刘秋香,刘振伟.浅析UML在软件工程中的应用[J].电脑知识与技术,2018.14(31):75+89.
  [12] 田林琳,李莹.“以人为本”的软件工程专业应用型人才培养模式研究[J].环渤海经济瞭望,2018(11):190.
  [13] 孙阳光.新工科背景下民族院校软件工程国际化建设改革研究[J].高教学刊,2018(24):13-15.
  [14] 祁鑫,宋会英,崔浩.新工科背景下“软件工程”课程教学改革的研究与探索[J].中国石油大学胜利学院学报,2018(04):65-68.
  [15] 陈纪铭,陈利平.中英高校软件工程课程教学对比研究——以湖南工学院和英国桑德兰大学为例[J].福建电脑,2018.34(12):59-60.
  [16] 刘艳清,郭辉.软件工程在企业信息化平台建设中的应用[J].电子技术与软件工程,2018(23):68.
转载注明来源:https://www.xzbu.com/8/view-14784156.htm