本期摘要

研究生教育是国家战略创新计划的重要组成部分,课程教学是研究生培养的重要环节。受国务院学位委员会委托,国务院软件工程学科评议组2019年组织编写了一套《软件工程学科研究生核心课程指南》,包括理论、系统、开发、质量四个类别共10门课程,分别是《软件工程理论基础》、《基础软件与开源系统》、《分布式系统》、《大规模领域软件系统》、《软件需求工程》、《软件体系结构》、《软件开发方法学》、《软件分析与测试》、《软件工程管理》、《软件安全》;每门课程的指南包含课程目标、适用对象、授课方式、课程内容、考核要求、课程资源等内容。2021年中国软件大会软件工程教育论坛特别邀请参加课程指南撰写的各位老师详细介绍课程指南的相关内容。

院士致辞

资料格式

国务院软件工程学科评议组召集人廖湘科院士

论坛报告

资料格式

《软件需求工程研究与实践》知识体系与教学方式

需求工程对软件工程的成功占有至关重要的地位,软件越来越深入到各行各业,成为各行业创新发展的途径,需求工程作为跨行业的桥梁凸显了其重要性。需求工程方法和技术将在创新性软件的设计、在促进不同产业的转型发展、以及在软件加强性产品的创意设计等上体现其重要的价值。目前,需求工程能力的培养在我国的软件工程教育体系并没有得到足够的重视。本报告将针对软件问题的本质,阐述需求工程的认识论特征、需求工程的学科交叉性、以及它对软件工程的决定性作用,探讨需求工程人才培养的目的和要求,培养内容的设置,以及需求工程人才的能力培养等问题,阐述需求工程教育的挑战。

格式:
视频
《软件体系结构》课程建设与思考

随着信息系统与软件产品规模的急剧扩大,软件体系结构已经成为软件工程领域的热点及关键技术。各学校都陆续开设了软件体系结构课程。但是由于学生缺乏大型软件的经验和认知,课程的抽象度高,课程百花齐放,缺乏统一的规范和要求。本报告分析软件体系结构课程的现状,研讨研究生软件体系结构课程的培养定位,强化对系统的复杂性、性能、演化、抽象层次、复用、折中等计算学科的核心概念的理解,从培养学生抽象思维能力、面向全局观的系统分析与设计能力、运用知识求解实际问题能力与创新能力出发,探讨培养内容的设置,以及相关的教学方法。

格式:
视频
《软件工程管理》课程建设与思考

加强企业软件工程管理能力是提升软件研发效能、改善软件研发质量的重要手段。课程结合软件工程本质难题来讨论软件工程管理的必要性,围绕项目管理与过程管理两条线索详细讲解软件工程管理关键知识,培养学生综合运用所学知识进行软件工程管理的能力。在经典软件工程管理知识内容外,课程引入了当前产业界主流的敏捷软件开发、DevOps、典型企业的具体实践等内容。报告分享该课程的设计思路,并和大家一起探讨面临的挑战。

格式:
视频
《基础软件与开源系统》课程建设与思考

“开源软件开发”是人类在互联网发展进程中探索出的一种面向全球的大规模软件协作开发生产模式,当下备受瞩目。开源软件开发的模式涉及到开发者、开源项目、开源社区、开源基金会等多个方面。同时,基础软件是整个软件生态中的核心基础,越来越多的基础软件都是通过开源协作的方式进行开发与演进的。本报告介绍在“产学研社”模式下,开展基础软件开源课程建设的若干思考,包括基础软件基础、开源软件开发过程、社区治理与社区运营等方面的内容,并通过实际的基础软件开源项目,培养同学在基础软件上的开源实践能力,希望对大家有所启发。

格式:
视频
《分布式系统》课程建设与教学实践

云计算、大数据、人工智能等新兴计算模式和服务背后的支撑系统几乎都采用或依赖于分布式系统及相关技术,凸显了其重要性。然而,分布式系统的理论方法、设计思想、关键技术等都仍处于快速发展、不断变革之中,因此,相关的教学内容、方法、手段等都需要与时俱进,跟上分布式系统领域的变化,不但包含经典理论同时也要体现前沿成果。本报告将以上海交通大学软件学院分布式系统课程的建设思考与教学实践为案例,分享在此过程中面临的挑战与困难,收获的经验与教训,以及未来的努力方向。

格式:
视频
《软件安全》研究生课程设计探讨

软件安全是当今计算机系统安全的重要组成部分,涵盖了大量新近发展出的问题,思路,技术,和工具等。本报告探讨如何系统地介绍软件安全相关知识,分析软件安全的本质,关联经典的攻击和防御技术,并有针对性地引导学生阅读研究论文,尽力使学生不仅掌握软件安全的基础理论,还能1)应用所学构造攻防实例,提高动手能力;2)按照一定的问题线索,发现新问题或提出合适的解决方法,为其进一步从事软件安全的学术研究或工程应用打好基础。

格式:
视频
《软件工程理论基础》课程内容介绍

软件工程基础理论系列课程的主要关注点是如何基于数学(形式化)方法为软件的设计、分析、验证及维护提供可靠的理论支撑;同时能够更加深入的理解软件行为特征。基础理论的学习是软件工程教育的重要环节。它能够提高学习者抽象思维以及逻辑思考能力,更好的掌握软件分析、设计、测试能力。本报告主要讲述研究生软件工程理论基础课程的目标、内容设置、课程重难点、考核方式等。

格式:
视频
《软件开发方法学》课程建设与教学实践

软件工程基础理论系列课程的主要关注点是如何基于数学(形式化)方法为软件的设计、分析、验证及维护提供可靠的理论支撑;同时能够更加深入的理解软件行为特征。基础理论的学习是软件工程教育的重要环节。它能够提高学习者抽象思维以及逻辑思考能力,更好的掌握软件分析、设计、测试能力。本报告主要讲述研究生软件工程理论基础课程的目标、内容设置、课程重难点、考核方式等。

格式:
视频
《软件分析与测试》课程建设与思考

软件分析与测试是软件学科的重要分支,也一直是软件学院教学的一个重点。软件质量是贯穿软件整个生命周期的关键指标,程序分析和软件测试是保障软件质量的主要技术手段。《软件分析与测试》课程主要讲解软件质量模型、程序分析和软件测试的方法和技术、软件分析和测试工具以及若干应用案例分析,并配合课程实验,力图使学生掌握软件质量概念、软件分析和测试的理论知识和实践能力。报告主要讨论了如何在一门课的教学时间内,尽量覆盖软件分析与测试的教学内容。并结合当前企业的软件研发情况,模拟实际项目进行实训。希望对大家有所启发。

格式:
视频
《大规模领域软件系统》课程指南编写的基本考虑和初步教学实践

大规模领域软件系统是指企业或社会信息化过程中,特别是互联网技术大规模应用以来,网络和软件技术与各行各业创新业务应用深度融合、综合集成的大型软件系统。本报告介绍《大规模领域软件系统》课程指南编写的基本考虑,以及该课程教学实践的一些初步体会,包括课程单元设计,以案例为中心的教学内容组织,课程作业设计及教学效果等。

格式:
视频

本期编委

李宣东

CCF软件工程专委主任
南京大学

毛新军

国防科技大学

张莉

北京航空航天大学

往期回顾