新工科背景下“软件工程”课程教学与实践改革研究
2021-06-11廖卓凡王静熊兵
廖卓凡 王静 熊兵
摘 要: 新工科是相对于传统工科而言的,是基于国家战略发展新需求、国际竞争新形势、创新创业能力新要求而提出的我国工程教育改革方向。软件工程课程,也是我校计算机科学与技术专业和软件工程专业普通班和卓越班的基础核心课程。围绕教学方案与资源组织、实验实践设计、拔尖参赛组织和考核评估四个方面,对软件工程课程进行改革尝试,旨在解决当前大部分软件工程教学方案呆板、实用性不强等问题。
关键词: 新工科; 软件工程; 教学; 实践
中图分类号:G642 文献标识码:A 文章编号:1006-8228(2021)05-81-03
Research on the reform of teaching and practice for software engineering
course conforming to New Engineering Education
Liao Zhuofan, Wang Jing, Xiong Bing
(School of computer and communication engineering, Changsha University of science and technology, Changsha, Hunan 410004, China)
Abstract: Compared with the traditional engineering course, New Engineering Education is the direction of China's engineering education reform based on the new needs of national strategic development, the new situation of international competition, and the new requirements of innovation and entrepreneurship ability. Software engineering course is also the basic core course of computer science and technology majored and software engineering majored ordinary class and excellent class. This paper attempts to reform the software engineering course from four aspects: teaching scheme and resource organization, experiment and practice design, top-notch competition organization and assessment, aiming to solve the problem that most of the current software engineering teaching schemes are inflexible and not practical.
Key words: New Engineering Education; software engineering; teaching; practice
0 引言
新工科(Emerging Engineering Education,简称为3E)是相对于传统工科而言的,是基于国家战略发展新需求、国际竞争新形势、创新创业能力新要求而提出的我国工程教育改革方向。以“信息技术+互联网技术”的协同创新和广泛应用为基础,以互联网+工业制造双向融合为动力的第四次工业革命,推动了以新技术、新产品、新业态和新模式为特点的新经济的快速形成和发展[1]。新经济的快速发展,需要更多和更新型工科人才的支撑,这对高等工程教育改革和发展提出了新的挑战,使得高等工程教育改革受到空前重视和普遍关注。高校迫切需要创新工程教育的理念,进行“新工科”建设[2]。
随着创新驱动发展、互联网+、中国制造2025、人工智能2.0、一带一路等国家战略的提出,以及人工智能、物联网、大数据、云计算、网络安全等新型IT技术的发展和应用,迫切要求将信息技术特别是软件技术,与各行各业进行深度融合,促进相关行业的转型和升级,从而进一步促进新经济发展,这对软件工程专业的特色建设和人才培养提出了更高的要求。
软件工程(Software Engineering,简称为SE)是采用工程的概念、原理、技术和方法来开发与维护软件的一门工程学科,自从2018年各大示范性软件学院建立后,中国的软件产业开始起步、腾飞。中软、东软、华为、腾讯、阿里等中国大型软件企业中都活跃着大批软件学院的毕业生[3]。软件工程课程,也是我校计算机科学与技术专业和软件工程专业普通班和卓越班的基础核心课程[4],其前置课程为C/C++/JAVA等高级程序设计语言。对于刚开始学习程序设计语言的学生来说,该门课的开设,有利于培养学生的软件素质和软件开发能力,为后续课程的学习和未来从事软件开发工作奠定基础。
1 国内外研究现状
1990年微软诞生以后,软件产业蓬勃发展,美国高等教育在这20年里不断把力量聚集到软件人才培养上,积累人才资源来促进产业崛起[5]。我國新工科建设自2017年由教育部提出至今,经历了五个发展历程。期间,软件工程学科与课程一线教育工作者主动响应国家号召,对软件工程课程和实践进行了初步探索。
2017年2月18日,教育部在复旦大学召开了高等工程教育发展战略研讨会,与会高校对新时期工程人才培养进行了讨论,达成了“工科优势高校要对工程科技创新和产业创新发挥主体作用”、“新工科建设需要加强研究和实践”等共识[6]。2017年6月9日,教育部在北京召开新工科研究与实践专家组成立暨第一次工作会议,全面启动、系统部署新工科建设。30余位来自高校、企业和研究机构的专家深入研讨新工业革命带来的时代新机遇、聚焦国家新需求、谋划工程教育新发展,审议通过《新工科研究与实践项目指南》,提出新工科建设指导意见[7],明确要求注重模式创新、更加注重质量保障。这些共识和指导意见软件工程学科和课程建设提供了明确的指导方向。
2018年3月15日,教育部办公厅发布《教育部办公厅关于公布首批“新工科”研究与实践项目的通知》[8]。2018年4月2日,教育部办公厅发布关于印发《高等学校人工智能创新行动计划》的通知,要求推进“新工科”建设[9]。在这一年,西安理工大学张爱玲等人[10]通过分析高校软件工程人才培养模式问题,提出了建立面向企业需求的软件工程人才培养理念,主校企深度融合才能培养出实践能力强并具有创新意识的软件工程人才。湖南工程学院谢雅等人提出以学生为中心,从学习资源库、教学团队、角色课堂和评价体系四个方面,全方面提高学生的项目开发实践能力[11]。广东第二师范学院沈海波[12]等人提出了从提炼新理念、改变教育观念、创新培养模式、构建专业培养新体系等方面的软件工程专业建设途径。吕梁学院的高文莲[13]等人提出了构建以理论教学为基础,以实践操作为主线,以创新创业为导向的软件工程创新人才培养模式。
2020年5月,为推进新工科建设再深化、再拓展、再突破、再出发,推动高校加快体制机制创新,做好未来科技创新领军人才的前瞻性和战略性培养,抢占未来科技发展先机,教育部决定在高等学校培育建设一批未来技术学院。清华大学林健等人[14]研制了新工科人才培养质量通用标准,标准包括九方面共十六条,其中包括基础知识、专业知识、工具使用和复杂工程问题的研究、分析与解决。天津科技大学张贤坤等[15]提出了软件工程基本实践能力的一个体系、产教结合解决复杂工程的两个协同的改革体系。合肥工业大学的袁杨华等人[16]提出“三层递进式”实践教学体系,从基础实验教学——新工程能力实践——工程应用实习三层进行推进式的实践教学体系。
纵观新工科建设的发展与软件工程一线教育者的改革研究,对软件工程课程的改革课总结为以新工科人才培养为目标,从基础教学、实践设计、反应产业需求三方面为切入点进行改革,为本项目的开展提供了丰富的借鉴先例。
2 改革研究框架与具体措施
结合新工科建设发展规划为导向,借助互联网实现教学信息和教学资源的远程共享,依赖本院优势研发团队和软件作品大赛的实际案例,以提高学生软件工程基础知识、研发能力和维护能为等工程能力为目标,从教学改革、实践创新和考核与反馈三个方面进行建设,这三个方面形成了一个互相促进的外循环,而在每个方面内部,又是一个自我调适的内循环过程。其研究主要分以下几个方面。
2.1 变革教学内容,体现课程的高阶性
高阶性就是知识、能力、素质有机融合,培养学生解决复杂问题的综合能力和高级思维。实际教学和总结发现,软件工程原先课程内容陈旧、与其他课程内容联系不紧密。为了建立工程概念,需根据热门工程问题和难点,对软件工程课程的知识点进行组织。知识点可以分为基础层次、应用层次和综合开发层次。基础层次的讲授,是让学生直观认识什么是软件工程操作系统,能够独立安装visio等软件流程可视化设计、Linux操作系统、各种程序语言继承开发环境, 对该系统下的基本命令和系统的基本结构有一个充分认识;应用层次的讲授是让软件工程基础的学生从应用层面去学习相关的知识;综合开发层次的讲授是使学生掌握软件工程下的一些开发工具和平台,进行软件设计平台的搭建、管理甚至代码的实现。在实践中我们发现以上三个层次不是孤立存在的,而是相互联系,相辅相成的。
2.2 以提高项目开发能力为目标的新模式实践教学研究
软件工程是一门应用型很强的课程,接触项目是学好这门课程的关键途径。我们将结合软件生命周期,安排课堂知识点的讲授顺序,设计前后关联的实验内容,循序渐进地培养学生的实践能力, 引导开发学生的创新意识。例如,把一个实验设计成综合案例,把大案例拆分成若干个简单模块。随着课堂理论知识的逐渐展开,学生逐渐能够将各个模块开发完成,还可在完成简单模块的基础上举一反三,自主完成新的类似案例问题。
学生除了完成教学计划中的实验课以外,还应该向学生提供将知识转化为能力的辅助课程设置。例如,鼓励学生参加各种学科竞赛、安排学生加入教师的科研项目、为学生设立大学生创新项目、安排学生到企业实习,以及提供海外交流机会等。为了给学生提供良好的企业实习机会, 应该积极寻求与在软件设计与开发领域具有引领性的企业合作。
2.3 基于“凡路”团队的实践环节设计
充分利用本校本学院的软件开发团队资源,建立丰富的立体化的“教、学、练”指导体系。“凡路”团队是我校计算机与通信工程学院于2012年9月成立的IT科技创新团队,由算法应用部、前端开发部、移动开发部、应用策划部等十个部门组成,以“创新、规范、传承、感恩”为文化精神,集学科竞赛、外包服务和科学研究于一体,以移动互联网、物联网和人工智能为特色。受“凡路”团队的培养经验启发,软件工程课程的实验环节将采取由简到难的分层递进设计,同一层次上采用分组实验,自主组队的方式选择软件项目每个阶段的实现。据统计,修习《软件工程》课程的學生中有15%左右学生有“凡路”团队经验,为本课程的拔尖学生培养和示范带头作用奠定了良好基础。
2.4 利用云平台和数据分析的考核与反馈管理
完备的教学过程监控制度和跟踪反馈机制是培养目标达成的保障,也是专业持续改进的基础。教学过程管理包括教学各环节监控、教学质量考核与反馈、实验结果分析与评价。研究如何利用云平台搭建教学过程管理平台,使教师对学生的学习和软件生产过程进行实时的监控和情况了解;让学生对教师授课进行评价以促进教学改进;使教师对学生的实验结果进行有效评分。研究如何利用数据分析技术对实践结果进行有效的分析,例如哪些知识点掌握程度低以决定需要调整哪个环节的教学方法与内容,以获得更好的教学效果,帮助教师了解学生的实践情况和薄弱环节,以进行更有针对性的指导。
3 结束语
新工科背景下软件工程课程教学改革,以新工科建设发展规划和工程教育认证为导向,以培养学生在人工智能、大数据问题上工程能力为目标,以课程设计和课堂实验为主线,以学科竞赛、创新活动实验计划、参与教师科研项目等为辅,旨在构建以项目开发为导向的软件工程教学体系研究,利用互联网+、云平台技术搭建教学互动平台和实验教学过程管理平台,开展软件工程课程独具特色的教学模式,预计其改革成果能为培养具有较强工程意识和合作能力的软件工程专业人才提供有利的理论和实践参考。
参考文献(References):
[1] 吴爱华,侯永峰,杨秋波等.加快发展和建设新工科,主动适应和引领新经济[J].高等工程教育研究,2017.1:1-9
[2] 林健.引領高等教育改革的新工科建设[J].中国高等教育,2017.13:40-43
[3] 张尧学.软件与软件的教育[J].中国大学教学,2020.6.
[4] 张海藩,牟永敏.软件工程导论(第6版)[M].清华大学出版社,2013.
[5] 陈纪铭,陈利平.中英高校软件工程课程教学对比研究——以湖南工学院和英国桑德兰大学为例[J].福建电脑,2018.34(12):59-60
[6] 中华人民共和国教育部.“新工科”建设复旦共识[OL].http://www.moe.gov.cn/s78/A08/moe_745/201702/t20170223_297122.html,2017.2.18.
[7] 中华人民共和国教育部办公厅.教育部办公厅关于推荐新工科研究与实践项目的通知[OL].http://www.moe.gov.cn/srcsite/A08/s7056/202003/t20200313_430668.html?from=groupmessage,2017.2.
[8] 中华人民共和国教育部办公厅.教育部办公厅关于公布首批“新工科”研究与实践项目的通知[OL]. http://www.moe.gov.cn/srcsite/A08/s7056/201803/t20180329_331767.html.教高司函[2018]17号,2018.3.15.
[9] 中华人民共和国教育部.教育部关于印发《高等学校人工智能创新行动计划》的通知[OL].http://www.moe.gov.cn/srcsite/A16/s7062/201804/t20180410_332722.html.教技[2018]3号,2018.4.3.
[10] 张爱玲,周世生.新工科背景下软件工程人才培养的研究与实践[J].计算机教育,2018.6:29-32
[11] 谢雅,王京文,唐志航,曾赛峰.新工科背景下软件工程专业人才培养实践——软件工程课程教学改革[J].信息技术与信息化,2018.4:35-38
[12] 沈海波,周如旗,朱雄泳.新工科+工程教育认证背景下软件工程特色专业建设探索[J].软件工程,2018.21(3):57-59,30
[13] 高文莲,高志娥,王翠娥.新工科背景下软件工程专业创新创业人才培养模式[J].吕梁学院学报,2018.8(2):75-78,96
[14] 林健.新工科人才培养质量通用标准研制[J].高等工程教育研究,2020:1-12
[15] 张贤坤,苏静,王怡.新工科背景下软件工程专业实践能力培养体系探索与实践[J].计算机教育,2020.2:88-90
[16] 袁杨华,郑利平,徐本柱.新工科理念下软件工程专业实践教学研究[J].软件导刊,2020.19(2):184-187