专栏
第 17 卷 第 10 期 2021 年 10 月
66
当前我们正处在一个“软件定义一切”的时代,
软件的地位和作用变得越来越重要。软件无处不在,
渗透到了社会、经济、文化、生活的方方面面,成
为人类社会不可或缺的关键基础设施。在此背景下,
软件系统的环境、构成、规模、形态等发生了深刻
变化
[1]
,软件工程学科和专业也在快速发展,由此
导致社会对软件人才的数量和质量提出了更高的要
求,如何为社会培养高水平软件人才,成为当前高
等教育面临的一项迫切且具有挑战性的研究课题。
这项工作涉及软件通识教育、专业教育、实践教育
等诸多方面
[2]
。尤其在专业教育方面,需要依托“软
件工程”等核心课程的教学,紧跟软件产业界以开
源软件为代表的成功实践以及新颖的软件开发思想
和技术,克服以计算机为平台的传统课程教学理念
带来的不足,探索以互联网为平台的新颖教学理念
和方法。本文从开源软件的成功实践中获得启发,
通过升级“软件工程”课程教学的培养目标、教学
内容和要求、教学方法,创新“软件工程”课程的
教学模式,提升软件人才的培养质量和水平。
软件工程专业教育存在的问题
据统计,2019 年,我国数字经济规模达到了
35.8 万亿元,其中软件业务收入 7.2 万亿元,软件
和信息技术服务业规模以上企业 4 万多家,相关从
业者 900 多万人
[3]
。这些数据表明,软件产业在我
国数字经济领域占据重要地位。软件工程专业教育
担负着为软件产业界培养高素质软件人才的重任。
然而,无论是知识体系还是教学理念和方法,当前
软件工程专业教育存在以下突出问题。
知识体系跟不上
产业界的软件开发实践
在软件工程领域,学术界与产业界一直存在较
大的鸿沟,这一情况同样发生在教育界与产业界之
间。以软件工程专业教育为例,其知识体系跟不上
产业界的软件开发实践。现阶段,开源软件在产业
界得到广泛的认同和实践。根据黑鸭软件(Black
Duck Software) 2015 年的一项统计(The Future of
Open Source)表明,64% 的企业参与开源软件实践,
超过 66% 的企业优先考虑利用开源,通过集成和重
用开源软件来开发软件系统已经成为信息系统建设
的新模式。开源软件实践也颠覆了传统的软件开发
理念,它借助互联网平台上大众的智慧来支持开源
软件的开发和演化,如提出需求、发现缺陷、纠正
错误、贡献代码等,由此衍生出一系列新颖的软件
工程技术和平台,如群体化软件开发、分布式版本
管理、持续检查和集成等,依托互联网平台实现互
联网大众的分布式协同开发、软件制品管理和软件
质量保证。相比较而言,IEEE 软件工程知识体系
SWEBOK 3.0 和中国软件工程知识体系 C-SWEBOK
仅在软件构造、软件维护、软件工程职业实践等知
毛新军
国防科技大学
升级软件工程教学
——开源软件的启示
关键词 :
软件工程 开源软件 教学方法